/* BUTTONS
************************************/

a.button,
input.button,
.button:enabled {
    cursor: pointer;
    text-align: center;
    height: 23px;
    color: #fff;
    border: 1px solid #1c7ead;
    background-color: #3092c1;
    border-radius: 0px;
    padding: 0 10px;
}

    a.button,
    a.button:enabled {
        display: inline-block;
        padding-top: 2px;
        text-decoration: none;
    }

.button:hover:enabled {
    background-color: #1c7ead;
}

.secondary-button:enabled,
a.secondary-button {
    background-color: #fff;
    border: 1px solid #127cb7;
    color: #127cb7;
}

    .secondary-button:hover:enabled,
    a.secondary-button:hover {
        color: #fff;
        background-color: #106fa2;
    }

.button-large:enabled {
    padding: 0px 33px !important;
    height: 38px !important;
    font-size: 20px;
}

/* don't combine "input:read-only" and "input:-moz-read-only" with other selectors */
input:read-only {
    background: #dddddd;
    cursor: default;
    border: 0;
    color: #333;
}

input[readonly="readonly"] {
    background: #dddddd;
    cursor: default;
    border: 0;
    color: #333;
}

input:-moz-read-only {
    background: #dddddd;
    cursor: default;
    border: 0;
    color: #333;
}

input[disabled=disabled][type=submit],
input[type="button"]:disabled,
input[type="submit"]:disabled,
select:disabled,
button:disabled {
    background: #dddddd;
    cursor: default;
    border: 0;
    color: #333;
    padding: 0 10px;
    height: 23px;
}

select:disabled {
    padding: 0;
}

button:disabled i {
    color: #dddddd !important;
}

button.link {
    background: none;
    border: none;
    padding: 0;
    font: inherit;
}


@media (max-width: 767px) {
    .button-large:enabled {
        width: 100%;
    }
}



/* RIGHT GUTTER (excludes filters)
************************************/

.content-gutter-wrap > fieldset,
.commission-link-wrap,
.price-stamp-wrap,
.recent-searches-wrap,
.loyalty-points-wrap {
    margin-bottom: 15px;
    border: solid 1px #d3d3d3;
    padding: 10px;
}

.price-stamp-wrap {
    position: relative;
}

.content-gutter-wrap ul {
    list-style: none;
}

.content-gutter-wrap > div:last-of-type {
    margin-bottom: 0;
}

.gutter-section-title {
    width: 100%;
    font-weight: bold;
    font-size: 1.6rem;
    padding-bottom: 5px;
    margin-bottom: 15px;
    border-bottom: 1px solid #aaa;
}

.right-gutter-btn-wrap {
    position: relative;
}

.price-stamp-wrap .button {
    width: 100%;
    margin: 10px 0 0;
}

.price-stamp {
    width: 100%;
}

    .price-stamp caption {
        text-align: left;
        font-weight: bold;
        font-size: 1.5rem;
        margin: 5px 0;
    }

    .price-stamp th,
    .price-stamp td {
        margin-bottom: 5px;
    }

    .price-stamp td {
        text-align: right;
        font-weight: bold;
    }

    .price-stamp th {
        font-weight: normal;
        font-family: Arial, Sans-Serif;
        max-width: 120px;
    }

    .price-stamp caption {
        text-align: left;
        font-weight: bold;
    }

.vendor-logo-wrap {
    text-align: center;
}

    .vendor-logo-wrap img {
        max-width: 100%;
    }

.drip-pricing-row th,
.drip-pricing-row td {
    margin-top: 10px;
    padding-top: 10px;
    border-top: solid 1px #d3d3d3;
}

.total-pricing-row th,
.total-pricing-row td {
    margin-top: 10px;
    padding-top: 10px;
    border-top: solid 1px #d3d3d3;
}

.total-pricing-row td {
    color: #d97827;
}

p.price-stamp-spacer {
    display: block;
    width: 100%;
    height: 10px;
}

.price-stamp-linklist {
    margin: 10px auto;
}

.price-stamp-rr-points {
    margin: 10px auto 0 auto;
    color: #000 !important;
}

    .price-stamp-rr-points font {
        color: #000 !important;
    }

.price-stamp-wrap .fa-question-circle-o:not(.pay-at-dest-trigger) {
    background-color: #106fa2;
    border-left: 1px solid #fff;
    color: #fff;
    height: 23px;
    margin-top: 10px;
    padding: 5px 7px 0;
    position: absolute;
    right: 0;
    top: 0;
}

.right-gutter-btn-wrap button[disabled=disabled] + i {
    background: #ddd;
    color: #000;
}

.commission-link-wrap {
    text-align: center;
}



/*** recent searches ***/

.recent-searches-wrap h2 {
    border: 0;
    margin-bottom: 5px;
}

.recent-searches ul dl {
    margin-bottom: 15px;
}

.recent-searches li:last-child dl {
    margin-bottom: 0;
}

.recent-searches dt {
    font-weight: bold;
}

.recent-itin {
    margin-bottom: 12px;
    padding-top: 12px;
    border-top: solid 1px #d3d3d3;
}

    .recent-itin:first-child {
        border-top: none;
    }

.recent-searches .is-highlighted {
    padding: 5px;
    background-color: #f2f2f2;
    border: solid 2px #347dc2;
}

.recent-itin.is-highlighted + .recent-itin,
.recent-itin.is-highlighted + .save-all-recent {
    border-top: 0;
    padding-top: 0;
}

.save-all-recent {
    border-top: solid 1px #d3d3d3;
    text-align: right;
    font-weight: bold;
    padding: 12px 0;
}

.save-itin-incomplete {
    display: inline-block;
}

.save-all-incomplete {
    font-weight: normal;
}

.itin-compare-checkbox-wrap label {
    padding-left: 2px;
}

.itin-compare-button-wrap {
    position: absolute;
    margin-top: 10px;
}

.itin-compare-table {
    width: 100%;
    table-layout: fixed;
}

.compare-row-label {
    width: 145px;
}

.itin-compare-table tr th,
.itin-compare-table tr td {
    padding: 5px;
}

.itin-compare-table li {
    list-style: none;
}

.mobile-compare-row,
.placeholder-row {
    display: none;
}

.itin-compare-table thead tr {
    background-color: #f2f2f2;
    border: 1px solid #d3d3d3;
}

.itin-compare-table tbody tr:not(.mobile-compare-row):nth-child(4n) {
    background-color: #f9f9f9;
}

.itin-compare-table tr th,
.itin-compare-table tr td {
    border: solid 1px #d3d3d3;
}

.commission-label-wrap,
.comission-details-wrap {
    clear: both;
    display: block;
    font-size: 11px;
}

@media (max-width: 480px) {
    .itin-compare-table {
        table-layout: auto;
    }

        .itin-compare-table tr {
            display: flex;
        }

            .itin-compare-table tr th,
            .itin-compare-table tr td {
                width: 33%;
                flex: 1;
                display: inline-block;
            }

    .mobile-compare-row {
        display: table-row;
        background-color: #f9f9f9;
        width: 100%;
    }

    .compare-row-label {
        display: none !important;
    }

    .itin-compare-table tbody tr:not(.mobile-compare-row):nth-child(4n) {
        background-color: #fff;
    }
}

/* my saved vacations */

.my-saved-vacations dl {
    margin-top: 10px;
}



/* FILTERS
************************************/

.filters-wrap {
    padding: 10px 8px;
    margin-bottom: 15px;
    border: solid 1px #d3d3d3;
}

    .filters-wrap li {
        list-style: none;
    }

    .filters-wrap input[type="checkbox"] {
        margin-right: 3px;
    }

.responsive-filters-wrap {
    margin: 20px 0;
}

.filter-count-wrap {
    text-align: left;
    padding: 0 0 10px 0;
}

.filters-heading {
    font-size: 1.8rem;
    border-top: solid 1px #d3d3d3;
    padding: 10px 0 5px;
}

.filters-wrap > div:last-of-type {
    margin-bottom: 0;
}

.filter-count {
    font-size: 3.2rem;
    margin-right: 5px;
}

.filter-count-label {
    font-size: 1.6rem;
    font-weight: bold;
    margin: 15px 0;
}

.name-filter-wrap {
    position: relative;
}

    .name-filter-wrap input[type="text"] {
        width: 100%;
    }

    .name-filter-wrap .button {
    }

.name-filter-field {
    width: 100%;
    padding-right: 50px
}

.name-filter-wrap .button {
    position: absolute;
    right: 0;
    top: 0;
}

.filters-wrap .expco-trigger,
.name-filter-label,
.price-filter-label,
.basic-econ-filter-label {
    font-size: 1.4rem;
    font-weight: bold;
    text-decoration: none;
}

.name-filter-label {
    padding-bottom: 10px;
}

.filters-wrap li label {
    float: left;
    width: 90%;
}

.filters-wrap li input {
    float: left;
    clear: left;
}

.clear-filters {
    width: 100%;
    height: 30px;
    margin-top: 15px;
}


/*** price filter ***/

.ui-rangeSlider {
    height: 20px;
    padding-top: 40px;
}

.ui-rangeSlider,
.ui-rangeSlider-container,
.ui-rangeSlider-arrow {
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
}

.ui-rangeSlider-withArrows .ui-rangeSlider-container {
    margin: 0 15px;
}

.ui-rangeSlider-withArrows .ui-rangeSlider-container,
.ui-rangeSlider-noArrow .ui-rangeSlider-container,
.ui-rangeSlider-arrow {
    -webkit-box-shadow: inset 0px 4px 6px -2px RGBA(0,0,0,0.5);
    -moz-box-shadow: inset 0px 4px 6px -2px RGBA(0,0,0,0.5);
    box-shadow: inset 0px 4px 6px -2px RGBA(0,0,0,0.5);
}

.ui-rangeSlider-disabled.ui-rangeSlider-withArrows .ui-rangeSlider-container,
.ui-rangeSlider-disabled.ui-rangeSlider-noArrow .ui-rangeSlider-container,
.ui-rangeSlider-disabled .ui-rangeSlider-arrow {
    -webkit-box-shadow: inset 0px 4px 6px -2px RGBA(0,0,0,0.3);
    -moz-box-shadow: inset 0px 4px 6px -2px RGBA(0,0,0,0.3);
    box-shadow: inset 0px 4px 6px -2px RGBA(0,0,0,0.3);
}

.ui-rangeSlider-noArrow .ui-rangeSlider-container {
    -moz-border-radius: 4px;
    border-radius: 4px;
    border-left: solid 1px #515862;
    border-right: solid 1px #515862;
}

.ui-rangeSlider-disabled.ui-rangeSlider-noArrow .ui-rangeSlider-container {
    border-color: #8490a3;
}

.ui-rangeSlider-container,
.ui-rangeSlider-arrow {
    height: 20px;
    border-top: solid 1px #232a32;
    border-bottom: solid 1px #6a7179;
}

.ui-rangeSlider-disabled .ui-rangeSlider-container,
.ui-rangeSlider-disabled .ui-rangeSlider-arrow {
    border-top-color: #49576b;
    border-bottom-color: #9ca7b3;
}

.ui-rangeSlider-container,
.ui-rangeSlider-arrow,
.ui-rangeSlider-label {
    background: #67707F;
    background: -moz-linear-gradient(top, #67707F 0%, #888DA0 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#67707F), color-stop(100%,#888DA0));
}

.ui-rangeSlider-disabled .ui-rangeSlider-container,
.ui-rangeSlider-disabled .ui-rangeSlider-arrow,
.ui-rangeSlider-disabled .ui-rangeSlider-label {
    background: #ddd;
}

.ui-rangeSlider-arrow {
    width: 14px;
    cursor: pointer;
}

.ui-rangeSlider-leftArrow {
    border-radius: 4px 0 0 4px;
    border-left: solid 1px #515862;
}

.ui-rangeSlider-disabled .ui-rangeSlider-leftArrow {
    border-left-color: #8792a2;
}

.ui-rangeSlider-rightArrow {
    border-radius: 0 4px 4px 0;
    border-right: solid 1px #515862;
}

.ui-rangeSlider-disabled .ui-rangeSlider-rightArrow {
    border-right-color: #8792a2;
}

.ui-rangeSlider-arrow-inner {
    position: absolute;
    top: 50%;
    border: 10px solid transparent;
    width: 0;
    height: 0;
    margin-top: -10px;
}

.ui-rangeSlider-leftArrow .ui-rangeSlider-arrow-inner {
    border-right: 10px solid #a4a8b7;
    left: 0;
    margin-left: -8px;
}

.ui-rangeSlider-leftArrow:hover .ui-rangeSlider-arrow-inner {
    border-right: 10px solid #b3b6c2;
}

.ui-rangeSlider-disabled .ui-rangeSlider-leftArrow .ui-rangeSlider-arrow-inner,
.ui-rangeSlider-disabled .ui-rangeSlider-leftArrow:hover .ui-rangeSlider-arrow-inner {
    border-right-color: #bbc0cf;
}

.ui-rangeSlider-rightArrow .ui-rangeSlider-arrow-inner {
    border-left: 10px solid #a4a8b7;
    right: 0;
    margin-right: -8px;
}

.ui-rangeSlider-rightArrow:hover .ui-rangeSlider-arrow-inner {
    border-left: 10px solid #b3b6c2;
}

.ui-rangeSlider-disabled .ui-rangeSlider-rightArrow .ui-rangeSlider-arrow-inner,
.ui-rangeSlider-disabled .ui-rangeSlider-rightArrow:hover .ui-rangeSlider-arrow-inner {
    border-left-color: #bbc0cf;
}

.ui-rangeSlider-innerBar {
    width: 110%;
    height: 100%;
    left: -10px;
    overflow: hidden;
}

.ui-rangeSlider-bar {
    background: #68a1d6;
    height: 19px;
    margin: 1px 0;
    -moz-border-radius: 4px;
    border-radius: 4px;
    cursor: move;
    cursor: grab;
    cursor: -moz-grab;
    -webkit-box-shadow: inset 0 2px 6px RGBA(0,0,0,0.5);
    -moz-box-shadow: inset 0 2px 6px RGBA(0,0,0,0.5);
    box-shadow: inset 0 2px 6px RGBA(0,0,0,0.5);
}

.ui-rangeSlider-disabled .ui-rangeSlider-bar {
    background: #93aeca;
    -webkit-box-shadow: inset 0 2px 6px RGBA(0,0,0,0.3);
    -moz-box-shadow: inset 0 2px 6px RGBA(0,0,0,0.3);
    box-shadow: inset 0 2px 6px RGBA(0,0,0,0.3);
}

.ui-rangeSlider-handle {
    width: 10px;
    height: 30px;
    background: transparent;
    cursor: col-resize;
}

.ui-rangeSlider-label {
    padding: 5px 10px;
    bottom: 30px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    background: #666;
    color: #fff;
    cursor: col-resize;
}

.ui-rangeSlider-label-value {
    color: #fff;
}

.ui-rangeSlider-disabled .ui-rangeSlider-label-value {
    color: #333;
}

.ui-rangeSlider-label-inner {
    position: absolute;
    top: 100%;
    left: 50%;
    display: block;
    z-index: 99;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    margin-left: -10px;
    border-top: 10px solid #666;
}

.ui-rangeSlider-disabled .ui-rangeSlider-label-inner {
    border-top-color: #ddd;
}

.ui-editRangeSlider-inputValue {
    width: 2em;
    text-align: center;
    font-size: 15px;
}

.ui-rangeSlider .ui-ruler-scale {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
}

.ui-rangeSlider .ui-ruler-tick {
    float: left;
}

.ui-rangeSlider .ui-ruler-scale0 .ui-ruler-tick-inner {
    color: white;
    margin-top: 1px;
    border-left: 1px solid white;
    height: 19px;
    padding-left: 2px;
    position: relative;
}

.ui-rangeSlider .ui-ruler-scale0 .ui-ruler-tick-label {
    position: absolute;
    bottom: 6px;
}

.ui-rangeSlider .ui-ruler-scale1 .ui-ruler-tick-inner {
    border-left: 1px solid white;
    margin-top: 25px;
    height: 5px;
}

/* hide the left label */
.singleSlider .ui-rangeSlider-leftLabel {
    visibility: hidden; /* Needs to be there for script */
}

/* remove left handle */
.singleSlider .ui-rangeSlider-leftHandle {
    display: none;
}

/* hide right handle */
.singleSlider .ui-rangeSlider-rightHandle {
    visibility: hidden; /* Needs to be there for script */
}

/* remove bar */
.singleSlider .ui-rangeSlider-bar {
    display: none;
}

/* shorten container*/
.singleSlider .ui-rangeSlider-container {
    height: 5px;
}


/*** flight filter ***/

.flights-gutter-wrap fieldset > div > fieldset {
    margin-top: 15px;
}

    .flights-gutter-wrap fieldset > div > fieldset.inbound-departure-wrap,
    .flights-gutter-wrap fieldset > div > fieldset.outbound-departure-wrap {
        margin-top: 5px;
    }

.departure-filter-label {
    font-weight: bold;
}


/*** add-on filter ***/

#categoryOptionsArea li ul {
    font-size: 1.1rem;
    padding-left: 20px;
    margin-bottom: 5px;
}


/*** landmarks filter ***/

#landmarkFilterZone2 div {
    clear: both;
}

#landmarkOptionsArea div {
    font-size: 1.2rem;
    margin-left: 17px;
}

/*** features filter ***/

.featureCategoryFilters2 {
    margin-top: 15px;
}

/*** basic economy filter ***/

.hide-basic-economy,
.show-basic-economy {
    display: inline-block;
}

.hide-basic-economy {
    padding-left: 5%;
}

    .hide-basic-economy input,
    .show-basic-economy input {
        margin-right: 3px;
    }

.basic-economy-toggle-wrap {
    text-align: center;
}

    .basic-economy-toggle-wrap i {
        color: #4b6d82;
        font-size: 5rem;
    }

    .basic-economy-toggle-wrap p {
        padding: 5px 0px;
    }

    .basic-economy-toggle-wrap button {
        min-width: 220px;
        margin: 5px 0px;
    }


/* ADVANCED SEARCH (single + multi stop)
************************************/

.restool-wrap .expco-content-wrap,
.vacation-type-wrap {
    margin-bottom: 25px;
}

    .vacation-type-wrap legend {
        margin-top: 25px;
    }

.restool-wrap legend .expco-trigger,
.restool-wrap legend a,
.restool-wrap legend button {
    color: #333;
    font-weight: bold;
    font-size: inherit;
    text-decoration: none;
}

.restool-wrap fieldset .vacation-experience-wrap label {
    display: inline-block;
    margin: 0 10px 5px 0;
    width: 225px;
}

.restool-wrap fieldset select,
.restool-wrap fieldset input[type="text"] {
    width: 100%;
}

.restool-wrap .expco-content-wrap > div,
.main-package-options > div,
.package-type,
.dest-region-wrap,
.ms-departing-from-wrap,
.supplier-wrap,
.ms-supplier-wrap,
.ms-depart-date-wrap,
.rooms-wrap,
.hotel-name-wrap,
.hotel-brand-wrap,
.going-to-wrap,
.source-code-wrap {
    margin-bottom: 10px;
    vertical-align: top;
}

.add-party-restool-wrap .supplier-wrap {
    display: none;
}

.add-party-restool-wrap .package-type-wrap {
    display: block;
}

.restool-wrap .expco-content-wrap > div.flex-link {
    margin: 0;
}

    .restool-wrap .expco-content-wrap > div.flex-link a {
        position: relative;
        top: -12px;
    }

.package-type legend {
    margin-bottom: 5px;
}

.vacation-type-wrap {
    position: relative;
}

    .vacation-type-wrap input {
        cursor: pointer;
        margin-right: 5px;
        margin-top: 3px;
    }

    .vacation-type-wrap label {
        cursor: pointer;
        display: inline-block;
        vertical-align: top;
        margin-right: 100px;
    }

        .vacation-type-wrap label:last-child {
            margin-right: 0;
        }

    .vacation-type-wrap br {
        display: none;
    }

.selectize-input {
    border-radius: 0 !important;
}

div#CalendarTarget > .departing-from-wrap {
    min-width: 260px;
    width: 30%;
    margin-right: 1.5rem;
}

div#CalendarTarget > .departing-from-wrap-secondary {
    min-width: 145px;
    width: 14%;
}

.departing-from-wrap,
.package-type-wrap,
.supplier-wrap,
.going-to-wrap,
.return-date-wrap,
.rooms-wrap,
.dest-region-wrap,
.ms-departing-from-wrap,
.ms-depart-date-wrap,
.ms-supplier-wrap,
.source-code-wrap,
.plcode-wrap {
    display: inline-block;
    min-width: 279px;
    width: 46.8%;
    margin-right: 2%;
}

.los-exclusiveNonStopVacation-wrap
{
    display: inline-block;
    min-width: 279px;
    width: 5%;
}

.origin-depart-exclusiveNonStopVacation-wrap
{
    display: inline-block;
    min-width: 279px;
    width: 5%;
}

.departing-from-wrap,
.rooms-wrap,
.supplier-wrap,
.number-nights-wrap {
    margin-right: 2%;
}

.depart-date-wrap {
    display: inline-block;
    margin-right: 2.7%;
    min-width: 180px;
    width: 30.1%;
}

.number-nights-wrap {
    display: inline-block;
    min-width: 78px;
    width: 13.5%;
}

.number-of-rooms-wrap,
.adults-wrap,
.children-wrap {
    float: left;
    margin-right: 6.7%;
    width: 29.5%;
}

.multi-room[style="display: block;"],
.multi-room[style="display: block;"] + div,
.children-ages-label {
    font-size: 1.2rem;
}

.multi-room .room-number-label {
    border-bottom: 1px dashed #aaa;
    clear: left;
    display: block;
    font-weight: bold;
    margin-bottom: 5px;
    padding: 15px 0 5px;
}

.children-ages-wrap {
    clear: both;
    margin-bottom: 10px;
}

    .children-ages-wrap:after {
        clear: both;
        content: "";
        display: table;
    }

.children-ages-label {
    font-weight: bold;
    margin-bottom: 5px;
    padding-top: 15px;
}

    .ChildAgeDisclaimer,
    .children-ages-label.subLabel {
        font-weight: normal;
    }

.child-age-wrap {
    float: none;
    min-width: 45px;
    width: 100%;
}

    .child-age-wrap:last-child {
        margin-right: 0;
    }

.childAge {
    float: left;
    width: 16.8%;
    margin-right: 4%;
    padding: 1% 0;
    min-width: 57px;
}

.childDob {
    float: none;
    width: 100%;
    margin-right: 0;
    padding: 1% 0;
    clear: both;
}

.max-pax {
    display: none;
}

.number-of-rooms-wrap + .number-of-pax-wrap,
.number-of-pax-wrap + .number-of-pax-wrap {
    margin-left: 20px;
}

.promo-code-wrap,
.travel-protection-wrap,
.shop-by-wrap,
.ms-dest-info {
    min-width: 275px;
    width: 46.8%;
}

.travel-protection-wrap, .shop-by-wrap {
    border: 2px solid #4b6d88;
    padding: 10px;
}

.shop-by-wrap {
    margin-bottom: 25px;
}

    .shop-by-wrap label {
        margin: 0 25px 0 5px;
    }

    .shop-by-wrap p {
        font-size: 1.2rem;
        font-style: italic;
        margin-top: 5px;
    }

.travel-protection-wrap {
    margin-top: 25px;
}

    .travel-protection-wrap legend,
    .shop-by-wrap legend {
        font-weight: bold;
        padding: 0 5px;
        width: auto;
    }

.vacationDetails h3 span {
    font-size: 12px;
}

.airline-wrap,
.cabin-preference-wrap,
.number-of-stops-wrap,
.depart-time-wrap,
.return-time-wrap,
.fare-preference-wrap,
.hotel-name-wrap,
.hotel-brand-wrap,
.checkin-date-wrap,
.checkout-date-wrap,
.car-company-wrap,
.pickup-date-wrap,
.dropoff-date-wrap,
.pickup-location-wrap,
.dropoff-location-wrap {
    display: inline-block;
    margin-right: 6%;
    width: 27%;
}

.car-company-wrap,
.fare-preference-wrap,
.dest-region-wrap,
.ms-departing-from-wrap,
.ms-supplier-wrap,
.ms-depart-date-wrap,
.ms-supplier-wrap,
.rooms-wrap,
.multistop-restool-wrap .return-date-wrap {
    display: block;
}

.displayNone.departing-from-wrap,
.displayNone.ms-departing-from-wrap {
    display: none;
}

.number-of-stops-wrap,
.children-wrap {
    margin-right: 0;
}

.dropoff-date-wrap {
    margin-right: 10%;
}

.search-container {
    text-align: right;
}

.multistop-restool-wrap .main-package-options {
    border-bottom: 10px solid #f2f2f2;
    margin-bottom: 20px;
}

.multistop-destination-wrap,
.multistop-depart {
    border-top: 10px solid #f2f2f2;
    margin-top: 25px;
    position: relative;
}

.remove-dest-wrap {
    border: 1px solid #dedede;
    border-radius: 3px;
    padding: 5px 0;
    position: absolute;
    right: 0;
    top: 0;
}

    .remove-dest-wrap input {
        margin: 0 5px -3px 0;
    }

    .remove-dest-wrap a,
    .add-destination-before-btn-wrap a {
        min-width: 165px;
    }

.ms-going-to-wrap {
    display: inline-block;
    margin-right: 3%;
    min-width: 275px;
    width: 30.5%;
}

.num-nights-wrap {
    display: inline-block;
    min-width: 120px;
    vertical-align: top;
    width: 13%;
}

.add-destination-wrap {
    margin: 10px 0 30px;
    padding: 10px;
    position: relative;
    border: 1px solid #dfdfdf;
}

    .add-destination-wrap p {
        width: 55%;
    }

    .add-destination-wrap input {
        position: absolute;
        right: 8px;
        top: 8px;
    }

.ms-component-needs {
    margin-top: 10px;
    list-style: none;
}

.multistop-restool-wrap .depart-date-wrap {
    margin-right: 0;
}

.multistop-restool-wrap .return-date-wrap {
    padding: 10px 0 15px;
    margin-bottom: 0;
}

.multistop-restool-wrap .search-container {
    margin-top: 25px;
}

.ms-flight-options-wrap,
.multistop-restool-wrap .departing-from-wrap {
    margin-top: 15px;
}

.multistop-destination-wrap h4 {
    font-weight: bold;
}

.multistop-destination-title {
    margin-top: 20px;
}

    .multistop-destination-title h4 {
        width: 45%;
        float: left;
    }

.add-destination-before-btn-wrap {
    text-align: right;
}

.multistop-destination-wrap .remove-dest-wrap {
    position: relative;
    text-align: right;
    border: none;
}


.multistop-restool-wrap legend .expco-trigger {
    font-size: 1.4rem;
    margin-left: -2px;
    margin-top: 15px;
}

.searchbar-wrap {
    text-align: right;
}

.ms-return-flight-wrap .ms-flight-options-wrap,
.ms-return-flight-wrap legend .expco-trigger {
    margin-top: 0;
}

.ms-depart-date-wrap {
    display: block;
    clear: both;
}

@media (max-width: 640px) {
    .restool-wrap .expco-content-wrap > div,
    .dest-region-wrap,
    .promo-code-wrap,
    .departing-from-wrap,
    .ms-going-to-wrap,
    .num-nights-wrap,
    .hotel-name-wrap,
    .hotel-brand-wrap,
    .checkin-date-wrap,
    .checkout-date-wrap,
    .going-to-wrap,
    .airline-wrap,
    .cabin-preference-wrap,
    .number-of-stops-wrap,
    .ms-dest-info,
    .ms-departing-from-wrap,
    .supplier-wrap,
    .ms-depart-date-wrap,
    .ms-supplier-wrap,
    .source-code-wrap {
        margin-right: 0;
        width: 100%;
    }

    .multistop-restool-wrap .checkin-date-wrap,
    .ms-going-to-wrap, .airline-wrap,
    .cabin-preference-wrap,
    .checkin-date-wrap {
        margin-bottom: 15px;
    }

    .vacation-type-wrap input {
        left: 0;
        position: absolute;
    }

    .vacation-type-wrap label {
        display: block;
        margin-left: 18px;
        margin-right: 0;
    }

    .restool-wrap .button-large {
        float: none;
        width: 100%;
    }

    .depart-date-wrap,
    .depart-from-ro-fieldset,
    .res-depart-from-ro-fieldset {
        margin-right: 5% !important;
        width: 64.5% !important;
    }

    .res-depart-from-ro-fieldset {
        margin-bottom: 10px;
    }

    .number-nights-wrap {
        width: 29.2% !important;
    }

    .remove-dest-wrap {
        width: auto !important;
    }
}

@media (max-width: 639px) {
    .add-destination-wrap input {
        position: static;
        margin-top: 10px;
    }

    .add-destination-wrap p {
        width: 100%;
    }
}


/* AVAILABILITY
************************************/

.COMPONENT-SUMMARY-WRAP {
    width: 70%;
    float: left;
    margin: 0;
    padding: 10px;
}

.COMPONENT-OPTIONS-LIST {
    display: block !important;
    width: 100%;
    margin: 0;
    padding: 0;
}

    .COMPONENT-OPTIONS-LIST > li {
        list-style-type: none;
        clear: both;
        margin-bottom: 12px;
        border: solid 1px #d3d3d3;
    }

.COMPONENT-TITLE-WRAP {
    padding-bottom: 10px;
    position: relative;
}

.component-details-wrap {
    border-top: solid 8px #d3d3d3;
}

.SELECTED-COMPONENT {
    display: none;
}

.airContainerSelected .SELECTED-COMPONENT,
.componentContainerSelected .SELECTED-COMPONENT,
.avail-grid-table .flight-current-selection,
.avail-grid-table .hotel-current-selection {
    color: #fff;
    display: block;
    background: #007bc4;
    border: 1px solid #007bc4 !important;
    text-align: right;
    letter-spacing: .5px;
    font-size: 1.4rem;
    padding: 3px 5px !important;
    width: 100%;
}

.hotel-options-list .avail-grid-table .hotel-current-selection,
.flight-options-list .avail-grid-table .flight-current-selection {
    border: 0;
}

.componentContainerSelected,
.airContainerSelected {
    border: solid 2px #2e7cbe !important;
}

.NO-MATCH-WRAP {
    text-align: center;
    padding: 30px 2%;
    border: solid #000;
    border-width: 2px 0;
    font-size: 2rem;
    margin: 40px auto;
}

    .NO-MATCH-WRAP p {
        padding-bottom: 20px;
    }

.VIEW-ALL-AVAIL-WRAP {
    text-align: center;
    font-size: 2rem;
    margin: 15px auto;
}

.PRICE-SELECT-WRAP {
    padding: 10px;
}


/** Flight Availability **/

#flightActive {
    position: relative;
}

.active-flight-panel-header,
.inactive-flight-panel-header {
    border: solid 1px #d3d3d3;
    border-left: 0;
    border-right: 0;
    padding: 6px 0;
    margin: 4px 0 0;
}

.active-flight-panel-header {
    border-bottom: 0;
}

.active-avail-panel-header,
.inactive-avail-panel-header {
    border: solid 1px #d3d3d3;
    border-left: 0;
    border-right: 0;
    padding: 6px 0;
    margin: 4px 0 0;
}

.active-avail-panel-header {
    border-bottom: 0;
}

.active-summary-panel-header {
    border: solid 1px #d3d3d3;
    border-left: 0;
    border-right: 0;
    padding: 6px 0;
    margin: 4px 0 0;
}

.multistop-summary-dest-divider {
    border-top: 0;
    margin-bottom: 20px 0 10px;
}

.avail-summary-accordian-title,
.avail-summary-inactive-title {
    display: inline-block;
    border: 0;
    margin-bottom: 0;
    padding-bottom: 0;
    width: inherit;
}

    .avail-summary-accordian-title i {
        margin-left: 1px;
    }

.avail-header-summary,
.feature-avail-summary {
    width: 60%;
    float: right;
}

.feature-avail-summary {
    padding-top: 10px;
}

    .avail-header-summary ul,
    .feature-avail-summary ul {
        list-style: none;
        margin-bottom: 10px;
    }

        .avail-header-summary ul.summary-flight-detail,
        .avail-header-summary ul.avail-summary-flight-list:last-child,
        ul.hotel-summary-list:last-child {
            margin-bottom: 0;
        }

.summary-flight-detail li span,
.summary-flight-detail li strong {
    margin-right: 10px;
}

.avail-results-count {
    display: none;
}

.avail-header-summary {
    visibility: hidden;
    opacity: 0;
    max-height: 0;
}

.avail-summary-accordian-title.is-collapsed + .avail-header-summary,
.avail-summary-inactive-title + .avail-header-summary {
    visibility: visible;
    opacity: 1;
    max-height: 1000px;
    transition: visibility,opacity, max-height;
    transition-delay: 0.4s;
}

.show-summary-header-border {
    border-bottom: solid 1px #d3d3d3;
    transition: border-bottom;
    transition-delay: 0.4s;
}

.hide-summary-header-border {
    border-bottom: 0;
    transition: border-bottom;
    transition-delay: 0.4s;
}


.show-avail-summary,
.show-avail-results-count {
    display: block;
}

.avail-results-count {
    position: absolute;
    top: 15px;
    right: 0;
}

.avail-count-wrap {
    margin-right: 20px;
}


/* Additional Search Options - Flight */

.avail-addtl-search-title {
    font-size: 1.4rem;
    border-bottom: 0;
    margin-bottom: 5px;
}

.avail-addtl-search {
    margin-bottom: 20px;
}

.addtl-search-3col-wrap {
    width: 29%;
    margin-right: 3%;
    display: inline-block;
}

.avail-addtl-search select,
.avail-addtl-search input[type="text"] {
    width: 100%;
    margin-bottom: 10px;
}

/* ALT Origin/Destination Dropdown Styles */

.actbBgColor {
    background-color: #FFFFFF;
}

    .actbBgColor td {
        padding: 4px 2px;
    }

.actbTextColor {
    color: #FFFFFF;
}

.actbHColor {
    background-color: #f2f2f2;
}

.actbHStyle {
    text-decoration: underline;
    font-weight: bold;
}

.airline-depart-wrap {
    width: 48%;
    margin-right: 2%;
    display: inline-block;
}

    .airline-depart-wrap:last-child {
        margin-right: 0;
    }


@media (min-width:1180px) {
    .addtl-search-3col-wrap {
        width: 100%;
        margin-right: 0;
        display: block;
    }
}

@media (max-width: 580px) {
    .addtl-search-3col-wrap {
        width: 47%;
        margin-right: 2%;
        display: inline-block;
    }
}

@media (max-width: 380px) {
    .addtl-search-3col-wrap {
        width: 100%;
        margin-right: 0%;
        display: block;
    }
}


@media (max-width: 1080px) {
    .addtl-search-airline-wrap {
        width: 46%;
        margin-right: 2%;
        display: inline-block;
    }
}


@media (max-width: 979px) {
    .avail-summary-accordian-title.is-collapsed + .avail-header-summary,
    .avail-summary-inactive-title + .avail-header-summary {
        width: 100%;
        float: none;
    }
}

@media (max-width: 860px) {
    .avail-results-count {
        position: inherit;
        margin: 0 0 20px 0;
    }

    #GroupFlightUpdateTable .wider-display {
        display: none;
    }

    #GroupFlightUpdateTable .current-balance-mobile-label, #GroupFlightUpdateTable td:not(#GroupFlightUpdateTable table td) {
        display: block
    }

    #GroupFlightUpdateTable .group-flight-information-wrap .ui-datepicker-trigger {
        top: 24px;
    }

    #flightInfoStopTable .current-balance-mobile-label, #flightInfoStopTable td:not(#flightInfoStopTable table td) {
        display: block
    }

}

@media (max-width: 767px) {
    .avail-results-count {
        position: absolute;
        margin: 0;
    }
}

@media (max-width: 580px) {
    .avail-results-count {
        position: inherit;
        margin: 0 0 20px 0;
    }
}



/* HOTEL AVAILABILITY
************************************/

#hotelActive .avail-content-wrap {
    border-top: 0;
    padding-top: 0;
}

.date-offset {
    background-color: #b9dbe5;
    margin-bottom: 10px;
    padding: 10px;
}

.hotel-results-wrap {
    font-size: 2.2rem;
    margin-bottom: 10px;
}

.hotel-options-list > li {
    border-width: 5px 0 0 0;
    border-color: #d3d3d3;
    border-style: solid;
}

.hotel-options-list li {
    list-style: none;
    display: block;
}

.hotel-options-list .avail-grid-table tr {
    margin-bottom: 0;
    border-top: 0;
}

.hotel-options-list .avail-grid-table td {
    padding: 7px;
    vertical-align: top;
    border-width: 0 1px;
}

.hotel-options-list table {
    width: 100%;
}

.hotel-options-list h2 {
    border-bottom: none;
    padding: 0;
    margin: 0;
    line-height: 1.2;
    font-weight: bold;
}

button.cleaning-badge {
    margin-left: auto;
    padding: 10px 0 0 10px;
}

    button.cleaning-badge img {
        width: 75px;
    }

.promo-wrap {
    background-color: #fff3e1;
    padding: 5px;
}

.hotel-options-list .avail-grid-table tr .promo-wrap {
    width: 100%;
    margin: 0;
}

.promo-avail-info-toggle-wrap .promo-wrap {
    margin-bottom: 20px;
}

.hotel-options-list table .hotel-avail-col-1 {
    width: 100%;
    position: relative;
    display: flex;
    align-items: flex-start;
}

.hotel-options-list table .hotel-avail-col-2 {
    width: 25%;
}

.hotel-avail-col-1 .rating0_0 {
    display: none;
}

.hotel-room-repeater .room-repeater-visibility {
    display: none !important;
}

.hotel-room-col-1 {
    width: 40%;
}

.hotel-room-col-2 {
    width: 35%;
}

.hotel-room-col-3 {
    width: 25%;
    text-align: right;
}

.hotel-options-list table .view-all-room-types-wrap {
    width: 100% !important;
    padding: 4px;
}

.hotel-options-list table .hotel-room-col-1 {
    width: 40%;
}

.hotel-options-list table .hotel-room-col-2 {
    width: 35%;
}

.hotel-options-list table .hotel-room-col-3 {
    width: 25%;
}

.hotel-rating-info {
    margin-top: 5px;
}

.trip-advisory-wrap {
    border-left: 1px solid #d3d3d3;
    display: inline-block;
    margin-left: 5px;
    padding-left: 5px;
}

.trip-advisor-image {
    vertical-align: text-bottom;
    margin-right: 5px;
    width: 100px;
}

.trip-advisor-label {
    padding-right: 5px;
}

.view-all-room-types-wrap img {
    position: relative;
    top: 2px;
}

.view-all-room-types-wrap .expco-trigger-text {
    font-weight: bold;
}

.hotel-total-price a {
    color: #d97827;
    font-size: 2.4rem;
    line-height: 1;
}

.price-difference-wrap {
    font-size: 1.2rem;
}

.rr-points-wrap {
    font-size: 1.2rem;
    line-height: 1.3;
    margin-top: 10px;
}

.value-indicator {
    padding-bottom: 10px;
}

    .value-indicator img {
        display: inline-block;
        margin-bottom: -4px;
        margin-right: 3px;
        width: 15px;
    }

.added-value-wrap {
    padding: 5px 0;
}

.up_from_price_pill br {
    display: none;
    height: 0;
    clear: none;
}

.up_from_price_pill {
    padding-bottom: 0 !important;
    margin: 2px 0;
    line-height: inherit !important;
}

.up_summary_pm,
.up_pm {
    color: #0E589F !important;
}

.added-value-wrap .link {
    text-align: left;
}

.hotel-avail-calendar {
    background: transparent;
    border: none;
    padding: 0;
    cursor: pointer;
    float: right;
}

    .hotel-avail-calendar img {
        background: url("https://trisept.widen.net/content/4oczebhiiq/png/TRI_ICON_CAL_calendar.png") no-repeat scroll left top;
        width: 24px;
        margin-top: -2px;
    }

.hotel-avail-room-type-wrap {
    font-weight: bold;
    font-size: 1.4rem;
}

    .hotel-avail-room-type-wrap button {
        float: right;
        width: 20px;
    }

.sales-email-option-wrap {
    padding-top: 5px;
}

    .sales-email-option-wrap input {
        margin-top: 4px;
    }

.upgrade-note {
    border-top: 1px dashed #d3d3d3;
    font-size: 1.2rem;
    font-style: italic;
    line-height: 1.2;
    margin-top: 10px;
    padding-top: 10px;
}

.hotel-multi-room-type {
    min-height: 30px;
}

.mixedRoomIcon {
    background: url("https://trisept.widen.net/content/raehvbkagn/jpeg/TRI_ICON_NAV_MixedRoomTypeIcon.jpg") no-repeat;
    height: 13px;
    margin-bottom: -2px;
    width: 14px;
}

.no-filter-results {
    border: 1px solid #d3d3d3;
    font-size: 1.8rem;
    font-weight: bold;
    margin: 20px 0;
    padding: 10% 0;
    text-align: center;
}

    .no-filter-results p {
        margin-bottom: 20px;
    }

.hotel-not-available-wrap {
    background-color: #f2f2f2;
    padding: 3px;
}

.earn-points-message {
    padding: 5px 0px;
}

/* hotel collapsed */

.hotel-summary-details > a {
    font-weight: bold;
}


/* hotel left gutter filters */

.hotels-gutter-wrap fieldset > div > fieldset {
    margin-top: 15px;
}

.filter-accordian-title {
    margin-left: -3px;
}

.hotel-room-col-3 button {
    margin-top: 10px;
}

.hotels-map-wrap {
    border-top: 1px solid #d3d3d3;
    padding-top: 10px;
    margin-top: 10px;
}

    .hotels-map-wrap i {
        font-size: 2rem;
    }


@media (max-width: 580px) {
    .view-all-room-types-wrap {
        text-align: center;
        background: #f9f9f9;
    }

    .hotel-options-list > li {
        border-top-color: #666;
    }

    .hotel-options-list .avail-grid-table td.hotel-avail-col-2 {
        padding-top: 0;
        padding-left: 6px;
    }

    .hotel-avail-room-type-wrap {
        padding: 5px 0;
    }

    .hotel-avail-room-type-wrap {
        border-bottom: 1px dashed #ccc;
        padding-bottom: 5px;
    }

    .avail-grid-table td.mobile-full-col {
        border-top: 0;
        text-align: left !important;
    }

    .hotel-options-list .avail-grid-table td {
        border: 0 !important;
    }

        .hotel-options-list .avail-grid-table td.hotel-avail-col-2,
        .hotel-options-list .avail-grid-table td.mobile-full-col {
            border-top: 0;
        }

    .hotel-room-col-3 > div {
        background: #f9f9f9;
        padding: 3px 10px 10px;
        border: 1px solid #f0f0f0;
        text-align: center;
    }

    .hotel-room-col-3 button {
        width: 50%;
    }
}



/* CAR AVAILABILITY
************************************/

#vehicleActive {
    position: relative;
}

.car-matrix-wrap {
    min-width: 480px;
}

#vehicleActive .avail-content-wrap {
    border-top: 0;
    padding-top: 0;
}

.vehicle-debug-button-wrap {
    width: 100%;
    margin-top:20px;
}

    .vehicle-debug-button-wrap input.button,
    .vehicle-debug-button-wrap .button:enabled {
        padding: 0 16px;
        width: 135px;
    }

.vehicle-debug-info {
    margin-top: 10px;
}

.car-heading-info-wrap {
    padding: 20px 0 10px 0;
}

.more-cars-wrap {
    float: right;
}

.car-time-wrap {
    float: left;
}

.car-dropoff-label {
    margin-left: 15px;
}

.car-icons {
    position: absolute;
    top: 3px;
    right: 0;
}

.pickup-dropoff-wrap {
    margin: 2% auto;
}

.car-pickup strong,
.car-dropoff strong {
    text-transform: uppercase;
}

.car-pickup,
.car-dropoff {
    font-size: 1.3rem;
    width: 49%;
    float: left;
}

.car-pickup {
    margin-right: 2%;
}

.car-deposit {
    font-size: 1.1rem;
    color: #D90707;
}

.car-matrix-table {
    border-collapse: separate;
    border-bottom: 1px solid #dedede;
    border-right: 1px solid #dedede;
    width: 100%;
}

    .car-matrix-table td,
    .car-matrix-table th {
        border-top: 1px solid #dedede;
        border-left: 1px solid #dedede;
        font-size: 1.2rem;
    }

        .car-matrix-table td.columnHover {
            background: #fcfcfc;
        }

    .car-matrix-table tr.rowHover:hover {
        background-color: #fcfcfc;
    }

    .car-matrix-table tbody tr td:hover {
        background-color: #f2f2f2;
    }

    .car-matrix-table tbody tr td.carDescription:hover,
    .car-matrix-table tr.rowHover:hover td.carDescription {
        background-color: #fcfcfc;
    }

.cm-component-wrap {
    padding-bottom: 5px;
}

.cm-details-wrap {
    position: relative;
}

    .cm-details-wrap > div {
        position: absolute;
        right: 5px;
        margin-top: 4px;
        text-align: right;
    }

.cm-rental-detail {
    text-align: center;
    padding-top: 5px;
}

.rate-reduction-wrap {
    background-color: #d97827;
    margin-top: 5px;
    padding: 2px;
}

    .rate-reduction-wrap span {
        color: #fff;
    }

.car-price-cell {
    width: 19%;
    text-align: center;
    vertical-align: bottom;
}

.car-description-wrap {
    vertical-align: middle;
    padding: 5px;
    text-align: right;
}

.cm-total-price {
    font-weight: bold;
    font-size: 1.3rem;
}

.cm-current-selection {
    display: none;
    background-color: #2e7cbe;
    color: #fff;
    font-weight: bold;
    padding: 3px;
    margin: 3px;
}

.componentContainerSelected .cm-current-selection {
    display: block;
}

.car-matrix-table .cm-details-modal {
    margin: 0 3px 4px 3px;
}

.car-indicator-wrap {
    margin: 10px 0 5px 0;
}

.earn-rewards-info {
    text-align: right;
    padding: 5px 0px;
}

@media (max-width: 580px) {
    .pickup-dropoff-wrap {
        margin: 4% auto;
    }

    .earn-rewards-info {
        float: left;
        text-align: left;
        width: 100%;
    }
}


/* FEATURE AVAILABILITY
************************************/

#featuresActive {
    position: relative;
}

.feature-component-details {
    padding: 10px;
}

.feature-title-wrap {
    width: 68%;
    float: left;
}

.feature-title {
    font-weight: bold;
}

.feature-from-price {
    float: right;
    text-align: right !important;
}

    .feature-from-price .avail-price {
        font-size: 1.4rem;
    }

.feature-price-select-wrap {
    background-color: #f2f2f2;
    padding: 10px;
    margin-top: 10px;
    clear: both;
}

.feature-price-select-wrap,
.feature-passenger-list li,
.feature-date-input-wrap,
.feature-show-time {
    display: flex;
}

    .feature-price-select-wrap > *,
    .feature-passenger-list li > * {
        align-self: center;
    }

    .feature-passenger-list label,
    .feature-date-input-wrap label,
    .feature-show-time label {
        min-width: 100px;
        align-self: center;
    }

    .feature-show-time select {
        width: 100%;
    }

.feature-price-breakdown > div {
    display: inline-block;
}

.feature-price-breakdown div:nth-child(2),
.feature-price-breakdown div:nth-child(3) {
    margin-left: 10px;
}

.feature-price-breakdown {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

.feature-price-btn-wrap,
.feature-price-btn-wrap .button {
    text-align: right;
    margin-left: auto;
}

    .feature-price-btn-wrap .avail-price {
        vertical-align: sub;
    }

.feature-options-list #featureRateSelectionComponent {
    margin-bottom: 0px;
}

.feature-options-wrap {
    margin-top: 10px;
}

.feature-option-details li {
    border: 0;
    margin-top: 5px;
}

.feature-sales-email-wrap label {
    display: inline;
    margin-right: 2px;
}

.feature-show-time {
    margin-bottom: 10px;
}

.featureSelectRepeater,
.feature-rate-select {
    margin-top: 0;
}

.feature-passenger-list {
    list-style: none;
}

    .feature-passenger-list li:nth-child(2),
    .feature-passenger-list li:nth-child(3) {
        margin-top: 5px;
    }

    .feature-passenger-list select {
        width: 97px;
    }

    .feature-passenger-list strong {
        margin-left: 10px;
    }

.feature-earn-rewards {
    margin-bottom: 5px;
}

.feature-sales-message {
    float: right;
    text-align: right;
    max-width: 200px;
}

.feature-sales-advisory {
    padding: 10px 10px 10px 0;
}

    .feature-sales-advisory li {
        margin-left: 20px;
    }

.feature-debug-button-wrap {
    position: absolute;
    top: 10px;
    right: 0;
}

    .feature-debug-button-wrap input.button,
    .feature-debug-button-wrap .button:enabled {
        padding: 0 16px;
        width: 135px;
    }

.feature-debug-info {
    margin-top: 10px;
}


@media (max-width: 1250px) {
    .feature-price-breakdown > div {
        display: block;
    }

    .feature-price-breakdown div:nth-child(2),
    .feature-price-breakdown div:nth-child(3) {
        margin-left: 0;
    }
}

@media (max-width: 480px) {
    .feature-options-list .feature-passenger-list,
    .feature-options-list .feature-date-input-wrap {
        width: 100%;
    }

    .feature-options-list .feature-passenger-list {
        padding-top: 10px;
    }

    .componentContainerSelected .feature-price-btn-wrap .button {
        width: 100%;
    }

    .componentContainerSelected .feature-price-btn-wrap .secondary-button {
        margin-bottom: 5px;
    }

    .feature-price-btn-wrap .button {
        display: block;
    }

    .feature-sales-message {
        max-width: 100%;
        float: none;
        text-align: left;
        padding-top: 10px;
    }
}


/* Price Matrix
************************************/

.price-matrix-wrap {
    overflow-x: auto;
}

.price-matrix-table {
    width: 100%;
    white-space: nowrap;
    font-size: 1.2rem;
}

    .price-matrix-table th {
        border-bottom: solid 1px #d3d3d3;
        white-space: nowrap;
    }

    .price-matrix-table th,
    .price-matrix-table td {
        padding: 5px;
        text-align: center;
        vertical-align: bottom;
    }

.price-matrix-content th {
    border: 0;
    text-align: left;
}

.price-matrix-content td span {
    display: none;
}

.price-matrix-content td strong {
    font-weight: normal;
}

.price-matrix-content td:after {
    content: "";
    clear: both;
    display: table;
}

.pm-item-name {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 220px;
    max-width: 300px;
}


@media (max-width:980px) {

    .price-matrix-wrap {
        overflow-x: visible;
    }

    .price-matrix-table {
        white-space: normal;
    }

    .price-matrix-header {
        display: none;
    }

    .price-matrix-content th {
        border-bottom: solid 1px #d3d3d3;
        padding-top: 10px;
        width: 100%;
        display: block;
    }

    .price-matrix-table th,
    .price-matrix-table td {
        text-align: right;
    }

    .pm-item-name {
        overflow: visible;
        max-width: 100%;
        margin-top: 15px;
    }

    .price-matrix-content td {
        display: inline-block;
        width: 48%;
        border-bottom: solid 1px #f2f2f2;
    }

        .price-matrix-content td:last-child {
            border-bottom: 0;
        }

        .price-matrix-content td span {
            display: block;
            width: 48%;
            float: left;
            text-align: left;
        }

        .price-matrix-content td strong {
            font-weight: bold;
        }

        .price-matrix-content td:nth-child(even) {
            margin-right: 2%;
        }
}

@media (max-width: 380px) {
    .price-matrix-content {
        display: block;
        margin-bottom: 10px;
    }

        .price-matrix-content td {
            display: block;
            width: 100%;
        }

            .price-matrix-content td:nth-child(even) {
                padding-right: 0px;
            }
}

.avail-content-wrap {
    border-top: 0;
    padding-top: 0;
}

.avail-sorting-header {
    padding: 10px;
    background-color: #243a4f;
}

.avail-grid-table {
    width: 100%;
}

    .avail-grid-table,
    .avail-grid-table thead,
    .avail-grid-table tbody,
    .avail-grid-table th,
    .avail-grid-table tr,
    .avail-grid-table td {
        display: block;
        vertical-align: top;
    }

        .avail-grid-table tr {
            display: -ms-flexbox;
            display: flex; /* Don't add 'important'; it breaks filtering */
            height: 100%;
            border-bottom: solid 1px #d3d3d3;
            border-top: solid 10px #d3d3d3;
            flex-wrap: wrap;
            margin-bottom: 20px;
            align-items: stretch;
        }

            .avail-grid-table tr.selected-component {
                background-color: #f2f2f2;
                border: solid 2px #007bc4;
            }

        .avail-grid-table thead {
            background-color: #007bc4;
        }

            .avail-grid-table thead tr {
                border-bottom: 0;
            }

        .avail-grid-table th,
        .avail-grid-table td {
            display: inline-block;
            width: 20%;
            min-height: 100%;
            align-items: stretch;
            align-content: stretch;
            border-right: solid 1px #d3d3d3;
            padding: 5px;
        }

            .avail-grid-table th:first-child,
            .avail-grid-table td:first-child,
            .avail-flight-carrier {
                border-left: solid 1px #d3d3d3;
            }

                .avail-flight-carrier * {
                    font-size: 1.1rem;
                }

        .avail-grid-table thead th,
        .avail-grid-table thead th:first-child {
            border: 0;
        }

        .avail-grid-table thead a {
            color: #fff;
            text-decoration: none;
        }

.avail-grid-select-wrap {
    text-align: right;
    margin: 10px 0;
}


/** Flight specific styles **/

/*shop by schedule*/

.flight-grid-schedule {
    display: flex;
    flex-flow: row wrap;
    align-items: stretch;
    font-size: 1.2rem;
    border-bottom: solid 1px #d3d3d3;
    margin-bottom: 10px;
}

    .flight-grid-schedule ul {
        list-style: none;
    }

.schedule-inbound-col,
.schedule-outbound-col {
    width: 50%;
    margin: 0 auto;
}

.shopByFlightSorting .shopByCol1,
.shopByFlightSorting .shopByCol2,
.shopByFlightSorting .shopByCol3,
.shopByFlightSorting .shopByCol4 {
    border: 0;
}

.schedule-flex {
    display: flex;
    flex-flow: row wrap;
}

    .schedule-flex.currentSelection {
        border: solid 3px #347dc2;
        background-color: #f2f2f2;
    }

/* removed flexbox for vertical stretching because of padding issues - leaving the styles in case we want to re-implement and fix 
.schedule-col-flex
{
    display:flex;
    flex-direction: column;
    align-items:stretch;
    min-height: 100%;
}
.shopByFlightLeg
{
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
*/

#sbsLeg1 .shopByFlightSorting,
#sbsLeg1 .shopByPerPageTop,
.outboundHeader {
    border-right: solid 1px #d3d3d3;
}

.individualFlight {
    flex: 1;
    border: solid 1px #d3d3d3;
    border-top: 0;
}

.groupedFlights {
    border-bottom: solid 5px #243a4f;
}

.altShopByFlightColor {
    background-color: rgba(242, 242, 242, 0.4);
}

.shopByCol1,
.shopByCol2,
.shopByCol3,
.shopByCol4 {
    padding: 5px;
    border-right: solid 1px #d3d3d3;
}

.shopByCol1 {
    width: 49%;
}

.shopByCol2,
.shopByCol3 {
    width: 18%;
}

.shopByCol4 {
    width: 15%;
    text-align: center;
    border: 0;
}

.shopByFlightSorting,
.shopByPerPageTop,
.shopByPerPageBottom,
.inboundHeader,
.outboundHeader {
    color: #fff;
    background-color: #243a4f;
}

    .shopByFlightSorting a,
    .shopByPerPageTop a,
    .shopByPerPageBottom a {
        color: #fff;
    }

    .shopByFlightSorting .shopByCol4 {
        text-align: left;
    }

.shopByPerPageTop,
.shopByPerPageBottom,
.inboundHeader,
.outboundHeader {
    padding: 5px;
    text-align: center;
}

.schedule-segment-spacer {
    display: block;
    height: 10px;
    width: 100%;
}

.schedule-operated-by {
    display: inline-block;
    width: 100%;
    margin: 0 0 5px;
}

.schedule-select-wrap {
    margin-top: 10px;
}

.schedule-best-price {
    width: 50%;
    float: left;
}

.schedule-btn-wrap {
    margin-bottom: 10px;
    text-align: right;
}

    .schedule-btn-wrap .button {
        margin-bottom: 10px;
    }

.schedule-footnote-wrap {
    width: 50%;
    float: left;
    text-align: left;
}

.schedule-btn-wrap .btnDisabled .button {
    cursor: default;
    color: #333;
    background-color: #ddd;
    border: 0;
}

.charter-search {
    margin-top: 5px;
}

.charterIcon {
    background: url("https://trisept.widen.net/content/j0pubtjjnn/gif/TRI_ICON_NAV_charterIcon.gif") no-repeat top left;
    width: 22px;
    height: 22px;
    float: left;
    margin: 0px 3px 0px 0px;
}

.charterIconSBS {
    background: url("https://trisept.widen.net/content/xoylfkndxv/gif/TRI_ICON_NAV_charterIconSmall.gif") no-repeat top left;
    padding-left: 16px;
    clear: both;
    margin: 2px 0px 2px 0px;
}

.shopByClassList {
    width: 100%;
    padding: 5px;
}

.schedule-ul-selector + .shopByClassList {
    border-top: solid 1px #d3d3d3;
    padding-top: 5px;
}

.shopByClassList fieldset {
    display: inline;
    margin-right: 5px;
}

.schedule-class-info {
    margin-bottom: 5px;
}

.schedule-ul-selector {
    height: 0;
}

@media (max-width: 960px) {
    .schedule-inbound-col,
    .schedule-outbound-col {
        width: 100%;
    }
}

@media (max-width: 767px) {
    .schedule-inbound-col,
    .schedule-outbound-col {
        width: 50%;
    }

    .schedule-best-price {
        width: 100%;
        float: none;
        margin-bottom: 10px;
    }
}

@media (max-width: 580px) {
    .schedule-inbound-col,
    .schedule-outbound-col {
        width: 100%;
    }

    .schedule-footnote-wrap {
        width: 100%;
        float: none;
        margin-bottom: 20px;
    }
}

/* shop by leg */

.flight-options-list > li {
    border-width: 5px 0 0 0;
    border-color: #d3d3d3;
    border-style: solid;
}

.flight-options-list li {
    list-style: none;
}

.flight-options-list .avail-grid-table tr {
    margin-bottom: 0;
    border-top: 0;
}

    .flight-options-list .avail-grid-table tr.flight-avail-row-content {
        border-top: solid 1px #d3d3d3;
        border-bottom: 0;
    }

.selected-component .avail-grid-table tr.flight-avail-row-content:first-child {
    border-top: 0;
}

.flight-options-list .avail-grid-table td {
    vertical-align: top;
    border-width: 0 1px;
}

    .flight-options-list .avail-grid-table td.flight-current-selection {
        padding: 7px;
    }

.avail-grid-table .flight-col-large {
    width: 28%;
}

.avail-grid-table .flight-col-small {
    width: 12%;
}

.avail-grid-table .travel-time-text {
    font-size: 1.1rem;
}

.avail-grid-table .flight-col-byair {
    width: 72%;
    padding: 0;
    border-right: 0;
    border-bottom: 0;
}

.flight-col-byair table {
    display: block;
}

.flight-col-byair td {
    padding: 10px;
}

.flight-col-byair tr {
    margin-bottom: 0;
    border-top: 0;
}

.flight-col-byair td:first-child {
    border-left: 0;
}

.flight-col-byair tr:last-child {
    border-bottom: 0;
}

.flight-col-byair .flight-col-large {
    width: 30%;
}

.flight-col-byair .flight-col-small {
    width: 20%;
}

.flight-header-byair .flight-col-large {
    width: 22%;
}

.flight-header-byair .flight-col-small {
    width: 14%;
}

.flight-header-byair .byair-header-price {
    width: 28%
}

.avail-grid-table.flight-leg-table .flight-col-large {
    width: 40%;
}

.avail-grid-table.flight-leg-table .flight-col-small {
    width: 15%;
}

.avail-grid-table.flight-leg-table td.leg-airline-wrap {
    width: 30%;
}

.return-depart-text {
    display: block;
}


.avail-price-col {
    text-align: right;
}

.avail-price-position {
    text-align: right;
    margin-bottom: 5px;
}

.avail-price,
.avail-price span {
    font-weight: bold;
    color: #d97827;
    text-decoration: none;
    font-size: 2rem;
}

.avail-price-position .avail-price,
.hotel-total-price .avail-price {
    color: #d97827;
}

.avail-messaging {
    margin: 20px 0;
}

.avail-promo-full-col {
    flex: auto;
    width: 100%;
    padding: 5px;
    background-color: #fff3e1;
    border: solid 1px #d3d3d30;
    border-left: 0;
    border-right: 0;
}

.selected-component .avail-promo-full-col {
    border: 0 !important;
}

.avail-grid-mobile-header {
    display: none;
    font-weight: bold;
    margin-bottom: 5px;
    border-bottom: solid 1px #d3d3d3;
    padding-bottom: 5px;
}

.flight-segment {
    font-size: 1.2rem;
}

.flight-segment {
    margin-bottom: 2px;
}

    .flight-segment strong {
        display: block;
    }

.flight-num-details {
    font-size: 1.1rem;
    display: block;
}

.arrival-time-nextday,
.checkout-required-field,
.depositDueAmount {
    color: #ff3300;
}

.validation-error-message {
    color: #ff3300;
    margin-top: 1px;
    margin-bottom: 1px;
}

.arrival-text {
    color: #ff3300;
    font-weight: bold;
}

.seats-left {
    font-weight: bold;
    color: #ff3300;
}

.avail-rr-points,
.avail-rr-points font {
    margin: 10px auto;
    color: #000 !important;
}

.avail-carrier-name {
    font-weight: bold;
    font-size: 1.2rem;
    margin-top: 0;
    display: inline-block;
}

    .avail-carrier-name ~ .avail-carrier-name {
        margin-top: 10px;
    }

.codeshare-msg {
    width: 100%;
}

@media (max-width: 580px) {

    .avail-grid-table th:first-child,
    .avail-grid-table td:first-child {
    }

    .avail-grid-table tr {
        margin-bottom: 20px;
        border: solid 1px #d3d3d3;
    }

    .flight-col-byair tr {
        border-bottom: 0;
        border-left: 0;
        border-right: 0;
        margin-bottom: 0;
    }

    .avail-grid-table th {
        display: none;
    }

    .avail-grid-table td {
        -ms-flex: 1 0 10%;
        flex: 1 0 10%;
        width: 100%;
    }

        .avail-grid-table td.mobile-full-col {
            -ms-flex: auto;
            flex: auto;
            width: 100%;
            text-align: center;
            border-top: solid 1px #d3d3d3;
            border-left: solid 1px #d3d3d3;
        }

            .avail-grid-table td.mobile-full-col .flight-segment {
                text-align: center;
            }

    .flight-col-byair td.mobile-full-col {
        border-left: 0;
    }

    .avail-grid-table td.avail-promo-full-col {
        width: 100%;
        text-align: left;
        border-bottom: solid 1px #d3d3d3;
        border-top: 0;
    }

    .avail-price-position,
    .avail-grid-select-wrap,
    .avail-grid-table .travel-time-text,
    .seats-left,
    .seat-map-link-wrap {
        text-align: center;
    }

        .avail-grid-select-wrap .button {
            width: 50%;
        }

    .avail-grid-mobile-header {
        display: block;
        font-size: 1.2rem;
    }
}

/** Branded Fares **/

.flight-options-list.leg-options-list > li {
    border-width: 5px 1px 1px;
    border-color: #d3d3d3;
    border-style: solid;
}

.branded-air-table {
    width: 100%;
    margin-top: 0;
    border-top: solid 1px #d3d3d3;
}

.fare-list-table .air-selected {
    background-color: #F2F2F2;
    border-bottom: none;
}

.fare-list-table,
.fare-list-table thead,
.fare-list-table tbody,
.fare-list-table th,
.fare-list-table tr,
.fare-list-table td {
    display: block;
}

    .fare-list-table tr {
        display: -ms-flexbox;
        display: flex;
        height: 100%;
    }

    .fare-list-table th,
    .fare-list-table td {
        display: inline-block;
        width: 35%;
        min-height: 100%;
        align-items: stretch;
        align-content: stretch;
        padding: 2px 10px;
        -ms-flex: 1;
        border-right: solid 1px #d3d3d3;
    }

        .fare-list-table th.flight-col-large,
        .fare-list-table td.flight-col-large {
            width: 45%;
        }

        .fare-list-table th.flight-col-small,
        .fare-list-table td.flight-col-small {
            width: 25%;
        }

        .fare-list-table th.flight-col-large:last-child,
        .fare-list-table td.flight-col-large:last-child {
            width: 54%;
        }

.combined-price-col {
    text-align: right;
}

.avail-grid-table.flight-leg-table tr,
.avail-grid-table.flight-leg-table th,
.avail-grid-table.flight-leg-table td {
    border: 0 !important;
}

.fare-list-table th:last-child,
.fare-list-table td:last-child {
    border-right: 0;
}

.fare-list-table tr {
    border-bottom: solid 1px #dedede;
}

    .fare-list-table tr:last-child {
        border-bottom: none;
    }

@media (max-width: 580px) {

    .fare-list-table thead {
        display: none;
    }

    .fare-list-table tr,
    .fare-list-table th,
    .fare-list-table th.flight-col-large,
    .fare-list-table th.flight-col-small,
    .fare-list-table td,
    .fare-list-table td.flight-col-large,
    .fare-list-table td.flight-col-small,
    .fare-list-table th.flight-col-large:last-child,
    .fare-list-table td.flight-col-large:last-child {
        display: block;
        width: 100%;
        border-right: 0;
        text-align: center;
    }

    .combined-price-col,
    .combined-rewards-col,
    .combined-disclaimers-col {
        border-top: dashed 1px #dedede;
        text-align: center;
    }

    .fare-list-table tr {
        border-bottom: solid 3px #dedede;
    }
}

/* CART
************************************/

.CART-COMPONENT {
    margin: 2% 0;
    padding: 0 0;
    position: relative;
}

.CART-COMPONENT-DETAILS-WRAP {
    border: dashed 1px #aaa;
    border-left: 0;
    border-right: 0;
    border-bottom: 0;
    padding: 15px 0 0;
}

.CART-COMPONENT-DETAIL {
    margin: 0 0 30px 0;
    display: block;
    clear: both;
    overflow: hidden;
}

    .CART-COMPONENT-DETAIL h2 {
        border-bottom: solid 3px #f2f2f2;
    }

    .CART-COMPONENT-DETAIL:last-child {
        margin: 0 0 0 0;
    }

.CART-COMPONENT-WRAP input[type=checkbox],
.CART-COMPONENT-WRAP input[type=radio] {
    margin-right: 4px;
}

.CART-COMPONENT-IMAGE-WRAP {
    width: 185px;
    float: left;
    margin-right: 2%;
}

.summary-warning-content {
    padding: 0px 0px 5px 0px;
}

.cart-advisory {
    padding: 3% 1% 1% 0;
    clear: both;
    color: #fd3400;
}

    .cart-advisory ol {
        padding-left: 20px;
    }

        .cart-advisory ol li {
            list-style-type: decimal;
            margin-bottom: 10px;
        }

    .cart-advisory * {
        color: #fd3400;
    }

.cart-advisory-title {
    color: #fd3400;
    font-weight: bold;
    display: block;
    font-size: 1.5rem;
    text-transform: uppercase;
}

.advisory-fa,
.message-title-text {
    color: #fd3400;
}

a.button:hover {
    color: #fff;
}

.title {
    font-size: 1.6rem;
}

.header {
    margin-bottom: 15px;
}

.review-trip-summary {
    clear: both;
    display: block;
    overflow: hidden;
    margin-bottom: 30px;
    padding-bottom: 30px;
    border-bottom: solid 10px #f2f2f2;
}

    .review-trip-summary .price-select-wrap {
        min-width: 210px;
    }

.no-wrap {
    white-space: nowrap;
}

/* REQUIRED DECISIONS PAGE
************************************/

.required-destination-title {
    margin: 20px 0px 0px;
    padding-bottom: 0;
}

.required-decisions-table {
    border: 1px solid #d3d3d3;
    width: 100%;
    margin-bottom: 10px;
}

.required-feature-selection {
    padding: 20px 0px 5px 0px;
}

.required-feature-legend {
    padding: 10px 0px;
}

.required-decisions-btn-wrap {
    width: 25%;
    float: right;
    text-align: right;
    min-width: 125px;
    margin-bottom: 50px;
}

.required-decisions-table th {
    padding: 10px;
}

.required-decisions-table td {
    padding: 10px;
}

@media (max-width: 460px) {
    .required-decisions-btn-wrap {
        width: 100%;
        float: none;
        text-align: left;
        min-width: 125px;
    }
}

/* CHECKOUT STEP 1
************************************/

.summary-cart-title,
.checkout-summary-enhance {
    width: 68%;
    float: left;
}

.flight-cart-modify .expco-content-wrap {
    margin-bottom: 30px;
    padding-bottom: 30px;
    border-bottom: solid 10px #f2f2f2;
}

.cabin-description {
    font-weight: normal;
    margin-left: 10px;
    font-size: 1.1rem;
}

.taxes-fees-detail {
    margin-bottom: 15px;
    float: left;
}

.cart-price-points {
    text-align: right;
    float: right;
    clear: right;
}

.summary-add-on-detail,
.summary-hotel-detail,
.summary-car-detail {
    padding-bottom: 10px;
    margin-bottom: 10px;
}

.transfer-itin-summary-item-btn-wrap.itin-summary-item-btn-wrap {
    float: none;
}

.transfer-upgrade {
    border-top: solid 1px #d3d3d3;
}

.transfer-upgrade-wrap {
    border-top: solid 1px #d3d3d3;
    margin-top: 20px;
}

    .transfer-upgrade-wrap .cart-feature-options-list {
        margin-top: 0;
    }

        .transfer-upgrade-wrap .cart-feature-options-list li {
            border-top: 0;
            margin-bottom: 0;
        }

    .transfer-upgrade-wrap .itin-summary-feature-wrap {
        border-bottom: 0;
    }

.transfer-itin-summary-item-btn-wrap {
    float: none;
}

.selected-transfer-intro:first-of-type {
    background: #fff;
    margin-top: -1px;
    border-bottom: solid 1px #d3d3d3;
    padding: 10px 0;
}

.transfer-upgrade-wrap + .itin-summary-feature-component .itin-summary-feature-wrap {
    border-top: solid 1px #d3d3d3;
}

.transfer-upgrade-wrap + .itin-summary-feature-component,
.view-all-transfers-text {
    margin-top: 20px;
}

.summary-transfer-detail .CART-COMPONENT-IMAGE-WRAP img {
    width: 100%;
    height: auto;
}

.add-on-component-header {
    position: relative;
}

.view-all-features-position {
    position: absolute;
    top: 0;
    right: 0;
}

    .view-all-features-position .button {
        text-transform: uppercase;
    }

.vehicleTypeZone:last-child td {
    border-bottom: 0;
}

.vehicleTypeZone .upsell-name a {
    vertical-align: top;
    margin: 5px 0 0 10px;
    display: inline-block;
}

.cart-header {
    display: block;
    width: 100%;
    overflow: hidden;
}

.cart-item-repeater {
    padding: 8px 0px;
}

.cart-header h3 {
    width: auto;
    float: left;
}

.cart-header .arrival-disclaimer-t {
    margin-left: 15px;
}

.cart-modify-button-wrap,
.cart-remove-item-wrap,
.remove-button-itin-wrap {
    float: right;
    width: auto;
    margin: 6px;
}

.cart-modify-button-header-wrap {
    position: absolute;
    right: 0;
    top: 0;
    margin: 0;
}

.cart-header .cart-modify-button-wrap {
    margin: 0 0;
}

.cart-modify-button,
.cart-remove-feature {
    float: right;
    display: block;
    margin-left: 15px;
    min-width: 130px;
    text-transform: uppercase;
}

.cart-remove-item {
    display: block;
    clear: both;
}

    .cart-remove-item i {
        color: #4c6c85;
    }

.cart-accordian-title {
    border-bottom: solid 3px #f2f2f2;
}

    .cart-accordian-title a {
        text-decoration: none;
    }

.upsell-options-table {
    width: 100%;
    margin-bottom: 15px;
    padding-bottom: 10px;
}

    .upsell-options-table caption {
        text-align: left;
        font-size: 1.8rem;
        padding: 15px 0 10px;
        font-weight: bold;
    }

.upsell-options-table-header {
    font-size: 1.5rem;
}


.upsell-options-table td {
    padding: 7px 0;
    border-bottom: 1px dashed #ddd;
    vertical-align: middle;
}

.upsell-room-type-table th.room-promo-heading {
    padding-left: 0;
}

.upsell-room-type-table td {
    border-bottom: 1px dashed #ddd;
    padding: 7px 0;
}

.upsell-options-table-header td {
    border-bottom: 0px;
    font-weight: bold;
    padding: 0 0;
}

.upsell-name {
    width: 85%;
}

.upsell-name,
.view-all-hotel-options td {
    border: 0px;
}

.upsell-price-text {
    display: block;
}

.upsell-price {
    text-align: right;
}

.cart-summary-current-selected {
    color: #44812d;
    font-weight: bold;
}

.cart-upsell-wrap {
    overflow: hidden;
}


/*** flight modify ***/

.arrival-disclaimer-t {
    position: relative;
}

.flight-additional-info {
    display: block;
    margin: 10px 0;
}

    .flight-additional-info p {
        margin-bottom: 15px;
    }

.cart-flight-stops::before {
    content: "-";
}


/*** hotel modify ***/

.hotel-room-options-wrap {
    display: block;
    clear: both;
}

tr[class^="RoomCategoryDivVisible"] .upsell-price {
    color: #44812d;
    font-weight: bold;
}

.hotel-cart-modify .rr-points {
    float: right;
    margin: 0 0;
}

.cart-summary-hotel-checkin {
    font-size: 1.6rem;
}

.hotel-room-number {
    font-size: 1.6rem;
    display: block;
    clear: left;
    width: auto;
    font-weight: bold;
}

.trip-advisor-wrap {
    margin: 5px 0 0 0;
}

.undo-date-offset {
    padding-top: 3px;
}

/*** vehicle modify ***/
.vehicle-dropoff {
    float: left;
    margin: 12px;
}

.vehicle-pickup {
    margin: 12px 12px 12px 0px;
    float: left;
}

/*** transfer modify ***/

.select-psngrs legend {
    font-weight: bold;
}

.select-psngrs .passenger_wrap {
    float: left;
    display: block;
    white-space: nowrap;
    margin-right: 2%;
    margin-bottom: 1%;
}


/*** insuracy modify ***/

.itin-summary-item-header.insurance-upsell-header {
    margin-bottom: 0px;
}

.insurance-upsell-btn-wrap {
    padding-bottom: 10px;
}

.insurance-upsell-details {
    background-color: #fff3e1;
    padding: 15px 10px 0;
}

.insurance-upsell-text p {
    margin-bottom: 15px;
}

.insurance-upsell-text ul {
    list-style-type: disc;
    margin: 0 0 15px 25px;
    padding: 0 0 0 20px;
}

.insurance-cart-modify {
    margin-bottom: 30px;
    padding-bottom: 30px;
    border-bottom: solid 10px #f2f2f2;
}

.insurance-selection {
    margin: 0px 0 15px;
}

    .insurance-selection input {
        display: inline-block;
        float: left;
        min-width: 18px;
    }

        .insurance-selection input:focus {
            outline: 1px dotted #4c6c85;
        }

    .insurance-selection label {
        float: left;
        margin-left: 8px;
        clear: right !important;
        display: inline-block;
        width: 95%;
        margin-bottom: 5px;
    }

.insurance-upsell-header {
    margin: 15px 0px;
}

.insurance-upsell {
    border-top: none !important;
}

.insurance-itin-summary-item-insurance-warning-feature {
    font-size: 1.6rem;
    color: #ff0000;
    font-weight: bold;
    margin-bottom: 5px;
}

.insurance-itin-summary-item-insurance-warning {
    font-size: 1.6rem;
    color: #ff0000;
    font-weight: bold;
    text-align: left;
}

.insurance-itin-summary-item-btn-wrap a {
    width: 100%;
    max-width: 170px;
    margin-left: 5px;
}

    @media (max-width: 979px) {
        .summary-cart-title,
        .checkout-summary-enhance {
            width: 58%;
        }
    }

    @media (max-width: 924px) {
        .insurance-selection label {
            width: 92%;
        }
    }

    @media (max-width: 799px) {
        .summary-cart-title,
        .checkout-summary-enhance {
            width: 52%;
        }

        .insurance-itin-summary-item-btn-wrap a {
            height: initial;
        }
    }

    @media (max-width: 580px) {
        .summary-cart-title,
        .checkout-summary-enhance {
            width: 100%;
            float: none;
        }
        .insurance-itin-summary-item-btn-wrap {
            flex-direction: column;
        }
    }

    @media (max-width: 446px) {
        .insurance-selection label {
            width: 90%;
        }
    }

    .insurance-cart-modify .cart-item-wrap .cart-modify-button {
    display: none;
}

.insurance-selection ul {
    list-style: none;
}

    .insurance-selection ul li {
        margin: 4px 0px;
    }

        .insurance-selection ul li:after {
            content: "";
            display: table;
            clear: both;
        }


/*** feature upsell ***/

.feature-upsell-options-wrap {
    display: flex;
    flex-flow: row no-wrap;
    width: 100%;
}

.feature-date-input-upsell-wrap {
    width: 175px;
    margin: 0 auto;
}

.feature-upsell-pax-pricing-wrap {
    width: 80%;
    margin: 0 auto;
}

.showcase-features-wrap .feature-upsell-pax-pricing-wrap {
    width: 100%;
}

.cart-feature-options-list {
    margin-top: 20px;
}

li.feature-upsell {
    padding: 10px;
}

    li.feature-upsell .feature-date,
    li.feature-upsell .feature-upsell-passenger-list {
        margin-top: 10px;
    }

        li.feature-upsell .feature-date

        .feature-upsell h4 {
            font-weight: bold;
        }

.feature-upsell-pax-pricing-wrap .avail-price-position {
    vertical-align: middle;
    margin-top: 10px;
    float: right;
}

.feature-upsell-pax-pricing-wrap .avail-price {
    vertical-align: middle;
    margin-right: 10px;
}

.feature-upsell-modal-description {
    margin-bottom: 20px;
}

.feature-upsell-options {
    margin-top: 15px;
}

.feature-upsell-passenger-select {
    width: 100%;
    margin-top: 15px;
}

.feature-upsell-passengers {
    width: 48%;
    float: left;
    margin-right: 2%;
}

    .feature-upsell-passengers select {
        margin-right: 5px;
    }

.feature-upsell-datelabel {
    display: block;
    width: 100%;
    font-weight: bold;
}

.feature-upsell-date-select {
    width: 100%;
}

#featureRateSelectionComponent {
    margin-bottom: 15px;
}

    #featureRateSelectionComponent .price-select-wrap {
        width: 49%;
        float: right;
        margin: 0;
    }

    #featureRateSelectionComponent:after {
        content: "";
        display: table;
        clear: both;
    }

.feature-upsell-select-item .check-wrap {
    position: relative;
}

.feature-upsell-select-item label input[type="checkbox"] {
    position: absolute;
    top: 5px;
    left: 10px;
    z-index: 999;
}

.feature-upsell-select-item label span {
    font-weight: bold;
    padding: 5px 10px;
    text-align: center;
    color: #fff;
    border: 1px solid #4c6c85;
    background-color: #127cb7;
    border-radius: 3px;
    width: 100%;
    display: block;
    margin-top: 15px;
}

    .feature-upsell-select-item label span:hover {
        background-color: #106fa2;
    }

.feature-upsell-select-item input:checked + span {
    background-color: #44812d;
    border-color: #3b7128;
    color: #fff;
}

.feature-upsell-select-item input {
    margin-top: 5px;
}

.view-all-features-wrap {
    margin-bottom: 15px;
}

.cart-item-wrap {
    border-bottom: 1px dashed #ddd;
    padding-bottom: 8px;
    overflow: hidden;
}

.cart-item-repeater {
    width: 72%;
    float: left;
}

.cart-item-repeater-header {
    width: auto;
}

.cart-item-repeater dd {
    display: inline;
    margin-right: 15px;
}

div[id^="cartFeatureHeader"] {
    padding: 0 0;
    position: relative;
}

div[id^="cartFeaturePanel"] .CART-COMPONENT-DETAIL:last-child dl {
    margin: 0 0 30px 0;
}

.summary-upsell-image-wrap {
    float: left;
    margin-right: 15px;
}


@media (max-width: 979px) {
    .feature-upsell-options-wrap {
        flex-flow: row wrap;
    }

    .feature-date-input-upsell-wrap,
    .feature-upsell-pax-pricing-wrap {
        width: 100%;
    }

    .feature-upsell-pax-pricing-wrap {
        margin-top: 15px;
    }

    .feature-date-input-upsell-wrap select {
        width: 100%;
    }
}

@media (max-width: 580px) {
    .feature-upsell-passenger-list {
        display: block;
        width: 100%;
        float: none;
    }

        .feature-upsell-passenger-list li {
            width: 100%;
        }

    .feature-upsell-pax-pricing-wrap .avail-price-position {
        text-align: right;
    }
}

@media (max-width: 414px) {
    .feature-option-details .avail-price-position button {
        width: 100%;
        margin-top: 10px;
    }
}

@media (max-width: 370px) {
    .feature-upsell-passengers,
    .checkout-upsell-inputs {
        width: 100%;
        float: none;
        margin-bottom: 15px;
    }

    .feature-upsell-pax-pricing-wrap .avail-price-position {
        float: none;
        width: 100%;
        margin-top: 20px;
    }
}

/*** cart price ***/

.cart-price {
    width: 100%;
    font-size: 1.6rem;
    margin: 0 0 10px 0;
}

    .cart-price tr {
    }

    .cart-price td {
        text-align: right;
        overflow: hidden;
        padding: 12px 8px 12px 0;
        background-color: #e8e8e8;
        border-bottom: 1px dashed #a4a4a4;
    }

        .cart-price td:first-child,
        .cart-price th {
            width: auto;
            overflow: hidden;
            font-weight: normal;
            padding: 12px;
            background-color: #e8e8e8;
            font-family: Arial, Sans-Serif;
            border-bottom: 1px dashed #a4a4a4;
        }

    .cart-price tr:last-child td,
    .cart-price tr:last-child th {
        border-bottom: 0px solid #a4a4a4;
    }

    .cart-price tr.cart-highlight {
        border-top: solid 3px #f2f2f2;
    }

    .cart-price td h4 {
        margin-bottom: 0px;
    }

.review-price-header {
    margin: 0 0 12px 0;
    clear: both;
}

    .review-price-header h3 {
        text-align: left;
        text-transform: uppercase;
    }

.promo-code-label {
    margin-right: 10px;
}

.cart-summary-apply-promo {
    width: 100%;
    text-align: right;
    display: block;
    padding: 0 0 10px 0;
}

.booking-buttons-bar {
    overflow: hidden;
    margin-top: 15px;
}

.booking-options-buttons {
    float: left;
    padding: 5px;
}

.summary-warning-text {
    font-size: 1.6rem;
    color: #d90707;
}

.review-flight {
    border-bottom: solid 2px #f2f2f2;
    margin-bottom: 15px;
    padding-bottom: 15px;
    list-style: none;
}

.modify-item-row th {
    padding-left: 30px;
}

.review-flight,
.review-hotel,
.review-vehicle {
    border-bottom: solid 2px #f2f2f2;
    margin-bottom: 15px;
    padding-bottom: 15px;
}

@media (max-width: 767px) {
    .CART-COMPONENT-DETAIL {
        margin: 0 0 30px 0;
    }

    .CART-COMPONENT-DETAIL {
        margin: 0 0 30px 0;
    }

    .taxes-fees-detail, .cart-price-points {
        float: none;
        text-align: center;
    }
}

@media (max-width: 640px) {
    .CART-COMPONENT-DETAIL h3,
    .cart-item-repeater {
        text-align: center;
    }
}

@media (max-width: 580px) {
    .cart-modify-button-wrap,
    .cart-remove-item,
    .view-all-features-position {
        position: relative;
        clear: both;
        margin-bottom: 12px;
        width: 100%;
        margin: 6px 0;
        text-align: center;
    }

        .cart-modify-button-wrap .cart-modify-button,
        .view-all-features-position .cart-modify-button {
            display: block;
            float: none;
            margin: 0px auto;
            width: 96%;
        }

    .CART-COMPONENT-DETAIL h3 {
        text-align: center;
    }

    .cart-header h3 {
        float: none;
        text-align: center;
    }

    .cart-modify-button-wrap,
    .cart-header .cart-modify-button-wrap,
    .cart-remove-item-wrap {
        position: relative;
        clear: both;
        width: 100%;
        margin: 6px 0;
        text-align: center;
    }

        .cart-modify-button-wrap .cart-modify-button {
            display: block;
            float: none;
            margin: 0px auto;
            width: 96%;
        }

    .cart-remove-item {
        margin: 0px auto;
    }

    .cart-item-repeater {
        text-align: center;
        float: none;
        margin: 0 auto;
        width: 98%;
    }

    .flight-num-details {
        white-space: normal;
    }
}

@media (max-width: 425px) {
    .CART-COMPONENT-IMAGE-WRAP,
    .hotel-ro-image-wrap {
        float: none;
        clear: both;
        text-align: center;
        width: 100%;
    }

        .CART-COMPONENT-IMAGE-WRAP img,
        .hotel-ro-image-wrap img {
            width: 50%;
        }
}



/* CHECKOUT STEP 2
************************************/

.checkout-sign-in {
    padding: 2%;
    background: #f2f2f2;
    border-radius: 3px;
}

.checkout2-instruction {
    margin: 15px auto;
}

.traveler-info {
    clear: both;
    float: none;
    margin: 0 0 10px;
    padding: 0 0 10px;
    width: 100%;
}

    .traveler-info fieldset {
        margin: 0 5% 10px 0;
        width: 28%;
        display: inline-block;
        min-width: 260px;
        vertical-align: top;
    }

        .traveler-info fieldset.traveler-name-title {
            display: block;
            clear: both;
            min-width: 270px;
            float: none;
        }

    .traveler-info label {
        display: inline;
    }

.gender-dob {
    display: block;
    clear: both;
}

.traveler-info-subheader h3 {
    display: inline;
    font-weight: normal;
}

.traveler-info-subheader {
    padding-bottom: 10px;
    float: left;
    width: 100%;
}

.traveler-info textarea {
    max-width: 100%;
    width: 100%;
}

.traveler-info fieldset.date-of-birth {
    clear: right;
}

.air-customer-contact {
    margin: 20px 0;
}

.air-customer-contact-consent {
    margin: 10px 0 0 0;
}

    .air-customer-contact-consent input,
    .air-customer-contact-consent label {
        margin: 5px 5px 5px 0px
    }

    .air-customer-contact-consent fieldset {
        width: 100%;
    }

.air-customer-contact-details fieldset input {
    width: 100%;
    border: 1px solid #aaa;
    height: 23px;
    padding-left: 4px;
}

.air-customer-contact-details fieldset {
    margin: 0 5% 5px 0;
}

.air-customer-contact-disclaimer p {
    font-size: 11px;
}

.frequent-flyer-wrap,
.aspis-wrap {
    width: 100% !important;
}

.aspis-multi-passenger input[type="checkbox"] {
    vertical-align: middle;
}

.frequent-flyer-button-wrap {
    margin-bottom: 10px;
}

.frequent-flyer-form {
    padding: 10px;
    background-color: #f2f2f2;
    display: flex;
    flex-wrap: wrap;
    margin-top: 5px;
    margin-bottom: 10px;
}

    .frequent-flyer-form fieldset {
        margin: 0 5% 5px 0;
        width: 28%;
        display: inline-block;
        min-width: 260px;
    }

.clear-button-wrap {
    width: 100%;
    margin: 10px 0px;
}

    .clear-button-wrap .secondary-button {
        float: left;
    }

.traveler-info .frequent-flyer {
    clear: both;
    float: none;
    margin: 8px 0 0px 0;
}

.aspis-checkbox-wrap {
    margin: 15px 0 15px 0 !important;
}

fieldset.frequent-flyer-number {
    display: block;
}

    fieldset.frequent-flyer-number input[type=text],
    fieldset.frequent-flyer-number select {
        width: 27%;
        float: left;
        margin: 0 15px 0 0;
    }

input.account-password,
.payment-info-details input[type="password"] {
    border: 1px solid #aaa;
    height: 30px;
    border-radius: 3px;
    min-width: 100%;
}

input.maskedPaymentNumberInput,
input.maskedSecurityCodeInput {
    background: #fff url("https://trisept.widen.net/content/pduo5zwqn6/svg/TRI_ICON_PROGRAM_eye-icon.svg") no-repeat 99% center;
    background-size: contain;
}

.paymentNumberInputTextBoxWrapper {
    position: relative;
}

.paymentNumberInputTextBoxSpinner {
    position: absolute;
    right: 11%;
    top: 52%;
    transform: translateY(-50%);
    display: none;
}

    .paymentNumberInputTextBoxSpinner .fa-3x {
        font-size: 1.2em;
    }

.paymentNumberInputTextBoxSpinner.active {
    display: block;
}

.securityCodeInputTextBoxWrapper {
    position: relative;
}

.securityCodeInputTextBoxSpinner {
    position: absolute;
    right: 11%;
    top: 52%;
    transform: translateY(-50%);
    display: none;
}

    .securityCodeInputTextBoxSpinner .fa-3x {
        font-size: 1.2em;
    }

.securityCodeInputTextBoxSpinner.active {
    display: block;
}

.traveler-info input[type="text"],
.traveler-info input[type="password"],
.traveler-info select,
.payment-info-details input[type="text"],
.payment-info-details select,
fieldset.frequent-flyer-number input[type="text"] {
    width: 90%;
}

.select-passenger-name {
    float: right;
    background: #ffffff url("https://trisept.widen.net/content/jxtrdat1ov/png/TRI_ICON_NAV_select-passenger-name-icon.png") no-repeat;
    height: 20px;
    width: 25px;
}

.select-passenger-name-label {
    display: block;
    width: 100%;
    padding: 0 0 10px 0;
}

.subscription-selection fieldset,
.traveler-info-subscriptions {
    width: 100% !important;
}

    .traveler-info-subscriptions input[type="checkbox"] {
        margin-right: 5px;
    }

.subscription-selection label,
.frequent-flyer label {
    display: inline;
}

.debit-card-tooltip {
    position: relative;
    bottom: 7px;
}

.booking-bar {
    clear: both;
    text-align: right;
}

.accept-terms-button {
    margin: 0 auto;
    display: block;
}

.traveler-tsa-info {
    clear: both;
    display: block;
    border: 1px solid #d3d3d3;
    padding: 10px;
}

.booking-bar-privacy {
    margin-top: 20px;
}

.security-cert-wrap {
    margin: 10px 0 30px;
}

    .security-cert-wrap > div {
        display: inline-block;
        float: right;
    }



/* CHECKOUT STEP 3
************************************/

.ro-package-name {
    border-bottom: 0 !important;
    margin-bottom: 0;
    padding-bottom: 0;
    margin-top: 5px;
}

.pkg-name {
    display: block;
}

.content-mast-wrap .pkg-name {
    font-size: 16px;
    font-weight: bold;
}

/*seat assignment table */

.seat-matrix-wrap,
.ssr-ro-detail,
.booking-wrap,
.early-bird-container,
.payment-info-container {
    margin-bottom: 15px;
    padding-bottom: 15px;
    border-bottom: solid 10px #f2f2f2;
}

.seat-matrix-table {
    border-radius: 3px;
    margin-bottom: 15px;
}

    .seat-matrix-table th,
    .seat-matrix-table td {
        border: 1px solid #d3d3d3;
        padding: 5px;
    }

    .seat-matrix-table th {
        background: #f2f2f2;
    }

    .seat-matrix-table tr:nth-child(odd) {
        background-color: #f9f9f9;
    }

.SSR-cart-modify div h2,
.SSR-cart-modify div h3 {
    border: 0;
}

.flight-cart-points {
    margin-top: 0;
    float: right;
}

.codeshare-footnote {
    float: left;
}

.hotel-read-only-details {
    display: block;
    overflow: hidden;
}

.hotel-room-details {
    margin: 0 0 15px 0;
    width: 80%;
    float: right;
}

.hotel-ro-image-wrap {
    width: 18%;
    float: left;
    margin-right: 2%;
}

    .hotel-ro-image-wrap img {
        width: 100%;
        height: auto;
    }

.hotel-room-number-read-only {
    font-size: 1.6rem;
    display: block;
    clear: none;
    width: auto;
    float: none;
    font-weight: bold;
}

.advisory-text,
i.advisory-fa,
.advisory-fa {
    color: #d90707;
}

.feature-read-only h2 #BtnAddFeature {
    float: right;
}

.feature-read-only .cart-item-repeater {
    width: 98%;
    float: none;
}

.early-bird-container {
    margin: 20px 0;
}

    .early-bird-container h4 {
        margin-bottom: 10px;
    }

.early-bird-intro {
    width: 100%;
}

.early-bird-logo {
    width: 18%;
    margin-right: 2%;
    max-width: 154px;
    height: auto;
    max-height: 60px;
    float: left;
    background: url("https://trisept.widen.net/content/jgssy6lc3c/png/TRI_IMG_WEBSITE_earlyBirdLogo.png") no-repeat;
    background-size: contain;
}

.early-bird-intro-text {
    float: left;
    width: 80%;
    padding-left: 10px;
}

.early-bird-summary-intro-text {
    margin-bottom: 10px;
}

.early-bird-total-price {
    text-align: right;
    width: 20%;
    float: right;
    padding-top: 5px;
}

.early-bird-disclaimer {
    width: 65%;
    float: left;
    padding-top: 5px;
}

.early-bird-container p,
#earlyBirdAList {
    margin-bottom: 10px;
}

.early-bird-summary-specific {
    margin: 10px 0 0 !important;
    padding-bottom: 5px;
    border-bottom: solid 1px #d3d3d3;
}

.early-bird-container ul {
    margin: 10px 0px;
}

.early-bird-intro-text li {
    list-style: none;
}

    .early-bird-intro-text li i {
        color: #d97827;
    }

.early-bird-container input {
    margin: 0 4px 0 0;
    position: relative;
    top: 6px;
}

.early-bird-input-wrap {
    margin: 0 0 20px 0;
    border: solid 1px #d3d3d3;
    padding: 10px;
}

.early-bird-cost-details {
    width: 100%;
    margin: 20px auto;
}

    .early-bird-cost-details tr {
        border-bottom: solid 1px #f2f2f2;
    }

    .early-bird-cost-details th {
        background: #f2f2f2;
        padding: 10px 4px;
    }

.early-bird-total {
    border-top: solid 3px #f2f2f2;
}

.early-bird-cost-details .early-bird-total-cellhead {
    text-align: right;
    background: none;
}

.early-bird-subtotal {
    text-align: right;
}

.early-bird-cost-details td {
    padding: 10px 4px;
}

.earlyBirdCheckMark span:before {
    content: "\2713\0020";
    font-size: 15px;
    font-weight: bold;
    color: #4caa51;
}

.num-payments-wrap {
    margin: 10px 0;
}

.payment-info-container h2 span {
    font-size: 80%;
    font-weight: normal;
}

.payment-info-details fieldset {
    margin: 0 5% 10px 0;
    width: 27%;
    display: inline-block;
    vertical-align: top;
    min-width: 260px;
}

.checkout-wrap .payment-info-details {
    display: inline;
}

.payment-info-details p img[src*=".svg"] {
    height: 25px;
    padding: 2px;
    border: 1px solid #aaa;
}

.cc-expiration-wrap legend {
    min-height: 22px;
}

.onpage-error-wrap {
    position: relative;
    height: 0;
    width: 100%;
    clear: both;
}

    .onpage-error-wrap span {
        position: absolute;
        top: 3px;
        left: 0;
        width: 270px;
        font-size: 1.2rem;
    }

#expirationdate_1 span {
    display: inline-block;
}

fieldset.cc-expiration-date {
    float: left;
    margin: 0 1% 0 0;
}

.cc-expiration-date.month {
    min-width: 130px;
    width: 53%;
}

.cc-expiration-date.year {
    width: 30%;
    min-width: 115px;
}

fieldset.cc-expiration-date label {
    width: auto;
    margin-right: 5px;
}

fieldset.cc-expiration-date.year {
    float: right;
    text-align: right;
}

fieldset.cc-expiration-date label,
fieldset.cc-expiration-date select {
    display: inline-block;
}

fieldset.cc-expiration-date .expirationMonthInput {
    width: 65%;
}

fieldset.cc-expiration-date .expirationYearInput {
    width: 51%;
}

.terms-conditions-checkout {
    width: 100%;
}

    .terms-conditions-checkout iframe {
        width: 100%;
        height: 300px;
        border: solid 1px #d3d3d3;
        padding: 10px;
        margin-top: 10px;
    }

    .terms-conditions-checkout h2 {
        text-align: center;
    }

    .terms-conditions-checkout ul {
        margin: 10px 0 10px 20px;
        list-style: disc;
    }

.accept-terms-condition-checkout {
    margin-bottom: 15px;
}

.pay-agree-submit-wrap {
    margin-top: 20px;
}

.pay-submit-button-wrap {
    float: right;
    text-align: right;
    vertical-align: middle;
}

.accept-terms-condition-checkout input[type="checkbox"] {
    float: left;
    margin-right: 10px;
}

.hazmat-message {
    padding-bottom: 15px;
    margin-bottom: 15px;
    border-bottom: solid 10px #f2f2f2;
}

.terms-conditions-checkout,
.hazmat-message {
    margin: 0 0 15px 0;
}

.card-holder-info {
    clear: both;
    display: block;
}

.amount-due-warning {
    color: #d90707;
}

/* credit payment option message */
.credit-pay-msg-wrap {
    font-weight: bold;
    font-style: italic;
    margin-bottom: 20px;
}


/* internal credit payment option */

.internal-credit-wrap {
    clear: both;
    width: 100%;
    margin-top: 10px;
}

    .internal-credit-wrap > ul {
        margin-left: 30px;
        padding-bottom: 25px;
    }

.payment-info-details fieldset.int-cred-confirm {
    width: 100%;
    margin-right: 0;
    margin-bottom: 0;
}

.int-cred-confirm > div {
    width: 300px;
    margin-bottom: 15px;
}

.int-cred-confirm-num {
    width: 200px !important;
    margin-right: 10px;
}

.int-cred-confirm input.int-cred-clear {
    color: #0E589F;
    background: transparent;
    text-decoration: underline;
    cursor: pointer;
}

    .int-cred-confirm input.int-cred-clear:hover {
        color: #0d4e78;
    }

.int-cred-error {
    font-size: 1.6rem;
    color: #d90707;
    margin-bottom: 20px;
}

/* internal credit tables*/

.int-cred-head {
    font-size: 1.6rem;
    font-weight: bold;
    margin: 20px 0 0 0;
}

.int-cred-res-grid,
.int-cred-grid {
    padding: 5px 6px 5px 10px;
    margin: 15px 0 20px;
    width: 50%;
    min-width: 350px;
}

    .int-cred-res-grid th,
    .int-cred-grid th {
        padding: 5px 6px 5px 10px;
        background-color: #f2f2f2;
        border: 1px solid #d3d3d3;
    }

    .int-cred-res-grid td,
    .int-cred-grid td {
        padding: 7px 5px 5px 10px;
        border: 1px solid #d3d3d3;
    }

    .int-cred-res-grid tr :first-child:not(:only-child),
    .int-cred-grid tr :first-child:not(:only-child),
    .int-cred-res-grid th + th {
        background-color: transparent !important;
    }

    .int-cred-res-grid tr :first-child:not(:only-child),
    .int-cred-grid tr :first-child:not(:only-child) {
        width: 75%;
    }




.final-payment-wrap {
    border-bottom: 10px solid #f2f2f2;
    margin-bottom: 15px;
    padding-bottom: 15px;
}

.email-reminder-wrap > label {
    font-weight: bold;
}

.email-reminder-wrap input {
    margin-right: 2px;
}

.email-reminder-content {
    margin: 10px 0 10px 18px;
}

.email-reminder-date {
    margin-bottom: 10px;
}

    .email-reminder-date .calendar-icon-wrap {
        display: inline-block;
    }

.email-reminder-content label {
    display: inline-block;
    min-width: 170px;
}

.scheduled-payment-terms-wrap,
.num-payments-label {
    padding: 0 0 20px 0;
}

    .scheduled-payment-terms-wrap input {
        float: left;
    }

    .scheduled-payment-terms-wrap label {
        display: inline;
    }

.scheduled-payment-terms-wrap {
    margin-top: 10px;
}

.paymentNumbAndTerms select {
    padding: 0;
}

.button-large:enabled.review-terms-button {
    margin: 0 auto 20px auto;
    display: block;
}

@media (max-width:414px) {
    .button-large:enabled.review-terms-button {
        height: auto !important;
        padding: 10px 5px !important;
    }
}

/* Checkout - Travel Funds Styles
************************************/

.travel-funds-message {
    padding: 5px 0px 10px 0px;
}

.travel-funds-intro {
    clear: both;
}

    .travel-funds-intro ul {
        list-style-position: inside;
        margin-bottom: 10px;
    }

.travel-funds-redeem {
    margin-top: 10px !important;
    margin-bottom: 0px !important;
}

    .travel-funds-redeem fieldset {
        position: relative;
    }

.travel-funds-wrap .clear-funds-button-wrap {
    position: absolute;
    top: 18px;
    right: -100px;
}

.verify-funds-button-wrap {
    margin-bottom: 10px;
    clear: both;
}

.travel-funds-confirmation {
    background-color: #f2f2f2;
    padding: 10px;
    margin-bottom: 10px;
}

    .travel-funds-confirmation h5 {
        font-weight: bold;
        font-size: 1.4rem;
    }

.funds-clear-mesage {
    font-weight: bold;
    padding-top: 1px;
}

.travel-funds-non-applicable {
    clear: both;
}

    .travel-funds-non-applicable ul {
        list-style-position: inside;
        margin: 10px 0px;
    }

@media (max-width: 460px) {
    .travel-funds-wrap .clear-funds-button-wrap {
        position: relative;
        top: 0px;
        display: block;
        padding-top: 10px;
        right: 0px;
    }
}

@media (max-width: 768px) {
    .accept-terms-condition-checkout,
    .pay-submit-button-wrap {
        width: 100%;
        float: none;
    }
}

@media (max-width: 480px) {
    .email-reminder-content .num-payments-label {
        min-width: 0;
    }

    .early-bird-logo {
        display: none;
    }
}

.PayerAuthenticationErrorMessage {
    font-size: 13px;
    color: Red;
}

/* SPECIAL SERVICE REQUESTS
************************************/

.itinerary-tools-wrap .expco-trigger-text {
    font-weight: normal;
}

.itinerary-tools-wrap .expco-trigger {
    padding-bottom: 5px;
}

.comments-and-preferences {
    padding: 0 0 10px 2px;
}

.extra-requests-wrap,
.seat-preferences-wrap {
    margin-bottom: 25px;
}

.special-service-requests,
.seat-preferences-wrap,
.internal-comments-wrap {
    padding: 5px 10px 10px 0px;
}

.customer-advisory-wrap {
    padding: 5px 10px 10px 0px;
}

.ssr-section select {
    padding: 1px 0 1px 3px;
    width: 98%;
}

.ssr-section label {
    margin: 5px 0 5px 0;
    padding: 0 0;
    display: block;
}

p.ssrPleaseNote {
    font-size: 115%;
    clear: both;
    margin: 6px 0;
}

.SSRpassengerContainer label span,
span.mandatorySSR {
    color: #d90707;
    font-weight: bold;
    font-size: 1.2rem;
}

.ssrContainerHeader {
    font-weight: bold;
    font-size: 130%;
    padding: 0 0;
    margin: 0 0;
}

#hotelSSRcontainer,
#airSSRcontainer,
#vehicleSSRcontainer,
#featureSSRcontainer,
#travelersContainer 
{
    border: 1px solid #e3e3e3;
    padding: 8px;
    margin-bottom: 15px;
    color: #444;
}

.seatPrefInfo {
    padding-bottom: 5px;
}

#featureSSRcontainer {
    background: #fff;
    padding: 8px;
    color: #444;
}

.hotelSSR,
.flightSSR,
.vehicleSSR,
.featureSSR {
    background-color: #fff;
    border: none;
    overflow: hidden;
    margin: 10px 0 0 0;
}

.featureSSR {
    padding-bottom: 15px;
    margin-bottom: 15px;
}

    .featureSSR:last-child {
        margin-bottom: 0px;
        border-bottom: 0px;
    }

.flightSSR fieldset legend {
    margin: 0 0;
    padding: 0 0;
    font-size: 110%;
    color: #000;
}

.additionalComments {
    clear: both;
}

.additional-remarks-question {
    font-size: 1.1rem;
    padding-top: 3px;
}

.internal-comments-text textarea {
    width: 100% !important;
    max-width: 100% !important;
}

.customer-advisory-text textarea {
    width: 100% !important;
    max-width: 100% !important;
}

.SSRpassengerContainer .additionalComments {
    margin-bottom: 10px;
}

.additionalComments input {
    width: 100%;
    height: 25px;
    padding-left: 6px;
}

.featureSSR .SSRpassengerContainer .additionalComments label {
    float: none;
    text-align: left;
}

.dropdownQuestion a:hover,
.additionalComments a:hover {
    color: #002e72;
}

.SSRpassengerContainer {
    width: 48%;
    margin: 0 10px 5px 0px;
}

    .SSRpassengerContainer label,
    .featureSSR .SSRpassengerContainer .dropdownQuestion label {
        float: left;
        margin: 4px 6px 10px 0;
        padding: 0 0;
    }

    .SSRpassengerContainer .dropdownQuestion label {
        width: 98%;
    }

.featureSSR .SSRpassengerContainer {
    box-shadow: -0.3px -0.3px 8px #d3d3d3;
    margin: 5px 10px 18px 5px;
    padding: 10px 4px 4px 6px;
    width: 52.5%;
}

.featureSSR div.SSRpassengerContainer:nth-child(odd) {
    margin: 0 0 18px 5px;
}

.featureSSR .SSRpassengerContainer .dropdownQuestion {
    width: 100%;
    float: left;
    margin: 8px 0 0 0;
}

    .SSRpassengerContainer select,
    .featureSSR .SSRpassengerContainer .dropdownQuestion select {
        width: 48%;
        float: left;
        margin: 0 0 5px 0;
    }

.SSRpassengerContainer .dropdownQuestion {
    clear: left;
    padding-top: 5px;
}

.vehicleSSRcontainer .SSRpassengerContainer .dropdownQuestion {
    width: 30%;
}

.vehicleSSR .SSRpassengerContainer {
    width: 98%;
}

    .vehicleSSR .SSRpassengerContainer fieldset {
        width: 100%;
        float: left;
        margin-right: 25px;
    }

        .vehicleSSR .SSRpassengerContainer fieldset:last-child {
            margin-right: 0px;
        }

    .vehicleSSR .SSRpassengerContainer label,
    .vehicleSSR .SSRpassengerContainer select {
        width: auto;
    }

.hotelSSR .dropdownQuestion,
.flightSSR .dropdownQuestion,
.featureSSR .dropdownQuestion {
    min-width: 210px;
    width: 31%;
    margin: 0 2% 8px 0;
    float: left;
}

    .hotelSSR .dropdownQuestion select,
    .featureSSR .dropdownQuestion select,
    .featureSSR .dropdownQuestion label {
        width: 87%;
    }

    .flightSSR .dropdownQuestion select {
        display: block;
    }

.sec-payment-logo-link {
    text-align: center;
    display: inline-block;
    margin: 10px 5px;
}

    .sec-payment-logo-link img {
        display: block;
        width: 85px;
        height: auto;
        margin-bottom: 5px;
    }

.on-request-hotel-types tr td {
    min-width: 110px;
}


@media (max-width: 882px) {
    .featureSSR .SSRpassengerContainer {
        width: 95%;
        margin: 0 0 7px 5px;
        padding: 5px 0 5px 10px;
        box-shadow: 0px 0px 0px #fff;
        border-bottom: 1px solid #d1dee7;
        float: none;
    }

        .SSRpassengerContainer select,
        .featureSSR .SSRpassengerContainer .dropdownQuestion select {
            width: 45%;
        }

    .featureSSR div.SSRpassengerContainer:nth-child(2n+1) {
        margin: 0 0 7px 5px;
    }

    .additionalComments {
        margin-top: 6px;
    }

        .additionalComments label {
            display: block;
        }
}

@media (max-width: 485px) {
    .hotelSSR .dropdownQuestion,
    .flightSSR .dropdownQuestion,
    .additionalComments input,
    .vehicleSSR .SSRpassengerContainer fieldset {
        float: none;
    }

    .hotel-ro-image-wrap {
        float: none;
        clear: both;
        text-align: center;
        width: 100%;
    }

        .hotel-ro-image-wrap img {
            width: 50%;
            max-width: 185px;
        }

    .hotel-room-details {
        width: 100%;
        float: none;
    }

    .flight-cart-points, .codeshare-footnote {
        float: none;
        text-align: center;
        margin: 10px 0;
    }
}

@media (max-width: 410px) {
    .featureSSR .SSRpassengerContainer .dropdownQuestion label,
    .featureSSR .SSRpassengerContainer label {
        clear: left;
        text-align: left;
        width: 100%;
    }

    .featureSSR .dropdownQuestion select,
    .SSRpassengerContainer select,
    .featureSSR .SSRpassengerContainer .dropdownQuestion select {
        width: 190px;
    }

    .hotelSSR .dropdownQuestion,
    .flightSSR .dropdownQuestion,
    .featureSSR .dropdownQuestion {
        min-width: 220px;
    }
}

@media (max-width: 380px) {
    .SSRpassengerContainer label {
        text-align: left;
    }

    .hotelSSR .dropdownQuestion,
    .flightSSR .dropdownQuestion,
    .additionalComments input,
    .vehicleSSR .SSRpassengerContainer fieldset {
        width: 195px;
    }

    .featureSSR .SSRpassengerContainer .additionalComments input,
    .additionalComments input {
        width: 190px;
    }

    .SSRpassengerContainer label {
        width: 95%;
    }

    .vehicleSSR .SSRpassengerContainer label,
    .vehicleSSR .SSRpassengerContainer select {
        float: none;
        width: 98%;
    }

    .hotelSSR h3,
    .flightSSR h3,
    .vehicleSSR h3,
    .featureSSR h3,
    .flightSSR fieldset legend,
    .hotelSSR p,
    .flightSSR p,
    .vehicleSSR p,
    .featureSSR p {
        width: 75%;
    }
}

@media (max-width: 360px) {
    #ssrForm {
        padding: 0px;
        float: none;
        line-height: 15px;
        margin: 10px 0 0 0;
    }

    .smallExpColPanel input {
        height: auto;
        padding: 0 0 0 0 !important;
        margin: 0 0 0 0 !important;
    }

    .featureSSR .SSRpassengerContainer {
        padding-left: 0px;
    }

    table.ajax__validatorcallout {
        left: 20px !important;
    }

    td.ajax__validatorcallout_callout_cell {
        display: none;
    }
}

@media (max-width: 320px) {
    .SSRpassengerContainer label {
        margin: 2px 0px;
    }

    .featureSSR .SSRpassengerContainer .additionalComments input {
        width: 185px;
    }
}



/* BOOKING CONFIRMATION
************************************/

.modify-addon-text {
    margin: 0 0 20px;
    padding: 15px;
    border: solid 1px #dedede;
    border-radius: 3px;
}

    .modify-addon-text button {
        float: none !important;
    }

    .modify-addon-text p {
        margin-bottom: 15px;
    }

.confirm-summary-wrap,
.confirm-summary-wrap-b {
    margin: 20px auto;
    border-bottom: solid 10px #f2f2f2;
    padding-bottom: 20px;
}

.confirm-summary-wrap-b {
    border-top: solid 10px #f2f2f2;
    padding-top: 20px;
    border-bottom: 0;
    padding-bottom: 0;
}

.confirm-top-summary-wrap,
.confirm-bottom-summary-wrap {
    margin-right: 2%;
    width: 49%;
    float: left;
    border-radius: 3px;
    background: #f2f2f2;
    border: solid 1px #dedede;
    padding: 2%;
    text-align: center;
}

.confirm-expect-wrap {
    width: 49%;
    float: left;
}

    .confirm-expect-wrap dt {
        margin-bottom: 10px;
    }

    .confirm-expect-wrap dd {
        margin: 0 0 10px;
    }

.confirm-number {
    font-size: 2.3em;
    display: block;
    width: 100%;
    font-weight: bold;
    color: #fff;
}

.confirm-number-highlight {
    text-align: center;
    background-color: #44812d;
    color: #fff;
    padding: 15px;
    display: block;
    width: 100%;
    border-radius: 3px;
    font-size: 1.8rem;
    margin: 0px auto 15px;
}

.confirm-thanks {
    border-bottom: solid 1px #f2f2f2;
    padding-bottom: 5px;
    margin-bottom: 15px;
    display: block;
}

.confirm-bar {
    padding: 2%;
    background-color: #f2f2f2;
    border-color: #dedede;
    border-radius: 3px;
    text-align: right;
}

    .confirm-bar input[type="button"] {
        margin-left: 10px;
    }

    .confirm-bar .cartButton {
        display: inline;
    }

.confirm-traveler-details {
    margin-bottom: 5px;
}

.confirm-traveler-multiroom-title h3 {
    background-color: #f2f2f2;
    font-weight: bold;
    margin: 15px 0 10px;
    padding: 7px 5px 5px;
}

.confirm-traveler-wrap {
    padding-top: 20px;
}

.confirm-traveler {
    padding-bottom: 20px;
}

    .confirm-traveler:last-child {
        border-bottom: 0;
    }

    .confirm-traveler dd {
        display: block;
        width: 100%;
        white-space: nowrap;
    }

    .confirm-traveler dl dd,
    .ro-confirm-traveler-info dl dd {
        display: inline;
        width: auto;
        margin-right: 20px;
    }

    .confirm-traveler dt,
    .ro-confirm-traveler-info dt {
        font-weight: bold;
        font-size: 1.5rem
    }

        .confirm-traveler dt.confirm-traveler-title,
        .ro-confirm-traveler-info dt {
            font-size: 1.7rem;
        }

.traveler-address-first {
    width: 100%;
}

.document-apis-wrap,
.destination-apis-wrap {
    float: left;
    margin-top: 10px;
}

.hotel-loyalty-wrap input {
    min-width: 300px;
    max-width: 400px;
}

.confirm-traveler dl dd dl:after {
    content: "";
    display: table;
    clear: both;
}

.confirm-traveler-info {
    width: 49%;
    float: left;
    margin-right: 2%;
}

.ro-confirm-traveler-info {
    width: 49%;
    margin-right: 2%;
}

.re-issue-doc-form {
    padding: 5px;
    margin-top: 5px;
    text-align: right;
}

.doc-delivery-title {
    margin-top: 10px;
}

.confirm-traveler dd {
    font-weight: bold;
}

.traveler-info-label {
    display: inline-block;
    margin-right: 2px;
    font-weight: normal;
}

.traveler-tsa-wrap {
    border: solid 1px #d3d3d3;
    width: 49%;
    float: left;
    padding: 1%;
    line-height: 1.3;
}

    .traveler-tsa-wrap dd {
        white-space: normal;
    }

.traveler-apis-wrap {
    float: left;
    margin-top: 10px;
}

.confirm-frequent-flyer-wrap {
    margin-top: 10px;
}

    .traveler-tsa-wrap dl dd dl:after,
    .confirm-frequent-flyer-wrap dl dd dl:after {
        display: inline;
        clear: none;
    }

.tsa-privacy-notice {
    display: block;
    margin-bottom: 5px;
}


.confirm-tsa dd,
.confirm-frequent-flyer dd {
    float: left;
    margin-right: 15px;
}

.traveler-tsa-optional,
.frequent-flyer-number {
    width: 100%;
    padding: 5px 0 0 0;
}

.confirmation-wrap h2,
.checkout-step1 h2,
.checkout-step2 h2,
.checkout-step3 h2
.checkout-step3 .h2 {
    border-bottom: solid 3px #f2f2f2;
}

.confirmation-wrap .payment-info-container {
    margin: 20px auto;
    padding: 20px 0;
    border: solid 10px #f2f2f2;
    border-left: 0;
    border-right: 0;
}

.confirmation-wrap .payment-info-section {
    border-bottom: solid 2px #f2f2f2;
    padding-bottom: 20px;
    margin-bottom: 20px;
}

    .confirmation-wrap .payment-info-section:last-child {
        border: 0;
    }

.refreshed-deposit-message {
    text-align: right;
    color: #d90707;
}

.partial-payment-wrap,
.estimated-due-wrap {
    margin: 10px auto 20px;
}

.refresh-desposit-info {
    margin: 0px 5px;
}

.c-earlybird-wrap {
    margin: 0 0 30px 0;
    padding-bottom: 30px;
    border-bottom: solid 10px #f2f2f2;
}

.c-earlybird-content {
    width: 100%;
}

.c-earlybird-price {
    text-align: right;
    font-size: 1.6rem;
    padding-right: 8px;
}

.c-earlybird-content th,
.c-earlybird-content td {
    padding: 8px 0px;
    font-weight: normal;
}

.c-earlybird-content caption {
    text-align: left;
    border-bottom: solid 3px #f2f2f2;
    font-size: 2.2rem;
    font-weight: bold;
    padding-bottom: 5px;
}

.c-earlybird-disclaimer-wrap {
    border-top: solid 1px #dedede;
    margin: 15px 0;
}

.pnr-modal-wrap div {
    padding-bottom: 20px;
}

.attach-pnr-wrap {
    padding-bottom: 10px;
}

.itinerary-tools-wrap .pnr-section-wrap .expco-trigger {
    padding: 10px 0px;
}

.attach-pnr-wrap fieldset {
    margin: 0 5% 10px 0;
    width: 27%;
    display: block;
    float: left;
    min-width: 270px;
}

    .attach-pnr-wrap fieldset label {
        display: block;
    }

    .attach-pnr-wrap fieldset input,
    .attach-pnr-wrap fieldset select {
        width: 100%;
    }

.pnr-button-wrap {
    clear: both;
}

.attach-pnr-buttons-wrap {
    text-align: right;
}

    .attach-pnr-buttons-wrap .recalculate-pnr-button-wrap {
        display: inline-block;
        padding-left: 1%;
    }

    .attach-pnr-buttons-wrap .attach-pnr-button-wrap {
        margin: 10px 0px 5px 0px;
    }

.attach-new-pnr-wrap .attach-pnr-input {
    width: 85%;
}


@media screen and (max-width: 640px) {
    .confirm-expect-wrap {
        width: 100%;
        float: none;
    }

    .confirm-traveler-info {
        width: 100%;
        float: none;
        margin-right: 0;
    }

    .traveler-tsa-wrap, .traveler-apis-wrap,
    .confirm-frequent-flyer-wrap {
        width: 100%;
        float: none;
        margin-top: 20px;
    }

    .confirm-top-summary-wrap,
    .confirm-bottom-summary-wrap {
        margin-right: 0;
        width: 100%;
        float: none;
    }
}

/* ATOL EMAIL FORM
************************************/

.atol-desc-text {
    margin: 15px 0;
}

/* REFUND REQUEST FORM
************************************/

.refund-request-form {
    clear: both;
    overflow: hidden;
    width: 100%;
}

    .refund-request-form fieldset {
        float: left;
        display: block;
        width: 45%;
        white-space: nowrap;
        margin-right: 2%;
        margin-bottom: 1%;
    }

    .refund-request-form label,
    .refund-request-form input,
    .refund-request-form textarea {
        clear: both;
        display: block;
        width: 99%;
    }

.refund-address-1,
.refund-address-2 {
    margin-bottom: 15px;
}

.required-field {
    margin-bottom: 5px;
}



/* RESERVATION RETRIEVAL
************************************/

.reservation-header-wrap {
    margin: 20px 0;
}

.reservation-header {
    display: inline-block;
    width: inherit;
    border: 0;
    margin-bottom: 0;
}

.reservation-header-h1 {
    float: left;
}

.reservation-header-full-link {
    padding: 5px 0 0 8px;
    display: block;
    float: left;
}

.res-management-links {
    width: 60%;
    float: right;
    text-align: right;
}

.res-retrieval-wrap fieldset {
    margin: 20px 0;
}

.res-retrieval-wrap label {
    display: block;
    width: 100%;
}

.res-retrieval-wrap input[type="text"],
.res-retrieval-wrap input[type="password"] {
    width: 100%;
}

.res-retrieval-btn {
    margin-top: 20px;
}

.res-retrieval-num,
.res-retrieval-pass {
    width: 49%;
    float: left;
}

.res-retrieval-num {
    margin-right: 1%;
}

.res-retrieval-pass {
    margin-left: 1%;
}

.multi-party-sum-email-and-print-buttons {
    text-align: right;
    margin: 0 0 13px 0;
}

.res-price-and-comm-price {
    color: #d97827;
    font-size: 1.6rem;
    font-weight: bold;
    margin: 0 10px 65px 0;
}

.multi-party-sum-total-price {
    width: 30%;
    float: left;
}

.multi-party-sum-total-comm {
    width: 30%;
    float: right;
    text-align: right;
}

.res-summ-header {
    margin: 0 0 10px 0;
}

.multi-tab-res-party {
    margin: 15px 10px 15px 0;
    font-weight: bold;
    border-bottom: 1px solid #CCC;
}

.multi-tab-res-name {
    border-top: 1px solid #243a4f;
    border-right: 1px solid #243a4f;
    border-left: 1px solid #243a4f;
    border-bottom: 1px solid #FFF;
    border-radius: 5px 5px 0 0;
    width: 200px;
    padding: 10px;
    margin: 0 0 -1px 0;
    z-index: 99;
    position: relative;
    overflow-wrap: break-word;
    word-wrap: break-word;
}

.multi-tab-res-itin {
    border: 1px solid #243a4f;
    padding: 0px 10px;
}

@media print {
    .multi-tab-res-itin {
        page-break-after: always;
    }
}

@media (max-width: 979px) {
    .res-management-links {
        width: 100%;
        float: none;
    }
}


/* RESERVATION RETRIEVAL ITIN TOOLS
************************************/

.ro-itinerary-tools {
    margin-top: 25px;
}

.itinerary-tools-wrap .cancelBtnPosition {
    margin: 20px 0;
    text-align: right;
}

/* Add Payment Tab */

#itin-tools-tab-container .payment-info-details fieldset {
    width: 44%;
}

#itin-tools-tab-container .payment-info-details fieldset input[type="text"],
#itin-tools-tab-container .payment-info-details fieldset select {
    width: 95%;
}
#itin-tools-tab-container fieldset.cc-expiration-date .expirationYearInput {
    width: 51%;
}
#itin-tools-tab-container fieldset.cc-expiration-date .expirationMonthInput {
    width: 62%;
}

#itin-tools-tab-container .submitBtnPosition {
    text-align: right;
}

.use-existingcc-list-container {
    padding: 20px 0px 20px 0px;
}
.use-existingcc-button-wrap {
    padding: 0px 0px 20px 0px;
}

/* Comments and Preferences / modifications tab */

.change-component-List {
    list-style-type: none;
    display: flex;
}

    .change-component-List li {
        padding: 10px 20px 10px 0px;
    }

.itin-tools-apply-promo {
    width: 100%;
    text-align: left;
    display: block;
    margin-top: 5px;
    padding: 0 0 10px 0;
}

#itinComments #hotelSSRcontainer {
    margin-top: 20px;
}

.ro-date-change-wrap {
    margin-bottom: 20px;
}

    .flight-information-wrap fieldset,
    .ro-date-change-wrap fieldset {
        width: 33%;
        padding: 10px 5% 5px 0;
        float: left;
    }

.flight-information-wrap-width25 fieldset
{
    width: 19%;
    padding: 2px;
    float: left;
    position: relative;    
    display: block; 
}

.flight-info-type-input-disabled {
    cursor: not-allowed;
    opacity: 0.5;
    background-color: #e9e9e9;
    pointer-events: none;
}

.flight-information-wrap fieldset label {
    display: block;
}

    .flight-information-wrap input,
    .ro-date-change-wrap input {
        width: 100%;
    }

.no-flight-checkbox-wrap {
    margin: 10px 0px;
}


.itinerary-tools-subheader textarea {
    width: 100%;
    max-width: 100%;
}

.add-air-package-type-wrap,
.add-air-departing-from-wrap {
    margin: 3px 0px 7px;
}

.add-air-searchbar-wrap {
    margin: 5px 0px;
    text-align: right;
}



/* History tab */

.commentHistory {
    margin-bottom: 20px
}

.comment-history-table,
.current-balance-table,
.reservation-history-table,
.reservation-history-ssr-table,
.travel-credit-history-table,
.pnr-name-match-table {
    width: 100%;
    margin-bottom: 20px;
    max-width: 100%;
}

    .current-balance-table tr:nth-child(odd),
    .reservation-history-table tr:nth-child(odd),
    .reservation-history-ssr-table tr:nth-child(even),
    .comment-history-table tr:nth-child(even),
    .travel-credit-history-table tr:nth-child(odd) {
        background-color: #f9f9f9;
    }

.reservation-history-ssr-table {
    margin: 0;
}

.component-history-title {
    width: 20%;
    font-size: 1.5rem;
}

.reservation-history-ssr-table {
    table-layout: fixed;
}

.comment-history-table th,
.current-balance-table th,
.reservation-history-table th,
.travel-credit-history-table th,
.pnr-name-match-table th {
    background-color: #f2f2f2;
}

.reservation-history-ssr-table th,
.comment-history-table tr:nth-child(even),
.current-balance-table tr:nth-child(even),
.res-history-ssr-table-wrap,
.travel-credit-history-table tr:nth-child(even) {
    background-color: #fff;
}

.current-balance-table th,
.current-balance-table td,
.reservation-history-table th,
.reservation-history-table td,
td.res-history-ssr-table-wrap,
.travel-credit-history-table th,
.travel-credit-history-table td,
.pnr-name-match-table th,
.pnr-name-match-table td {
    padding: 5px;
    border: 1px solid #d3d3d3;
}

.pnr-name-match-table tr {
    background-color: #fff;
}

.comment-history-table th,
.comment-history-table td {
    border: 1px solid #d3d3d3;
    padding: 5px 5px 5px 18px;
}

td.res-history-ssr-table-wrap {
    border-top: 0;
    border-bottom: 0;
}

.res-history-ssr-requests {
    border-bottom: 1px dashed #d3d3d3;
}

.reservation-history-ssr-table td,
.reservation-history-ssr-table th {
    border: 0;
    background-color: #fff;
    font-size: 1.2rem;
}

#itinHistory h3 {
    margin-bottom: 5px;
    font-weight: bold;
}

.reservation-history-mobile-label {
    display: none;
}

.checkoutActive .successMessage,
.error {
    color: #fd3400;
}

.success {
    color: Green;
}

#LoyaltyPromoCodesComponentContainer {
    float: right;
}

#ApplyLoyaltyPointsContainer {
    text-align: right;
}

.loyaltyInputWrap {
    margin-bottom: 20px;
}

.loyalty-pointsheader {
    font-size: 16px;
    font-weight: bold;
    margin: 15px 0 0;
}

.loyaltyInputTexBox {
    margin-bottom: 5px;
}

.MinMax-checkout3 {
    margin-top: 0;
}

.loyaltyInputTexBox .applyPromoInput {
    text-align: right;
    padding-right: 4px;
}

@media screen and (max-width: 767px) {
    .current-balance-table tr:nth-child(even),
    .reservation-history-table tr:nth-child(even),
    .reservation-history-ssr-table tr:nth-child(even),
    .comment-history-table tr:nth-child(even),
    .travel-credit-history-table tr:nth-child(even) {
        background-color: #f2f2f2;
    }

    .current-balance-table tr:nth-child(odd),
    .reservation-history-table tr:nth-child(odd),
    .reservation-history-ssr-table tr:nth-child(even),
    .comment-history-table tr:nth-child(odd),
    .travel-credit-history-table tr:nth-child(odd) {
        background-color: #fff;
    }

    .ui-widget .commentHistory select {
        max-width: 100%;
        width: 100%;
    }

    .reservation-history-table th,
    .current-balance-table th,
    .comment-history-table th,
    .travel-credit-history-table th,
    .pnr-name-match-table th {
        display: none;
    }

    .reservation-history-ssr-table th {
        display: block;
    }

    .reservation-history-table td,
    .current-balance-table td,
    .comment-history-table td,
    .travel-credit-history-table td,
    .pnr-name-match-table td {
        display: inline-block;
        width: 49%;
        border: none;
        padding: 5px 3px 3px 3px;
        font-size: 1.3rem;
    }

    .reservation-history-table .reservation-history-mobile-label,
    .current-balance-table .reservation-history-mobile-label,
    .comment-history-table .reservation-history-mobile-label,
    .travel-credit-history-table .reservation-history-mobile-label,
    .pnr-name-match-table .reservation-history-mobile-label {
        display: block;
    }

    .res-history-ssr-inner-row {
        border: none !important;
    }

    .res-history-ssr-requests {
        border-bottom: 1px dashed #d3d3d3 !important;
    }

        .res-history-ssr-requests td,
        .component-history-title {
            width: 100% !important;
        }

    #priceAttachListHeader tr {
        border: none;
    }

        #priceAttachListHeader tr:nth-child(odd) {
            background-color: #fff;
        }

        #priceAttachListHeader tr:nth-child(even) {
            background-color: #f2f2f2;
        }
}


#itin-tools-tab-container .pay-submit-button-wrap {
    width: 50%;
    margin: 10px 0;
}

#itin-tools-tab-container .accept-terms-condition-checkout {
    width: 50%;
}

.submit-flight-information select {
    margin-right: 7px;
}

/* Copy tab */

.modify-res-wrap {
    margin-top: 10px;
}

.modify-copy-sections {
    border-bottom: solid 1px #d3d3d3;
    padding: 5px 0;
    margin-bottom: 5px;
}

/* Cancel tab */
.cancel-res-wrap .passenger-details {
    float: left;
    width: 33%;
}

.cancel-res-wrap .cancel-instructions {
    float: right;
    text-align: right;
    width: 66%;
}

.cancel-res-button-wrap {
    text-align: right;
    margin-top: 10px;
}

@media (max-width: 892px) {
    .flight-information-wrap fieldset,
    .ro-date-change-wrap fieldset {
        width: 70%;
    }
}

@media (max-width: 768px) {
    #itin-tools-tab-container .pay-submit-button-wrap {
        width: 100%;
    }

    #itin-tools-tab-container .accept-terms-condition-checkout {
        width: 100%;
    }
}

@media (max-width: 420px) {

    .cancel-res-wrap .passenger-details,
    .cancel-res-wrap .cancel-instructions {
        width: 100%;
        float: none;
        text-align: left;
    }
}

/* Refund and Adjustments tab */

.refund-adjustments {
    margin: 15px 0px;
}

.refund-reservations-wrap {
    margin-top: 10px;
}

.commission-adjustments-wrap {
    float: left;
    width: 100%;
    margin-top: 10px;
}

    .commission-adjustments-wrap .commission-origin-column,
    .commission-adjustments-wrap .commission-adjustment-column,
    .commission-adjustments-wrap .addtl-adjusted-commission-wrap {
        width: 31%;
        float: left;
        margin: 10px;
    }

    .commission-adjustments-wrap .commission-origin-column {
        margin-left: 0px;
    }

    .commission-adjustments-wrap .adjusted-commission-wrap,
    .commission-adjustments-wrap .addtl-adjusted-commission-wrap,
    .commission-adjustments-wrap .commission-origin-column {
        border: 1px solid #d3d3d3 !important;
        background-color: #f2f2f2;
    }

    .commission-adjustments-wrap .commission-adjustment-table td input {
        width: 100%;
    }

    .commission-adjustments-wrap .calculate-commission-button-wrap {
        margin: 10px 0px;
        text-align: center;
    }

.calculate-commission-button-wrap .button {
    width: 100%;
}

.submit-adjustments-button-wrap {
    padding-bottom: 20px;
}

.adjustment-type-input {
    margin-top: 20px;
}

.adjustment-type-dropdown {
    margin-left: 6px;
}

.manager-info {
    float: right;
    text-align: right;
    max-width: 50%;
}

.adjustment-verbiage-info {
    margin-top: 15px;
}

.refund-adjustments fieldset {
    margin: 0 5% 0px 0;
    width: 28%;
    display: inline-block;
    min-width: 260px;
    vertical-align: top;
}

.adjustment-commission-row,
.adjustment-net-row {
    padding: 6.30px 0px;
}

.refund-adjustments select,
.refund-adjustments input[type="text"] {
    width: 100%;
}

.submit-refund-button-wrap {
    padding: 0px 0px 20px 0px;
}

/* DO NOT REMOVE - this styling sets the error messages back to original styling. They were being overridden as they are inside a table - inheriting that styling */
.commission-adjustments-wrap .commission-adjustment-table .ajax__validatorcallout td {
    display: table-cell;
    width: auto;
}

@media (max-width:1101px) {
    .commission-adjustments-wrap .commission-origin-column,
    .commission-adjustments-wrap .commission-adjustment-column,
    .commission-adjustments-wrap .addtl-adjusted-commission-wrap {
        width: 50%;
        margin-left: 0px;
    }
}

@media (max-width:793px) {
    .commission-adjustments-wrap .commission-origin-column,
    .commission-adjustments-wrap .commission-adjustment-column,
    .commission-adjustments-wrap .addtl-adjusted-commission-wrap {
        width: 100%;
        margin-left: 0px;
    }
}

/* Drop PAX/Age Change Modal
*********************************/

.drop-pass-age-field {
    padding: 10px;
    border-bottom: 1px solid #ccc;
    margin-bottom: 15px;
    padding-bottom: 25px;
}

    .drop-pass-age-field:nth-last-child(1) {
        border-bottom: 0px;
    }

    .drop-pass-age-field dt {
        font-size: 1.7rem;
        font-weight: bold;
    }

.drop-pass-age-field {
    width: auto;
}

.mod-traveler-info {
    width: 32%;
    float: left;
    margin-bottom: 10px;
}

    .mod-traveler-info div {
        font-weight: bold;
    }

.age-label,
.dob-label,
.remove-pass-label {
    width: 32%;
    display: block;
    float: left;
    height: 60px;
}

    .age-label select,
    .dob-label span {
        clear: both;
        display: block;
    }

    .remove-pass-label input {
        margin-right: 3px;
    }

@media (max-width:767px) {
    .mod-traveler-info,
    .age-label,
    .dob-label,
    .remove-pass-label {
        width: 100%;
        min-height: 30px;
        height: auto;
        float: none;
        padding: 5px 0px;
    }
}

/*ITIN TOOLS - RES-RETRIEVAL - MULTI STOP COMPONENTS 
************************************/

.multi-stop-date-change-wrap {
    margin-top: 10px;
}

.multi-stop-date-change {
    border: 1px solid #f2f2f2;
    padding: 10px;
}

.multi-stop-change-restool input,
.multi-stop-change-hotel input,
.multi-stop-change-return input {
    width: 100%;
}

.multi-stop-change-restool label,
.multi-stop-change-hotel label {
    display: block;
}

.change-destination-wrap h4 {
    margin: 10px 0;
}

.res-depart-from-ro-fieldset {
    display: inline-block;
    width: 30.1%;
    float: left;
    min-width: 180px;
    margin-right: 3%;
}

.change-destination-wrap .going-to-wrap {
    margin-top: 10px;
}

.change-destination-wrap .changed-date-wrap {
    margin: 5px 0px 10px 0px;
}

.change-destination-wrap .number-nights-wrap {
    display: block;
}

    .change-destination-wrap .number-nights-wrap select {
        width: 65px;
    }

.changed-date-wrap {
    font-weight: bold;
}

    .changed-date-wrap label {
        display: inline-block;
    }

.itin-tools-change-checkboxes {
    list-style-type: none;
    margin: 20px 0;
}

.multi-stop-change-return {
    margin: 10px 0px 0px 10px;
}

/*** Email Payment link standalone page ***/

.self-payment-info,
.self-payment-info input,
.card-type-add-payment select {
    width: 100%;
}

.self-payment-link-wrap {
    margin-bottom: 20px;
}

.self-payment-intro {
    margin-bottom: 20px;
}

.self-payment-info fieldset {
    margin: 0 2% 15px 0;
    width: 31%;
    display: inline-block;
    min-width: 260px;
}

.self-payment-link-wrap .vendorLogo,
.self-pay-footer .vaxLogo {
    margin-right: 50px;
}

.self-payment-captcha {
    background-color: #f5f5f5;
    margin: 20px 0;
    min-width: 320px;
    padding: 1%;
    width: 100%;
}

.self-pay-button-wrap {
    text-align: right;
    margin-bottom: 30px;
}

.card-type-add-payment {
    margin: 0 5% 30px 0;
    width: 27%;
    display: block;
    float: left;
    min-width: 270px;
}

    .card-type-add-payment label {
        display: block;
    }

.self-pay-footer {
    margin-top: 30px;
    text-align: right;
}

@media (max-width: 520px) {
    .self-pay-button-wrap {
        text-align: left;
    }
}




/* MODALS
************************************/

.push-right {
    float: right;
}

.cancel-no {
    margin-left: 10px;
}

#modalParentDiv p {
    margin-bottom: 15px;
}

#modalExtPostBackground {
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 1049;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    position: fixed;
}

#fakeModalParentDiv.waitscreen-modal-wrap {
    z-index: 1050;
    position: relative;
    margin: 0 auto;
}

.modal-wrap,
.modalPopup,
.FareTypeModalPopup,
.fare-type-modal-wrap {
    background: #fff;
    border: solid 1px #dedede;
    border-radius: 3px;
    padding: 30px 2%;
    position: relative;
}

@media (max-width: 414px) {
    .modal-wrap,
    .modalPopup,
    .FareTypeModalPopup,
    .modalWaitScreenPopup {
        padding-left: 2%;
        padding-right: 2%;
        padding-top: 0px;
        padding-bottom: 0px;
    }
}

@media (max-width: 414px) {
    .modalWaitScreenPopup {
        background: #fff;
        border: solid 1px #dedede;
        border-radius: 3px;
        position: relative;
    }
}

.modal-title {
    border-bottom: solid 5px #f2f2f2;
    display: block;
    width: 100%;
    padding-top: 10px;
}

.modal-overlay,
#modalExtPostBackground {
    background: rgba(242,242,242, 0.8);
}

.modalBody {
    background-color: #fff !important;
}

/* Prevent iOS scrolling bug in iframe modals (https://stackoverflow.com/questions/34766636/ios-browser-iframe-jumps-to-top-when-changing-css-or-content-using-javascript) */
@media (max-width: 414px), (max-height: 414px) {
    .modalHTML, .modalBody {
        height: 100%;
        overflow: auto;
        -webkit-overflow-scrolling: touch;
    }
}

@media (min-width: 415px) and (min-height: 415px) /* Non-phones */
{
    .modal-close {
        top: 0px;
        right: 0px;
        z-index: 1000;
        position: absolute;
        padding: 15px 15px;
    }
}

.modal-close a,
.modal-close button,
.close-text {
    color: #d90707;
    font-weight: bold;
    text-transform: uppercase;
    font-size: 1.2rem;
    text-decoration: none;
}

.modal-close i {
    color: #d90707;
    font-size: 2.0rem;
}

#modalContentDiv .modalContainer,
#modalContentDiv .fareTypeContainer {
    width: 860px;
}

.remove-feature-buttons {
    text-align: right;
    margin: 20px 0 0;
    padding-top: 20px;
}

    .remove-feature-buttons button {
        float: left;
    }

.modal-close button {
    font-family: 'SourceSansPro-Bold', Arial, Sans-Serif;
    cursor: pointer;
    padding: 4px 7px 4px 7px;
    display: block;
    text-align: center;
    color: #fff !important;
    border: 1px solid #4c6c85;
    background-color: #127cb7;
    border-radius: 3px;
    text-decoration: none;
    margin-left: auto;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 3px;
}

    .modal-close button .close-text,
    .modal-close button i {
        color: #fff !important;
    }

@media (max-width: 414px), (max-height: 414px) {
    .modal-wrap,
    .fareTypeContainer {
        padding-top: 10px;
        padding-bottom: 60px;
    }

    .modal-close button {
        margin-top: 8px;
        margin-right: 3px;
    }
}

@media (min-width: 415px) {
    .closeWindowBtn {
        display: none;
    }
}

/* Prevents iOS scrolling body through modals */
.fullscreen-modal-open {
    position: fixed;
    top: 0px;
    left: 0px;
    bottom: 0px;
    right: 0px;
}

/* Enable iframe scrolling and fix momentum scrolling on iOS */
#modalContentDiv, #modalIframeDiv {
    -webkit-overflow-scrolling: touch;
}

@media (max-width: 414px), (max-height: 414px) {
    #modalContentDiv, #modalIframeDiv {
        overflow-y: scroll !important; /* Could do at all sizes for tablets, but then desktop shows scrollbar when not needed */
    }
}

/*** secure payment information modal ***/

.sec-payment-details {
    margin: 20px 0 10px;
}

.sec-payment-img {
    float: left;
    margin: 0 10px 10px 0;
}


/*** schedule change modal ***/

.schedule-change-wrap {
    margin: 20px auto;
}

.schedule-change-btn-wrap {
    margin-bottom: 20px;
}

.invalid-age-btn-wrap {
    text-align: right;
    clear: both;
    margin: 20px 0 0;
}

.hotel-rating-list {
    list-style: none;
}

    .hotel-rating-list li {
        margin-bottom: 20px;
    }


/*** feature profile modal ***/

#feature-profile-wrap {
    width: 96%;
    margin: 2% auto;
}

.hotelImageEnlarged {
    display: none;
}

#OverviewImageEnlargedClose {
    display: none;
}

.feature-details-list {
    border: solid 1px #dedede;
    border-radius: 3px;
    margin: 20px 0;
    list-style-type: none;
}

.feature-detail-list ul {
    margin-left: 18px !important;
}

.feature-highlights {
    list-style: none;
    padding: 2%;
}

    .feature-highlights ul {
        margin-left: 18px;
    }

.feature-details-list li:last-child {
    border-bottom: 0;
}

.featureDetailList {
    padding: 2%;
    list-style: none;
}

    .featureDetailList ul {
        padding: 0;
        list-style: none;
    }

    .featureDetailList li {
        margin-bottom: 10px;
    }

.fp-accordian-title button {
    padding: 1%;
    background: #f2f2f2;
    border-bottom: solid 1px #dedede;
    font-size: inherit;
    text-decoration: none;
    width: 100%;
}

    .fp-accordian-title button:hover {
        background: #efefef;
    }

.print-feature-wrap {
    width: 100px;
    float: right;
    text-align: right;
}

.feature-fees {
    text-align: right;
}


@media (max-width: 360px) {
    .feature-summary-image-wrap img {
        width: 96%;
        margin: 15px auto;
    }
}


/*** leg detail modal ***/

.flight-detail-list {
    padding: 0;
    margin: 0 0 2% 0;
    width: 100%;
}

.flight-detail-wrap {
    list-style: none;
    padding: 1% 2%;
    border-top: 0;
}

.flight-detail-list li:nth-child(even) {
    background: #f2f2f2;
    border-radius: 3px;
}

.fdLeft {
    width: 28%;
    margin-right: 1%;
    float: left;
    margin-bottom: 5px;
}

.fdRight {
    width: 70%;
    margin-left: 1%;
    float: left;
    margin-bottom: 5px;
}

.feature-detail-summary-wrap .feature-summary-image-wrap {
    float: left;
    margin: 0 20px 0 0;
}

.air-modal .modal-title {
    padding-bottom: 20px;
}

.air-modal h2 {
    border: 0;
    margin-bottom: 0;
}

.air-modal h3 {
    font-style: italic;
    border-bottom: 20px;
}

.air-modal .flight-leg-carrier {
    width: 14%;
    float: left;
    margin-right: 1%;
}

    .air-modal .flight-leg-carrier img {
        max-width: 80px;
        display: block;
        clear: right;
    }

.air-modal .flight-leg-info-wrap {
    width: 84%;
    float: left;
    margin-left: 1%;
}


@media (max-width: 760px) {
    .air-modal .flight-leg-arrival,
    .air-modal .flight-leg-depart {
        width: 100%;
        float: none;
    }

    .air-modal .flight-leg-depart {
        margin-right: 0;
        margin-top: 2%;
    }

    .air-modal .flight-leg-arrival {
        margin-left: 0;
        margin-top: 2%;
    }

    .air-modal .flight-leg-carrier img {
        width: 100%;
        height: auto;
        max-width: 100px;
    }

    .air-modal .flight-leg-carrier {
        width: 25%;
        float: left;
        margin-right: 1%;
    }

    .air-modal .flight-leg-info-wrap {
        width: 67%;
        float: left;
        margin-left: 1%;
    }
}

@media (max-width: 860px) {


    .flight-leg-arrival,
    .flight-leg-depart {
        width: 49%;
        float: left;
    }

    .flight-leg-depart {
        margin-right: 1%;
    }

    .flight-leg-arrival {
        margin-left: 1%;
    }

    .flight-leg-carrier img {
        width: 100%;
        height: auto;
    }

    .flight-leg-info-wrap {
        width: 80%;
        float: left;
        margin-left: 1%;
    }
}

/* fare type info table*/

.fare-type-info
.fare-type-info thead,
.fare-type-info th,
.fare-type-info td {
    padding-left: 3px;
    padding-right: 3px;
    padding-bottom: 5px;
    border: 1px solid;
    border-collapse: collapse;
}


/*** economy fare modal ***/

.fare-grid {
    border-collapse: unset;
}

    .fare-grid,
    .fare-grid thead,
    .fare-grid tfoot,
    .fare-grid tbody,
    .fare-grid th,
    .fare-grid td.fare-recommendation {
        display: block;
    }

        .fare-grid tr,
        .fare-grid .fare-inclusions td {
            display: flex;
        }

        .fare-grid th,
        .fare-grid td {
            width: 50%;
            border: solid #ddd;
            border-width: 0 2px;
            padding: 10px;
        }

        .fare-grid th,
        td.fare-recommendation {
            color: #fff;
            background: #243a4f;
            border-color: #243a4f;
            text-align: center;
        }

        .fare-grid td {
            line-height: 1.4;
            vertical-align: top;
        }

            .fare-grid th:first-child,
            .fare-grid td:first-child {
                margin-right: 20px;
            }

th.fare-title {
    font-size: 1.6rem;
    padding: 10px 5px 0 5px;
}

td.fare-recommendation {
    font-size: 1.2rem;
    padding: 0 5px 10px 5px;
}

.fare-icon {
    padding: 0 5px 5px 5px;
}

.fare-grid .fa-check {
    font-size: 2.4rem;
    color: #44812d;
}

.fare-grid .fa-times {
    font-size: 3rem;
    color: #d90707;
}

.fare-grid td.fare-price-wrap,
.fare-grid td.fare-select {
    text-align: center;
    border-width: 0;
}

.fare-grid td.fare-restrictions {
    width: 100%;
    font-size: 1.2rem;
    margin-right: 0;
    padding-bottom: 0;
    display: block;
}

.fare-grid td.fare-price-wrap {
    border-top-width: 2px;
    display: block;
    padding-left: 0;
    padding-right: 0;
}

.fare-price {
    font-weight: bold;
    font-size: 2.4rem;
}

.fare-price-per {
    font-size: 1.2rem;
    vertical-align: top;
}

td.fare-select {
    padding-top: 0;
    display: block;
}

.fare-select .button {
    width: 100%;
    height: 100%;
    min-height: 30px;
}

.fare-perk-title {
    font-weight: bold;
    font-size: 1.5rem;
}

.fare-perk-description {
    display: block;
    font-size: 1.3rem;
}

.fare-change-flight {
    width: 250px;
    display: block;
    margin: 10px auto 0 auto;
    height: 30px !important;
}

.fare-restrictions {
    text-align: center;
    margin-top: 20px;
}

.economy-fare-error {
    color: #d90707;
    text-align: center;
    border: 2px solid #d90707;
    padding: 10px;
    font-weight: bold;
    margin-bottom: 15px
}

/* styles for fare grid when no upsell is present */
.fare-grid th:only-of-type,
.fare-grid td:only-of-type {
    width: 100% !important;
    margin-right: 0 !important;
}


@media (max-width: 414px) {
    .fare-grid th:first-child,
    .fare-grid td:first-child {
        margin-right: 0;
    }

    .fare-grid td:first-child {
        border-right-width: 0;
    }

    .fare-grid td:last-child {
        border-left-width: 0;
    }

    .fare-inclusions td:first-child {
        width: 100%;
    }

        .fare-inclusions td:first-child .fare-perk {
            width: 100%;
            margin: 0 auto;
            text-align: center;
            padding-left: 15px;
        }

    .fare-inclusions td:not(:first-child) {
        width: auto;
        margin-left: auto;
    }

        .fare-inclusions td:not(:first-child) .fare-perk {
            display: none;
        }

    .fare-includes-left,
    .fare-grid th:first-child,
    .fare-recommendation:first-child {
        text-align: left;
    }

    .fare-includes-right,
    .fare-grid th:last-child,
    .fare-recommendation:last-child {
        text-align: right;
    }

    .fare-difference {
        display: none;
    }

    /* styles for fare grid when no upsell is present */

    .fare-grid th:only-of-type,
    .fare-grid thead td:only-of-type {
        text-align: center;
    }

    .fare-grid td:only-of-type .fare-perk {
        text-align: left;
    }

    .fare-inclusions td:only-of-type {
        border-width: 0 1px;
    }

    .fare-inclusions .fare-perk-description {
        display: none !important;
    }
}


/*** email itin modal ***/

input.email-itin-subject {
    background: #dddddd;
    cursor: default;
    border: 0px;
    color: #333;
}

.emailAddressField input,
.email-itin-subject,
.email-itin-reply-to input,
.itin-subject-field input,
.email-itin-from input {
    width: 60% !important;
    display: block;
}

.itin-subject-line-text {
    width: 60% !important;
    display: block;
}

.itin-modal-hide {
    display: none;
}

.itin-ar-wrap {
    margin-bottom: 15px;
}

.itin-send-wrap {
    margin-top: 10px;
    padding-bottom: 30px;
}

.itin-modal-salutation {
    width: 100%;
}

.email-itin-modal input {
    margin-bottom: 15px;
}

.emailModalLogos img {
    max-width: 100%;
}


@media (max-width: 320px) {
    .emailAddressField input,
    .email-itin-subject,
    .email-itin-reply-to input,
    .itin-subject-field input,
    .email-itin-from input {
        width: 100% !important;
    }
}


/*** email a payment link modal ***/

.payment-request-wrap fieldset {
    margin: 10px 0px;
    min-width: 51%;
    max-width: 400px;
}

.payment-request-wrap input[type=text],
.payment-request-wrap select {
    width: 100% !important;
    display: block;
}

.self-payment-button-wrap {
    margin: 20px 0px 5px 0px;
}

@media (max-width: 640px) {

    .payment-request-wrap fieldset {
        min-width: 100%;
    }

    .self-payment-text-area textarea {
        width: 100%;
        display: block;
    }
}

/*** seat map modal ***/

.seat-map-modal .ui-tabs-anchor {
    font-size: 1.2rem;
}

.seat-map-modal .ui-widget-header,
.seat-map-modal #flightTabs {
    background: none;
    border: 0;
    padding: 0;
}

.seat-map-instructions-wrap {
    margin-bottom: 20px;
}

.plane-wrap {
    width: 600px;
}

.plane-direction-wrap {
    margin-left: 27px;
    margin-bottom: 5px;
}

.seat-map-modal .ui-tabs-panel:after {
    clear: both;
    display: table;
    content: "";
}

.seat-map-modal #flightTabs {
    padding-top: 20px;
}

.seat-map-modal .ui-tabs-panel {
    border: 1px solid #aaa;
}

.seat-map-segment-heading {
    font-size: 1.6rem;
    border: 0;
    margin-bottom: 0;
}

.seat-map-grid td,
.seat-map-grid th {
    padding: 2px;
}

    .seat-map-grid td:focus {
        outline: 1px solid #4c6c85;
    }

.seat-map-grid th {
    text-align: center;
}

.wing-row {
    background-color: #c0c0c0;
}

.seat-map-legend,
.seat-map-key-guide {
    float: right;
    width: 320px;
    margin-top: 57px;
    border: 1px solid #dedede;
    padding: 15px;
    margin-top: 15px;
}

    .seat-map-key-guide dt {
        font-weight: bold;
    }

    .seat-map-legend .wing-row {
        display: inline-block;
        width: 15px;
        height: 15px;
    }

.exit-row {
    background-color: #cc9900; /* Overrides wing-row */
}

.seat-map-legend .exit-row {
    display: inline-block;
    width: 15px;
    height: 15px;
}

.seat-map-grid td.available[aria-readonly="false"] {
    cursor: pointer;
}

.seat-map-legend img,
.seat-map-legend span {
    margin-right: 5px;
    margin-bottom: -2px;
}

.seat-image {
    width: 15px; /* Smoother rendering */
    height: 15px;
}

.selected-seat-num {
    font-weight: bold;
}

.seat-map-warning {
    max-width: 500px;
}

.seat-map-conditions {
    padding: 25px 0;
}

.seat-map-warning div {
    margin-bottom: 20px;
}


@media (max-width: 640px) {
    .seat-map-grid img {
        width: 17px;
        height: 17px;
    }

    .seat-map-legend,
    .seat-map-key-guide {
        float: none;
        margin-top: 0;
        margin-bottom: 20px;
    }

    .seat-map-grid td,
    .seat-map-grid th {
        padding: 3px;
    }

    .plane-direction-wrap {
        margin-left: 40px;
    }

    .plane-wrap,
    .seat-map-legend,
    .seat-map-key-guide {
        width: 100%;
    }
}

@media (max-width: 360px) {
    .seat-action {
        margin-bottom: 30px;
    }
}


/*** taxes and fees modal ***/

.taxes-modal-content ul {
    margin-left: 20px;
}

.taxes-modal-list {
    margin: 10px 0 20px;
    list-style-type: disc;
    padding-left: 20px;
}

.taxes-modal-sublist {
    list-style-type: circle;
    margin-left: 20px;
}

.taxesFeesList {
    padding: 10px;
    width: 100%;
}

    .taxesFeesList tr {
        border-bottom: solid 1px #f2f2f2;
        padding: 1% 0;
    }

    .taxesFeesList td,
    .taxesFeesList th {
        padding: 1% 0;
    }

.listDescription {
    padding: 10px;
}

.taxesFeesList .title {
    width: 100%;
    margin: 10px 0;
    border-bottom: solid 5px #f2f2f2;
    text-align: left;
}

.taxesFeesList .floatRight {
    display: block;
    width: 30%;
    float: left;
}

.taxesFeesList caption {
    font-weight: bold;
    font-size: 1.8rem;
}

.tax-fee-title,
.tax-fee-total {
    border-radius: 3px;
    padding: 3px 10px;
    border-top: solid 5px #f2f2f2;
}

.tf-col-1 {
    width: 50%;
}

.tf-col-2,
.tf-col-3 {
    width: 20%;
}

.tf-col-4 {
    width: 8%;
}

.taxes-modal-content {
    margin: 40px 0 20px;
}

.tf-cell-space {
    display: none;
}

    .tf-cell-space:first-child {
        display: table-cell;
    }

@media (max-width: 360px) {
    .taxes-fees-modal {
        padding-bottom: 40px;
    }
}


/*** leg detail modal ***/

.flight-detail-list {
    padding: 0;
    margin: 0 0 2% 0;
    width: 100%;
}

    .flight-detail-list caption {
        font-weight: bold;
        text-align: left;
        padding: 5px;
        border-bottom: solid 1px #f2f2f2;
        margin-bottom: 10px;
    }

    .flight-detail-list td,
    .flight-detail-list th {
        padding: 5px;
        border-top: 0;
    }

    .flight-detail-list tr:nth-child(even) {
        background: #f2f2f2;
        border-radius: 3px;
    }

.fdLeft {
    width: 28%;
    margin-right: 1%;
    float: left;
    margin-bottom: 5px;
}

.fdRight {
    width: 70%;
    margin-left: 1%;
    float: left;
    margin-bottom: 5px;
}

/*** fare rules modal - start ***/

.fare-rules-content {
    width: 800px;
}

.fare-rules-list caption {
    font-size: 1.6rem;
    padding-bottom: 5px;
    text-align: left;
    border-bottom: solid 1px #f2f2f2;
    margin-bottom: 10px;
}

.fare-rules-info {
    font-weight: bold;
    padding-bottom: 10px;
    padding-left: 3px;
}

.fare-rules-title {
    background: #dddddd;
    border-radius: 3px;
    font-weight: bold;
    padding: 3px;
}

.fare-rules-text {
    padding: 6px 3px 6px 3px;
}

/*** fare rules modal - end ***/

/*Price Selected flights modal*/

.price-flights-modal-wrap {
    padding: 10px;
}

    .price-flights-modal-wrap .arrival-disclaimer,
    .price-flights-modal-wrap .price-flights-intro {
        font-size: 1.4rem;
        padding: 20px 0 12px 0;
    }

        .price-flights-modal-wrap .price-flights-intro a {
            color: #000 !important;
        }

    .price-flights-modal-wrap .package-type-wrap {
        clear: both;
        width: 100%;
        display: flex;
        padding: 10px 0 0 0px;
        border-top: 1px solid #d3d3d3;
    }

.published-fare {
    display: inline-block;
    width: 48%;
    padding-left: 3%;
}

.bulk-fare {
    border-right: 1px solid #d3d3d3;
    width: 48%;
    display: inline-block;
}

.shop-by-schedule-button-wrap {
    margin-top: 10px;
}

.price-flights-intro em {
    font-size: 1.1rem;
    display: block;
    padding-top: 5px;
}

@media (max-width: 520px) {

    .published-fare,
    .bulk-fare {
        width: 100%;
        text-align: center;
    }
}

/*** privacy policy modal ***/

#PrivacyContentDescription p {
    margin-bottom: 10px;
}


/*** hotel profile modal ***/
.hotel-profile-wrap .modal-title {
    display: flex;
    align-items: flex-start;
}

.hotel-profile-wrap button.cleaning-badge {
    margin-left: auto;
    padding: 0 40px 0 10px;
}

.hotel-profile-wrap .modal-title h2 {
    border-bottom: none;
    margin-bottom: 0;
    display: inline;
    margin-right: 10px;
}

.hp-hotel-rating-wrap {
    padding-bottom: 10px;
}

.hp-rating-wrap {
    display: inline-block;
}

    .hp-rating-wrap img[class^="rating_"] {
        vertical-align: inherit;
    }

.hp-hotel-rating-wrap .hotel-rating-wrap {
    width: auto;
}

.hp-hotel-address-wrap {
    margin-bottom: 15px;
}

.hp-top-wrap {
    margin: 15px 0;
}

.hotel-information-wrap {
    float: left;
    padding-bottom: 15px;
    width: 58%;
}

.hp-hotel-address-wrap {
    margin-bottom: 15px;
}

.hp-top-wrap .price-select-wrap {
    width: 40%;
    border-radius: 3px;
    background: #f2f2f2;
    border: solid 1px #dedede;
    position: relative;
    float: right;
    margin: 0 0 0 2%;
    padding: 2%;
    text-align: center;
}

.hp-top-wrap .component-price {
    font-size: 2.5rem;
    font-weight: bold;
}

.hp-top-wrap .price-divide {
    display: none;
}

.hp-top-wrap .price-inclusion-wrap {
    margin-bottom: 5px;
}

.hp-top-wrap .button {
    margin: 10px 0 0;
    text-transform: uppercase;
    width: 96%;
}

.dmca-link {
    float: right;
}

.hotel-profile-wrap .expco-added-value .expco-trigger {
    background: none;
    border: none;
    padding: 5px 0 0;
}

    .hotel-profile-wrap .expco-added-value .expco-trigger span {
        color: #4c6c85;
    }

.current-promotions-wrap .expco-trigger-text span {
    margin-left: 10px;
    font-size: 1.2rem;
}

.expco-included-value-content {
    margin: 3px 0 15px 20px;
    font-size: 1.2rem;
    line-height: 1.7;
}

.galleria-image-nav-left,
.galleria-image-nav-right {
    outline: none;
}


/*** Universal tab styling  ***/

.ui-widget,
.ui-widget select {
    font-size: 1.4rem;
    font-family: Arial, Sans-Serif;
}

    .ui-widget button,
    .ui-widget input,
    .ui-widget textarea {
        font-family: Arial, Sans-Serif;
    }

.hotel-profile-tabs .ui-widget-header,
.group-details-tabs .ui-widget-header {
    background: none !important;
    padding: 0;
    border-color: #dedede;
}

.group-details-tabs .ui-widget-header {
    margin-top: 20px;
}

.group-details-tabs ul .currency-item {
    text-align: right;
    padding: 15px;
    font-size: 1.1rem;
    float: right;
}

@media (max-width: 640px) {
    .group-details-tabs ul .currency-item {
        border-top: 1px solid #dedede;
    }
}

.hotel-profile-tabs.ui-tabs,
.group-details-tabs.ui-tabs {
    border: 0;
}

.hotel-profile-tabs .ui-tabs-nav,
.group-details-tabs.ui-tabs-nav {
    border-width: 0 0 1px;
    min-width: 320px;
    padding: 25px 0 0 0;
}

.hotel-profile-tabs .ui-corner-all,
..group-details-tabs .ui-corner-all {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

.hotel-profile-tabs .ui-tabs-panel,
.group-details-tabs .ui-tabs-panel {
    border: 1px solid #dedede;
    border-top: none;
}

.sub-tab-wrap {
    border: 1px solid #dedede;
    border-top: none;
}

    .sub-tab-wrap + .sub-tab-wrap .expco-trigger {
        border-top-width: 0;
    }

.hotel-profile-wrap .expco-trigger {
    padding: 1%;
    background: #f2f2f2;
    display: block;
    text-decoration: none;
    border-top: 1px solid #dedede;
    width: 100%;
}

.hp-promotions-wrap {
    width: 95%;
}

.hotel-profile-tabs .ui-tabs-anchor {
    padding: 5px 8px !important;
}

.hotel-fees-disclaimer-wrap {
    margin-top: 15px;
    text-align: right;
    font-size: 1.2rem;
    font-style: italic;
}

.hotel-profile-tabs #tabHeaders li a {
    font-size: 1.2rem;
    font-weight: bold;
}

.group-details-tabs #tabHeaders li a {
    font-size: 1.7rem;
    font-weight: bold;
}

.hotel-profile-tabs h2,
.group-details-tabs h2 {
    font-size: 1.6rem;
    border-bottom: 1px dashed #dedede;
    padding: 0 0 5px;
    margin-bottom: 10px;
    font-weight: bold;
}

.group-details-tabs h2 {
    border: none;
}

.hotel-profile-tabs h3,
.group-details-tabs h3 {
    font-size: 1.4rem;
    font-weight: bold;
}

.hotel-profile-tabs li,
.group-details-tabs li {
    margin-left: 18px;
    list-style: disc;
    border-color: #dedede !important;
}

/* group details tabs */

.group-details-wrap {
    width: 100%;
}

.group-details-iventory-table,
.grand-total-inventory,
.group-payment-reservation,
.grand-total-reservations,
.group-non-payment-commision-table,
.group-totals-commission,
.group-details-charter-inventory-table,
.group-flight-information {
    width: 100% !important;
    max-width: 100%;
    margin-bottom: 10px;
}

.current-balance-mobile-label {
    display: none;
}

.grand-total-inventory,
.group-totals-commission {
    margin-top: 10px;
}

.group-details-iventory-table td {
    padding: 5px;
    border: 1px solid #d3d3d3;
}

.grand-total-reservations th,
.group-non-payment-commision-table th,
.group-totals-commission th,
.group-details-charter-inventory-table th,
.group-payment-reservation th,
.group-details-iventory-table th,
.group-flight-information th {
    padding: 5px;
    background-color: #f2f2f2;
    border: 1px solid #d3d3d3;
}

.group-details-charter-inventory-table td,
.grand-total-reservations td,
.group-non-payment-commision-table td,
.group-totals-commission td,
.group-payment-reservation td,
.group-flight-information td {
    padding: 5px;
    border: 1px solid #d3d3d3;
}

.group-details-iventory-table th {
    padding: 5px;
}


.group-details-charter-inventory-table tr:nth-child(even),
.grand-total-reservations tr:nth-child(even),
.group-non-payment-commision-table tr:nth-child(even),
.group-totals-commission tr:nth-child(even),
.group-payment-reservation tr:nth-child(even),
.group-details-iventory-table tr:nth-child(even),
.group-details-charter-inventory-table tr:nth-child(even),
.group-flight-information tr:nth-child(even) {
    background-color: #f9f9f9;
}

.group-details-charter-inventory-table tr:nth-child(odd),
.grand-total-reservations tr:nth-child(odd),
.group-non-payment-commision-table tr:nth-child(odd),
.group-totals-commission tr:nth-child(odd),
.group-payment-reservation tr:nth-child(odd),
.group-flight-information tr:nth-child(odd) {
    background-color: #fff;
}

.groups-charter-extra-detail,
#totalAmountHighError,
#totalAmountZeroError {
    padding-bottom: 10px;
}

.res-package-type {
    width: 130px !important;
}

.res-paid-amount {
    width: 50px !important;
}

.groups-charter-flight-inventory {
    margin-top: 10px;
}


.grand-total-inventory tr,
.grand-total-inventory {
    background: #f1f1f1;
    border: 1px solid #d3d3d3;
}

    .grand-total-inventory td {
        padding: 5px;
        width: 30%;
    }

.hotel-inventory-rooms h3 {
    padding-bottom: 5px;
}

#groupNonPaymentResTable thead th,
#groupPaymentTransferTable thead th,
#groupNonPaymentCommTable thead th {
    padding: 0px 6px 3px 17px;
}

.dataTable tr.odd td.sorting_1 {
    background-color: rgba(255, 243, 225, 0.2);
}

.dataTable tr.even td.sorting_1 {
    background-color: rgba(255, 243, 225, 1);
}

.dataTable th.sorting_disabled {
    cursor: default;
    padding-left: 3px !important;
}

.sorting {
    background: url('https://trisept.widen.net/content/bebk3yfnpz/png/TRI_ICON_NAV_sort_both.png') no-repeat 0 50%;
}

.sorting_desc {
    background: url('https://trisept.widen.net/content/x4mnahoupc/png/TRI_ICON_NAV_sort_desc.png') no-repeat 0 50%;
}

.sorting_asc {
    background: url('https://trisept.widen.net/content/an9bm0krc7/png/TRI_ICON_NAV_sort_asc.png') no-repeat 0 50%;
}

/*error message td was inheriting 5px padding from table */
.group-payment-reservation .ajax__validatorcallout_callout_cell,
.group-payment-reservation .ajax__validatorcallout_callout_arrow_cell {
    padding-right: 0;
}

.pendingTransferAmountInvalid,
#totalAmountHighError,
#totalAmountZeroError {
    color: #fd3400;
}

.pendingTransferAmount {
    font-weight: bold;
}

.payment-transfer-button-wrap {
    text-align: right;
}

.checkboxOnGrid {
    text-align: center;
}

@media(max-width: 1023px) {

    .group-flight-information thead tr {
        display: none;
    }

    .group-flight-information td {
        display: inline-block;
        width: 50%;
        border: none;
        padding: 5px 3px 3px 3px;
        font-size: 1.3rem;
        float: left;
    }

    #groupDetailsTabs-5 .current-balance-mobile-label {
        display: block;
    }

    .checkboxOnGrid {
        text-align: left;
    }
}

@media(max-width: 979px) {

    .non-mobile-content{
        display: none;
    }

    #groupDetailsTabs .current-balance-mobile-label {
        display: block;
    }

    .group-payment-reservation th,
    .group-non-payment-commision-table th {
        display: none;
    }

    .group-payment-reservation td,
    .group-non-payment-commision-table td {
        display: inline-block;
        width: 50%;
        border: none;
        padding: 5px 3px 3px 3px;
        font-size: 1.3rem;
        float: left;
    }

    .group-payment-reservation .ajax__validatorcallout tr {
        border: none;
    }

    .group-payment-reservation .ajax__validatorcallout td {
        display: table-cell;
        width: inherit;
        padding: 5px 0px 3px 3px;
        font-size: inherit;
        float: none;
    }

    .group-payment-reservation tr:nth-child(odd),
    .group-non-payment-commision-table tr:nth-child(odd),
    .group-payment-reservation tr:nth-child(odd) {
        background-color: #f2f2f2;
    }

    .group-payment-reservation tr:nth-child(even),
    .group-non-payment-commision-table tr:nth-child(even),
    .group-payment-reservation tr:nth-child(even) {
        background-color: #fff !important;
    }

    .group-payment-reservation .ajax__validatorcallout tr {
        border: none;
    }

    .group-payment-reservation .ajax__validatorcallout td {
        display: table-cell;
        width: inherit;
        padding: 5px 0px 3px 3px;
        font-size: inherit;
        float: none;
    }

    .groups-reservations-package {
        width: 100% !important;
    }
}


/* hotel details tab */

.hotel-description-wrap,
.hp-location-wrap {
    margin-bottom: 15px;
}

    .hp-location-wrap span {
        font-weight: bold;
    }

.hotel-policies-wrap h2 {
    padding-top: 20px;
}

.hp-marketing-info ul {
    margin-bottom: 20px;
}


/* amenities tab */

.amenity-detail {
    display: none;
    width: 300px;
    position: absolute;
    overflow: visible;
    font-size: 100%;
    padding: 25px 10px 10px 10px;
    z-index: 99;
    background: #fff;
    border-radius: 3px;
    border: 1px solid #dedede;
}

.amenities-detail-trigger .expco-trigger {
    display: inline;
    border: 0;
}


/* accommodations tab */

.hotel-room-type-wrap {
    margin-bottom: 40px;
}

    .hotel-room-type-wrap .room-type-wrap {
        margin: 15px 0;
    }

.room-type-wrap h3 {
    border-top: 1px dashed #dedede;
    padding-top: 10px;
    margin-top: 15px;
}

    .room-type-wrap h3:first-child {
        border-top: none;
        padding-top: 0;
    }

.room-type-promos-wrap {
    float: left;
    font-size: 1.2rem;
    max-width: 450px;
}

.room-type-wrap h3 span {
    font-size: 1.2rem;
    font-weight: normal;
}

.hotel-profile-tabs .room-type-wrap .hotel-profile-price-per-stay {
    text-align: right;
    font-size: 1.2rem;
    font-weight: normal;
    padding: 10px 0px;
}

.price-per-wrap {
    float: right;
    text-align: right;
}

.acc-price-per-wrap {
    display: flex;
    align-items: flex-end;
}

.acc-room-rewards-wrap > div {
    margin-bottom: 2px;
    margin-right: 20px;
}

.rooms-tab-heading span {
    font-size: 80%;
    font-weight: normal;
}

.price-per-wrap > span {
    display: block;
    font-size: 1.2rem;
    margin-bottom: 3px;
}

    .price-per-wrap > span strong {
        font-weight: bold;
        font-size: 1.8rem;
        display: block;
        margin-bottom: 5px;
    }

.price-per-wrap div {
    font-size: 1.2rem;
}

#tabs-3 .avail-rooms-panel,
#tabs-3 .unavail-rooms-panel {
    border-bottom: 0;
}

.acc-room-type {
    border-bottom: solid 10px #f2f2f2;
    margin-bottom: 15px;
}

#tabs-3 .avail-rooms-panel .expco-trigger,
#tabs-3 .unavail-rooms-panel .expco-trigger {
    background: none;
    border-top: 0;
    border-bottom: 0;
    padding: 0;
}

#tabs-3.ui-tabs-panel {
    padding-left: 0;
    padding-right: 0;
}

#tabs-3 > h2,
.room-category-wrap,
.room-type-inner-wrap,
.hotel-fees-disclaimer-wrap {
    padding: 0 20px 20px;
}

    .room-category-wrap h2 {
        border-bottom: 0;
    }

    .room-category-wrap + .room-type-wrap .acc-room-type,
    .unavail-rooms-panel .room-category-wrap + .unavail-rooms-panel .room-type-wrap {
        border-bottom: 1px dashed rgb(222, 222, 222);
        margin-bottom: 10px;
    }

        .room-category-wrap + .room-type-wrap .acc-room-type .room-type-inner-wrap {
            padding-bottom: 10px;
            padding-left: 35px;
            padding-right: 35px;
        }

        .room-category-wrap + .room-type-wrap .acc-room-type:last-child,
        .unavail-rooms-panel .hotel-room-type-wrap .room-category-wrap:only-child {
            border-bottom: solid 10px #f2f2f2;
            margin-bottom: 15px;
            padding-bottom: 20px;
        }

        .room-category-wrap + .room-type-wrap .acc-room-type:only-child .room-type-inner-wrap {
            padding-left: 20px;
            padding-right: 20px;
        }

.room-selected {
    border: solid 2px #007bc4;
    padding: 20px;
}

.room-amenities-content-wrap {
    margin-left: 19px;
}


@media (max-width: 640px) {
    .price-per-wrap,
    .room-type-promos-wrap,
    .acc-price-per-wrap {
        display: block;
        text-align: center;
        width: 100%;
    }

        .acc-price-per-wrap .reward-points-incremental-wrap {
            float: none !important;
            margin: 10px auto 20px;
        }

    .hotel-information-wrap {
        width: 100%;
    }

    .price-per-wrap {
        margin-top: 10px;
    }

    .hp-top-wrap .price-select-wrap {
        width: 100%;
        clear: both;
        margin-top: 15px;
    }

    .ui-tabs .ui-tabs-nav li,
    .ui-tabs .ui-tabs-nav li a {
        width: 100%;
    }

    .hotel-room-type-wrap .room-type-wrap {
        margin: 15px;
    }
}


/* activities tab */

.hp-sub-accordian-title {
    display: inline;
}

    .hp-sub-accordian-title .expco-trigger {
        background: none;
    }

.attraction-title span {
    color: #4c6c85;
}

.attraction-title .expco-trigger {
    padding: 0 0 10px 0;
}


/* trip advisor tab */

.ta-vendor-message {
    margin-bottom: 15px;
}

.trip-advisor-review-wrap {
    margin-bottom: 25px;
}

    .trip-advisor-review-wrap h2 {
        font-size: 1.8rem;
        border-bottom: none;
        margin-bottom: 0;
    }

.review-date-wrap {
    border-bottom: 1px dashed #dbdbdb;
    margin-bottom: 10px;
}

    .review-date-wrap span {
        position: absolute;
        margin-top: 1px;
        margin-left: 10px;
        font-size: 1.2rem;
    }

.trip-advisor-footer-wrap {
    font-size: 1.2rem;
    font-style: italic;
}


/*** hotel contacts modal ***/

.hotel-contacts-wrap {
    width: 100%;
}

    .hotel-contacts-wrap th {
        background-color: #f2f2f2;
    }

    .hotel-contacts-wrap td {
        min-width: 70px;
    }

.hotel-comment-toggle {
    width: 215px;
}

.hotel-comments strong {
    display: block;
    margin: 10px 0 5px;
}

.hotel-contacts-wrap tbody tr:nth-child(4n), .hotel-contacts-wrap tbody tr:nth-child(4n-1) /* every 2 rows */ {
    background-color: #f9f9f9;
}

.hotel-contacts-wrap th,
.hotel-contacts-wrap td {
    padding: 5px;
    border: 1px solid #d3d3d3;
}

.hotel-contact-mobile-label {
    display: none;
    font-weight: bold;
}

@media (max-width: 767px) {
    .hotel-contact-break,
    .hotel-contacts-wrap th {
        display: none;
        border: none;
    }

    .hotel-contact-mobile-label {
        display: inline-block;
    }

    .hotel-contacts-wrap td {
        width: 100%;
        display: block;
        border: none;
    }

    .hotel-contacts-wrap tbody tr:nth-child(even) {
        background-color: #fff;
    }

    .hotel-contacts-wrap tbody tr:nth-child(odd) {
        background-color: #f2f2f2;
    }
}


/*** vehicle profile modal ***/

#vehicleProfileTabs {
    width: 100%;
}

#policiesSubTabs {
    margin-top: 10px;
}

    #policiesSubTabs .expco-trigger {
        padding: 1%;
        background: #f2f2f2;
        display: block;
        text-decoration: none;
        border-top: 1px solid #dedede;
        width: 100%;
    }

#vehicleProfileTabs .ui-tabs-anchor {
    padding: 5px 8px;
}

#vehicleProfileTabs .ui-corner-all {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

#vehicleProfileTabs .ui-tabs-nav {
    border-width: 0 0 1px;
    min-width: 320px;
    padding: 5px;
}

#vehicleProfileTabs.ui-tabs {
    border: 0;
}

#VehicleDescriptionTab,
#PoliciesTab,
#RateDetailsTab,
#LocationsTab {
    border: solid 1px #dedede;
    border-top: 0;
}

#vehicleProfileTabs .ui-widget-header {
    background: none !important;
    padding: 0;
    border-color: #dedede;
}

    #vehicleProfileTabs .ui-widget-header .ui-state-active {
        border-color: #dedede;
    }

#policiesSubTabs {
    border: solid 1px #dedede;
}

    #policiesSubTabs .expco-content-wrap {
        width: 96%;
        margin: 2%;
    }

    #policiesSubTabs .expco-trigger-text {
        margin-left: 5px;
    }

    #policiesSubTabs .more-info-list {
        list-style: none;
    }

#vehicleProfileTabs h2 {
    border-color: #dedede;
}

    #vehicleProfileTabs h2 em {
        font-size: 1.3rem;
        font-weight: normal;
        display: block;
    }

.vp-image-container {
    margin-right: 1%;
    width: 28%;
    float: left;
}

    .vp-image-container img {
        width: 100%;
        max-width: 160px;
    }

.vp-feature-container {
    margin-left: 1%;
    width: 70%;
    float: left;
}

.vp-title-wrap {
    position: relative;
}

.vp-logo-image {
    position: absolute;
    top: 0;
    right: 0;
}

.rate-details-list td,
.rate-details-list th {
    padding: 1% 2%;
    border-top: 0;
}

th.rate-detail {
    width: 70%;
    text-align: left;
    padding-left: 10px;
    font-weight: normal;
}

td.rate-price {
    width: 30%;
    text-align: right;
    padding-right: 10px;
}

.rate-details-list {
    width: 100%;
}

    .rate-details-list tr.rate-row {
        padding: 10px 0 !important;
    }

    .rate-details-list caption {
        text-align: left;
        padding: 10px;
        border-bottom: solid 1px #f2f2f2;
        font-weight: bold;
    }

ul.listVehicle li {
    list-style: disc;
    margin-left: 30px;
}

ul.listVehicle {
    margin-bottom: 30px;
}

ul.locations-list {
    list-style: none;
}

    ul.locations-list li {
        border-bottom: solid 1px #f2f2f2;
        margin-bottom: 20px;
    }

        ul.locations-list li:last-child {
            border-bottom: 0;
        }

.deposit-notes {
    margin-top: 5px;
    padding-top: 10px;
}

dl.rental-rules-list dd.rental-rule-note,
dl.deposits-list dd.deposit-note {
    margin-bottom: 10px;
    border-bottom: solid 1px #dedede;
    font-size: 1.4rem;
    padding-bottom: 10px;
    display: block;
    width: 100%;
    clear: both;
}

dl.rental-rules-list dd.rental-rule-status,
dl.rental-rules-list dt,
dl.deposits-list dd.rental-rule-status,
dl.deposits-list dt {
    display: inline-block;
    float: left;
    text-align: left;
}

dl.rental-rules-list em,
dl.deposits-list em {
    font-size: 1.4rem;
}

.rate-details-list tr:nth-child(even) {
    background: #f2f2f2;
    border-radius: 3px;
}

.location-address {
    width: 49%;
    float: left;
    margin-right: 1%;
}

.location-hours {
    width: 49%;
    float: right;
    margin-left: 1%;
    margin-bottom: 15px;
}

.more-info-item {
    margin-bottom: 15px;
}


@media (max-width: 500px) {
    #vehicleProfileTabs .ui-state-default .ui-tabs-anchor {
        padding: 2px 4px;
    }
}

@media (max-width: 479px) {
    #vehicleProfileTabs .ui-state-default .ui-tabs-anchor {
        font-size: 10px;
    }
}

@media (max-width: 580px) {
    .vp-image-container {
        width: 100%;
        margin: 10px 0;
        float: none;
    }

    .vp-feature-container {
        margin: 10px 0;
        width: 100%;
        float: none;
    }

    .location-address,
    .location-hours {
        width: 100%;
        float: none;
        margin: 20px 0;
    }
}


/*** hotel maps modal ***/

.map-display-wrap {
    height: 500px;
    width: 70%;
    position: relative;
    float: left;
    border: solid 1px #dedede;
    border-radius: 3px;
}

.mhotel-list-wrap,
.mhotel-detail-wrap {
    float: left;
    overflow: auto;
    width: 28%;
    height: 500px;
    background: #f2f2f2;
    padding: 2%;
    margin-right: 2%;
    border-radius: 3px;
    line-height: 18px;
}

.mapInfoBoxHotel {
    padding: 10px;
    max-width: 270px;
}

.mhotel-detail-wrap div {
    border-bottom: solid 3px #dedede;
    padding: 0 0 15px;
    margin-bottom: 10px !important;
}

#PropertyListVirtualEarth.mhotel-detail-wrap div img {
    margin-bottom: 10px;
}

.mhotel-detail-wrap hr {
    display: none;
}

.mapInfoBoxHotel h3 {
    text-align: left;
    line-height: 2;
}

@media (max-width: 414px), (max-height: 414px) {
    .mapInfoBoxHotel h3 {
        font-size: 1.2rem;
    }

    #map_infobox_content {
        min-width: auto !important;
        min-height: auto !important;
        max-width: 150px;
    }
}

.mapInfoBoxHotel ul {
    margin: 0;
    padding: 0;
    text-align: left;
}

#mapDiv_infobox_content {
    border: solid 1px #dedede !important;
    border-radius: 3px !important;
}

    #mapDiv_infobox_content a {
        font-size: 1.4rem !important;
        line-height: 2 !important;
    }

#mapDiv_infobox_arrow {
    border-right-color: #dedede !important;
}

#mapDiv_infobox_closeBtn {
    font-weight: bold;
    color: #d90707;
}

#PropertyListVirtualEarth img {
    margin: 0 10px 10px 0;
    float: left;
}

#PropertyListVirtualEarth div {
    margin: 2px 0px 2px 0px;
    line-height: 16px;
    clear: both;
    overflow: hidden;
}

.VE_Pushpin_Popup_Body {
    text-align: left;
}


@media (max-width: 479px) {
    .map-display-wrap {
        height: 500px;
        width: 100%;
        float: none;
    }

    .mhotel-list-wrap,
    .mhotel-detail-wrap {
        float: none;
        overflow: auto;
        width: 100%;
        height: 160px;
    }

    .mhotel-list-wrap {
        height: 300px;
        margin-bottom: 20px;
    }
}

@media (max-width: 414px), (max-height: 414px) {
    .map-display-wrap {
        height: 100%;
        width: 100%;
        position: absolute;
    }
}

/*** save itin modal ***/

.save-itin-modal p {
    margin-bottom: 20px;
}

.save-itin-modal .save-itin-buttons {
    text-align: right;
    margin: 20px 0 0;
    padding-top: 20px;
}

.save-itin-modal .button {
    display: inline;
}

/*** copy reservaration  modal ***/

#modalContentCopyReservation select {
    width: 100%;
}

#modalContentCopyParty select {
    width: 100%;
}

.copy-modal-wrap .rooms-wrap {
    width: 100%;
}

/*** refund request modal ***/

.refund-request-modal h3 {
    margin-top: 10px;
}

.refund-request-modal p {
    margin-bottom: 15px;
}

.refund-request-modal fieldset {
    margin-top: 15px;
}

.pax-flight-number fieldset
{
    width: 0px;
    padding: 10px 5% 5px 0;
    /*padding: 5px;*/
    float: left;
    position: relative;     
}

.refund-request-modal label
{
    display: block;
}

.refund-request-modal input[type=text] {
    max-width: 400px;
    width: 400px;
}

.refundOptions input {
    width: auto;
}

.refundOptions label {
    display: inline;
    margin-left: 5px;
}

.submitRefundBtnPosition {
    float: right;
}

@media (max-width: 580px) {
    .refund-request-modal input[type=text] {
        max-width: inherit;
        width: 100%;
    }
}

/*** price match form modal ***/

.price-match-modal h3 {
    margin-top: 10px;
}

.price-match-modal h4 {
    margin-top: 10px;
    font-style: italic;
    font-weight: bold;
}

.price-match-modal p {
    margin-bottom: 15px;
}

.price-match-modal fieldset {
    margin-top: 15px;
}

.price-match-modal label {
    display: block;
}

.price-match-modal input[type=text] {
    max-width: 370px;
    width: 370px;
}

.price-match-modal input[type=radio],
.priceMatchInputs input[type=radio] {
    margin: 4px 5px 5px 5px;
}

.price-match-modal em {
    display: block;
    font-size: 1.2rem;
}

.submitPriceBtnPosition {
    float: right;
}

@media (max-width: 580px) {
    .price-match-modal input[type=text] {
        max-width: inherit;
        width: 100%;
    }
}

.priceMatchInputs .hasSubQuestion label,
.competitorAirInfo fieldset table tr td label,
.competitorHotelInfo fieldset table tr td label,
.competitorCarInfo fieldset table tr td label,
.competitorAddFeatures fieldset table tr td label {
    display: inline-block;
}

    .priceMatchInputs .hasSubQuestion label.subQuestion {
        display: block;
    }


.copy-modal-wrap .number-of-pax-wrap {
    margin-left: 0;
}

/*** Change PAX info modal ***/

.pax-info-wrap legend {
    font-size: 1.6rem;
}

.pax-passenger,
.change-pax-info-form .checkout-required-field {
    padding: 5px 0px;
}

.change-pax-info-form fieldset {
    margin: 0 5% 10px 0;
    width: 33%;
    display: inline-block;
    vertical-align: top;
}

.pax-info-wrap .frequent-flyer-wrap,
.pax-info-wrap .aspis-wrap {
    width: 95% !important;
}

@media (max-width: 420px) {
    .pax-info-wrap .frequent-flyer-wrap,
    .pax-info-wrap .aspis-wrap {
        width: 100% !important;
    }
}

/*** Drop PAX Age Chagen Modal ***/

.modPAXRoomNumber {
    border-bottom: 1px solid #666;
    display: block;
    font-size: 1.8rem;
    font-weight: bold;
    margin-bottom: 10px;
    padding-top: 5px;
}

h3.travelerHeader {
    width: 100%;
    background-color: #243a4f;
    color: #fff;
    padding: 5px 10px;
}

fieldset.dropPassAgeField {
    margin: 13px 10px 0;
    padding: 10px 17px 0 0;
}

.dropPassAgeField fieldset.travelerInfo {
    width: 30%;
    float: left;
    margin-top: 5px;
}

fieldset.dropPassAgeField hr {
    clear: both;
    margin: 15px 0 15px 0;
    background-color: #dbdbdb;
    border: 0 solid #dbdbdb;
    color: #dbdbdb;
    height: 1px;
}

.modifyAge {
    width: 30%;
    display: block;
    float: left;
}

    .modifyAge label,
    .modifyAge select {
        display: block;
    }

.modifyDOB {
    width: 30%;
    display: block;
    float: left;
}

label.removePassLabel {
    float: right;
    margin: 10px 0 0 0;
}

    label.removePassLabel input {
        margin-right: 5px;
    }

.mod-pax-button-wrap {
    margin: 13px 10px 0;
    padding: 10px 25px 0 0;
    float: right;
    margin: 5px 0 0 0;
}

/*** sales email modal ***/

.emailBodyContainer fieldset {
    margin: 0 0 10px 0;
}

.emailBodyContainer label {
    display: block;
}

.emailBodyContainer input[type=text],
.emailBodyContainer textarea,
.emailBodyContainer select {
    max-width: 370px;
    width: 370px;
}

.emailBodyContainer textarea {
    max-width: 100%;
}

.emailBodyContainer fieldset.showPricesInput label {
    display: inline;
}

.emailBodyContainer select {
    display: block;
}

.sendEmailBtnPosition {
    text-align: right;
}

.emailBodyContainer table,
.emailBodyContainer th,
.emailBodyContainer tr,
.emailBodyContainer td {
    vertical-align: top;
}


@media print {
    .print-only {
        display: none;
    }
}

@media (max-width: 760px) {
    .emailBodyContainer table,
    .salesEmailCars td,
    .salesEmailFeatures td,
    .salesEmailHotels td {
        display: block;
        width: 100% !important;
        float: none !important;
        text-align: left !important;
    }
}

@media (max-width: 420px) {
    .emailBodyContainer input[type=text],
    .emailBodyContainer textarea,
    .emailBodyContainer select {
        max-width: inherit;
        width: 100%;
    }
}


/*** add air exception modal ***/

.add-air-exception {
    padding-top: 25px;
    font-weight: bold;
    display: flex;
}

    .add-air-exception i {
        font-size: 2rem;
        margin-right: 10px;
        align-self: baseline;
        margin-top: 3px;
    }


/* Booking Administration Modal
************************************/

.adjustment-commission-cap-info {
    font-size: x-small;
}

.adjustment-net-cap-info {
    font-size: x-small;
}

.commission-origin-column {
    width: 48%;
    float: left;
    margin-right: 2%;
    border: 1px solid #d3d3d3;
    padding: 5px;
}

.commission-adjustment-column {
    width: 48%;
    float: right;
}

.set-commission-inputs {
    width: 48%;
    float: right;
    margin-bottom: 10px;
}

    .set-commission-inputs input {
        margin-right: 3px;
    }

    .set-commission-inputs label {
        margin-right: 5px;
    }

.commission-line-item-wrap {
    margin: 10px 0;
}

.amount-title {
    font-weight: bold;
}

.commission-origin-table,
.commission-origin-table tbody,
.commission-origin-table tr,
.commission-adjustment-table,
.commission-adjustment-table tbody,
.commission-adjustment-table tr {
    display: block;
    width: 100%;
}

    .commission-origin-table tr,
    .commission-adjustment-table tr {
        border-bottom: solid 1px #dedede;
    }

        .commission-origin-table tr:last-child,
        .commission-adjustment-table tr:last-child {
            border-bottom: 0;
        }


    .commission-origin-table th,
    .commission-origin-table td,
    .commission-adjustment-table th,
    .commission-adjustment-table td {
        display: inline-block;
        width: 49%;
    }

    .commission-origin-table th,
    .commission-adjustment-table th {
        display: inline-block;
        line-height: 24px;
        font-weight: normal;
        vertical-align: top;
    }

    .commission-origin-table td,
    .commission-adjustment-table td {
        display: inline-block;
        text-align: right;
    }

.commission-input {
    display: inline-block;
    float: right;
}

    .commission-input input {
        width: 110px;
    }


.adjusted-commission-wrap,
.addtl-adjusted-commission-wrap {
    border: 2px solid #347dc2;
    padding: 5px;
    background-color: #f2f2f2;
}

.addtl-adjusted-commission-wrap {
    margin-top: 10px;
}

.set-commission-btn-wrap {
    float: right;
    margin-top: 20px;
}

.commission-payout-special-button-wrap .commission-payout-modal {
    display: none;
}

.comission-amount-gross-th {
    width: 51% !important;
}
.comission-amount-gross-td {
    width: 47% !important;
}


@media (max-width: 692px) {
    .commission-origin-column,
    .commission-adjustment-column,
    .set-commission-inputs {
        width: 100%;
        margin-bottom: 10px;
    }

    .set-commission-header {
        margin-bottom: 15px;
    }
}

@media (max-width: 360px) {
    .commission-payout-special-button-wrap .commission-payout-modal {
        font-weight: bold;
        cursor: pointer;
        padding: 10px;
        display: block;
        text-align: center;
        border: 1px solid #4c6c85;
        background-color: #127cb7;
        border-radius: 3px;
        margin: 0 auto;
        text-decoration: none;
        width: 100%;
    }

        .commission-payout-special-button-wrap .commission-payout-modal a,
        .commission-payout-special-button-wrap .commission-payout-modal .fa {
            color: #fff !important;
            font-size: 1.2rem;
        }

    .commission-payout-special-button-wrap .modal-close {
        display: none;
    }

    .set-commission-inputs,
    .commission-input {
        float: none;
    }
}
/* Reissue Modal
************************************/

.reissueContainer {
    margin-top: 15px;
}

    .reissueContainer input {
        margin: 5px;
    }

/* Flex Dates Calendar / LTMS Flex Date Selector Modal
************************************/

.calendar {
    width: 280px;
    background-color: silver;
}

.calendarTitle td {
    background-color: #243a4f;
    padding: 4px 5px 4px 5px;
    font-size: 120%;
    font-weight: bold;
    color: #FFFFFF !important;
}

.calendarDayHeader {
    background-color: #fff3e1;
    font-size: 110%;
    color: #000000;
    border: solid 1px #d3d3d3;
    padding: 2px 5px;
    text-align: center;
}

td.calendarDay {
    vertical-align: top;
    background-color: #ffffff;
    text-align: left;
    margin: 0;
}

td.calendarDay,
td.calendarOtherMonthDay {
    border: solid 1px #d3d3d3;
}

#altCalContainer {
    margin: 10px 0 10px 10px;
    padding: 10px;
    position: absolute;
    left: 10px;
    width: 650px;
}

.altCalText {
    font-size: 100%;
    text-align: left;
    width: 540px;
    float: left;
    margin: 0px 0px 0px 7px;
}

.altCalLegend {
    float: right;
    border: solid 1px #d3d3d3;
    padding: 3px;
    margin: 0 5px 0 0;
}

.calendarSetPosition {
    text-align: center;
    margin: 10px 0px;
    width: 60%;
}

.altAvailIcons {
    float: none;
}

.divstylecalendar {
    font-size: 90%;
}

#chk li ul {
    position: absolute;
    display: none;
}

/**********************/

.flex-flight-calendar {
    margin: 20px 0;
    border: none !important;
}

    .flex-flight-calendar table {
        width: 100%;
        max-width: 700px;
        min-width: 250px;
    }

.calDay,
.calDayDisabled { /*This class controls the individual available days */
    list-style: none;
    width: 100%;
    height: auto;
    height: 40px;
    vertical-align: top;
    text-align: left;
    padding: 0 0 0 2px;
}

.calDayDisabled,
.calendarOtherMonthDay {
    background-color: #f2f2f2;
    text-align: left;
}

.calDay li {
    margin: 0;
    position: relative;
    float: left;
    width: 100%;
    display: block;
    height: 100%;
}

    .calDay li img {
        position: absolute;
        right: 10px;
        top: 8px;
        padding: 0 0 2px 10px;
    }

    .calDay li ul {
        display: none;
        position: absolute;
        top: 25px;
        left: 0px;
        z-index: 1;
        padding: 0px;
        margin: 0px;
        list-style: none;
        width: 130px;
    }

        .calDay li ul li a:hover {
            background-image: none;
            background-color: #d97827;
            color: #FFFFFF;
        }

        .calDay li ul li a {
            text-decoration: none;
            display: flex;
            vertical-align: middle;
            padding: 3px;
            margin: 0;
            width: 100%;
            text-align: left;
            justify-content: space-between;
            white-space: nowrap;
            background-color: #243a4f;
            color: #ffffff;
            border: solid #fff;
            border-width: 0 1px 1px 1px;
        }

            .calDay li ul li a:first-child {
                border-top: 1px solid #fff;
            }

.calDay ul {
    display: none;
    position: absolute;
    top: 20px;
    left: 0px;
    z-index: 1000;
}

.calDay li:hover ul ul,
.calDay li:hover ul ul ul {
    display: none;
}

.calDay li:hover ul,
.calDay ul li:hover ul,
.calDay ul ul li:hover ul {
    display: block;
}

.additional-cal-info {
    margin-top: 10px;
}

    .additional-cal-info fieldset {
        margin-bottom: 10px;
    }

.calendarTitle td a {
    color: #fff3e1 !important;
}

.alt-cal-date-wrap table tr {
    background-color: #fff !important;
}

.alt-cal-date-wrap table {
    border-color: #d3d3d3;
}

    .alt-cal-date-wrap table td {
        border-right: solid 1px #d3d3d3;
        border-bottom: solid 1px #d3d3d3;
        height: 40px;
    }

.alt-cal-date-wrap td div.statusDisplay {
    overflow: hidden;
    width: 40px;
}

.SelectedOk {
    background-color: #243a4f !important;
    color: White;
    text-align: left;
}

.Clickable {
    cursor: pointer;
}

.off {
    text-align: left;
}

.statusDisplay {
    color: #C0C0C0;
    text-align: right;
}

.overOk {
    vertical-align: top;
    background-color: rgba(189, 219, 229,0.4);
    height: 40px;
    text-align: left;
}

.overNotOk {
    vertical-align: top;
    text-align: left;
    background-color: #f2f2f2;
    background-image: url("https://trisept.widen.net/content/a3oiqo5biy/gif/TRI_ICON_NAV_cross.gif");
    width: 40px;
    height: 40px;
    cursor: default;
}



/****** End Calendar Modal Styles ******/

/****** Flexible dates flight avail section - V3 styles ******/

.flexible-calendar-wrap {
    border: solid 1px #d3d3d3;
    border-top: none;
    width: 100%;
    padding: 10px;
    float: left;
}

    .flexible-calendar-wrap .ui-widget-header {
        background: #fff3e1;
        text-align: center;
        font-size: 80%;
        padding: 2px 5px;
    }

    .flexible-calendar-wrap table {
        font-size: 1.2rem;
    }

.flexible-calendar-slide-panel {
    display: none;
    padding: 10px 0px;
    float: left;
}

.flex-calendar-instructions {
    float: left;
}

.flexible-calendar-slide-panel .flex-calendar-instructions ul {
    margin: 3px 0 3px 17px;
}

    .flexible-calendar-slide-panel .flex-calendar-instructions ul li {
        list-style-type: disc !important;
        padding: 2px 0 2px 0;
        display: list-item;
    }

.flexible-calendar-slide-panel .flex-calendar-instructions p {
    margin: 10px 0px;
}

.flexible-calendar-slide-panel .flex-calendar-instructions h2 {
    font-size: 1.6rem;
    margin: 10px 0px 5px 0px;
}


.flexible-calendar-slide-panel .flex-calendar-instructions .disclaimer {
    font-weight: bold;
    font-size: 1.1rem;
}

.flex-calendar {
    float: left;
    width: 48%;
    margin: 0px 1% 0px 0px;
}

    .flex-calendar h2 {
        color: #FFFFFF;
    }

.flex-calendar-instructions-wrap {
    float: left;
    width: 50%;
    padding: 0px 2%;
}

.flex-calendar-selected {
    background-color: #D6EBFF;
}

.flex-calendar-lowest {
    background-color: #FFFFCE
}

.flex-calendar-key li {
    list-style-type: none;
    float: left;
    margin: 0 0 0 5px;
}

li.flex-calendar-selected, li.flex-calendar-lowest {
    height: 15px;
    width: 15px;
    border: 1px solid #000;
}

@media (max-width: 980px) {
    .flex-calendar {
        width: 100%;
    }

    .flex-calendar-instructions-wrap {
        width: 100%;
        margin-top: 20px;
        padding: 0px;
    }
}


@media (max-width: 767px) {
    .flex-calendar {
        width: 48%;
    }

    .flex-calendar-instructions-wrap {
        width: 50%;
        margin-top: 0px;
        padding: 0px;
    }
}

@media (max-width: 676px) {
    .flex-calendar {
        width: 100%;
    }

    .flex-calendar-instructions-wrap {
        width: 100%;
        margin-top: 20px;
        padding: 0px;
    }
}


/****** Flexible dates modal section - V3 styles ******/

.flexible-dates-search {
    padding: 5px 0px;
    text-align: left;
}


    .flexible-dates-search .flexible-stay-check-wrap {
        padding: 10px 0px 0px 0px;
    }

    .flexible-dates-search h1 {
        font-size: 1.8rem;
        margin-bottom: 0px;
    }

    .flexible-dates-search p {
        font-size: 1.1rem;
        clear: both;
    }

.flexible-price-search {
    float: left;
    padding: 10px 0px;
    width: 40%;
    font-weight: bold;
    font-size: 1.6rem;
}

.flexible-stay-button-wrap {
    padding: 10px 0px;
    float: right;
    width: 50%;
    text-align: right;
}

.flex-calendar-background {
    text-align: left;
    background: #243a4f;
    padding: 5px 0px 0px 0px;
    border: solid #d3d3d3;
    border-width: 0 1px;
}


/****** Below is the mostly untouched v2 styles of the flex avail calendar due to the backend functionality and unknowns ******/

/* 
 * FullCalendar v1.5.4 Stylesheet
 *
 * Copyright (c) 2011 Adam Shaw
 * Dual licensed under the MIT and GPL licenses, located in
 * MIT-LICENSE.txt and GPL-LICENSE.txt respectively.
 *
 * Date: Tue Sep 4 23:38:33 2012 -0700
 *
 */


/* Header
------------------------------------------------------------------------*/

.fc-header td {
    white-space: nowrap;
}

.fc-header-left {
    width: 25%;
    text-align: left;
}

.fc-header-center {
    text-align: center;
    vertical-align: middle;
}

.fc-header-right {
    width: 25%;
    text-align: right;
}

.fc-header-title h2 {
    margin-top: 0;
    white-space: nowrap;
}

.fc .fc-header-space {
    padding-left: 10px;
}

.fc-header .fc-button {
    margin: 5px !important;
}

/* buttons edges butting together */

.fc-header .fc-button {
    margin-right: -1px;
}

.fc-header .fc-corner-right {
    margin-right: 1px; /* back to normal */
}

.fc-header .ui-corner-right {
    margin-right: 0; /* back to normal */
}

/* button layering (for border precedence) */

.fc-header .fc-state-hover,
.fc-header .ui-state-hover {
    z-index: 2;
}

.fc-header .fc-state-down {
    z-index: 3;
}

.fc-header .fc-state-active,
.fc-header .ui-state-active {
    z-index: 4;
}



/* Content
------------------------------------------------------------------------*/

.fc-content {
    clear: both;
}

.fc-view {
    width: 100%; /* needed for view switching (when view is absolute) */
    overflow: hidden;
}



/* Cell Styles
------------------------------------------------------------------------*/

.fc-widget-header, /* <th>, usually */
.fc-widget-content { /* <td>, usually */
    border: 1px solid #ccc;
}

.fc-state-highlight { /* <td> today cell */ /* TODO: add .fc-today to <th> */
    background: #ffc;
}

.fc-cell-overlay { /* semi-transparent rectangle while dragging */
    background: #9cf;
    opacity: .2;
    filter: alpha(opacity=20); /* for IE */
}



/* Buttons
------------------------------------------------------------------------*/

.fc-button {
    position: relative;
    display: inline-block;
    cursor: pointer;
}

.fc-state-default { /* non-theme */
    border-style: solid;
    border-width: 1px 0;
}

.fc-button-inner {
    position: relative;
    float: left;
    overflow: hidden;
}

.fc-state-default .fc-button-inner { /* non-theme */
    border-style: solid;
    border-width: 0 1px;
}

.fc-button-content {
    position: relative;
    float: left;
    height: 1.9em;
    line-height: 1.9em;
    padding: 0 .6em;
    white-space: nowrap;
}

    /* icon (for jquery ui) */

    .fc-button-content .fc-icon-wrap {
        position: relative;
        float: left;
        top: 50%;
    }

    .fc-button-content .ui-icon {
        position: relative;
        float: left;
        margin-top: -50%;
        *margin-top: 0;
        *top: -50%;
    }

/* gloss effect */

.fc-state-default .fc-button-effect {
    position: absolute;
    top: 50%;
    left: 0;
}

    .fc-state-default .fc-button-effect span {
        position: absolute;
        top: -100px;
        left: 0;
        width: 500px;
        height: 100px;
        border-width: 100px 0 0 1px;
        border-style: solid;
        border-color: #fff;
        background: #444;
        opacity: .09;
        filter: alpha(opacity=9);
    }

/* button states (determines colors)  */

.fc-state-default,
.fc-state-default .fc-button-inner {
    border-style: solid;
    border-color: #ccc #bbb #aaa;
    background: #F3F3F3;
    color: #000;
}

.fc-state-hover,
.fc-state-hover .fc-button-inner {
    border-color: #999;
}

.fc-state-down,
.fc-state-down .fc-button-inner {
    border-color: #555;
    background: #777;
}

.fc-state-active,
.fc-state-active .fc-button-inner {
    border-color: #555;
    background: #777;
    color: #fff;
}

.fc-state-disabled,
.fc-state-disabled .fc-button-inner {
    color: #999;
    border-color: #ddd;
}

.fc-state-disabled {
    cursor: default;
}

    .fc-state-disabled .fc-button-effect {
        display: none;
    }



/* Global Event Styles
------------------------------------------------------------------------*/

.fc-event {
    border-style: solid;
    border-width: 0;
    font-size: .85em;
    cursor: default;
}

a.fc-event,
.fc-event-draggable {
    cursor: pointer;
}

a.fc-event {
    text-decoration: none;
}

.fc-rtl .fc-event {
    text-align: right;
}

.fc-event-skin {
    border-color: #3092c1; /* default BORDER color */
    background-color: #3092c1; /* default BACKGROUND color */
    color: #fff; /* default TEXT color */
}

.fc-event-inner {
    position: relative;
    width: 100%;
    font-size: 1.1rem;
    text-align: center;
    height: 100%;
    border-style: solid;
    border-width: 0;
}

.fc-event-time,
.fc-event-title {
    padding: 0 1px;
}

.fc .ui-resizable-handle { /*** TODO: don't use ui-resizable anymore, change class ***/
    display: block;
    position: absolute;
    z-index: 99999;
    overflow: hidden; /* hacky spaces (IE6/7) */
    font-size: 300%; /* */
    line-height: 50%; /* */
}


/* Horizontal Events
------------------------------------------------------------------------*/

.fc-event-hori {
    border-width: 1px 0;
    margin-bottom: 1px;
}

    /* resizable */

    .fc-event-hori .ui-resizable-e {
        top: 0 !important; /* importants override pre jquery ui 1.7 styles */
        right: -3px !important;
        width: 7px !important;
        height: 100% !important;
        cursor: e-resize;
    }

    .fc-event-hori .ui-resizable-w {
        top: 0 !important;
        left: -3px !important;
        width: 7px !important;
        height: 100% !important;
        cursor: w-resize;
    }

    .fc-event-hori .ui-resizable-handle {
        _padding-bottom: 14px; /* IE6 had 0 height */
    }



/* Fake Rounded Corners SPECIFICALLY FOR EVENTS
-----------------------------------------------------------------*/

.fc-corner-left .fc-event-inner {
    border-left-width: 1px;
}

.fc-corner-right .fc-event-inner {
    border-right-width: 1px;
}

.fc-corner-top .fc-event-inner {
    border-top-width: 1px;
}

.fc-corner-bottom .fc-event-inner {
    border-bottom-width: 1px;
}


/* Reusable Separate-border Table
------------------------------------------------------------*/

table.fc-border-separate {
    border-collapse: separate;
}

.fc-border-separate th,
.fc-border-separate td {
    border-width: 1px 0 0 1px;
}

    .fc-border-separate th.fc-last,
    .fc-border-separate td.fc-last {
        border-right-width: 1px;
    }

.fc-border-separate tr.fc-last th,
.fc-border-separate tr.fc-last td {
    border-bottom-width: 1px;
}

.fc-border-separate tbody tr.fc-first td,
.fc-border-separate tbody tr.fc-first th {
    border-top-width: 0;
}



/* Month View, Basic Week View, Basic Day View
------------------------------------------------------------------------*/

.fc-grid th {
    text-align: center;
}

.fc-grid .fc-day-number {
    float: right;
    padding: 0 2px;
}

.fc-grid .fc-other-month .fc-day-number {
    opacity: 0.3;
    filter: alpha(opacity=30); /* for IE */
    /* opacity with small font can sometimes look too faded
	   might want to set the 'color' property instead
	   making day-numbers bold also fixes the problem */
}

.fc-grid .fc-day-content {
    clear: both;
    padding: 2px 2px 1px; /* distance between events and day edges */
}

/* event styles */

.fc-grid .fc-event-time {
    font-weight: bold;
}

/* right-to-left */

.fc-rtl .fc-grid .fc-day-number {
    float: left;
}

.fc-rtl .fc-grid .fc-event-time {
    float: right;
}



/* Agenda Week View, Agenda Day View
------------------------------------------------------------------------*/

.fc-agenda table {
    border-collapse: separate;
}

.fc-agenda-days th {
    text-align: center;
}

.fc-agenda .fc-agenda-axis {
    width: 50px;
    padding: 0 4px;
    vertical-align: middle;
    text-align: right;
    white-space: nowrap;
    font-weight: normal;
}

.fc-agenda .fc-day-content {
    padding: 2px 2px 1px;
}

/* make axis border take precedence */

.fc-agenda-days .fc-agenda-axis {
    border-right-width: 1px;
}

.fc-agenda-days .fc-col0 {
    border-left-width: 0;
}

/* all-day area */

.fc-agenda-allday th {
    border-width: 0 1px;
}

.fc-agenda-allday .fc-day-content {
    min-height: 34px; /* TODO: doesnt work well in quirksmode */
    _height: 34px;
}

/* divider (between all-day and slots) */

.fc-agenda-divider-inner {
    height: 2px;
    overflow: hidden;
}

.fc-widget-header .fc-agenda-divider-inner {
    background: #eee;
}

/* slot rows */

.fc-agenda-slots th {
    border-width: 1px 1px 0;
}

.fc-agenda-slots td {
    border-width: 1px 0 0;
    background: none;
}

    .fc-agenda-slots td div {
        height: 20px;
    }

.fc-agenda-slots tr.fc-slot0 th,
.fc-agenda-slots tr.fc-slot0 td {
    border-top-width: 0;
}

.fc-agenda-slots tr.fc-minor th,
.fc-agenda-slots tr.fc-minor td {
    border-top-style: dotted;
}

    .fc-agenda-slots tr.fc-minor th.ui-widget-header {
        *border-top-style: solid; /* doesn't work with background in IE6/7 */
    }



/* Vertical Events
------------------------------------------------------------------------*/

.fc-event-vert {
    border-width: 0 1px;
}

    .fc-event-vert .fc-event-head,
    .fc-event-vert .fc-event-content {
        position: relative;
        z-index: 2;
        width: 100%;
        overflow: hidden;
    }

    .fc-event-vert .fc-event-time {
        white-space: nowrap;
        font-size: 10px;
    }

    .fc-event-vert .fc-event-bg { /* makes the event lighter w/ a semi-transparent overlay  */
        position: absolute;
        z-index: 1;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: #fff;
        opacity: .3;
        filter: alpha(opacity=30);
    }

.fc .ui-draggable-dragging .fc-event-bg, /* TODO: something nicer like .fc-opacity */
.fc-select-helper .fc-event-bg {
    display: none\9; /* for IE6/7/8. nested opacity filters while dragging don't work */
}

/* resizable */

.fc-event-vert .ui-resizable-s {
    bottom: 0 !important; /* importants override pre jquery ui 1.7 styles */
    width: 100% !important;
    height: 8px !important;
    overflow: hidden !important;
    line-height: 8px !important;
    font-size: 11px !important;
    font-family: monospace;
    text-align: center;
    cursor: s-resize;
}

.fc-agenda .ui-resizable-resizing { /* TODO: better selector */
    _overflow: hidden;
}

/* Charter/Value Flights
************************************/

.flexsearch-panel-wrap {
    height: auto !important;
    overflow: auto !important;
    /*
        without these styles, the content of the flexsearch accordian panes get cut off if an error message is on screen. 
        It messes with the fluiidity of the transition when 'search' is collapsed, but that was the lesser evil.
    */
}

.charter-restool {
    width: 48%;
    float: left;
}

.charter-search-instructions {
    width: 48%;
    float: right;
}

fieldset#GeneralSearchTarget > .departing-from-wrap-destination {
    display: none;
}

#GeneralSearchTarget .departing-from-wrap,
.charter-restool .rooms-wrap {
    width: 100%;
}

ul#legend {
    text-align: center;
    clear: both;
    list-style: none;
}

    ul#legend li {
        float: left;
        margin: 0px 10px 0px 0px;
    }

        ul#legend li.soldOut,
        ul.calDay li span.soldOut {
            color: #555555;
            cursor: default;
        }

ul.calDay li ul li a.noSeats {
    background-color: #C0C0C0;
    cursor: default;
}

ul.calDay li ul li a span.noSeats {
    cursor: default;
    color: #000000;
    font-weight: bold;
}

        ul#legend li.schedRiskAvail {
            color: #0000FF;
            margin: 0px;
        }

ul.calDay li span {
    cursor: pointer;
    cursor: hand;
}

.charter-restool input[type="text"],
.charter-restool select {
    margin-bottom: 10px;
}

.charter-cal-restool-wrap input[type="text"],
.charter-cal-restool-wrap select {
    width: 100%;
}

.charter-cal,
.charter-cal-restool-wrap {
    margin: 20px 0 40px;
}

    .charter-cal,
    .charter-cal table {
        width: 100%;
        border-color: #d3d3d3;
    }

        .charter-cal > tbody > tr > td {
            height: 100px;
            padding: 5px;
        }

.alt-cal-date-wrap table .calendarTitle tr td {
    border: none;
    padding: 8px;
}

.calendarTitle > tbody > tr > td,
.charter-cal > tbody > tr:first-child td {
    height: 30px;
    padding: 0px;
}

.flex-cal-btn-wrap {
    text-align: right;
}

.flex-cal-general-search {
    margin-top: 10px;
}

.charter-instruction-list {
    margin-top: 15px;
    padding-left: 15px;
}

    .charter-instruction-list li {
        margin-bottom: 5px;
    }

.charter-restool-button-wrap {
    text-align: right;
}

.calDay, .calDayDisabled {
    height: auto !important;
    line-height: 2 !important;
}

.charter-restool-header {
    margin-top: 15px;
}



/* Calendar Modal Responsive Styles */


@media (max-width:630px) {

    .calendar {
        width: 100%;
    }

    #altCalContainer {
        width: 90%;
    }

    .altCalText {
        width: 80%;
    }

    .calendarSetPosition {
        width: 290px;
    }

        .calendarSetPosition tr {
            width: 290px !important;
        }

    .charter-cal > tbody > tr > td {
        padding: 0px;
    }
}

@media (max-width:500px) {
    .calendarDayHeader {
        font-size: 100%;
    }

    .calDay > ul > li,
    .calDay li ul li a,
    .calDay li ul li {
        font-size: 1.1rem;
    }

    .calendarDay:last-child .altDays li:last-child {
        left: -40px;
    }
}

@media (max-width:340px) {

    .calendarDayHeader {
        font-size: 80%;
    }
}


/* Hotel Maps Modal
************************************/
.mapDetailInfoPosition {
    margin: 15px 0 0 0;
}


/* Added Value Inclusions Modal
************************************/
.IncludedValuesSecondSection {
    padding: 15px 0 0 0;
}

    .IncludedValuesSecondSection hr {
        border: 1px solid #f2f2f2;
    }


/* WAITSCREEN
************************************/

.waitscreen-modal-wrap {
    padding: 2%;
    min-width: 320px;
    max-width: 600px;
    background: url("https://trisept.widen.net/content/hzkwz8r98x/png/VAX_IMG_WAITSCREEN_VAXnewWaitscreen2.png") no-repeat top left;
    background-color: #027bc4;
    color: #fff;
    text-align: center;
}

@media (max-width: 414px) {
    #fakeModalParentDiv.ext-fake-modal {
        position: fixed;
        z-index: 100001;
        left: 0px;
        top: 0px;
        height: 100vh;
        width: 100vw;
    }
}

@media (min-width: 415px) {
    #fakeModalParentDiv.ext-fake-modal {
        z-index: 1050;
        position: relative;
        margin: 0 auto;
        min-width: 320px;
        max-width: 600px;
    }
}

#modalExtPostBox .waitscreen-modal-wrap {
    width: auto;
}

.waitscreen-modal-wrap img {
    width: 100%;
}

.waitscreen-text {
    font-size: 1.4rem;
    font-weight: bold;
}

.ws-package,
.ws-date-divider,
.ws-depart-date,
.ws-return-date {
    display: block;
}

.ws-depart-date {
    padding-top: 20px;
}

.ws-date-divider,
.ws-city-divider {
    font-weight: normal;
}

.waitscreen-ind {
    text-align: center;
    margin: 10px auto;
    width: auto !important
}

.waitscreen-modal-wrap .waitscreen-ind {
    font-size: 28px;
}

.select-progress-ind,
.smt-select-progress-ind,
.flx-select-progress-ind,
.pay-progress-ind {
    width: 100%;
    height: 100%;
    background: rgba(255,255,255,0.6);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
}

    .select-progress-ind p,
    .smt-select-progress-ind p,
    .flx-select-progress-ind p,
    .pay-progress-ind p {
        position: absolute;
        top: 45%;
        left: 40%;
        width: 20%;
        height: auto;
        background: #f2f2f2;
        border: solid 1px #dedede;
        border-radius: 3px;
        padding: 20px;
        text-align: center;
        font-weight: bold;
    }

.modalBody .select-progress-ind p {
    width: 26%;
    left: 37%;
    height: 100px;
}


/*** scheduled flight modal ***/

.shop-by-schedule-modal {
    background-color: #fff;
    margin: 0 auto;
    width: 100%;
    border: solid 1px #dedede;
    border-radius: 3px;
    padding: 20px 5px 0 5px;
}

.shop-by-schedule-modal,
form[action*="ShopBySchedulePricingWait.aspx"] .waitscreen-modal-wrap {
    max-width: 533px;
    width: auto;
}

iframe[src*="ShopBySchedulePricing.aspx"] {
    max-width: 521px;
}

form[action*="ShopBySchedulePricing.aspx"],
form[action*="ShopBySchedulePricing.aspx"] .price-flights-modal-wrap {
    padding-bottom: 0;
}

@media (max-width: 599px) {
    .select-progress-ind p,
    .smt-select-progress-ind p,
    .flx-select-progress-ind p,
    .pay-progress-ind p {
        top: 45%;
        left: 10%;
        width: 80%;
        height: 100px;
    }

    .waitscreen-modal-wrap {
        width: 300px;
    }
}


@media (max-width: 414px) {
    .waitscreen-modal-wrap {
        position: absolute;
        top: 50%;
        text-align: center;
        width: 100%;
        left: 0px;
        transform: translateY(-50%);
    }
}




/* VALIDATOR CALLOUT
************************************/

.ajax__validatorcallout div, .ajax__validatorcallout td {
    border: solid 2px #aa0000;
    color: #aa0000;
    background-color: #ffcccc;
    vertical-align: top;
    text-align: center;
    font-weight: bold;
}

.ajax__validatorcallout_popup_table {
    border: none;
    background-color: transparent;
    padding: 0;
    margin: 0;
}

.ajax__validatorcallout_popup_table_row {
    vertical-align: top;
    height: 100%;
    background-color: transparent;
    padding: 0;
    margin: 0;
}

.ajax__validatorcallout_callout_cell {
    width: 20px;
    height: 100%;
    text-align: right;
    vertical-align: top;
    border: none !important;
    background-color: transparent !important;
    padding: 0;
    margin: 0;
}

.ajax__validatorcallout_callout_table {
    height: 100%;
    border: none;
    background-color: transparent;
    padding: 0;
    margin: 0;
}

.ajax__validatorcallout_callout_table_row {
    background-color: transparent;
    padding: 0;
    margin: 0;
}

.ajax__validatorcallout_callout_arrow_cell {
    padding: 8px 0 0 0;
    margin: 0;
    text-align: right;
    vertical-align: top;
    font-size: 1px;
    border: none !important;
    background-color: transparent !important;
}

.ajax__validatorcallout_callout_arrow_cell_reverse {
    padding: 8px 0 0 0;
    margin: 0;
    text-align: left;
    vertical-align: top;
    font-size: 1px;
    border: none !important;
    background-color: transparent !important;
}

.ajax__validatorcallout_callout_arrow_cell .ajax__validatorcallout_innerdiv {
    font-size: 1px;
    position: relative;
    left: 2px;
    border-bottom: none !important;
    border-right: none !important;
    border-left: none !important;
    width: 15px;
    background-color: transparent !important;
    padding: 0;
    margin: 0;
}

.ajax__validatorcallout_callout_arrow_cell_reverse .ajax__validatorcallout_innerdiv_reverse {
    font-size: 1px;
    position: relative;
    right: 1px;
    border-bottom: none !important;
    border-right: none !important;
    border-left: none !important;
    width: 15px;
    background-color: transparent !important;
    padding: 0;
    margin: 0;
}

.ajax__validatorcallout_callout_arrow_cell .ajax__validatorcallout_innerdiv div {
    height: 1px;
    overflow: hidden;
    border-top: none !important;
    border-bottom: none !important;
    border-right: none !important;
    padding: 0;
    margin: 0 0 0 auto;
}

.ajax__validatorcallout_callout_arrow_cell_reverse .ajax__validatorcallout_innerdiv_reverse div {
    height: 1px;
    overflow: hidden;
    border-top: none !important;
    border-bottom: none !important;
    border-left: none !important;
    padding: 0;
    margin: auto 0 0 0;
}

.ajax__validatorcallout_error_message_cell {
    font-size: 1.2rem;
    padding: 10px;
    border-right: none !important;
    border-left: none !important;
    width: 100%;
}

.ajax__validatorcallout_icon_cell {
    width: 0;
    padding: 0;
    margin: 0;
    border-right: none !important;
}

.ajax__validatorcallout_icon_cell_reverse {
    width: 20px;
    padding: 5px;
    margin: 0;
    border-left: none !important;
}

.ajax__validatorcallout_icon_cell img {
    display: none;
}

.ajax__validatorcallout_icon_cell_reverse img {
    display: none;
}

.ajax__validatorcallout_close_button_cell {
    position: relative;
    vertical-align: top;
    padding: 0;
    margin: 0;
    text-align: right;
    border-left: none !important;
}

    .ajax__validatorcallout_close_button_cell img {
        position: absolute;
        top: 2px;
        right: 2px;
    }

.ajax__validatorcallout_close_button_cell_reverse {
    vertical-align: top;
    padding: 0;
    margin: 0;
    text-align: right;
    border-right: none !important;
}

.ajax__validatorcallout_close_button_cell .ajax__validatorcallout_innerdiv {
    border: none !important;
    text-align: center;
    width: 10px;
    padding: 2px;
    cursor: pointer;
}

.ajax__validatorcallout_close_button_cell_reverse .ajax__validatorcallout_innerdiv_reverse {
    border: none !important;
    text-align: center;
    width: 10px;
    padding: 2px;
    cursor: pointer;
}


@media (max-width: 767px) {
    .ajax__validatorcallout.ajax__validatorcallout_popup_table {
        top: auto !important;
        left: auto !important;
    }

    .ajax__validatorcallout_callout_arrow_cell_reverse,
    .ajax__validatorcallout_callout_arrow_cell {
        display: none;
    }
}

@media (max-width: 767px) {
    .departing-from-wrap .ajax__validatorcallout.ajax__validatorcallout_popup_table,
    .going-to-wrap .ajax__validatorcallout.ajax__validatorcallout_popup_table,
    .calendar-icon-wrap .ajax__validatorcallout.ajax__validatorcallout_popup_table {
        position: static !important; /* Don't cover combobox dropdown */
    }
}


/* DATEPICKER
************************************/

.ui-datepicker-trigger {
    cursor: pointer;
    border: 0 none;
    background: none;
    position: absolute;
    right: -5px;
    top: 4px;
}

    .ui-datepicker-trigger img {
        background: url("https://trisept.widen.net/content/hsu5dnywix/png/TRI_ICON_NAV_calendar-V3.png") no-repeat scroll left top;
        width: 20px;
        margin-top: -2px;
    }

#highlightFieldNewSearch .ui-datepicker-trigger {
    float: left;
}

/* Disabled cells still need a border for keyboard navigation */
td.ui-datepicker-days-cell-over span {
    border: 1px solid #999 !important;
}

.ui-datepicker-calendar .ui-state-active .ui-state-default {
    background: #fff;
}

.ui-datepicker-calendar .ui-state-active .ui-state-active {
    background: #4B6D86 !important;
}

.ui-datepicker .ui-state-highlight {
    border: 1px solid #d3d3d3;
    background: #e6e6e6 url("https://trisept.widen.net/content/odbrfdhv7r/png/TRI_IMG_BG_ui-bg_glass_75_e6e6e6_1x400.png") 50% 50% repeat-x;
    font-weight: normal;
    color: #555555;
}

.ui-datepicker .ui-state-hover {
    border: 1px solid #999999;
    background: #4B6D86 !important;
    font-weight: normal;
    color: #fff;
}

.ui-datepicker * {
    font-size: 18px !important; /* phone size */
}

/*datepicker customization for ux*/

.ui-datepicker {
    padding: 0;
    border-radius: 0 !important;
}

    .ui-datepicker table {
        margin-bottom: 0;
    }

    .ui-datepicker thead {
        background: #4B6D86;
        color: #fff;
    }

    .ui-datepicker th {
        padding: .5em .3em;
    }

.ui-datepicker-header {
    boder-radius: 0 !imporant;
    background: #fff;
    border: 0;
}

/*end datepicker customization*/

@media (max-device-width: 414px) {
    .ui-datepicker * {
        font-size: 18px !important; /* Phones */
    }
}

@media (min-device-width: 415px) {
    .ui-datepicker * {
        font-size: 11px !important;
    }
}

@media (min-device-width: 415px) {
    .ui-datepicker {
        font-size: 13px; /* default is 1.1em in the jquery-ui.css. Setting this font-size edits the width of the calendar. All base sites are set to 13px to keep consistent width.  We are using ".ui-datepicker *" to set the actual font size. */
    }
}

@media (max-device-width: 414px) {
    #ui-datepicker-div {
        width: 98%; /* Large for phones */
        left: 1% !important; /* Align with screen, not input */
    }
}

.ui-datepicker td a {
    text-align: center;
}

table.ui-datepicker-calendar {
    table-layout: fixed; /* Consistent day columns */
}

.ui-datepicker-other-month.ui-datepicker-unselectable.ui-state-disabled .ui-state-default {
    background: #ddd none repeat scroll 0 0;
    color: #333;
}

.ui-datepicker .ui-state-default,
.ui-datepicker .ui-widget-content .ui-state-default,
.ui-datepicker .ui-widget-header .ui-state-default {
    background: #fff none repeat scroll 0 0;
}

.ui-datepicker-calendar .ui-state-active .ui-state-active {
    background: #127cb7 none repeat scroll 0 0;
    color: #fff;
}

.ui-datepicker .ui-state-active,
.ui-datepicker .ui-widget-content .ui-state-active,
.ui-datepicker .ui-widget-header .ui-state-active {
    background: #fff none repeat scroll 0 0;
    border: 1px solid #127cb7;
}

.calendar-key-wrap {
    margin: 5px 0 10px;
    text-align: center;
}

    .calendar-key-wrap dt {
        font-weight: bold;
        text-transform: uppercase;
        margin-bottom: 5px;
        margin-top: 5px;
    }

.ui-widget-shadow {
    -webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.2) !important;
    -moz-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.2) !important;
    box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.2) !important;
}


/* SELECTIZE 
***************************************/

.selectize-control {
    margin-bottom: -5px;
}


/*** 'item_nowrap' plugin CSS.  Restricts input to one line when closed, regardless of selection length. ***/
.plugin-item_nowrap.selectize-control.single .selectize-input {
    height: 36px;
    white-space: nowrap;
    overflow: hidden;
}

    .plugin-item_nowrap.selectize-control.single .selectize-input.input-active .item-wrap-inner.long-input-value {
        text-overflow: initial;
        width: auto;
        position: absolute;
        right: 0;
    }

    .plugin-item_nowrap.selectize-control.single .selectize-input .item-wrap-outer {
        overflow: hidden;
        position: absolute;
        top: 8px;
        right: 28px;
        left: 3px;
    }

        .plugin-item_nowrap.selectize-control.single .selectize-input .item-wrap-outer .item-wrap-inner {
            white-space: nowrap;
            overflow: hidden;
            width: 100%;
            text-overflow: ellipsis;
        }


/*** Add customizations to base Selectize CSS here.  This will be loaded last. ***/

.selectize-input {
    padding: 0 0 0 4px;
    height: 23px !important;
    box-shadow: none;
    border: 1px solid #aaa;
    border-radius: 0;
}

.plugin-item_nowrap.selectize-control.single .selectize-input .item-wrap-outer {
    top: 2px;
}

.selectize-dropdown [data-selectable],
.selectize-dropdown .optgroup-header {
    line-height: 18px;
}


/*** Hierarchical region display (OnSale) ***/

.selectize-dropdown .optgroup-header {
    font-weight: bold;
}

.selectize-dropdown .lv0 {
    padding-left: 8px;
}

.selectize-dropdown .lv1 {
    padding-left: 16px;
}

.selectize-dropdown .lv2 {
    padding-left: 24px;
}

.selectize-dropdown .lv3 {
    padding-left: 32px;
}

.selectize-dropdown .lv4 {
    padding-left: 40px;
}

.selectize-dropdown .lv5 {
    padding-left: 48px;
}

.selectize-dropdown .lv6 {
    padding-left: 56px;
}

.selectize-dropdown .lv7 {
    padding-left: 64px;
}

.selectize-dropdown .lv8 {
    padding-left: 72px;
}

.selectize-dropdown .lv9 {
    padding-left: 80px;
}

.selectize-dropdown-content {
    -webkit-overflow-scrolling: touch; /* For momentum scrolling on iOS */
}

@media (max-device-width: 414px) {
    .selectize-dropdown {
        font-size: 18px !important; /* Bigger dropdown items on mobile */
    }

    .selectize-dropdown-content {
        max-height: inherit !important; /* Will be sized with script in this case */
        overflow-y: scroll !important; /* Needed for momentum scrolling on iOS. */
    }
}

/***** sorting and pagination *****/

.results-controls-wrap,
.lower-results-controls-wrap {
    margin-bottom: 5px;
}

.lower-results-controls-wrap {
    margin-top: 10px;
}

.sort-results-wrap {
    float: left;
}

.pagination-wrap {
    float: right;
}

.pagination-wrap-feature {
    display: flex;
    align-items: center;
}

.pagination-trigger {
    font-size: 3rem;
    vertical-align: middle;
    background: none;
    border: 0;
    padding: 0;
    cursor: pointer;
    height: auto !important;
    padding: 0 !important;
}

    .pagination-trigger i.fa {
        color: #0E589F;
    }

    .pagination-trigger:disabled {
        background: none;
    }

.current-page-wrap {
    vertical-align: middle;
    margin-left: 15px;
}


@media (max-width: 641px) {
    .pagination-wrap,
    .sort-results-wrap {
        float: none;
    }

    .sort-results-wrap {
        margin-bottom: 10px;
    }

    .current-page-wrap {
        float: right;
    }
}



/****************************************************** THEME.CSS ****************************************************/

.site-wrap {
    background: #fff;
    padding: 10px;
    border: solid 1px #dedede;
    border-top: 0;
}


/* HEADER STYLES
************************************/

.header-wrap {
    position: relative;
    min-width: 320px;
}

    .header-wrap .constraint-wrap {
        padding: 0 10px;
        background-color: #fff;
        border: solid 1px #dedede;
        border-top: 0;
        border-bottom: solid 5px #39b2df;
    }

.logo-wrap {
    background: #ffffff url("https://trisept.widen.net/content/sqdbbemel6/gif/TRI_LOGO_ANCILLARY_REZ_rezAgentLogo.gif") no-repeat scroll 10px 0;
    height: 84px;
    float: left;
    padding-bottom: 10px;
    width: 380px;
    margin-top: 0;
    margin-bottom: 0;
}

.header-wrap a {
    text-decoration: none;
}

.header-wrap li {
    list-style: none;
}


/*** MEMBER UTILITIES ***/

.navigation-wrap {
    background-color: #007bc4;
    width: 68%;
    float: right;
    margin-top: 50px;
    margin-right: -10px;
}

    .navigation-wrap a {
        color: #fff;
    }

.member-actions {
    padding: 10px;
}

    .member-actions > li {
        display: inline-block;
        padding: 0 10px 0 13px;
        border-left: 1px solid #e1e1e1;
        line-height: 1;
    }

    .member-actions li:first-child {
        border-left-width: 0;
        padding-left: 10px;
    }

    .member-actions > li:last-child {
        border: 1px solid #fff;
        border-radius: 3px;
        float: right;
        padding: 2px 5px;
    }

@media (max-width: 1203px) {
    .logo-wrap {
        float: none;
    }

    .navigation-wrap {
        width: 100%;
        float: none;
        margin-top: 20px;
        margin-right: -10px;
    }

    .header-wrap .constraint-wrap {
        padding: 0px;
    }

    .member-actions > li {
        padding: 0 7px 0 7px;
    }
}

/*** end member utilities ***/

/*** MAIN NAVIGATION ***/

.base-nav {
    background-color: #e8e8e8;
    line-height: 40px;
}

    .base-nav > ul {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: space-between;
    }

    .base-nav > li {
        flex-grow: 1;
        flex-basis: auto;
        text-align: center;
    }

.fa-home {
    font-size: 2rem;
    display: block;
    margin-top: 10px;
}

.site-navigation > li {
    padding: 0 1%;
}

    .site-navigation > li:hover {
        background: #347dc2;
    }

.site-navigation li ul {
    display: none;
    width: 100%;
    position: absolute;
    left: 0;
    padding: 20px 10px;
    background: #347dc2;
    z-index: 999;
}

.site-navigation > li:hover a,
.site-navigation > li:hover i,
.site-navigation ul a,
.site-navigation p {
    color: #fff;
}

.site-navigation p {
    text-transform: uppercase;
}

.site-navigation li:hover ul {
    display: block;
}

.site-navigation > li > a,
.site-navigation > li i {
    color: #212121;
}

.site-navigation li li {
    line-height: 1.8;
}

    .site-navigation li li a {
        font-size: 1.2rem;
        display: block;
        padding: 0 5px;
    }

.site-navigation li div {
    border-left: 1px solid #fff;
    float: left;
    padding: 0 10px;
}

/*** end main navigation ***/


/*** MOBILE NAVIGATION ***/

.mobile-navigation-wrap {
    display: none;
    position: absolute;
    right: 5px;
    top: 0;
}

.slide-menu-open {
    color: #fff;
    font-weight: bold;
    font-size: 1.5rem;
    padding: 10px;
    border: 1px solid #007bc4;
    float: right;
    margin: 8px 5px 0 0;
    background-color: #007bc4;
}

    .slide-menu-open,
    .slide-menu-open:hover {
        text-decoration: none;
        color: #fff;
    }

.side-menu-wrapper {
    overflow: hidden;
    background: rgba(0, 123, 196, .95);
    padding: 5px 10px 0 10px;
    position: fixed;
    top: 0;
    left: -290px;
    height: 100%;
    z-index: 10000;
    transition: 0.5s;
    width: 250px;
    font-size: 14px;
}

    .side-menu-wrapper > ul {
        list-style: none;
        padding: 0;
        margin: 0;
        overflow-y: auto;
        height: 95%;
    }

    .side-menu-wrapper ul li a {
        display: inline-block;
        padding: 6px 4px 6px 4px;
        color: #ccc;
        transition: 0.3s;
        text-decoration: none;
    }

    .side-menu-wrapper li {
        padding: 3px 0;
    }

    .side-menu-wrapper a.menu-close {
        color: #fff;
        display: block;
        margin-top: -20px;
        font-size: 35px;
        text-decoration: none;
        float: right;
    }

    .side-menu-wrapper ul li a {
        color: #fff;
        padding: 0;
    }

.side-menu-overlay {
    height: 100%;
    width: 0;
    position: fixed;
    z-index: 9999;
    top: 0;
    left: 0;
    background-color: rgba(0,0,0,.7);
    overflow-y: auto;
    overflow-x: hidden;
    text-align: center;
    opacity: 0;
    transition: opacity 1s;
}

.side-menu-wrapper > ul.member-actions-mobile {
    border-top: 1px solid #fff;
    padding-top: 15px;
    margin-top: 15px;
}

/*** end mobile navigation ***/


@media (max-width: 979px) {
    .site-navigation {
        width: 100%;
        float: none;
        clear: left;
        text-align: left;
    }
}

@media (max-width: 899px) {
    .site-navigation > li {
        font-size: 1.2rem;
    }
}

@media (max-width: 799px) {
    .site-navigation-mobile {
        list-style: none;
    }

    .logo {
        width: 260px;
    }

        .logo img {
            background-size: 80%;
        }
}

@media (max-width: 767px) {
    .header-wrap .constraint-wrap,
    .header-wrap,
    .site-wrap {
        margin-top: 0;
        margin-bottom: 0;
    }

        .header-wrap .constraint-wrap {
            padding: 0 10px;
        }

    .base-nav,
    .member-actions {
        display: none;
    }

    .mobile-navigation-wrap {
        display: block;
    }

    .header-logo-wrap {
        float: none;
    }

    .site-navigation ul {
        text-align: left;
        padding-top: 5px;
    }

    .logo-wrap {
        background: #ffffff url("https://trisept.widen.net/content/qbro7wpncl/png/TRI_LOGO_ANCILLARY_REZ_rezAgentLogoMobile.png") no-repeat 0px 5px;
        height: 70px;
        width: 100%;
    }
}

@media (max-width: 480px) {
    .member-actions li:first-child {
        width: 100%;
        font-weight: bold;
    }
}

@media (max-width: 359px) {
    .header-logo-wrap {
        width: 340px;
    }
}



/* FOOTER STYLES
************************************/

.footer-wrap {
    margin-top: 0;
    padding-top: 0px;
    padding-bottom: 50px;
    clear: both;
}

    .footer-wrap .constraint-wrap {
        margin-bottom: -1px;
        position: relative;
        margin-top: 0px;
        padding: 20px 0 40px;
    }

.footer-left {
    width: 60%;
    min-width: 310px;
    margin-left: 5px;
    display: inline-block;
}

    .footer-left .copyright {
        width: 45%;
    }

    .footer-left li {
        display: inline-block;
        width: 26%;
        line-height: 1.5;
    }

.footer-right {
    position: absolute;
    top: 20px;
    right: 5px;
    text-align: right;
    width: 25%;
}

.footer-logo-wrap {
    position: relative;
}

.footer-logo {
    width: 156px;
}

.footer-right span {
    line-height: 16px;
    text-align: right;
    width: 47%;
    float: left;
}

.footer-right img {
    position: relative;
    top: 8px;
}

@media (max-width: 1200px) {

    .footer-right {
        width: 35%;
        min-width: 310px;
    }
}

@media (max-width: 899px) {

    .footer-left .copyright {
        width: 100%;
        margin-bottom: 20px;
    }

    .footer-left li {
        min-width: 183px;
    }
}

@media (max-width: 624px) {

    .footer-right {
        position: relative;
    }

    .footer-wrap .constraint-wrap {
        text-align: center;
    }

    .footer-right {
        width: 100%;
        text-align: center;
    }

        .footer-right span {
            display: block;
            text-align: center;
            width: 100%;
        }
}



/* FLIGHT AVAILABILITY
************************************/

.shopByLegPrice strong span:last-child {
    font-weight: normal;
}

.price-inclusion-wrap,
.priceInfo2 {
    font-size: 1.1rem;
    margin-top: 5px;
    margin-bottom: 15px;
}

.seats-left,
.preview-seats {
    font-size: 1.2rem;
}

.seats-left {
    margin: 15px 0 0;
}

.rr-points {
    margin: 2px 0;
}

.flight-wrap .rr-points {
    text-align: center;
    color: #276410;
}

    .flight-wrap .rr-points i {
        color: #276410;
    }

.rr-points br {
    display: none;
}

.seats-left {
    color: #d90707;
}

.air-select-button {
    width: 100%;
    margin: 10px auto;
    padding: 10px 0;
    height: 40px;
}

.carrier-wrap a,
.carrier-wrap span {
    vertical-align: top;
    padding-top: 10px;
}

.flight-title {
    margin-bottom: 10px;
}

.flight-column-wrap {
    width: 100%;
    clear: both;
    margin: 0 auto;
    border: dashed 1px #aaa;
    border-left: 0;
    border-right: 0;
    border-bottom: 0;
    padding: 20px 0 10px;
}

.flight-stops i {
    color: #dedede;
    font-size: 4rem;
    line-height: 28px;
}

.flight-column-wrap > div,
.flight-column-wrap > p {
    text-align: center;
}

.departure-column,
.arrival-column,
.flight-stop-column {
    width: 32%;
    float: left;
    display: inline-block;
}

.flight-stop-column {
    margin-left: 2%;
    margin-right: 2%;
}



.charter-operated {
    color: #d90707;
}

.operated-by-wrap {
    margin: 2%;
}

.air-operated-by {
    font-size: 1.2rem;
    text-align: center;
    margin: 2% 0 0;
    display: block;
    width: 100%;
    clear: both;
}

.expanded-air-operated-by {
    font-size: 1.2rem;
}

.arrival-disclaimer-t,
.flight-options-list .arrival-disclaimer-t {
    font-weight: bold;
    color: #d90707;
    position: absolute;
    right: 0;
    font-size: 1.3rem;
}

    .arrival-disclaimer-t i,
    .mc-arrival-warning-v2 i {
        color: #d90707;
    }

.arrival-disclaimer {
    font-weight: normal;
    color: #d90707;
    font-size: 1.1rem;
}

.mc-arrival-warning-v2 {
    font-weight: bold;
    font-size: 1.3rem;
    color: #d90707;
}

    .mc-arrival-warning-v2 i {
        font-size: 1.3rem;
        margin: 4px 0 0;
        width: auto;
    }

.rewards-wrap {
    border: solid 1px #dedede;
    border-left: 0;
    border-right: 0;
}

/*** limited flights alert   */

.limited-flights-disclaimer {
    text-align: center;
    padding: 0px 0px 20px 0px;
}

    .limited-flights-disclaimer input {
        margin-top: 10px;
    }

/* Standalone Hotel Profile - RES
***************************************/

#StandaloneHPContainer .content-main-wrap,
#FPcontent .content-main-wrap {
    border-top: 0;
    margin-top: 0;
    margin-right: 20px;
    padding: 10px;
}

#StandaloneHPContainer .modal-title {
    padding-top: 0;
}

#StandaloneHPContainer .travel-protection-wrap {
    margin-bottom: 25px;
    margin-top: -10px;
    width: 100%;
}

.shp-restool-wrap {
    width: 25%;
    float: left;
    margin-right: 2%;
    max-width: 100%;
    min-width: 275px;
}

    .shp-restool-wrap input[type="text"],
    .shp-package-type-wrap select {
        width: 100%;
    }

    .shp-restool-wrap input[type="button"] {
        width: inherit;
    }

    .shp-restool-wrap .shp-package-type-wrap,
    .shp-restool-wrap .shp-depart-wrap,
    .shp-restool-wrap .shp-return-wrap,
    .shp-restool-wrap .shp-origin-wrap,
    .shp-restool-wrap .shp-destination-wrap,
    .shp-restool-wrap .shp-promocode,
    .shp-restool-wrap .rooms-wrap {
        width: 100%;
        display: inline-block;
        margin-bottom: 15px;
    }

    .shp-restool-wrap .promo-code-wrap {
        min-width: 200px;
    }

    .shp-restool-wrap .button {
        padding: 0;
    }

.shp-restool-header {
    border-bottom: solid 5px #f2f2f2;
    display: block;
    width: 100%;
    padding-top: 10px;
}

@media (max-width: 899px) {
    .shp-restool-wrap {
        width: 100%;
        float: none;
        margin-right: 0;
    }

        .shp-restool-wrap input[type="button"] {
            width: 100%;
        }
}

@media (min-width: 640px) and (max-width: 899px) {

    .shp-restool-wrap .shp-depart-wrap,
    .shp-restool-wrap .shp-return-wrap,
    .shp-restool-wrap .shp-origin-wrap,
    .shp-restool-wrap .shp-destination-wrap,
    .shp-restool-wrap .shp-promocode {
        width: 48.5%;
        display: inline-block;
        float: left;
    }

    .shp-restool-wrap .shp-return-wrap,
    .shp-restool-wrap .shp-destination-wrap {
        clear: right;
        content: "";
        display: table;
    }

    .shp-restool-wrap .shp-depart-wrap,
    .shp-restool-wrap .shp-origin-wrap,
    .shp-promocode {
        margin-right: 2%;
    }

    .shp-restool-wrap .rooms-wrap {
        width: 48.5%;
        min-width: 0px;
    }
}



/* LOGIN PAGE & FORGOT PASSWORD STYLES
************************************/

.login-message {
    background-color: #fcfcfc;
    color: #ff3300;
    margin: 0 0 20px 0;
    padding: 10px;
    border: 1px solid #f2f2f2;
}

.login-page-wrap {
    margin-bottom: 20px;
    padding: 30px 0;
    position: relative;
    width: 100%;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

.login-form-wrap {
    float: left;
    margin-right: 45px;
    padding: 30px;
    width: 325px;
    background: #fff;
    border: solid 1px #e8e8e8;
}

.login-form {
    margin-bottom: 30px;
    padding-bottom: 30px;
    border-bottom: solid 1px #f2f2f2;
}

    .login-form > td {
        display: block;
    }

    .login-form label {
        display: inline-block;
        width: 140px;
    }

.reset-password-form label {
    display: inline-block;
    width: 160px;
}

    .login-form label + input,
    .reset-password-form label + input {
        margin-bottom: 10px;
        width: 100%;
    }

.reset-password-form p {
    padding: 5px 0 20px 0;
}

.forgot-password-wrap {
    display: block;
    margin-top: -10px;
    font-size: 1.3rem;
}

.login-form span[id$="tcvArc"] {
    display: none !important;
}

.login-form-error-position {
    position: relative;
}

.login-form span[id$="Required"] {
    position: absolute;
    top: 15px;
    right: -8px;
}

.validation-summary-wrap {
    padding: 10px;
    margin-bottom: 20px;
    font-style: italic;
}

.reset-password-form {
    width: 50%;
    min-width: 320px;
}

.captcha {
    background-color: #f5f5f5;
    margin: 20px 0;
    min-width: 320px;
    padding: 1%;
    width: 90%;
}

.login-form .button {
    float: right;
}

.login-form i {
    width: 18px;
}

    .login-form i.fa-user-plus {
        font-size: 1.4rem;
    }

.register-wrap {
}

.bonusCashLoginMessage {
    margin-bottom: 30px;
}


.register-wrap p {
    font-size: 1.5rem;
    margin-bottom: 5px;
}

.register-wrap li {
    font-size: 1.4rem;
    list-style: none;
    padding: 5px 0 0;
}

.register-wrap h2 {
    border-bottom: none;
}

.register-wrap .fa {
    width: 18px;
}

.login-block-wrap {
    background: #fff;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    display: inline-block;
    padding: 20px 0;
}

.login-anchor-block-wrap {
    background: #fff;
    width: 268px;
    position: absolute;
    right: 0;
    top: 45px;
    padding: 10px;
    z-index: 3;
}

.login-blocks-wrap-b {
    padding: 20px 0;
    background-color: #e8e8e8;
}

.login-block-wrap-with-doubleclick {
    display: none;
    width: 100%;
    padding: 0;
    background: #fff;
}

.login-blocks-constraint {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding: 20px 0;
    margin: 0 auto;
}

.login-block-wrap-full {
    width: 100%;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

.login-block-wrap-a1,
.login-block-wrap-a2 {
    width: 60.25%;
    float: left;
}

.login-block-wrap-a1 {
    width: 39.75%;
}

.login-block-wrap-3col {
    width: 35%;
    float: left;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

.login-3col-mid > div {
    border: solid 1px #212121;
    border-top: 0;
    border-bottom: 0;
}

.email-sent-wrap,
.password-change-results {
    font-size: 2rem;
    padding: 100px 0;
    text-align: center;
}

.change-password-button {
    margin: 10px 0 20px 0;
}

/* For Project 4937 - Display Adv on Login page */
/* Hiding Ads by default */
.adv-page-bg,
.adv-page-window {
    display: none;
}

/* To remove body background color when we show Ad in page background */
.show-adv {
    background-color: transparent !important;
}

    .show-adv .login-block-wrap {
        display: none;
    }

    .show-adv .login-block-wrap-with-doubleclick {
        display: block;
    }

    /* To add default body background color when there is no Ad/partial-transparent image Ad in page background */
    .show-adv .adv-page-bg,
    .show-adv.default-bg {
        background-color: #efefef !important;
    }

    /* position and show Ads wrapper when .show-adv gets appended to body */
    .show-adv .adv-page-bg {
        display: block;
        position: fixed;
        left: 0;
        top: 0;
        z-index: -1;
        width: 100%;
        height: 100%;
    }

    .show-adv #mainContent {
        position: relative;
        padding: 0 !important;
        width: 100%;
    }

    /* position and show Window Ad wrapper when .show-adv gets appended to body */
    .show-adv .adv-page-window {
        display: block;
        position: absolute;
        left: 0;
        top: 0;
        z-index: 0;
        width: 100%;
        height: 788px;
        border: solid 5px green;
        cursor: pointer;
    }

        .show-adv .adv-page-window:before {
            content: "adv-page-window";
        }

@media (max-width: 899px) {
    .login-block-wrap .login-blocks-constraint {
        display: block;
    }

    .login-block-wrap .login-block-wrap-a1,
    .login-block-wrap .login-block-wrap-a2 {
        display: block;
        width: 100%;
        float: none;
        margin: 20px 0;
    }
}

@media (max-width: 767px) {
    .login-form-wrap {
        float: none;
        margin-right: auto;
        margin-left: auto;
    }

    .login-block-wrap {
        float: none;
        width: 100%;
        display: block;
    }

    .login-page-wrap {
        display: block;
    }
}

@media (max-width: 560px) {
    .login-blocks-wrap-b .login-blocks-constraint {
        display: block;
    }

    .login-block-wrap-3col {
        display: block;
        width: 100%;
        float: none;
        margin: 20px 0;
    }

    .login-3col-mid > div {
        border: solid 1px #212121;
        border-left: 0;
        border-right: 0;
        border-top: solid 1px;
        border-bottom: solid 1px;
    }
}


@media (max-width: 480px) {
    .login-block-wrap-with-doubleclick .login-blocks-constraint {
        display: block;
    }

    .login-block-wrap-with-doubleclick .login-block-wrap-a1,
    .login-block-wrap-with-doubleclick .login-block-wrap-a2 {
        display: block;
        width: 100%;
        float: none;
        margin: 20px 0;
    }
}

/* Custom CSS to resolve Bug#99298  - VAX login page background image displaying over login fields on mobile 
devices preventing users from logging in */
/* custom css */
.show-adv #loginContent #loginCMSBlock {
    display: none;
}

@media only screen and (max-width: 767px) {
    .show-adv #loginContent #loginContainerLeft {
        position: relative;
        width: 90%;
        margin: 10% auto;
    }

    .show-adv .adv-page-window #login_center_01_ad_container .left_login_ad img, .show-adv .adv-page-window #login_center_01_ad_container .left_login_ad_on img {
        width: 100%;
    }

    .show-adv .adv-page-window #login_center_01_ad_container .left_login_ad, .show-adv .adv-page-window #login_center_01_ad_container .left_login_ad_on {
        float: none !important;
        width: auto !important;
        height: auto !important;
    }

    .show-adv .adv-page-window {
        height: auto !important;
    }

    #loginContent #loginCMSBlock {
        display: none;
    }

    .show-adv .adv-page-window #login_center_01_ad_container .left_login_ad div, .show-adv .adv-page-window #login_center_01_ad_container .left_login_ad_on div {
        float: none !important;
        width: 100% !important;
    }

    #loginContainerLeft #loginForm, #loginContainerLeft #registerLink {
        width: 100% !important;
    }

    .show-adv #loginContent #loginContainerLeft {
        width: 100% !important;
        padding: 0 !important;
        margin: 0 !important;
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .show-adv .adv-page-window #login_center_01_ad_container .left_login_ad {
        width: auto !important;
    }

        .show-adv .adv-page-window #login_center_01_ad_container .left_login_ad img, .show-adv .adv-page-window #login_center_01_ad_container .left_login_ad_on img {
            width: 100%;
        }

    .show-adv .adv-page-window #login_center_01_ad_container .left_login_ad_on {
        width: 50%;
    }
}
/* custom css */

@media (max-width: 1230px) {
    .register-wrap,
    .login-form {
        float: none;
    }

    .adv-page-window {
        float: left;
    }

    .login-form {
        border-right: 0;
        border-bottom: 1px solid #ccc;
        margin-bottom: 40px
    }
}

@media (max-width: 767px) {
    .login-page-wrap {
        border-top: 1px solid #ccc;
    }

        .login-page-wrap .button-large {
            width: inherit;
        }

    .login-ad-wrap {
        position: static;
        margin-top: 40px;
        width: 415px;
    }

    .login-form-wrap {
        position: static;
        margin-bottom: 30px;
    }
}

@media (max-width: 481px) {
    .login-form,
    .register-wrap {
        width: 100%;
    }

        .login-form .button {
            float: none;
            margin-top: 20px;
        }

    .member-services-list-wrap a {
        display: block;
    }
}

/* MEMBER SERVICES HOME/LANDING PAGE
************************************/

.member-services-list-wrap h2 {
    margin: 0;
}

.member-services-list-wrap {
    margin: 20px 0;
}

.member-services-home-wrap ul {
    list-style-type: none;
}

    .member-services-home-wrap ul li {
        margin-bottom: 1px;
    }

/* CALLER TYPE COMPONENT
************************************/

.caller-type-wrap {
    border-bottom: 1px solid #d3d3d3;
    padding-bottom: 20px;
    margin-bottom: 20px;
}

.caller-type-radios {
    border: 1px solid #d3d3d3;
    display: inline-block;
    float: left;
    margin: 0px 3% 0 0;
    padding: 15px;
    width: 145px;
}

    .caller-type-radios legend {
        width: auto;
        padding: 0 5px;
        font-size: 1.8rem;
    }

    .caller-type-radios label {
        padding: 4px;
    }

    .caller-type-radios input[type="radio"] {
        vertical-align: middle;
        margin: 0px;
    }

.caller-information-wrap,
.caller-number-wrap {
    float: left;
    font-size: 1.2rem;
    min-width: 29%;
    padding: 0px 0px 0px 2%;
}

.caller-information-wrap-AirMiles {
    display: flex;
}

.caller-information-wrap fieldset {
    margin: 0 5% 5px 0;
    max-width: 400px;
}

.caller-information-wrap dd {
    padding-bottom: 5px;
}

.caller-info-wrap .caller-info-label {
    min-width: 85px;
}

.paired-collector-wrap {
    display: flex;
    flex-direction: column;
    border-left: 1px solid #ccc;
    padding: 18px 0 18px 22px;
}

fieldset.create-a-profile {
    margin-top: 5px;
}

.caller-phone-number {
    margin: 0 5% 10px 10px;
    max-width: 270px;
}

.caller-number-wrap {
    padding-left: 0px;
}

.caller-phone-number label {
    width: 100px;
    display: inline-block;
}

.caller-information-wrap fieldset input,
.caller-phone-number input {
    width: 100%;
}

.create-profile-link {
    margin-top: 20px !important;
    float: none !important;
}

.ro-caller-type-info {
    width: 515px;
    float: right;
    font-size: 1.2rem;
    padding: 5px;
    border: 1px solid #e3e3e3;
    border-radius: 3px;
}

.client-recent-history {
    float: left;
    width: 100%;
}

.ro-caller-type-info dt {
    width: 25%;
    float: left;
}

/**agent caller type styles **/
.ro-caller-type-info dd {
    width: 25%;
    float: left;
    font-weight: bold;
}

.ro-agent-info dt {
    padding-right: 3px;
    min-width: 110px;
    display: block;
    float: left;
}

.ro-agent-info dd {
    font-weight: bold;
    padding-bottom: 5px;
}

.agent-caller-wrap {
    min-width: 550px;
}

.caller-information-wrap label {
    min-width: auto;
    display: block;
    float: left;
}

#agentNameTooltipTrigger {
    padding: 0 0 0 3px;
}
/**caller info read only and tool tip v2 styles **/

.callerWrapper {
    margin-bottom: 20px;
}

ul#navigation {
    margin: 0 0 0 0;
    padding: 2px 0 0 0;
}

    ul#navigation li {
        position: relative;
        display: inline;
        margin: 0 0 0 0;
        padding: 0 0 0 0;
    }

        ul#navigation li span {
            margin: 0 0 0 0;
            padding: 0 5px 0 0;
            color: #0B82A1;
            text-decoration: underline;
            cursor: pointer;
        }

        ul#navigation li a {
            margin: 0 0 0 0;
            clear: both;
        }

            ul#navigation li a:hover {
                background: #f57f20;
                color: #2FA2FF;
                text-decoration: none;
            }

        ul#navigation li ul {
            position: absolute;
            z-index: 100;
            width: 420px;
            top: 12px;
            left: 0;
            background: rgba(0, 123, 196, 0.8);
            visibility: hidden;
        }

            ul#navigation li ul li a,
            ul#navigation li ul li a:hover {
                display: block;
                padding: 5px;
                background: none;
                color: #fff;
                line-height: 1.4em;
            }

                ul#navigation li ul li a:hover {
                    background: #007bc4;
                }

/**END OF v2 styles **/

@media (max-width: 1140px) {

    .ro-caller-type-info {
        width: 415px;
    }
}

@media (max-width: 913px) {

    .ro-caller-type-info {
        width: 100%;
        margin: 10px 0px;
    }

        .ro-caller-type-info dd,
        .ro-caller-type-info dt {
            width: 15%;
        }
}

@media (max-width: 770px) {

    .caller-number-wrap {
        padding: 0px 0px 0px 2%;
    }

    .caller-information-wrap fieldset {
        margin: 0 0% 5px 0;
    }

    fieldset.create-a-profile {
        margin: 5px 0px;
    }

    .caller-information-wrap fieldset,
    .caller-phone-number {
        max-width: 48.6%;
    }

    .caller-information-wrap {
        width: 100%;
        padding: 15px 0px 0px 0%;
    }

    .caller-number-wrap {
        width: 100%;
        padding: 0px;
    }

    .ro-caller-type-info dd,
    .ro-caller-type-info dt {
        width: 25%;
    }

    .caller-phone-number {
        padding: 0px;
        margin: 0px;
    }

    .paired-collector-wrap {
        padding: 18px 0 0 10px;
        margin-left: 10px;
    }
}

@media (max-width: 640px) {

    .caller-type-radios {
        width: 100%;
        padding: 10px;
    }

    .caller-information-wrap fieldset,
    .caller-phone-number {
        max-width: 100%;
    }

    .agent-caller-wrap {
        min-width: 320px;
    }

        .agent-caller-wrap dd span {
            line-height: 1.6;
        }
}


@media (max-width: 430px) {

    .ro-caller-type-info dd,
    .ro-caller-type-info dt {
        width: 38%;
    }
}

/* CUSTOMER COMPONENT - CREATE/UPDATE PROFILE MODAL
************************************/

.add-profile-wrap fieldset,
.update-profile-wrap > fieldset {
    margin: 0px 5% 15px 0;
    width: 27%;
    display: inline-block;
    min-width: 270px;
}

.add-profile-wrap h3,
.update-profile-wrap h3 {
    padding-bottom: 10px;
}

.add-profile-wrap select,
.add-profile-wrap input,
.update-profile-wrap select,
.update-profile-wrap input {
    width: 98%;
}

.emails-profile-section {
    margin: 10px 0px;
    padding: 10px 0px;
    border-bottom: 1px solid #e3e3e3;
    border-top: 1px solid #e3e3e3;
}

    .emails-profile-section input,
    .profile-vacation-question input {
        width: auto;
    }

.newsletter-sign-up {
    padding: 5px 0px;
}

.profile-vacation-question {
    padding: 0px 0px 20px 0px;
}

    .profile-vacation-question select,
    .profile-vacation-question input[type=text] {
        width: 32%;
        clear: both;
        display: block;
    }

    .profile-vacation-question input[type=radio],
    .profile-vacation-question input[type=checkbox],
    .add-profile-wrap input[type=radio],
    .add-profile-wrap input[type=checkbox] {
        margin-right: 4px;
    }

.create-profile-button-wrap,
.update-profile-button-wrap {
    padding: 10px 0px;
    text-align: right;
}

    .create-profile-button-wrap .button,
    .update-profile-button-wrap .button {
        width: auto;
    }

/* Add a profile - vacation preferences change styling because data pulled in through tables******/

.add-profile-wrap .vacation-preferences fieldset {
    width: 50%;
}

    .add-profile-wrap .vacation-preferences fieldset select,
    .add-profile-wrap .vacation-preferences fieldset input {
        max-width: 264px;
        display: block;
    }

.add-profile-wrap .vacation-preferences > p {
    font-weight: bold;
}

.add-profile-wrap .vacation-preferences fieldset table td {
    width: 320px;
}

    .add-profile-wrap .vacation-preferences fieldset table td input {
        width: 14px;
        float: left;
    }

.add-profile-wrap .vacation-preferences .profile-vacation-question label {
    padding-left: 1px;
}

@media (max-width: 648px) {
    .create-profile-button-wrap,
    .update-profile-button-wrap {
        text-align: left;
    }
}


/* MANAGE USERS STYLES, RETRIEVE/SAVED RESERVATION TABLE STYLES
************************************/

.user-actions-field label {
    display: inline-block;
    width: 175px;
    margin-right: 5px;
}

.manage-user-mobile-label {
    display: none;
}

.user-search-wrap,
.add-user-wrap {
    border: 1px solid #d3d3d3;
    display: inline-block;
    margin: 20px 20px 0 0;
    padding: 20px;
    width: 400px;
}

.user-search-wrap {
    float: left;
}

.add-user-wrap {
    vertical-align: top;
}

    .add-user-wrap .secondary-button {
        margin: 0 auto;
        display: block;
    }

    .user-search-wrap legend,
    .add-user-wrap legend {
        width: auto;
        padding: 0 5px;
        font-size: 2rem;
    }

.find-user-btns-wrap {
    margin-top: 10px;
}

.manage-users-table,
.retrieve-reservation-table,
.saved-reservation-table {
    border: 1px solid #d3d3d3;
    width: 100%;
    margin-top: 40px;
}

.dataTable tr.even {
    background-color: #f9f9f9;
}

.retrieve-reservation-row td,
.saved-reservation-table td {
    padding: 5px;
    border: 1px solid #d3d3d3;
}

.manage-users-table .even,
.saved-reservation-table tr:nth-child(even) {
    background-color: #f9f9f9;
}

.retrieve-reservation-table th {
    padding: 5px 6px 5px 17px;
    background-color: #f2f2f2;
    border: 1px solid #d3d3d3;
}

.saved-reservation-table th {
    background-color: #f2f2f2;
    border: 1px solid #d3d3d3;
    padding: 5px;
}

.manage-users-table td {
    border: 1px solid #d3d3d3;
}

.retrieve-reservation-table .sorting {
    background: url('https://trisept.widen.net/content/bebk3yfnpz/png/TRI_ICON_NAV_sort_both.png') no-repeat left;
    background-color: #f2f2f2;
}

.retrieve-reservation-table .sorting_asc {
    background: url('https://trisept.widen.net/content/an9bm0krc7/png/TRI_ICON_NAV_sort_asc.png') no-repeat left;
    background-color: #f2f2f2;
}

.retrieve-reservation-table .sorting_desc {
    background: url('https://trisept.widen.net/content/x4mnahoupc/png/TRI_ICON_NAV_sort_desc.png') no-repeat left;
    background-color: #f2f2f2;
}

.manage-users-table td,
.manage-users-table th,
.retrieve-reservation-table td,
.saved-reservation-table td,
.saved-reservation-table tr {
    padding: 5px;
}

.manage-users-table th {
    min-width: 90px;
    padding: 5px 6px 5px 17px;
    border: 1px solid #d3d3d3;
}

.password-change-results {
    text-align: center;
}

.tablesorter-header {
    cursor: pointer;
}

.manage-users-error {
    margin: 10px 0px;
}

.add-user-inputs-wrap input,
.add-user-inputs-wrap select,
.edit-user-inputs-wrap input[type=text],
.edit-user-inputs-wrap select,
.user-id-wrap {
    display: block;
    clear: both;
    width: 50%;
    margin-bottom: 10px;
}

.add-user-checkbox-input {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
}

.add-user-checkbox-input input {
    width: unset;
}

.vendor-selector-wrap,
.res-services-selector-wrap {
    display: flex;
    flex-flow: row nowrap;
    margin-top: 20px;
}

.available-vendors,
.selected-vendors-wrap,
.available-res-services,
.selected-res-services-wrap {
    width: 45%;
}

.vendor-select-buttons-wrap button,
.res-services-select-buttons-wrap button {
    width: 100%;
    margin-bottom: 5px;
}

.vendor-select-buttons-wrap,
.res-services-select-buttons-wrap {
    width: 60px;
    padding: 30px 10px 0;
    text-align: center;
}

    .vendor-select-buttons-wrap button span,
    .res-services-select-buttons-wrap button span {
        display: none;
    }

.vendor-list,
.res-services-list {
    min-height: 160px;
    border: solid 1px #d3d3d3;
    max-width: 100%;
    padding: 5px;
    min-width: 100%;
}

.add-user-modal-btn-wrap,
.edit-user-modal-btn-wrap {
    float: right;
    margin-top: 15px;
}

.user-added-confirmation-btn {
    text-align: center;
}

.add-user-modal .error {
    margin-top: 20px;
}

.edit-user-inputs-wrap {
    margin-bottom: 15px;
}


@media (max-width: 899px) {
    .manage-users-table .manage-user-row-4 {
        width: 100%;
    }

    .manage-users-table .secondary-button {
        font-size: 1.1rem;
        padding: 3px;
    }

    .user-search-wrap,
    .add-user-wrap {
        display: block;
        width: 310px;
    }

    .add-user-wrap {
        text-align: left;
    }

    .retrieve-reservation-row td,
    .saved-reservation-table td,
    .saved-reservation-table {
        border: none;
    }
}

@media (max-width: 767px) {
    .member-services-wrap {
        border-top: 1px solid #000;
        padding-top: 30px;
    }
}

@media (max-width: 899px) {
    .manage-users-table th {
        display: none;
    }

    .manage-users-table,
    .manage-users-table td {
        border: none;
    }

        .manage-users-table tr.even {
            background-color: #fff;
        }

        .manage-users-table tr.odd {
            background-color: #f2f2f2;
        }

        .manage-users-table td,
        .manage-user-mobile-label {
            display: inline-block;
        }

        .manage-users-table .manage-user-row-1 {
            padding-bottom: 0 !important;
            font-weight: bold;
            width: 100%;
            font-size: 1.6rem;
        }

        .manage-users-table .manage-user-row-2,
        .manage-users-table .manage-user-row-3 {
            padding-top: 0;
            padding-bottom: 0;
        }
}

@media (max-width: 479px) {
    .user-actions-field label {
        display: block;
        margin-bottom: 2px;
    }

    .find-user-btns-wrap {
        text-align: left;
    }

    .vendor-selector-wrap,
    .res-services-selector-wrap {
        display: block;
    }

    .available-vendors,
    .selected-vendors-wrap,
    .available-res-services,
    .selected-res-services-wrap {
        width: 100%;
        display: block;
    }

    .vendor-desktop-icon,
    .res-services-desktop-icon {
        display: none;
    }

    .vendor-select-buttons-wrap,
    .res-services-select-buttons-wrap {
        width: 100%;
        padding: 10px 0;
        text-align: center;
        display: flex;
        align-items: stretch;
    }

        .vendor-select-buttons-wrap button,
        .res-services-select-buttons-wrap button {
            width: 23%;
            margin: 0 auto 5px;
            min-height: 40px;
        }

            .vendor-select-buttons-wrap button span,
            .res-services-select-buttons-wrap button span {
                display: inline;
            }
}


/* CHANGE PASSWORD STYLES
************************************/

.change-password-form {
    margin: 20px 0;
}

    .change-password-form label {
        display: inline-block;
        margin-top: 10px;
        width: 170px;
    }


    .change-password-form input {
        width: 335px;
    }

@media (max-width: 599px) {
    .change-password-form input {
        width: 300px;
        display: block;
    }
}


/* AGENCY PREFERENCE STYLES
************************************/

.supplier-display-wrap,
.agency-logo-email-wrap,
.agent-security-access {
    margin-top: 40px;
}

.supplier-selection-wrap {
    display: flex;
    flex-flow: row nowrap;
    margin-top: 20px;
}

.supplier-col-wrap {
    width: 50%;
}

    .supplier-col-wrap label {
        margin-bottom: 5px;
        display: block;
    }

.supplier-btn-wrap {
    width: 60px;
    padding: 30px 10px 0;
    text-align: center;
}

    .supplier-btn-wrap button {
        width: 100%;
        margin-bottom: 5px;
    }

.supplier-whitelist,
.supplier-blacklist {
    min-height: 160px;
    border: solid 1px #d3d3d3;
    min-width: 100%;
    padding: 5px;
}

    .supplier-whitelist option,
    .supplier-blacklist option {
        margin-bottom: 3px;
    }

.supplier-display-button-wrap {
    margin: 10px 0 20px;
    text-align: center;
}

.submit-request-wrap {
    margin-top: 20px;
}

    .submit-request-wrap ul {
        margin-left: 30px;
    }

    .submit-request-wrap li {
        margin-bottom: 3px;
    }

.limited-suppliers-disclaimer {
    margin: 20px 0;
}

.agent-security-access {
    border: solid 1px #d3d3d3;
    padding: 20px 10px;
    text-align: right;
}

.supplier-btn-wrap button span {
    display: none;
}

@media (max-width: 767px) {
    .supplier-selection-wrap {
        display: block;
    }

    .supplier-btn-wrap {
        width: 100%;
        padding: 10px 0;
        text-align: center;
        display: flex;
        align-items: stretch;
    }

    .supplier-col-wrap {
        width: 100%;
        display: block;
    }

    .supplier-btn-wrap button {
        width: 23%;
        margin: 0 auto 5px;
        min-height: 40px;
    }

        .supplier-btn-wrap button span {
            display: inline;
        }

    .supplier-desktop-icon {
        display: none;
    }
}

@media (max-width: 460px) {
    .agent-security-access label {
        display: block;
        margin-bottom: 5px;
    }

    .agent-security-access {
        text-align: center;
    }
}


/* USER PREFERENCE STYLES
************************************/

.default-cities-wrap,
.plcode-info-wrap {
    margin: 40px 0;
}

.user-preferences-title {
    margin-top: 20px;
}

.user-preferences fieldset {
    margin: 0 5% 15px 0;
    width: 27%;
    display: inline-block;
    min-width: 270px;
}

.user-preferences input[type="text"],
.user-preferences select {
    width: 100%;
}

.user-preferences-intro,
.agency-logo-preview {
    margin-bottom: 20px;
}

.agency-logo-preview {
    text-align: center;
    background-color: #f2f2f2;
    padding: 20px 10px;
}

.user-preference-btn-wrap {
    margin-top: 10px;
}

.preferences-logo-disclaimer {
    display: block;
    margin-top: 5px;
}

/* PERSONAL INFORMATION/UPDATE & Update USER STYLES
************************************/

.update-user-info-wrap,
.add-user-info-wrap {
    margin: 40px 0;
}

.user-info-intro {
    margin-bottom: 20px;
}

.user-info-title {
    margin-top: 20px;
}

.user-info fieldset {
    margin: 0 5% 15px 0;
    width: 27%;
    display: inline-block;
    min-width: 270px;
}

.user-info input[type="text"],
.user-info select {
    width: 100%;
}

.user-info .user-site-managers {
    width: 100%;
    display: block;
    border: 1px dashed #e2e2e2;
    border-left: 0;
    border-right: 0;
    padding: 15px 0;
}

    .user-info .user-site-managers label {
        display: block;
    }

.site-managers-list {
    width: 93%;
}

.user-update-button-wrap {
    margin-top: 20px;
}

.change-status-msg {
    margin-top: 40px;
}


/* AGENCY REGISTRATION PAGE
************************************/
.manager-info-form {
    margin: 0 0px 20px 0px !important;
    border: none !important;
}

.agent-registration-intro {
    margin: 0 0 30px 0 !important;
}

.agency-registration-form {
    margin: 10px 0 !Important;
    border: none !important;
}

.site-manager-title-wrap {
    padding-top: 20px;
}

.agency-registration-button-wrap {
    width: 30%;
    float: right;
    text-align: right;
    vertical-align: middle;
    padding-bottom: 20px;
}

.no-arc-number {
    padding: 10px 0;
}

.register-agency-accept-wrap {
    padding: 10px 0px 20px 0px;
}

.basic-economy-filter-wrap fieldset div {
    padding-bottom: 5px;
}

    .basic-economy-filter-wrap fieldset div:last-child {
        padding-bottom: 0px;
    }

    .basic-economy-filter-wrap fieldset div span {
        padding-right: 3px;
    }

/*Modal specific overrides*/
.update-user-modal .user-info fieldset,
.add-user-modal .user-info fieldset {
    margin: 0 3% 15px 0;
    min-width: 250px;
}

.update-user-modal .update-user-info-wrap,
.add-user-modal .add-user-info-wrap {
    margin: 0;
}

/* AVAIL & CHECKOUT ITINERARY SUMMARY
************************************/

.itin-avail-summary {
    width: 60%;
    float: right;
    text-align: right;
}

    .itin-avail-summary ul {
        list-style: none;
        margin-bottom: 10px;
    }

.avail-summary-price strong {
    font-size: 1.8rem;
    color: #d97827;
}

.first-total {
    margin-bottom: 20px;
}

.avail-summary-price-title {
    color: #000;
    font-size: 1.6rem;
    display: block;
}

.avail-summary-price-per {
    font-size: 1.2rem;
    display: block;
}

.preselected-lowest-price {
    margin-bottom: 10px;
}

.itin-summary-component {
    margin-bottom: 10px;
}

.feature-itin-summary-component {
    margin-bottom: 0;
}

.itin-summary-item {
    margin-bottom: 10px;
}

.currency-warnings {
    float: right;
}

.itin-summary-item-header,
.multi-stop-dest-header {
    background-color: #243a4f;
    color: #fff;
    font-weight: normal;
    padding: 5px 10px;
    margin-bottom: 10px;
}

.multi-stop-dest-header {
    margin-top: 10px;
}

.summary-car-price-wrap {
    text-align: right;
    width: 25%;
    float: left;
}

.summary-vehicle-softsell-select {
    clear: both;
}

.checkout-bar-btn-wrap {
    margin-bottom: 40px;
}

@media (max-width: 680px) {
    .summary-car-price-wrap {
        text-align: left;
        width: 100%;
        margin-bottom: 10px;
    }
}

.inactive-header-btn-continue-wrap {
    width: 45%;
    display: inline-block;
    float: left;
}

.inactive-header-btn-wrap {
    width: 55%;
    display: inline-block;
    float: left;
}

.inactive-header-btn-wrap {
    padding-top: 8px;
}

.inactive-header-btn-continue-wrap {
    text-align: right;
    padding-top: 8px;
}


@media (max-width: 460px) {
    .inactive-header-btn-continue-wrap,
    .inactive-header-btn-wrap {
        width: 100%;
        display: block;
        float: none;
        text-align: center;
        margin-bottom: 10px;
    }
}


/*** CART SUMMARY - FLIGHT & CAR STYLES ***/

.itin-summary-item-btn-wrap {
    width: 25%;
    float: right;
    text-align: right;
    min-width: 125px;
}

.itin-summary-flight-wrap,
.itin-summary-flight-wrap ul,
.itin-summary-feature-wrap,
.itin-summary-vehicle-wrap {
    width: 73%;
    float: left;
    list-style: none;
}

    .itin-summary-flight-wrap ul {
        margin-bottom: 10px;
    }

    .itin-summary-flight-wrap li,
    .itin-summary-feature-wrap > div,
    .itin-summary-vehicle-wrap li {
        margin-bottom: 3px;
    }

    .itin-summary-flight-wrap span,
    .itin-summary-feature-wrap span {
        margin-right: 10px;
    }

.itin-summary-codeshare {
    width: 50%;
    float: left;
}

.itin-summary-points {
    width: 50%;
    float: right;
    text-align: right;
}

.itin-summary-addtl-air-info {
    margin-top: 20px;
}

.itin-summary-car-details {
    clear: both;
    padding: 10px 0px;
}

.new-price-car {
    padding: 0 0 10px 0 !important;
}

    .new-price-car li {
        padding: 0 !important;
    }

.itin-summary-car-details p {
    padding: 5px 0;
}

.summary-remove-link {
    margin-left: 15px;
}

.itin-remove-button-wrap {
    float: right;
    text-align: center;
    min-width: 125px;
    width: auto;
}

    .itin-remove-button-wrap .link {
        margin-left: 69px;
        display: block;
    }

@media (max-width: 460px) {
    .summary-flight-airline-num,
    .flightDetailsTimeZone {
        display: block;
        width: 100%;
    }

    .itin-avail-summary {
        text-align: left;
        width: 100%;
    }

    .itin-summary-item-btn-wrap {
        width: 100%;
        float: none;
        padding-bottom: 15px;
        text-align: left;
        min-width: 125px;
    }

    .itin-summary-flight-wrap,
    .itin-summary-flight-wrap ul,
    .itin-summary-feature-wrap,
    .itin-summary-vehicle-wrap {
        width: 100%;
        float: none;
        list-style: none;
    }

    .itin-remove-button-wrap .link {
        margin-left: 0;
    }
}

/*** CART SUMMARY - CAR & HOTEL STYLES ***/

.itin-summary-current-hotel {
    font-size: 1.8rem;
    font-weight: bold;
}

.upsell-name img {
    vertical-align: middle;
}

.vehicle-image-wrap {
    float: left;
    padding: 0px 20px 0px 0px
}


    .vehicle-image-wrap img {
        max-width: 160px;
    }

.vehicleBrandImage {
    max-width: 285px;
}

.room-type-list li,
.car-type-list li {
    border: solid #d3d3d3;
    border-width: 0 1px 1px 1px;
    list-style: none;
    padding: 10px;
}

    .room-type-list li:first-child,
    .car-type-list li:first-child {
        border-top-width: 1px;
    }

.room-type-info,
.room-type-price {
    display: inline-block;
}

.room-type-info {
    width: 70%;
}

.room-type-price {
    float: right;
    text-align: right;
}

.room-type-info a {
    display: inline-block;
    font-weight: bold;
    margin-left: 17px;
}

.itin-summary-room-details-wrap {
    padding: 20px 0 5px 0;
}

.room-upsell-option {
    position: absolute;
    margin-top: 4px !important;
}

.upsell-room-type-table {
    width: 100%;
    margin-top: 10px;
}


.room-type-table,
.upsell-room-type-table {
    text-align: left;
}

    .room-type-table th,
    .upsell-room-type-table th {
        font-weight: bold;
    }

    .room-type-table td,
    .upsell-room-type-table td {
        padding-bottom: 10px;
    }

    .upsell-room-type-table tbody,
    .upsell-options-table tbody {
        border: 1px solid #d3d3d3
    }

    .upsell-room-type-table td,
    .upsell-options-table td {
        border-bottom: 1px solid #d3d3d3;
        padding: 10px;
    }

.room-type-heading {
    width: 30%;
}

.room-promo-heading,
.room-promo {
    padding-left: 30px;
    padding-right: 30px;
}

    .room-promo ul {
        list-style: none;
    }

.room-promo-heading {
    width: 55%;
}

.room-price-heading,
.upsell-price-heading {
    width: 10%;
    min-width: 140px;
}

.room-price-heading,
.price-per-stay,
.upsell-price-heading {
    text-align: right;
}

.feature-option-collapse,
.room-option-collapse-wrap {
    margin-bottom: 15px;
    padding-bottom: 5px;
    border-bottom: 1px solid #d3d3d3;
    font-size: 1.8rem;
    clear: both;
}

.added-values-list {
    list-style: none;
    padding-bottom: 5px;
}

.hotel-cart-points {
    margin: 10px 0px;
    float: right;
}

@media (max-width: 767px) {
    .room-type-table th,
    .upsell-room-type-table th {
        display: none;
    }

    .room-type-table td,
    .upsell-room-type-table td {
        display: block;
        padding-left: 0;
        padding-bottom: 0;
    }

    .upsell-room-type-table td,
    .upsell-room-type-table tbody {
        border: none;
    }

    .price-per-stay {
        border-bottom: 1px solid #d3d3d3 !important;
    }

    .upsell-room-type-table .room-promo {
        padding: 0px;
    }

    .room-type-table td:last-child,
    .upsell-room-type-table td:last-child {
        padding-bottom: 20px;
    }

    .upsell-room-type-table td {
        width: 100%;
    }

    .hotel-rating {
        display: block;
    }

    .roomsList #rtn0_0 a {
        margin-top: 10px;
    }

    .price-per-stay {
        text-align: left;
    }

        .price-per-stay .is-hidden {
            display: inline;
        }

    .room-type-table .button,
    .upsell-room-type-table .button {
        width: 150px;
    }
}

@media (max-width: 360px) {
    .room-type-info {
        width: 65%;
    }
}

/***FEATURE ITIN SUMMARY ***/

.itin-summary-feature-wrap {
    display: flex;
    flex-flow: row wrap;
    padding: 10px;
    width: 100%;
    border: solid 1px #d3d3d3;
    border-top: 0;
}

.feature-itin-summary-item-btn-wrap,
.transfer-itin-summary-item-btn-wrap,
.insurance-itin-summary-item-btn-wrap,
.ro-itin-summary-item-border-wrap {
    width: 100%;
    padding-bottom: 15px;
    border-bottom: solid 1px #d3d3d3;
}

    .insurance-itin-summary-item-btn-wrap {
        display: flex;
        align-items: flex-start;
        justify-content: end;
    }

    .transfer-itin-summary-item-btn-wrap a.button,
    .insurance-itin-summary-item-btn-wrap a.button,
    .insurance-upsell-btn-wrap a.button {
        font-size: 1.33rem;
    }

.feature-itin-summary-component:last-child {
    border-bottom: 1px;
}

.itin-summary-feature-component + .itin-summary-component {
    margin-top: 20px;
}

.feature-summary-name {
    width: 100%;
}

.feature-summary-price-ea {
    width: 64%;
}

.feature-summary-full-price {
    width: 14%;
    text-align: center;
}

.feature-summary-date {
    width: 8%;
}

.feature-summary-btn-wrap {
    width: 14%;
    text-align: right;
}

    .feature-summary-btn-wrap .link {
        text-decoration: none;
    }

.feature-summary-remove {
    margin-left: 5px;
}

.feature-advisory-list {
    flex-basis: 100%;
    margin-left: 20px;
    margin-top: 5px;
}

.features-cart-points {
    width: 100%;
    float: right;
    text-align: right;
}

.smartOrderModificationDate,
.smartOrderModificationNew {
    color: #ff0000;
    font-weight: bold;
    margin-left: 20px;
}

.feature-summary-transfer {
    width: 100%;
}

@media (min-width: 960px) and (max-width:1180px) {
    .feature-summary-price-ea {
        width: 50%;
    }

    .feature-summary-full-price {
        width: 12.5%;
    }

    .feature-summary-date {
        width: 12.5%;
    }

    .feature-summary-btn-wrap {
        width: 25%;
    }
}

@media (max-width: 959px) {
    .feature-summary-price-ea {
        width: 100%;
    }

    .feature-summary-full-price {
        width: 25%;
    }

    .feature-summary-date {
        width: 25%;
    }

    .feature-summary-btn-wrap {
        width: 50%;
    }
}

@media (max-width: 767px) {
    .feature-summary-price-ea {
        width: 50%;
    }

    .feature-summary-full-price {
        width: 12.5%;
    }

    .feature-summary-date {
        width: 12.5%;
    }

    .feature-summary-btn-wrap {
        width: 25%;
    }
}

@media (max-width: 580px) {
    .feature-summary-price-ea {
        width: 100%;
    }

    .feature-summary-full-price {
        width: 25%;
    }

    .feature-summary-date {
        width: 25%;
    }

    .feature-summary-btn-wrap {
        width: 50%;
    }
}

/*** General Nav Summary Styles ***/

.nav-summary-details-wrap {
    display: flex;
    flex-flow: row wrap;
    margin-bottom: 5px;
}

.navSummaryFeatureList {
    margin-top: 20px;
}

.navSummaryFeatureList .nav-summary-details-wrap {
    padding-bottom: 5px;
    border-bottom: solid 1px #d3d3d3;
}


    .navSummaryFeatureList .nav-summary-details-wrap:last-child {
        border-bottom: none;
        padding-bottom: none;
        margin-bottom: none;
    }

.nav-summary-details {
    width: 70%;
}

.nav-summary-actions {
    text-align: right;
    width: 30%;
    margin: 0 auto;
    vertical-align: top;
}

@media (max-width: 480px) {
    .nav-summary-details,
    .nav-summary-actions {
        width: 100%;
    }

    .nav-summary-actions {
        text-align: left;
    }
}

/***RETRIEVE / SAVED RESERVATION PAGES ***/


.retrieve-reservation-wrap fieldset {
    width: 400px;
    margin: 10px 10px 0 0;
}

    .retrieve-reservation-wrap fieldset label {
        display: inline-block;
        width: 195px;
        padding: 10px 10px 10px 0px;
    }

.retrieve-table-row-mobile,
.retrieve-reservation-mobile-label {
    display: none;
}

.saved-reservation-table .tertiary-button:enabled {
    height: 23px;
    padding: 0 10px;
}

@media (max-width: 899px) {
    .retrieve-reservation-table {
        border: none;
    }

        .retrieve-reservation-table th,
        .saved-reservation-table th {
            display: none;
        }

    .dataTable tr.odd td.sorting_1 {
        background-color: transparent;
    }

    .dataTable tr.even td.sorting_1 {
        background-color: #fff;
    }

    .retrieve-table-row-mobile,
    .retrieve-reservation-mobile-label {
        display: inline-block;
    }

    tr.retrieve-reservation-row.odd,
    .retrieve-reservation-table tr.oddtd.sorting_1,
    .saved-reservation-table tr:nth-child(odd),
    .trip-bookmark-table tr.odd {
        background-color: #f2f2f2;
    }

    .saved-reservation-table tr:nth-child(even),
    .trip-bookmark-table tr.even,
    tr.retrieve-reservation-row.even {
        background-color: #fff;
    }

    .retrieve-reservation-table td,
    .saved-reservation-table td {
        display: inline-block;
        width: 50%;
        padding: 5px;
    }

    .retrieve-reservation-button {
        width: 100% !important;
    }

    .search-reservation-button-wrap {
        margin-top: 10px;
    }

    .retrieve-reservation-wrap fieldset {
        width: 100%;
        margin: 0 auto;
        display: block;
    }

    .retrieve-reservation-table td,
    .saved-reservation-table td,
    .trip-bookmark-table td {
        font-size: 1.2rem;
    }
}

@media (max-width: 482px) {
    .retrieve-reservation-button .button:enabled,
    .saved-reservation-table .secondary-button:enabled,
    .saved-reservation-table .button:enabled {
        width: 100%;
        position: static;
    }
}

/* TRAVEL AGENCY UPDATE FORM
************************************/
.agency-info p,
.travel-agency-radio {
    margin-bottom: 10px;
}

.agency-info {
    border-bottom: 1px dotted #aaa;
    margin: 40px 0 0;
}

    .agency-info input, .agency-info select,
    .email-field input {
        width: 100%;
    }

.agency-additional-info {
    margin: 10px 0;
    border-bottom: 1px dotted #aaa;
}

    .agency-info fieldset,
    .agency-additional-info fieldset {
        margin: 0 5% 15px 0;
        width: 27%;
        display: inline-block;
        min-width: 270px;
    }

.agency-info label {
    display: block;
}

.agency-update-disclaimer p {
    padding-bottom: 5px;
}


/* RETRIEVE A RESERVATION/ GROUP PAGE
************************************/

#groupDetailsTabs {
    font-size: 1.2rem;
}

.groups-tab-inventory-wrap {
    display: flex;
    flex-flow: row wrap;
}

.groups-charter-inventory,
.groups-hotel-inventory-wrap {
    width: 50%;
    padding: 0 2%;
}

@media (max-width: 475px) {
    .groups-charter-inventory,
    .groups-hotel-inventory-wrap {
        width: 100%;
    }
}

.retrieve-group-reservation-wrap fieldset {
    margin: 10px 5% 15px 0;
    width: 27%;
    display: inline-block;
    min-width: 270px;
}

    .retrieve-group-reservation-wrap fieldset label,
    .group-information-section-wrap fieldset label {
        display: block;
    }

.retrieve-group-button-wrap {
    padding: 5px 0px 20px 0;
}

.retrieve-group-reservation-wrap fieldset input,
.retrieve-group-reservation-wrap select {
    width: 100%;
}

.retrieve-group-content-wrap img {
}

.groups-vendor-divider {
    border-bottom: 1px solid #e3e3e3;
}

.group-request-selection-wrap fieldset {
    float: left;
    margin: 0 5% 15px 0;
    min-width: 270px;
    width: 27%;
}

    .group-request-selection-wrap fieldset label {
        display: block;
    }

.group-request-selection-wrap select {
    width: 225px;
}

.group-information-form input {
    width: 225px;
}

.group-information-section-wrap {
    clear: both;
    width: 100%;
}

    .group-information-section-wrap h2 {
        padding-top: 20px;
        padding-bottom: 10px;
        margin-bottom: 0px;
    }

.group-information-form fieldset {
    display: inline-block;
    margin: 0 5% 15px 0;
    min-width: 270px;
    width: 27%;
}

    .group-information-form fieldset.group-name,
    .group-information-form fieldset.group-numberofrooms {
        width: 100%;
    }

    .group-information-form fieldset.group-hotel2,
    .group-information-form fieldset.group-leadlastname,
    .group-information-form fieldset.group-bridelastname {
        width: 50%;
    }

        .group-information-form fieldset.group-hotel1 select,
        .group-information-form fieldset.group-althotel1 select,
        .group-information-form fieldset.group-hotel2 select,
        .group-information-form fieldset.group-althotel2 select,
        .group-information-form fieldset.group-occasion select {
            width: 225px;
        }

.group-button-wrapper input {
    margin-top: 10px;
}

/*** Group - Group Details restool ***/

.promo-restool-wrap {
    border: 1px solid #d3d3d3;
    padding: 10px;
}

.group-details-wrap .content-main-wrap {
    border: none;
}

.new-search-wrap label {
    width: 100%;
}

.new-search-wrap select,
.new-search-wrap input {
    margin-bottom: 10px;
    width: 100%;
}

.new-search-wrap .secondary-button {
    margin: 5px 0 0;
}

.new-search-wrap .travel-protection-wrap {
    padding: 0px 5px 0px 10px;
    margin: 10px 0px 20px 0px;
}

    .new-search-wrap .travel-protection-wrap input {
        width: auto;
    }


/* COMMISSION PAYOUT VIA ACH (Automated Clearing House) PAGE
************************************/

.commision-payout-intro {
    padding-bottom: 25px;
}

.commission-cms-wrap {
    padding: 10px 0;
    margin-bottom: 25px;
}

    .commission-cms-wrap p {
        margin-bottom: 10px;
    }

    .commission-cms-wrap .listBlack {
        width: 100%;
        display: inline-block;
        padding: 0 0 0 15px;
    }

        .commission-cms-wrap .listBlack li {
            padding-bottom: 2px;
        }

.sign-up-agency-form-wrap p {
    margin-bottom: 10px;
    padding-bottom: 10px;
}

.account-type input {
    margin: 4px 4px 0px 0;
}

.account-type td {
    width: 80px;
    padding-top: 4px;
}

.account-type tr,
.account-type label {
    display: inline;
}

.check-details-info {
    border-top: 1px solid #d3d3d3;
    border-bottom: 1px solid #d3d3d3;
    padding: 30px 0px;
    margin: 10px 0px 20px 0;
}

.check-details-form,
.check-diagram-wrap {
    width: 50%;
    display: inline-block;
}

.check-diagram-wrap {
    float: right;
    text-align: center;
}

    .check-diagram-wrap ul {
        list-style-type: none;
        font-size: 1rem;
    }

        .check-diagram-wrap ul li {
            display: inline-flex;
            flex-flow: row wrap;
            float: left;
            text-align: center;
            border: 1px solid #ff7a1e;
            width: 32%;
            margin-right: 1%;
            padding: 5px;
        }

.agency-account-number label,
.agency-routing-number label,
.agency-email-address label {
    display: block;
}

.agency-account-number,
.agency-routing-number,
.affiliate-sign-up-form {
    margin: 10px 4.5% 15px 0;
    width: 44%;
    display: inline-block;
}

.agency-email-address {
    width: 93%;
}

    .agency-account-number input,
    .agency-routing-number input,
    .agency-email-address input,
    .affiliate-sign-up-form input,
    .affiliate-sign-up-form select {
        width: 100%;
    }

.check-diagram {
    width: 320px;
    margin: 0 auto;
}

.commission-payout-wrap .terms-conditions-checkout,
.agent-registration-wrap .terms-conditions-checkout {
    border: 1px solid #d3d3d3;
    border-right: none;
    padding: 10px;
    height: 300px;
    overflow-y: scroll;
}

.commission-payouts-button-wrap {
    text-align: right;
}

.sign-up-agency-form-wrap h2 {
    border: none;
    padding: 0;
    margin: 0;
}


@media (max-width: 767px) {

    .check-diagram-wrap {
        width: 100%;
    }

    .check-details-form {
        width: 100%;
        margin-bottom: 20px;
    }
}

@media (max-width: 425px) {
    .agency-account-number,
    .agency-routing-number,
    .agency-email-address {
        width: 100%;
    }
}

/* ACH ADVISEMENTS PAGE /  PAYMENT DUE NOTICES TABLES
************************************/

.ach-advisements-wrap p {
    padding-bottom: 10px;
}

.ach-advisements-wrap fieldset {
    margin: 10px 5% 15px 0;
    width: 27%;
    float: left;
    display: inline-block;
    min-width: 270px;
}

    .ach-advisements-wrap fieldset input {
        width: 100%;
    }

.ach-advisements-button-wrap {
    padding: 5px 0px 20px 0;
    clear: both;
}

.current-travel-notices,
.overdue-travel-notices,
.post-travel-notices {
    padding: 10px 0;
}

.ach-tables {
    width: 100%;
    max-width: 100%;
    margin: 10px 0;
    border-left: 1px solid #d3d3d3;
    border-right: 1px solid #d3d3d3;
}

.ach-tables-notices {
    width: 100%;
    max-width: 100%;
    margin: 10px 0;
}

    .ach-tables-notices th,
    .ach-tables-notices td {
        border: 1px solid #d3d3d3;
    }

    .ach-tables-notices td {
        padding: 5px;
    }

.current-balance-mobile-label {
    display: none;
}

.ach-tables th,
.ach-tables-notices th {
    padding: 5px;
    background-color: #f2f2f2;
}

.ach-table-first-column {
    border-left: 1px solid #d3d3d3;
}

.ach-table-last-column {
    border-right: 1px solid #d3d3d3;
}

.ach-tables tbody {
    border-bottom: 1px solid #d3d3d3;
}

.ach-tables td {
    padding: 5px;
    background-color: #fff;
}

.ach-tables tr {
    border-top: 1px solid #d3d3d3;
}

.ach-extra-details-table {
    margin: 0 !important;
    font-size: 1.2rem;
}

    .ach-extra-details-table td,
    .ach-extra-details-table th {
        border-bottom: 1px solid #d3d3d3;
    }

    .ach-extra-details-table th {
        border-top: 1px solid #d3d3d3;
        background: rgba(242, 242, 242, 0.4);
    }

.extra-details-wrap {
    margin: 0px 5px 10px 50px;
}

.ach-extra-date-row {
    padding: 0 !important;
}

.ach-details-table-wrap {
    border: none !important;
}

.ach-extra-details-panel {
    width: 100px;
}


@media(max-width: 767px) {

    .payment-due-notices-wrap .current-balance-mobile-label,
    .ach-advisements-wrap {
        display: block;
    }

    .ach-extra-details-table th,
    .ach-tables-notices th {
        display: none;
    }

    .ach-extra-details-table td,
    .ach-tables-notices td {
        display: inline-block;
        width: 50%;
        border: none;
        padding: 5px 3px 3px 3px;
        background: #fff;
        font-size: 1.3rem;
        float: left;
    }

    .ach-extra-date-row {
        width: 100% !important;
    }

    .ach-extra-details-table,
    .ach-tables-notices {
        border: none !important;
    }


        .ach-extra-details-table tr,
        .ach-tables-notices tr {
            border-bottom: 1px solid #d3d3d3;
        }

    .extra-details-wrap {
        margin: 0px 5px 10px 5px;
    }
}

/* Modification Availability
************************************/

.active-party strong {
    display: block;
}

.discard-modifications {
    vertical-align: top;
}

.multi-party-traveler span {
    display: block;
}

.BASE-NAV {
    margin-bottom: 20px;
    border-bottom: solid 1px #243a4f;
}

.res-party-nav {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
}

    .res-party-nav li {
        -webkit-flex: 1;
        -ms-flex: 1;
        flex: 1;
        display: inline-block;
        position: relative;
        border: 1px solid #d3d3d3;
        border-bottom: 0;
        border-right-width: 0;
        text-align: center;
        border-radius: 3px 3px 0 0;
        background-color: #fff;
        max-width: 150px;
        min-width: 120px;
        margin-bottom: 6px;
        padding: 4px 2px 0px;
    }

        .res-party-nav li.multi-party-active,
        .res-party-nav li:only-child {
            background: #fff;
            border: 1px solid #243a4f;
            border-bottom: solid 1px #fff;
            margin-bottom: -1px;
        }

        .res-party-nav li:last-child {
            border-right-width: 1px;
        }

        .res-party-nav li:only-child {
            -webkit-flex: none;
            -ms-flex: none;
            flex: none;
            min-width: 20%;
            padding: 5px;
        }

        .res-party-nav li a {
            display: block;
            font-size: 1.1rem;
            overflow: hidden;
            text-overflow: ellipsis;
        }

nav.BASE-NAV + div.active-summary-panel-header {
    margin-top: 0;
    border-color: #243a4f;
}


.multi-party-summary-nav {
    border-top: solid 1px #d3d3d3;
    padding-top: 10px;
    margin-top: 10px;
    margin-bottom: 20px;
}

    .multi-party-summary-nav li {
        margin-right: 20px;
        list-style-type: none;
        float: left;
        display: inline-block;
    }

.multi-party-summary-confirm-traveler-info {
    width: 100%;
    float: left;
}

.modify-summary-wrap {
    margin-top: 10px;
}

    .modify-summary-wrap strong {
        margin-top: 0px;
        display: block;
    }

    .modify-summary-wrap i {
        color: #000;
    }

.checkout-modify-h1 {
    display: inline;
}

@media (max-width:1050px) {
    .discard-modifications {
        margin-bottom: 10px;
    }

    .inactive-header-btn-continue-wrap a,
    .inactive-header-btn-continue-wrap input {
        width: 100%;
    }
}

/** Anchor Store Base Styles **/

#restoolOnSale .btnSearch {
    background: url("https://trisept.widen.net/content/ebheggpd7k/gif/TRI_IMG_BTN_vaxBookNow.gif") no-repeat top;
    width: 94px;
    height: 23px;
    border: none;
    margin-top: 0px;
    cursor: pointer;
}

.restool-wrap .anchor-break {
    display: none;
    margin-bottom: 0 !important;
}

/***** ANCHOR HEADER STYLES ******/

.vaxbar-wrap {
    width: 100%;
    background: #efefef;
    border-bottom: 7px solid #035F84;
}

.vaxbar-logo-link {
    float: left;
    height: 60px;
}

    .vaxbar-logo-link img {
        height: 100%;
        width: auto;
    }

.vaxbar-navigation {
    text-align: right;
    vertical-align: middle;
    padding: 10px 0;
}

    .vaxbar-navigation a.vaxbar-nav-link {
        font-size: 14px;
        color: #333333;
        margin-right: 14px;
        text-decoration: underline;
    }

    .vaxbar-navigation a:hover {
        text-decoration: none;
    }


/***** ANCHOR AFFILIATE PROGRAM SIGN UP FORM ******/

.affiliate-signup-wrap {
    padding: 10px;
}

.affiliate-signup-intro {
    margin: 10px 0;
}

.affiliate-textbox-wrap {
    margin-bottom: 30px;
}

.affiliate-signup-wrap h2 {
    border-bottom: 1px solid #d3d3d3;
}

.affiliate-button-form-wrap {
    float: right;
    margin: 10px 0 20px 0;
}

.affiliate-clear-form {
    margin-right: 5px;
}

@media (max-width: 580px) {
    .affiliate-sign-up-form,
    .affiliate-textbox-wrap textarea {
        width: 100%;
        max-width: 100%;
    }
}

/* DOB Dropdown Styles
***************************************/
.date-dropdown {
    position: relative;
    width: 33% !important;
    min-width: 275px;
    clear: both;
}

    .date-dropdown select {
        width: auto !important;
        padding: 0 15px 0 0;
        margin: 0 10px 0 0;
    }

    .date-dropdown .ajax__validatorcallout_popup_table {
        left: 245px !important;
    }

@media (max-width: 767px) {
    .date-dropdown .ajax__validatorcallout_popup_table {
        top: auto !important;
        left: auto !important;
    }

    .date-dropdown .ajax__validatorcallout_callout_arrow_cell_reverse,
    .date-dropdown .ajax__validatorcallout_callout_arrow_cell {
        display: none;
    }
}



/* Groups Request
***************************************/

.group-vacations-wrap {
    background-color: #fff;
}

.group-vacations-form {
    padding-top: 20px;
    padding-bottom: 200px;
    max-width: 615px
}

    .group-vacations-form label {
        display: inline-block;
        width: 125px;
    }

    .group-vacations-form > div {
        display: inline-block;
        margin-bottom: 5px;
        margin-right: 13%;
    }

        .group-vacations-form > div:nth-child(even),
        .group-special-requests {
            margin-right: 0;
        }

.group-special-requests {
    display: block;
    width: 100%;
}

    .group-special-requests textarea {
        width: 100%;
    }

.group-vacations-form .button {
    float: right;
}


@media (max-width: 639px) {
    .group-vacations-form > div {
        display: block;
        margin-right: 0;
    }

    .group-vacations-form input[type="text"] {
        width: 185px;
    }
}



/* Bonus Cash 
***************************************/

.bonus-cash-wrap {
    width: 100%;
}

.bonus-cash-registration-link {
    padding-right: 10px;
}

.agency-owner-input-wrap,
.owner-declaration-wrap,
.agency-information-wrap {
    border-bottom: 1px solid #dedede;
    margin: 10px 0px 0px;
    padding: 10px 0px;
    float: left;
    width: 100%;
}

.agency-information-list li {
    padding-bottom: 4px;
    list-style-type: none;
}

.agency-information-list strong {
    margin-right: 3px;
}

.agent-information-inputs-wrap {
    margin-top: 20px;
    float: left;
    width: 100%;
}

    .agent-information-inputs-wrap > div,
    .bc-agent-allusernames > div,
    .bc-email-wrap > div,
    .bc-agent-address > div {
        min-width: 275px;
        width: 28%;
        margin-right: 5%;
        display: inline-block;
    }

    .agent-information-inputs-wrap input,
    .agent-information-inputs-wrap select {
        border: 1px solid #aaa;
        height: 30px;
        width: 100%;
        margin-bottom: 10px;
    }


    .agent-information-inputs-wrap .bc-mail-card,
    .agent-information-inputs-wrap .bc-agent-address {
        width: 100%;
    }

        .agent-information-inputs-wrap .bc-mail-card input,
        .agency-owner-input-wrap input,
        .owner-declaration-wrap input {
            display: inline-block;
            height: inherit;
            width: auto;
            margin-right: 3px;
        }

    .agent-information-inputs-wrap .bc-agent-allusernames,
    .agent-information-inputs-wrap .bc-email-wrap {
        width: 100%;
    }

.bc-mail-card .radio-label {
    display: block;
    margin: 10px 0px;
}

.agent-information-inputs-wrap .bc-button-wrap {
    float: right;
}

.owner-declaration-wrap p {
    padding-bottom: 5px;
}

.agent-information-inputs-wrap label small {
    display: block;
}

@media (max-width: 979px) {
    .agent-information-inputs-wrap .bc-button-wrap {
        float: left;
    }
}


/* TRIP BOOKMARK
***************************************/

.trip-bookmark-supplier fieldset {
    margin: 10px 5% 15px 0;
    width: 27%;
    display: inline-block;
    min-width: 270px;
}

.trip-bookmark-error {
    margin-top: 10px;
}

.specific-error-wrap {
    float: none;
}

.tripbookmark-specific-error {
    border: 1px solid #cc0000;
    border-radius: 6px;
    color: #cc0000;
    margin-bottom: 10px;
    padding: 5px 10px 10px 10px;
    line-height: 1;
}

    .tripbookmark-specific-error span {
        font-size: 2.1rem;
    }

#featuresInActive .specific-error-wrap {
    clear: both;
}

#featuresInActive .tripbookmark-specific-error {
    margin-left: 0;
    margin-right: 0;
}

#featuresInActive .specific-error-wrap::before {
    content: "";
    display: block;
    height: 1px;
}

.tripbookmark-page-error {
    background: #fff;
    border: 2px solid #cc0000;
    border-radius: 6px;
    color: #cc0000;
    font-size: 20px;
    margin-bottom: 20px;
    padding: 10px;
    text-align: center;
}


/* trip bookmark table
***************************************/

.retrieve-tripbookmark-wrap table.dataTable {
    margin: 0 auto 15px;
    clear: both;
}

.trip-bookmark-table th {
    padding: 5px 6px 5px 17px;
    background-color: #f2f2f2;
    border: 1px solid #d3d3d3;
    width: 22%;
}

.trip-bookmark-table td {
    border: solid 1px #ddd;
}

.retrieve-tripbookmark-wrap table.dataTable td {
    padding: 5px;
}

    .retrieve-tripbookmark-wrap table.dataTable td.center,
    .retrieve-tripbookmark-wrap table.dataTable td.dataTables_empty {
        text-align: center;
    }

.retrieve-tripbookmark-wrap .dataTables_length {
    text-align: right;
    margin-bottom: 10px;
}

.retrieve-tripbookmark-wrap .dataTables_paginate {
    text-align: right;
}

    .retrieve-tripbookmark-wrap .dataTables_paginate a {
        margin: 0 5px;
    }

        .retrieve-tripbookmark-wrap .dataTables_paginate a.current,
        .retrieve-tripbookmark-wrap .dataTables_paginate a.disabled {
            margin: 0 5px;
            text-decoration: none;
            cursor: default;
            color: #000;
        }

.dataTables_filter {
    float: right;
    text-align: right;
}

.dataTables_info {
    clear: both;
    float: left;
}

.trip-bookmark-table .sorting,
.manage-users-table .sorting {
    background: url('https://trisept.widen.net/content/bebk3yfnpz/png/TRI_ICON_NAV_sort_both.png') no-repeat left;
    background-color: #f2f2f2;
}

.trip-bookmark-table .sorting_asc,
.manage-users-table .sorting_asc {
    background: url('https://trisept.widen.net/content/an9bm0krc7/png/TRI_ICON_NAV_sort_asc.png') no-repeat left;
    background-color: #f2f2f2;
}

.trip-bookmark-table .sorting_desc,
.manage-users-table .sorting_desc {
    background: url('https://trisept.widen.net/content/x4mnahoupc/png/TRI_ICON_NAV_sort_desc.png') no-repeat left;
    background-color: #f2f2f2;
}

.retrieve-tripbookmark-wrap table.dataTable thead th {
    cursor: pointer;
}

.retrieve-tripbookmark-wrap table.dataTable th.sorting_disabled {
    cursor: default;
}

.trip-bookmark-mobile-label {
    display: none;
}

.tripbookmark-tooltip {
    border-bottom: 1px dotted;
    cursor: help !important;
    color: #0E589F;
    width: 30px;
    background: transparent;
    text-decoration: none;
}

.tripbookmark-destinations-header {
    width: 150px !important;
}

@media (max-width: 899px) {
    .trip-bookmark-table th {
        display: none;
    }

    .trip-bookmark-mobile-label {
        display: block;
    }

    .trip-bookmark-table td {
        display: inline-block;
        width: 50%;
        border: none;
        padding: 5px 3px 3px 3px;
        float: left;
    }
}


/******** TRIP BOOKMARK RESTOOL***********/

.trip-bookmark-restool {
    padding: 20px;
    max-width: 380px;
    border: 1px solid #d3d3d3;
}

    .trip-bookmark-restool input[type="text"] {
        width: 100%;
    }

    .trip-bookmark-restool label,
    .trip-bookmark-rooms,
    .trip-bookmark-child-age {
        display: block;
        font-weight: bold;
    }

    .trip-bookmark-restool label,
    .trip-bookmark-rooms,
    .trip-bookmark-dest,
    .trip-bookmark-vendor,
    .trip-bookmark-depart,
    .trip-bookmark-return,
    .trip-bookmark-origin,
    .trip-bookmark-child-age,
    .trip-bookmark-book-by {
        margin-top: 10px;
    }

    .trip-bookmark-restool .button-large {
        width: 100%;
    }

.trip-bookmark-rooms-wrap {
    padding-bottom: 5px;
}

.trip-bookmark-rooms {
    border-bottom: 1px dashed #aaa;
}

.trip-bookmark-num-adults,
.trip-bookmark-num-child {
    display: inline-block;
    width: 100px;
}

    .trip-bookmark-num-adults select,
    .trip-bookmark-num-child select,
    .trip-bookmark-room-num-wrap select {
        width: 80px
    }

.trip-bookmark-child-age span {
    font-size: 11px;
    display: block;
}

.trip-bookmark-each-child
{
    display: inline-block;
    width: 57px;
}

.trip-bookmark-each-child select {
    width: 50px;
}

.trip-bookmark-num-adults label,
.trip-bookmark-num-child label 
{
    font-weight: normal;
}

.trip-bookmark-infant
{
    padding-top: 15px;
}

.trip-bookmark-submit-wrap {
    padding-top: 20px;
}

.tripbookmark-error {
    border-radius: 3px;
    margin: 10px 0;
    padding: 2%;
    background-color: #fcfcfc;
    border: 1px solid #f2f2f2;
    color: #d90707;
}

.trip-bookmark-itinerary-wrap {
    padding: 10px 0px;
}

    .trip-bookmark-itinerary-wrap label {
        display: block;
    }

    .trip-bookmark-itinerary-wrap input {
        width: 100%;
        margin-bottom: 3px;
    }

@media (max-width: 899px) {
    .trip-bookmark-restool,
    .trip-bookmark-main {
        float: none;
    }

    .trip-bookmark-main {
        width: 100%
    }
}

/* Res Services Styles
************************************/

.res-services-wrap {
    background-color: #fff;
    padding: 10px 10px 30px 10px;
    min-width: 500px;
}

.res-services-content li {
    list-style: none;
}

.res-services-content ul {
    margin: 18px 0;
}

.res-services-wrap .on-request-vendor input[type="text"] {
    width: 185px;
}

.dataTables_info {
    clear: both;
    float: left;
}

.res-services-wrap .dataTables_paginate {
    text-align: right;
}

    .res-services-wrap .dataTables_paginate a {
        margin-left: 5px;
    }

.res-services-wrap .calendar-icon-wrap .dateField {
    width: 90px;
}

.res-services-wrap .ui-datepicker-trigger {
    display: inline-block;
    vertical-align: middle;
}



/* On Request Styles
************************************/

.on-request-restool {
    padding: 5px 0px 15px;
    display: flex;
    flex-flow: row wrap;
}

    .on-request-restool select {
        width: 185px;
    }

.on-request-dates input {
    float: left;
    margin: 0px 0px 8px 0px;
    width: 175px;
}

.on-req-inputs-wrap {
    clear: both;
}

    .on-req-inputs-wrap .ui-datepicker-trigger {
        top: 21px;
        right: -6px;
    }

.on-request-restool .on-request-vendor label,
.on-request-restool .on-request-queue label {
    display: inline-block;
    width: 190px;
}

.on-request-vendor,
.on-request-queue,
.on-request-dates {
    display: block;
    width: 100%;
    margin-bottom: 10px;
}

.on-request-dates {
    margin-top: 10px;
}

    .on-request-dates fieldset {
        float: left;
        margin-right: 30px;
        position: relative;
    }

    .on-request-dates label {
        float: left;
        margin-right: 3px;
    }

.on-request-table {
    width: 100% !important;
    max-width: 100%;
    margin-bottom: 10px;
    margin-top: 10px;
    font-size: 90%;
}

    .on-request-table th {
        padding: 2px 6px 3px 17px;
        background-color: #f2f2f2;
        border: 1px solid #d3d3d3;
    }

    .on-request-table .on-request-table-column {
        padding: 5px;
        border: 1px solid #d3d3d3;
    }

    .on-request-table .sorting_asc:hover,
    .on-request-table .sorting_desc:hover,
    .on-request-table .sorting:hover {
        cursor: pointer;
    }

.on-request-mobile-table {
    display: none;
}


@media(max-width: 915px) {
    .on-request-table th {
        display: none;
    }

    .on-request-table .on-request-table-column {
        display: inline-block;
        width: 50%;
        padding: 5px;
        font-size: 1.2rem;
        float: left;
        border: none;
    }

    .on-request-mobile-table {
        display: block;
    }

    .on-request-table tr.odd {
        background-color: #f2f2f2;
    }

    .on-request-table tr.even,
    .on-request-table tr.even td.sorting_1 {
        background-color: #fff;
    }
}

@media(max-width: 565px) {

    .on-request-restool
    .on-request-vendor label,
    .on-request-restool .on-request-queue label {
        padding: 10px 10px 2px 0px;
    }

    .on-req-inputs-wrap {
        float: left;
        display: block;
        width: 100%;
    }

    .on-request-dates input {
        width: 100%;
    }
}

@media(max-width: 420px) {
    #groupFlightInfoTable .edit-flight-information {
        display: block;
    }

    .on-request-table .on-request-table-inputs {
        width: 100%;
    }
}

.wider-display {
    vertical-align: middle;
    width: auto;
}

.group-flight-information-wrap fieldset {
    /* width: 19%;*/
    padding: 2px;
    float: left;
    position: relative;
    display: inline-block;
}

.debug-info {
    display: none !important;
}

.debug-info-large {
    width: 100% !important;
}

.promo-avail-info-toggle-wrap {
    margin-bottom: 10px;
}

.hotel-source-info {
    margin-top: 10px;
}

    .hotel-source-info dt {
        clear: both;
    }

    .hotel-source-info dt,
    .hotel-source-info dd {
        float: left;
        margin-right: 2%;
    }

    .hotel-source-info dt:last-of-type, .hotel-source-info dd:last-of-type {
        margin-bottom: 10px;
    }

.avail-grid-table-wrap > .promo-wrap {
    width: 75%;
    float: left;
}

.toggle-debug-button {
    float: right;
}

@media (max-width:1000px) {
    .avail-grid-table-wrap > .promo-wrap {
        width: 69%;
    }
}

/* ADA Accessibility Statements
************************************/

.ada-statement-wrap p,
.ada-statement-wrap ul {
    margin-bottom: 15px;
}

.ada-statement-wrap ul {
    padding-left: 15px;
}

.SKIP-WRAP a, .ada-message-wrap a {
    background-color: #666;
    border-radius: 0 0 3px 3px;
    color: #fff;
    left: 5px;
    padding: 6px;
    position: absolute;
    top: -50px;
    transition: top 1s ease-out 0s, background 1s linear 0s;
    z-index: 100;
}

/* ADA Accessibility Statements
************************************/

.ada-statement-wrap p,
.ada-statement-wrap ul {
    margin-bottom: 15px;
}

.ada-statement-wrap ul {
    padding-left: 15px;
}

/*Enhance Loyalty Points Display - Badge look and feel*/

.reward-points-wrap {
    display: flex;
    flex-direction: row;
    padding: 8px 8px 4px 8px;
    border: 1px solid #dedede;
    border-radius: 3px;
    background-color: #f2f2f2;
    max-width: 263px;
    min-width: 130px;
}

.reward-logo .reward-img {
    background: url("https://trisept.widen.net/content/iypkcuill5/png/TRI_LOGO_ANCILLARY_rewards-logo.png") no-repeat top left;
    background-size: contain;
    width: 80px;
    height: 25px;
}

.reward-points {
    font-size: 1.2rem;
    color: #304cb2;
    font-weight: bold;
    margin: 0;
    width: 100%;
}

    .reward-points p {
        text-align: right;
        padding: 0;
        line-height: 1.4rem;
    }

.reward-per-member {
    font-size: 1rem;
}

.price-stamp-wrap .reward-points-wrap {
    margin: 10px 0 5px auto;
}

.avail-grid-table .reward-points-wrap {
    flex-direction: column;
    width: 130px;
    margin: 5px 0 0 auto;
}

.hp-price-stamp-wrap .reward-points-wrap {
    background-color: #fff;
}

.fare-list-table .reward-points-wrap {
    margin-left: auto;
    max-width: 210px;
}

.checkout-wrap .reward-points-wrap {
    margin-left: auto;
}

.reward-points-incremental-wrap {
    display: inline-block;
    margin: 10px auto;
    padding: 8px 0;
    border: 1px solid #dedede;
    border-radius: 3px;
    background-color: #ffffff;
    float: left;
}

@media (max-width: 580px) {
    .avail-grid-table .reward-points-wrap {
        flex-direction: row;
        margin: auto;
        width: auto;
    }

    .fare-list-table .reward-points-wrap {
        margin: auto;
    }
}

.non-refundable-hotel-warn-btn-wrap {
    text-align: right;
}

/* Gift Cards 
***************************************/

.gc-values-list {
    list-style: none;
    margin: 10px 0;
}

.gc-top-wrap,
.gc-personalize-wrap,
.gc-ship-wrap,
.gc-billing-wrap,
.gc-summary-wrap {
    border: solid 10px #f2f2f2;
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-top: 0;
    border-left: 0;
    border-right: 0;
    width: 100%;
}

.gift-cards-wrap fieldset fieldset legend {
    font-weight: bold;
    font-size: 1.6rem;
}

.gc-personalize-wrap {
    border-top: solid 10px #f2f2f2;
    margin-top: 20px;
    padding-top: 20px;
}

.gift-cards-wrap .gc-personalize-wrap .h2 {
    margin-bottom: 0;
}

.gc-personalize-descr {
    margin-bottom: 20px;
}

.gc-personalize-to,
.gc-personalize-from {
    width: 49%;
    float: left;
}

.gc-personalize-to {
    margin-right: 2%;
}

.gc-personalize-message {
    margin-top: 20px;
}

.gc-personalize-to input,
.gc-personalize-from input {
    width: 100%;
}

.requiredField {
    margin-bottom: 20px;
}

.gift-cards-wrap label {
    display: block;
}

.same-as-shipping-wrap {
    padding-bottom: 10px;
}

    .same-as-shipping-wrap label {
        display: inline;
    }

.gc-shipping-method-wrap {
    border-bottom: solid 1px #f2f2f2;
    padding-bottom: 10px;
    margin-bottom: 20px;
}

.gift-cards-wrap h2,
.gift-cards-wrap .h2 {
    margin: 0 0 20px 0;
    border-bottom: solid 3px #f2f2f2;
}

.gift-cards-wrap h3 {
    font-size: 1.6rem;
    margin-bottom: 10px;
}

.gc-credit-card-wrap {
    width: 100%;
    border-bottom: solid 1px #f2f2f2;
    padding-bottom: 10px;
    margin-bottom: 20px;
}

.gift-cards-wrap .gc-credit-card-wrap fieldset legend {
    font-weight: normal;
}

.gc-billing-wrap .gc-field-wrap,
.gc-payment-info-wrap .gc-field-wrap,
.gc-shipping-info-wrap .gc-field-wrap,
.gc-credit-card-wrap .gc-field-wrap,
.gc-general-wrap .gc-field-wrap {
    margin: 0 2% 15px 0;
    width: 20%;
    display: inline-block;
    min-width: 270px;
}

.gc-address1 {
    width: 25% !important;
}

.gc-accent {
    font-weight: bold;
}

.gc-credit-card-wrap .gc-card-type {
    width: 100%;
}

.gc-field-wrap input,
.gc-field-wrap select {
    width: 100%;
}

.gift-cards-wrap textarea {
    width: 100%;
    height: 65px;
    padding: 5px;
    border-radius: 3px;
    border: 1px solid #aaa;
}

.gift-cards-wrap .security-code-label {
    display: inline-block;
}


/*** amount section ***/

.gc-amount-row {
    margin-bottom: 10px;
    max-width: 350px;
}

    .gc-amount-row legend {
        border-top: 1px solid #f2f2f2;
        font-size: 1.8rem;
        font-weight: bold;
        margin: 1em 0 0 0;
        padding: 10px 0 5px;
    }

.gc-amount,
.gc-quantity,
.gc-total {
    font-weight: bold;
    display: inline-block;
    margin-right: 1em;
}

.gc-quantity {
    margin-right: 0;
}

    .gc-quantity select {
        margin-right: 10px;
    }

.gc-amount,
.gc-quantity {
    margin-bottom: 1em;
}

.gc-total {
    margin-right: 10px;
}

#subTotal,
.gc-total {
    font-size: 18px;
    font-weight: bold;
}

#AddCertificate {
    display: block;
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: 1px solid #f2f2f2;
}


/*** shipping section ***/

.gc-shipping-info-wrap {
    padding-top: 0;
}

.countryValue {
    padding-right: 5px;
}

#exmFalse input, #exmTrue input {
    position: absolute;
    margin-top: 2px;
}

#exmTrue label, #exmFalse label {
    margin: 0 0 0 20px;
    vertical-align: top;
    font-weight: normal;
}


/*** billing section ***/

.gc-card-month-wrap,
.gc-card-year-wrap {
    display: inline-block;
}

.gift-cards-wrap .gc-card-expiration legend {
    padding-bottom: 0;
    font-size: 1.4rem;
}

.gc-card-expiration label {
    display: inline-block;
}

.gc-credit-card-wrap .gc-field-wrap {
    min-width: 230px;
    width: 20%;
    margin-right: 4%;
}

.paymentTypeInput {
    width: 100%;
}


/*** summary section***/

.gc-summary-table {
    width: 100%;
    margin-bottom: 20px;
    border-bottom: solid 3px #f2f2f2;
}

    .gc-summary-table th,
    .gc-summary-table td {
        width: 50%;
        border-bottom: dashed 1px #dedede;
        padding: 8px 3px;
    }

    .gc-summary-table td {
        text-align: right;
    }

.gc-captcha {
    width: 100%;
    height: 345px;
}


/*** gift card confirmation page ***/

.gc-confirm h1 {
    font-size: 1.8rem;
    margin-bottom: 20px;
}

.gc-confirm h2 {
    font-size: 1.6rem;
    margin-bottom: 0;
    border-bottom: 0;
}

.recap {
    padding: 0 0 20px 30px;
}

/*Loyalty promo modal*/

.loyalty-promo-code-offer {
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #ccc;
}

    .loyalty-promo-code-offer::after {
        content: "";
        clear: both;
        display: table;
    }

    .loyalty-promo-code-offer:last-child {
        border-bottom: 0px solid #ccc;
    }

.loyalty-promo-code-offer-card {
    float: left;
    margin: 0 10px 10px 0;
    width: 80px;
}

.promo-code-btn {
    float: right;
}

.loyalty-point-logo {
    height: 30px;
    width: 30px;
}

.loyalty-point-logo-dm {
    background: url("https://trisept.widen.net/content/ywjpoexjb3/svg/AME_ICON_NAV_Dream_Rewards_icon.svg") no-repeat;
    background-size: contain;
    margin: 0 5px 5px 0;
}

.point-deduction-label {
    font-size: 2.0rem;
    display: flex;
    align-items: center;
}

.point-deduction-msg {
    margin-bottom: 10px;
}

.grid-header-margin-10-px {
    margin: 10px 0px 10px 12px;
}

.edit-flight-information {
    margin: 4px 0;
}

.flight-num-input {
    width: 95px;
}

.flight-date-input {
    width: 100px;
}

.flight-carrier-dropdown {
    min-width: 200px;
}

.flight-time-dropdowns-fieldset {
   white-space: nowrap;
}

.confirm-button-modal-pop-up {
    text-align: right;
}

@media ( max-width: 860px) {
    .confirm-button-modal-pop-up {
        text-align: center;
    }
}

.selectAllCheckbox-edit-button {
    display: flex;
    height: 30px;
}

.selectAllCheckboxesLabel {
    margin-top: 4px;
}

.edit-flight-information-top {
    margin-left: 4px;
}

.selectAllCheckbox-input {
    margin-top: initial;
}