@font-face {
    font-family: 'avenir-next-regular-400';
    src: url('/fonts/AvenirNextLTPro/Regular.ttf') format('truetype');
}

@font-face {
    font-family: 'avenir-next-regular-italic-400';
    src: url('/fonts/AvenirNextLTPro/Italic.ttf') format('truetype');
}

@font-face {
    font-family: 'avenir-next-demi-600';
    src: url('/fonts/AvenirNextLTPro/Demi.ttf') format('truetype');
}

@font-face {
    font-family: 'avenir-next-demi-italic-600';
    src: url('/fonts/AvenirNextLTPro/Demi-Italic.ttf') format('truetype');
}

@font-face {
    font-family: 'avenir-next-bold-700';
    src: url('/fonts/AvenirNextLTPro/Bold.ttf') format('truetype');
}

@font-face {
    font-family: 'avenir-next-bold-italic-700';
    src: url('/fonts/AvenirNextLTPro/Bold-Italic.ttf') format('truetype');
}

@font-face {
    font-family: 'avenir-next-heavy-900';
    src: url('/fonts/AvenirNextLTPro/Heavy.ttf') format('truetype');
}

@font-face {
    font-family: 'avenir-next-heavy-italic-900';
    src: url('/fonts/AvenirNextLTPro/Heavy-Italic.ttf') format('truetype');
}

@font-face {
    font-family: 'inter';
    src: url('/fonts/Inter-VariableFont.ttf') format('truetype');
}

/*--------VARIABLES-----------*/
:root {
    /*- --------- colors ----------*/
    --primary: #0368d9;
    --secondary: #162b75;
    --tiertiary: #e5effb;
    --neutral-white: #ffffff;
    --neutral-light: #ededed;
    --neutral-midmedium: #c2c2c2;
    --neutral-medium: #757575;
    --neutral-dark: #222222;
    /*---------- fonts ----------*/
    /*---------- h1 ----------*/
    --headline-ff: 'avenir-next-heavy-900';
    --headline-fi: 'avenir-next-heavy-italic-900';
    --headline-fs: 2.8rem;
    --headline-lh: 3.4rem;
    --headline-fw: 900;
    --headline-ls: .2px;
    /*---------- XXX ----------*/
    --title-1-ff: 'avenir-next-heavy-900';
    --title-1-fi: 'avenir-next-heavy-italic-900';
    --title-1-fs: 2.4rem;
    --title-1-lh: 2.8rem;
    --title-1-fw: 900;
    --title-1-ls: .2px;
    /*---------- XXXX ----------*/
    --title-1-2-fs: 2.0rem;
    /*---------- h2 ----------*/
    --title-2-ff: 'avenir-next-bold-700';
    --title-2-fi: 'avenir-next-bold-italic-700';
    --title-2-fs: 1.6rem;
    --title-2-lh: 2rem;
    --title-2-fw: 700;
    --title-2-ls: .2px;
    /*---------- h3 ----------*/
    --title-3-ff: 'avenir-next-bold-700';
    --title-3-fi: 'avenir-next-bold-italic-700';
    --title-3-fs: 1.6rem;
    --title-3-lh: 2rem;
    --title-3-fw: 700;
    --title-3-ls: .2px;
    /*---------- SUBTITLE ----------*/
    --subtitle-1-ff: 'avenir-next-bold-700';
    --subtitle-1-fi: 'avenir-next-bold-italic-700';
    --subtitle-1-fs: 1.4rem;
    --subtitle-1-lh: 2.4rem;
    --subtitle-1-ls: .25px;
    /*---------- BODY COPY ----------*/
    --display-1-ff: 'avenir-next-regular-400';
    --display-1-fi: 'avenir-next-regular-italic-400';
    --display-1-fs: 1.4rem;
    --display-1-lh: 2.4rem;
    --display-1-ls: .25px;
    /*---------- BODY ACCENT ----------*/
    --display-2-ff: 'avenir-next-demi-600';
    --display-2-fi: 'avenir-next-demi-italic-600';
    --display-2-fs: 1.4rem;
    --display-2-lh: 1.8rem;
    --display-2-ls: .25px;
    /*---------- BODY LINKS ----------*/
    --display-3-ff: 'avenir-next-demi-600';
    --display-3-fi: 'avenir-next-demi-italic-600';
    --display-3-fs: 1.4rem;
    --display-3-lh: 3.2rem;
    --display-3-ls: .25px;
    /*---------- PHONE CALLOUT ----------*/
    --display-4-ff: 'inter';
    --display-4-fs: 2.2rem;
    --display-4-fw: 700;
    --display-4-lh: 3.3rem;
    --display-4-ls: .25px;
    /*---------- DISCLAIMER ----------*/
    --display-5-ff: 'avenir-next-regular-400';
    --display-5-fi: 'avenir-next-regular-italic-400';
    --display-5-fs: 1.2rem;
    --display-5-lh: 2rem;
    --display-5-ls: .25px;
    /*---------- FOOTER LINKS ----------*/
    --display-6-ff: 'avenir-next-regular-400';
    --display-6-fi: 'avenir-next-regular-italic-400';
    --display-6-fs: 1.3rem;
    --display-6-lh: 3.2rem;
    --display-6-ls: .25px;
    /*---------- rows/columns/cards ----------*/
    --row-gap-sm: 2em;
    --row-gap-med: 3em;
    --row-gap-lg: 56px;
    --col-gap-sm: 2em;
    --col-gap-med: 3em;
    --col-gap-lg: 4em;
    --card-padding: 8px;
    --card-img-radius: 22px;
    --card-mid-column-padding: 0 1rem;
    /*- 
       --------- page widths ----------*/
    --full-width: 100%;
    --page-width-full: 1440px;
    --page-width-full-footer: 1392px;
    --page-width-medium: 940px;
    --page-width-narrow: 800px;
    --page-width-responsive: 90%;
    --pw-xl: 1148px;
    --pw-lg: 992px;
    --pw-md: 768px;
    --pw-sm: 576px;
    --pw-sm: 480px;
    --card-mid-column-padding: 0 1rem;
    --section-center: 0 auto;
    --margin-left-auto: auto;
    --margin-section: 20px 0;
    /*- 
       --------- buttons ----------*/
    --button-border: 2px solid;
    --button-border-radius: 24px;
    --button-padding: 3px 32px;
    --button-white-space: nowrap;
    --button-1-ff: 'avenir-next-demi-600';
    --button-1-fs: 1.4rem;
    --button-1-lh: 3.2rem;
    --button-1-ls: .25px;
    --button-1-mt: 32px;
    --button-cursor: pointer;
}



/*--------END VARIABLES-----------*/

html {
    font-size: 62.5%;
}

body,
.modal-text {
    background-color: var(--neutral-white);
    margin: 0;
    padding: 0;
    font-family: var(--display-1-ff);
    font-size: var(--display-1-fs);
    line-height: var(--display-1-lh);
    letter-spacing: var(--display-1-ls);
    color: var(--neutral-dark);
}

.CONTENT-WRAP {
    border: 1px solid var(--neutral-midmedium);
}

.SKIP-WRAP a,
.ada-message-wrap a {
    background-color: var(--secondary);
    border-radius: 0 0 3px 3px;
    color: var(--neutral-white);
    left: 20px;
    padding: 6px 10px;
    position: absolute;
    top: -50px;
    transition: top 1s ease-out 0s, background 1s linear 0s;
    z-index: 100;
    text-decoration: none;
}

    .SKIP-WRAP a:hover,
    .ada-message-wrap a:hover {
        color: var(--neutral-white);
    }

    .SKIP-WRAP a:focus,
    .ada-message-wrap a:focus {
        transition: top 0.1s ease-in 0s, background 0.5s linear 0s;
        top: 0;
    }

a,
span.tooltip,
i.fa-question-circle-o,
button.link,
.ui-widget-content a {
    color: var(--primary);
    text-decoration: none;
}

    a:hover,
    button.link:hover,
    .ui-widget-content a:hover {
        color: var(--primary);
        text-decoration: underline;
    }

    a.button-large, .button-large:enabled, .button-large:disabled {
        padding: 0px 40px !important;
        height: 45px !important;
        line-height: 40px !important;
    }

.is-highlighted {
    background: var(--neutral-light);
}

.SELECTED-COMPONENT {
    background: var(--secondary);
    font-weight: normal;
    font-family: var(--display-2-ff);
}

.ui-widget {
    font-size: inherit !important;
}

.ITCStickyButton {
    z-index: 2;
}

input, input[type=text], input[type=password], input[type=button], select, textarea, button, .ui-widget {
    font-family: var(--display-1-ff) !important;
}

h1,
.h1 {
    font-family: var(--headline-ff) !important;
    font-size: var(--headline-fs);
    font-weight: var(--headline-fw);
    line-height: var(--headline-lh);
    letter-spacing: var(--headline-ls);
    margin: 0 0 16px 0;
}

.h1-italic {
    font-family: var(--headline-fi) !important;
}

h2,
.h2,
h2.expco-trigger-text {
    font-family: var(--title-2-ff) !important;
    font-size: var(--title-2-fs);
    font-weight: var(--title-2-fw);
    line-height: var(--title-2-lh);
    letter-spacing: var(--title-2-ls);
}

.restool-wrap .expco-trigger-text {
    font-size: var(--title-1-2-fs);
    font-weight: var(--title-2-fw);
    font-family: var(--title-2-ff);
}

h2, .h2 {
    border-bottom: 1px solid var(--neutral-midmedium);
}

.h2-italic {
    font-family: var(--title-2-fi) !important;
}

h3,
.h3,
h3 button {
    font-family: var(--title-3-ff) !important;
    font-size: var(--title-3-fs);
    font-weight: var(--title-3-fw);
    line-height: var(--title-3-lh);
    letter-spacing: var(--title-3-ls);
}

.h3-italic {
    font-family: var(--title-3-fi) !important;
}

h4,
#newAccountZone h4 {
    font-family: var(--title-3-ff) !important;
    font-size: var(--title-3-fs);
    font-weight: var(--title-3-fw);
    line-height: var(--title-3-lh);
    letter-spacing: var(--title-3-ls);
}

.hotelSSR h5, .flightSSR h5, .vehicleSSR h5, .featureSSR h5 {
    color: var(--primary);
    font-weight: normal;
}

#registration-tab-container .ui-state-default a.ui-tabs-anchor {
    color: var(--primary);
}

.ui-widget-content {
    color: var(--neutral-dark);
}

/* HEADER STYLES
************************************/

.SITE-WRAP {
    margin-top: 40px;
}

.CONSTRAINT-WRAP {
    max-width: 1280px;
    margin: 0 auto;
    position: relative;
}

/***** NEW HEADER *****/

/*------ AUXILLIARY styles ---*/

.bg-color {
    background-color: var(--neutral-light);
    margin: 0;
    padding: 40px 0 10px 0;
}

.accent {
    font-family: var(--display-2-ff);
}

.phone-callout,
.phone-callout a {
    margin: 0 auto 10px auto;
    width: var(--pw-xl);
    font-family: var(--display-4-ff);
    font-size: var(--display-4-fs);
    font-weight: var(--display-4-fw);
    line-height: var(--display-4-lh);
    letter-spacing: var(--display-4-ls);
    text-align: center;
    color: var(--neutral-dark);
}

/* remember to define focus styles! */
:focus {
    outline: thin dashed var(--primary);
    outline-offset: 2px;
}

header a:focus {
    outline: thin dashed var(--neutral-white);
    outline-offset: 0;
}

footer a:focus,
.hotels-map:focus {
    outline: thin dashed var(--neutral-white);
    outline-offset: 2px;
}

.fp-accordian-title button:focus {
    outline: thin dashed var(--primary);
    outline-offset: -1px;
}

.insurance-selection input:focus {
    outline: thin dashed var(--primary);
    outline-offset: 2px;
}

.galleria-image-nav-left:focus,
.galleria-image-nav-right:focus,
.galleria-thumb-nav-left:focus,
.galleria-thumb-nav-right:focus,
.notouch .galleria-image-nav-left:focus,
.notouch .galleria-image-nav-right:focus,
.notouch .galleria-thumb-nav-left:focus,
.notouch .galleria-thumb-nav-right:focus {
    outline: thin dashed var(--neutral-white);
    opacity: revert;
    outline-offset: -2px;
}

.galleria-thumbnails .galleria-image:focus {
    outline: 1px solid #fece00;
    outline-offset: -1px;
}

header button.link:hover {
    text-underline-offset: 20px;
    text-decoration: underline;
}


header button.link:focus {
    outline: dashed 1px var(--neutral-white);
}

.screen-reader-only {
    position: absolute;
    width: 1px;
    clip: rect(0 0 0 0);
    overflow: hidden;
    white-space: nowrap;
}

/*------ END AUXILLIARY styles ---*/

/*-------MOBILE NAV styles--------*/
.slide-menu-open {
    display: none;
    padding: 5px 9px;
    border-radius: 3px;
    border: 1px solid #fff;
    float: right;
    margin: 8px 5px 0 0;
    background-color: #fff;
}

    .slide-menu-open,
    .slide-menu-open:hover {
        text-decoration: none;
        color: var(--secondary);
    }

        .slide-menu-open:focus {
            outline: thin dashed var(--neutral-white);
            outline-offset: 2px;
        }

.side-menu-wrapper {
    overflow: hidden;
    background: rgba(0,0,0,.95);
    padding: 5px 0 0 20px;
    position: fixed;
    top: 0;
    left: -290px;
    height: 100%;
    z-index: 10000;
    transition: 0.5s;
    width: 285px;
    font-size: 1.4rem;
    display: none;
}

    .side-menu-wrapper > ul {
        list-style: none;
        margin: 60px 0 0 0 !important;
        padding: 0;
        margin: 0;
        overflow-y: auto;
        width: 275px;
        height: 80%;
        text-align: left;
        color: #fff;
    }

        .side-menu-wrapper > ul > li {
            margin: .5rem;
        }

            .side-menu-wrapper > ul > li > a {
                display: inline-block;
                padding: 6px 4px 6px 4px;
                color: #fff;
                transition: 0.3s;
                text-decoration: underline !important;
            }

                .side-menu-wrapper > ul > li > a:hover {
                    color: #fff;
                }

    .side-menu-wrapper li ul {
        font-size: 1.4rem;
        padding-left: 20px;
        padding-bottom: 5px;
        margin-bottom: 40px 0 0 0 !important;
    }

        .side-menu-wrapper li ul li {
            font-size: 1.3rem;
            padding-bottom: 1.1rem;
            list-style: none;
        }

            .side-menu-wrapper li ul li a {
                height: 20px;
                color: #fff;
                text-decoration: underline
            }

    .side-menu-wrapper > button.menu-close {
        padding: 0 6px;
        color: var(--neutral-light);
        background-color: transparent;
        border: 1px solid white;
        display: block;
        margin: 0 20px -20px -20px;
        font-size: 3.5rem;
        line-height: 3.5rem;
        text-decoration: none;
        float: right;
    }

        .side-menu-wrapper > button.menu-close:focus {
            outline: thin dashed var(--neutral-white);
        }

.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;
}

.navbar-menu-section {
    display: block;
    padding-top: 20px;
}

@media (max-width: 1280px) {
    .slide-menu-open {
        display: block;
        position: absolute;
        right: 10px;
        top: 10px;
        font-family: var(--title-2-ff) !important;
        font-size: var(--title-2-fs);
        line-height: var(--title-2-lh);
        letter-spacing: var(--title-2-ls);
    }
}

@media (max-width: 1148px) {
    .side-menu-wrapper {
        display: revert;
    }
}


/*------ END MOBILE NAV styles ---*/
/*------ HEADER styles ---*/
header {
    width: var(--full-width);
    background-color: var(--primary);
    color: var(--neutral-white);
    align-items: center;
    font-family: var(--display-2-ff) !important;
    font-size: var(--display-2-fs) !important;
    letter-spacing: var(--display-2-ls) !important;
}

    header a {
        color: var(--neutral-white);
        text-decoration: none;
    }

        header a:hover {
            text-decoration: underline;
            color: var(--neutral-white);
        }

    header button.link {
        display: flex;
        flex-direction: column;
        background-color: var(--primary);
        color: var(--neutral-white);
        align-items: center;
        font-family: var(--display-2-ff) !important;
        font-size: var(--display-2-fs);
        letter-spacing: var(--display-2-ls);
        height: 63px;
        margin-top: 0;
        padding: 3px 1rem 0 1rem;
        text-decoration: none;
        white-space: nowrap;
        border: 0px solid;
        transition: background var(--transition-timing) var(--transition-timing-function), color var(--transition-timing) var(--transition-timing-function);
        z-index: 1000;
    }

    header button.link {
        color: var(--neutral-white);
    }

        header button.link:hover {
            color: var(--neutral-white);
        }

.header-section {
    width: var(--page-width-full);
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
}

    .header-section span {
        margin: 0;
        border-left: 1px solid var(--neutral-white);
        padding: 0 15px;
    }

    .header-section .login a {
        padding: 0 15px;
    }

    .header-section ul {
        list-style: none;
        display: flex;
        align-items: center;
        margin: 0;
        padding: 0;
    }

        .header-section ul li {
            margin-right: 10px;
        }

            .header-section ul li li {
                margin-right: 0;
            }

.header-subsection {
    display: flex;
    align-content: center;
}

.divider {
    border-top: 1px solid var(--secondary);
    width: var(--full-width);
    height: 1px;
}

.section-padding {
    padding: 10px 0;
}

.login ul {
    list-style: none;
    display: flex;
}

    .login ul li {
        margin-left: 25px;
    }

nav {
    width: var(--pw-xl);
    margin: var(--section-center);
    display: flex;
    justify-content: space-between;
}



.unh-logo {
    height: 100px;
    padding: 15px 0 5px 0;
}

.navbar-menu-section {
    display: block;
    padding-top: 20px;
}

    .navbar-menu-section a {
        display: block;
        padding: 0 1rem;
        text-decoration: none;
        white-space: nowrap;
    }

.navbar-item a:hover {
    border-bottom: 1px solid var(--neutral-white);
}

.navbar-item a:focus {
    outline: dashed 1px var(--neutral-white);
}

.navbar-menu-section a:focus,
.navbar-menu-section button:focus {
    outline-offset: -1px;
}

/* Top-level */
.navbar-item a {
    display: inline-block;
    color: var(--neutral-white);
    background: transparent;
    transition: background var(--transition-timing) var(--transition-timing-function), color var(--transition-timing) var(--transition-timing-function);
}

.navbar-sub {
    background-color: var(--primary);
    padding-top: 40px;
}

    .navbar-sub li a {
        padding: 10px;
    }


        .navbar-sub li a:hover {
            background: var(--secondary);
        }

.navbar-menu-section > li > a:focus {
    outline: dashed 1px var(--neutral-white);
}

ul.navbar-menu-section {
    display: flex;
    align-items: flex-end;
}


/* Nested */
.navbar-menu-section ul {
    position: absolute;
    left: 0;
    top: 100%;
    visibility: hidden;
    opacity: 0;
    transition: visibility 0s var(--transition-timing-function) var(--transition-timing), opacity var(--transition-timing) var(--transition-timing-function);
}


    .navbar-menu-section ul a {
        color: var(--neutral-white);
        text-transform: initial;
        text-decoration: none;
        transition: background var(--transition-timing) var(--transition-timing-function), color var(--transition-timing) var(--transition-timing-function);
    }

    .navbar-menu-section ul::focus {
        background: var(--secondary);
    }

    .navbar-menu-section ul a:hover,
    .navbar-menu-section ul a:focus {
        background: var(--secondary);
        color: var(--neutral-white);
        text-decoration: none !important;
    }

    .navbar-menu-section ul > li > ul {
        left: 100%;
        top: 0;
    }

.navbar-menu-section li {
    position: relative;
    z-index: 999;
    margin-bottom: 0;
}

    /* 
    /* 
    HACK: Prevents box shadow from child dropdowns
    from overlapping its parent dropdown
*/
    .navbar-menu-section li.has-children > a,
    .navbar-menu-section li.no-children > a {
        position: relative;
        padding: 0 10px;
        height: 60px;
    }


        .navbar-menu-section li.no-children > a:hover {
            text-underline-offset: 20px;
            text-decoration: underline;
        }

        .navbar-menu-section li.has-children > a:after {
            position: absolute;
            content: '';
            top: 0;
            right: 0;
            height: 100%;
            width: 1rem;
            background: inherit;
            z-index: 999;
        }
/* ENDHACK */

.navbar-item li:hover a {
}


.navbar-menu-section .navbar-sub.open {
    display: block;
    visibility: visible;
    opacity: 1;
    transition-delay: 0s;
    border-bottom-left-radius: 20px;
    padding-bottom: 20px;
    border-bottom-right-radius: 20px;
}



.mobile-toggle-show {
    display: none;
    position: relative;
}

/*------ END HEADER styles ---*/

.fas {
    font-family: FontAwesome !important;
    font-size: 3rem;
    font-style: normal;
    line-height: 2rem;
}



.content-editor {
    background-color: darkred;
    color: white;
    margin: 0;
    padding: 0;
}

    .content-editor p {
        font-size: 20px;
        font-weight: bold;
        text-align: center;
        padding: 20px 0;
        margin: 0;
    }

/* All */



/*------ FOOTER styles ---*/
footer {
    width: 100%;
    display: flex;
    flex-direction: column;
    background-color: var(--neutral-white);
    padding: 24px 0 0 0;
}

    footer a {
        color: var(--neutral-white);
        text-decoration: none;
    }

        footer a:hover {
            text-decoration: underline;
            color: var(--neutral-white);
        }

.footer {
    background-color: var(--secondary);
    padding: 10px 0 24px 0;
}

footer ul,
footer li {
    list-style: none;
}

.footer-section {
    width: var(--page-width-full-footer);
    margin: 10px auto;
    display: flex;
    justify-content: space-between;
}

    .footer-section ul {
        display: flex;
        align-content: flex-start;
        flex-wrap: wrap;
    }

        .footer-section ul li {
            padding: 0 .5em;
        }


ul.social-icons {
    display: flex;
    margin: 14px 0;
}

    ul.social-icons a {
        display: block;
    }

        ul.social-icons a img {
            width: 24px;
            display: block;
        }

.footer-subsection {
    display: flex;
}

    .footer-subsection p {
        margin: 5px 0 0 0;
        font-family: var(--display-5-ff);
        font-size: var(--display-5-fs);
        line-height: var(--display-5-lh);
        letter-spacing: var(--display-5-ls);
        color: var(--neutral-white);
    }

.footer-links {
    margin-top: 2px;
}

    .footer-links a {
        font-size: var(--display-6-fs);
    }

.trisept-logo {
    max-width: 210px;
}

.uprv-logo {
    max-width: 210px;
}

.top-border {
    border-top: 1px solid var(--neutral-light);
    padding-top: 10px;
}

.vertical {
    flex-direction: column;
}

.center {
    align-items: center;
}

.ot-privacy-link {
    display: flex;
    align-items: center;
    min-height: 25px;
}

.ot-privacy-icon {
    display: none;
    margin: 0 5px 0 0;
    width: 36px;
}

    .ot-privacy-icon.us {
        display: initial;
    }



footer #ot-sdk-btn.ot-sdk-show-settings,
footer #ot-sdk-btn.optanon-show-settings {
    color: var(--neutral-white) !important;
    border: 0px solid !important;
    height: auto;
    white-space: normal;
    word-wrap: break-word;
    padding: 0px !important;
    background-color: transparent !important;
    font-family: var(--display-6-ff);
    font-size: var(--display-6-fs);
    letter-spacing: var(--display-6-ls);
}

    footer #ot-sdk-btn.ot-sdk-show-settings:hover,
    footer #ot-sdk-btn.optanon-show-settings:hover {
        text-decoration: underline !important;
        background-color: transparent !important
    }

    footer #ot-sdk-btn.ot-sdk-show-settings:focus,
    footer #ot-sdk-btn.optanon-show-settings:focus {
        outline: thin dashed var(--neutral-white);
    }

.alert-01-footer {
    padding: 50px 0;
}

    .alert-01-footer a {
        display: block;
        max-width: 900px;
        margin: 0 auto;
    }

        .alert-01-footer a:focus {
            outline: thin dashed var(--primary);
        }

    .alert-01-footer img {
        display: block;
        width: 100%;
    }

.alert-01-footer-mobile {
    display: none;
    padding: 0 0 45px 0;
}

    .alert-01-footer-mobile a {
        display: block;
        max-width: 336px;
        margin: 0 auto;
    }

        .alert-01-footer-mobile a:focus {
            outline: thin dashed var(--primary);
        }

    .alert-01-footer-mobile img {
        display: block;
        width: 100%;
    }
/*------ END FOOTER styles ---*/


/* BUTTON STYLES
************************************/


a.button,
input.button,
.button:enabled {
    border: var(--button-border) var(--primary) !important;
    background-color: var(--primary) !important;
    border-radius: var(--button-border-radius) !important;
    padding: var(--button-padding) !important;
    color: var(--neutral-white);
    white-space: var(--button-white-space);
    font-family: var(--button-1-ff) !important;
    font-size: var(--button-1-fs);
    line-height: var(--button-1-lh);
    letter-spacing: var(--button-1-ls);
    cursor: var(--button-cursor);
    text-decoration: none;
    height: revert !important;
}

    a.button:hover,
    .button:hover:enabled,
    .button:hover {
        background-color: var(--secondary) !important;
        border-color: var(--secondary) !important;
    }

    a.button:focus,
    .button:focus:enabled,
    .button:focus,
    input[type="submit"].button:focus,
    input[type="button"].button:focus,
    input[type="button"].cart-remove-button:focus,
    input[type="submit"].cart-remove-button:focus {
        outline-offset: 2px;
    }

.PRICE-SELECT-WRAP .button,
.cart-modify-button,
.cart-remove-feature {
    text-transform: revert;
}


/* MINICART STYLES
************************************/

.mc-v1-wrap {
    background: var(--neutral-white);
}

.v1-minicart-title-wrap i {
    display: none;
}



/* LEFT GUTTER STYLES
************************************/

.customer-care:first-child {
    margin-top: 8px;
}

.cart-accordian-title a {
    color: var(--primary);
}

.ui-rangeSlider-bar {
    color: var(--primary) !important;
}



/* WAITSCREEN STYLES
************************************/

#fakeModalParentDiv.ext-fake-modal {
    padding-top: 200px;
    max-width: 569px;
}

.waitscreen-modal-wrap,
.plwait-modal-wrap {
    background: url("https://trisept.widen.net/content/mrfdxe2akp/png/UNF_IMG_WAITSCREEN_generic-waitscreen-2025.png") no-repeat;
    background-size: 100%;
    width: 569px;
    height: 282px;
}

    .plwait-modal-wrap .waitScreenStatusSection {
        display: none;
    }

.wait-search {
    background: url("https://trisept.widen.net/content/mrfdxe2akp/png/UNF_IMG_WAITSCREEN_generic-waitscreen-2025.png") no-repeat;
    background-size: 100%;
}

.waitscreen-modal-wrap .waitscreen-ind {
    display: none;
}

.waitscreen-modal-wrap .fa-3x {
    font-size: 1em;
    color: var(--neutral-white);
}


/***** mobile waitscreen *****/
@media (max-width: 641px) {
    .waitscreen-modal-wrap,
    .plwait-modal-wrap {
        width: 300px;
        height: 161px;
        margin: 0 auto;
        background-size: contain;
    }

    .wait-search {
        background-size: contain;
    }

    #fakeModalParentDiv.ext-fake-modal {
        background-size: contain;
    }
}

@media (max-width:414px) {
    .waitscreen-modal-wrap,
    .plwait-modal-wrap {
        position: relative;
        top: 200px;
        transform: revert;
    }

    #modalExtPostBox .waitscreen-modal-wrap,
    #modalExtPostBox .plwait-modal-wrap {
        top: 0;
    }

    .modalWaitScreenPopup {
        background: revert;
    }
}



/* HOTEL AVAIL STYLES
************************************/

.preferred-hotel {
    display: none !important;
}

.hotel-profile-wrap .expco-added-value .expco-trigger span {
    color: var(--primary);
}


/* ACCOUNT OPTIN STYLES
************************************/

.subscriptionCheckBoxes a {
    color: var(--primary);
    text-decoration: none;
}

    .subscriptionCheckBoxes a:hover {
        color: var(--primary);
        text-decoration: underline;
    }


/* BOOKING CONFIRMATION STYLES
************************************/

.cancelButtonDisplay {
    display: none;
}



/* LEFT GUTTER STYLES
************************************/

.name-filter-wrap .secondary-button,
.name-filter-wrap .secondary-button:hover {
    border-radius: 0 3px 3px 0 !important;
    padding: 4px 14px !important;
    line-height: revert;
}



/* MODAL STYLES
************************************/

.IncludedValuesSecondSection h3,
.IncludedValuesSecondSection hr,
.IncludedValuesSecondSection p,
.modalBody .LPMcontainer {
    display: none !important;
}

.modal-close button {
    background-color: var(--primary);
}

    .modal-close button:focus {
        outline-offset: 2px;
    }

/* CANCEL BUTTON STYLES
************************************/
.cartButton .btnCancel {
    display: none;
}

#faqsAnswers dd {
    margin-bottom: 15px;
}

    #faqsAnswers dd ul {
        margin: 0 0 10px 15px;
    }

        #faqsAnswers dd ul li {
            margin: 5px 0 10px 0;
        }

.contact-heading-wrapx {
    display: none;
}

.contact-secondary-wrapx p:last-child {
    display: none;
}

.digicertWrapper {
    float: right;
    padding-left: 10px;
}

.contact-secondary-wrap p:nth-of-type(4) {
    display: none;
}

.contact-faq-wrap ul {
    margin-left: 20px;
}

    .contact-faq-wrap ul li {
        margin-bottom: 20px;
    }

.contact-faq-wrap p {
    margin-bottom: 20px;
}

.cart-advisory,
.cart-advisory *,
.cart-advisory-title {
    color: var(--neutral-dark);
}

.advisory-fa {
    color: var(--neutral-dark);
}

#registration-tab-container .ui-tabs-nav li.ui-state-default[aria-controls="accountPreferences"] {
    display: none;
}

.account-overview-list dt:nth-of-type(3) {
    display: none;
}

.account-overview-list dd:nth-of-type(3) {
    display: none;
}

.feature-navigation-list {
    background-image: linear-gradient( to right, var(--secondary), var(--secondary));
}

.emailUpdateLink {
    clear: both;
}

.fare-list-table .air-select-button {
    width: 100%;
}

.change-password-modal {
    padding: 3px;
}

@media (max-width: 1180px) {
    .number-of-rooms-wrap {
        width: 16%;
    }

    .adults-wrap {
        width: 35%;
    }

    .children-wrap {
        width: 37%;
    }
}

@media (max-width: 960px) {
    .number-of-rooms-wrap {
        width: 16%;
    }

    .adults-wrap {
        width: 27%;
    }

    .children-wrap {
        width: 45%;
    }
}

@media (max-width: 640px) {
    .number-of-rooms-wrap,
    .adults-wrap {
        width: 20%;
    }

    .children-wrap {
        width: 48%;
    }
}


.restool-wrap .number-of-rooms-wrap {
    width: 16%;
}

.restool-wrap .adults-wrap {
    width: 33%;
}

.restool-wrap .children-wrap {
    width: 39%;
}

@media (max-width: 1280px) {
    .restool-wrap .number-of-rooms-wrap {
        width: 16%;
    }

    .restool-wrap .adults-wrap {
        width: 29%;
    }

    .restool-wrap .children-wrap {
        width: 43%;
    }
}

@media (max-width: 760px) {
    .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: 100%;
    }

    .restool-wrap .number-of-rooms-wrap {
        width: 16%;
    }

    .restool-wrap .adults-wrap {
        width: 28%;
    }

    .restool-wrap .children-wrap {
        width: 40%;
    }
}


/* MOBILE STYLES
************************************/

@media (max-width: 414px) {
    .BASE-NAV {
        padding: 10px 5px 0px 5px;
    }

    .CONTENT-WRAP {
        padding: 0px 5px;
    }

    /*** mobile checkboxes ***/

    input[type=checkbox]:checked + label:before {
        background-color: var(--primary);
        border-color: var(--primary);
    }

    /*** mobile radio buttons ***/

    input[type="radio"]:checked + label:after,
    input[type="radio"]:not(:checked) + label:after {
        background: var(--primary);
    }

    /*** mobile navigation ***/

    .BOOKING-NAVIGATION::before {
        background-color: var(--neutral-midmedium);
    }

    .BOOKING-NAVIGATION > li > a {
        background-color: var(--neutral-white);
        border: 1px solid var(--primary);
        color: var(--primary);
    }

    .BOOKING-NAVIGATION > li.current-booking-tab > a,
    .BOOKING-NAVIGATION .fa-check {
        background-color: var(--secondary);
        color: var(--neutral-white);
    }

    .mini-cart-price-container + span {
        font-size: 1rem;
    }
}


nav.booking-navigation-wrap {
    background-color: var(--neutral-white);
    padding-bottom: 1px;
    width: 100%;
}

.mini-cart-details {
    background-color: var(--neutral-white);
    border: 1px solid var(--neutral-midmedium);
    border-bottom: 0px solid;
}

.booking-progress-navigation li a span .fa {
    color: var(--primary);
}

.booking-progress-navigation .current-booking-tab a span .fa {
    color: var(--neutral-white);
}

.mc-v4-wrap {
    border-left: 0px solid var(--neutral-midmedium);
    border-right: 0px solid var(--neutral-midmedium);
    border-bottom: 1px solid var(--neutral-midmedium);
}

.mini-cart-details:before {
    border-bottom-color: var(--neutral-midmedium);
}

.mc-v4-wrap .mini-cart-price-wrap .mini-cart-price-per {
    color: var(--primary);
}

.mc-v4-wrap .mini-cart-price-wrap .mini-cart-price-total {
    color: var(--primary);
}

.mc-v4-wrap .mini-cart-price-wrap {
    border-color: var(--neutral-midmedium);
}

.mc-v4-wrap .pay-at-property {
    border: 1px solid var(--neutral-midmedium);
}

.mc-v4-wrap .mini-cart-component-wrap a.secondary-button,
.mc-v4-wrap .mini-cart-component-wrap button.secondary-button,
.mc-v4-wrap .secondary-button {
    white-space: var(--button-white-space);
    font-family: var(--button-1-ff) !important;
    font-size: var(--button-1-fs);
    line-height: 1.5;
    letter-spacing: var(--button-1-ls);
    border: 0 solid !important;
    background-color: var(--neutral-white) !important;
    color: var(--primary) !important;
    padding: 0 10px !important;
    border-radius: 0 !important;
}


    .mc-v4-wrap .mini-cart-component-wrap a.secondary-button:hover,
    .mc-v4-wrap .mini-cart-component-wrap a.secondary-button:hover:enabled,
    .mc-v4-wrap .mini-cart-component-wrap button.secondary-button:hover,
    .mc-v4-wrap .mini-cart-component-wrap button.secondary-button:hover:enabled,
    .mc-v4-wrap .secondary-button:hover,
    .mc-v4-wrap .secondary-button:hover:enabled,
    .mini-cart-header a.button:hover,
    .mini-cart-header a.button:hover:enabled {
        color: var(--primary) !important;
        background-color: var(--neutral-white) !important;
        text-decoration: underline;
    }


@media (max-width: 414px) {
    .BOOKING-NAVIGATION > li.current-booking-tab > a {
        background-color: transparent;
    }

    nav.booking-navigation-wrap {
        background-color: transparent;
    }

    .saved-vacations-button-wrap input[type="submit"].button {
        padding: revert !important;
        border-radius: revert !important;
    }
}

#pegaChatWidget {
    z-index: 999;
}

.ui-datepicker-trigger {
    right: -2px;
}

.ui-rangeSlider-label {
    background-color: var(--secondary);
}

    .ui-rangeSlider-label:focus {
        outline: thin dashed var(--primary);
        outline-offset: 2px;
    }

.ui-rangeSlider-label-inner {
    border-top: 10px solid var(--secondary);
}

.ui-datepicker-trigger img {
    background: url("https://trisept.widen.net/content/uyaqd72onx/png/UNH_ICON_CALENDAR_universalHollywood.png") no-repeat;
    background-size: 18px;
}

.flight-wrap .PRICE-SELECT-WRAP {
    border-width: 0;
}

h1#el-title {
    line-height: 1.4;
}

.external-link-content p {
    margin-bottom: 10px;
    font-size: 12px;
}

.PRICE-SELECT-WRAP {
    border-radius: 3px;
    background: var(--neutral-light);
    border: solid 1px var(--neutral-midmedium);
    position: relative;
}

.booked-vacations-table caption,
.saved-vacations-table caption,
.cart-feature-upsell-table caption,
.booked-vacations-table,
.saved-vacations-table {
    border-bottom: solid 5px var(--neutral-midmedium);
    font-weight: normal;
    font-family: var(--display-2-ff);
}

    .booked-vacations-table tr, .saved-vacations-table tr, .cart-feature-upsell-table tr {
        border-bottom: solid 1px var(--neutral-light);
    }

#registration-tab-container .ui-state-default a.ui-tabs-anchor:focus {
    outline: thin dashed var(--primary);
    outline-offset: -3px;
}

#registration-tab-container .ui-tabs-panel:focus {
    outline: thin dashed var(--primary);
    outline-offset: -3px;
}

#registration-tab-container li.ui-state-active,
#registration-tab-container li.ui-state-hover,
#registration-tab-container .ui-tabs-panel {
    border-color: var(--neutral-midmedium);
    outline-offset: -3px;
}

#registration-tab-container .ui-tabs-nav li:focus {
    outline: thin dashed var(--primary);
    outline-offset: -3px;
}

.filters-heading {
    background-color: var(--neutral-light);
}

.filter-count-wrap {
    background-color: var(--secondary);
    border-color: var(--secondary);
}

    .filter-count-wrap a:hover {
        text-decoration: underline;
    }

.confirm-number-highlight {
    background-color: var(--secondary);
}

.COMPONENT-IMAGE-WRAP a {
    display: block;
}

/*** reset for bold font ***/
.booking-progress-navigation .current-booking-tab a span,
.mc-v4-wrap h4, .mc-v4-wrap .mini-cart-time-table caption,
.gutter-section-title,
.recent-searches dt,
.see-all-promos-wrap,
.price-per-wrap > span strong,
.car-time-instructions,
.rate-details-list caption,
.hotel-room-number,
.cart-advisory,
.cart-advisory *,
.cart-advisory-title,
.upsell-options-table caption,
.flight-leg-info-wrap th,
.flight-leg-info-wrap caption,
.booked-vacations-table caption,
.saved-vacations-table caption,
.cart-feature-upsell-table caption,
.filter-count,
.filter-count-label,
.confirm-number,
.num-stops,
th,
b,
strong {
    font-weight: normal;
    font-family: var(--display-2-ff);
}

/*** End bold font fix ***/

.pagination-trigger,
.pagination-trigger:hover,
.pagination-trigger:disabled,
.pagination-trigger:disabled:hover {
    background: none !important;
    border: 0px solid !important;
    border-radius: 0 !important;
    padding: 0 !important;
    font-size: 2.3rem !important;
}

.gutter-section-title {
    border-bottom: 1px solid var(--neutral-midmedium);
}

.fa-warning:before, .fa-exclamation-triangle:before {
    content: "\f071";
    font-family: 'FontAwesome';
}

.booking-progress-navigation .current-booking-tab a span .fa {
    background-color: var(--secondary);
}

.cart-header {
    padding: 4px 3px;
}

.cart-modify-button-header-wrap {
    padding: 6px 4px 0 0;
}

.hotel-cart-modify,
.feature-cart-modify-upsell,
.summary-add-on-detail {
    margin-bottom: 22px;
}

.add-on-component-header {
    padding: 24px 0 0 0;
}

.view-all-features-position, .hotel-softsell-cart-modify-button-wrap {
    position: absolute;
    top: 4px;
    right: 4px;
}

.confirmation-wrap h2, .checkout-step1 h2, .checkout-step2 h2, .checkout-step3 h2 .checkout-step3 .h2 {
    padding: 4px 0 4px 4px;
}

fieldset.select-psngrs {
    padding: 4px;
}

.subscription-selection fieldset {
    padding-left: 4px;
}

.trip-advisor-wrap {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

    .trip-advisor-wrap img {
        max-width: 119px;
    }

.room-type-table tr:last-child td, .upsell-room-type-table tr:last-child td {
    padding: 3px;
}

.upsell-room-type-table td {
    padding: 7px 4px 8px 0;
}

    .room-type-table th:first-child,
    .room-type-table td:first-child,
    .upsell-room-type-table th:first-child,
    .upsell-room-type-table td:first-child {
        padding: 3px 0 4px 3px;
    }

.cart-header .cart-modify-button-wrap {
    padding-right: 2px;
}

.cart-modify-button-header-wrap {
    top: -25px;
}

.upsell-options-table td {
    padding: 7px 4px 7px 0;
}

.CART-COMPONENT-DETAIL.summary-add-on-detail-wrap.clear {
    overflow: visible;
}

.PRICE-SELECT-WRAP .secondary-button.link:hover:enabled {
    color: var(--primary);
}

.cart-remove-button {
    height: revert;
}

.external-link {
    padding: 0 5px;
}

#saveItinModal {
    padding: 0 5px;
}

#cartModalContainer button {
    margin-left: 3px;
}

.additionalComments {
    padding: 0 3px 3px 3px;
}

#scrollAirMatrixRight,
#scrollAirMatrixLeft {
    background-color: var(--primary);
    border: 1px solid var(--primary);
}

    #scrollAirMatrixRight:focus,
    #scrollAirMatrixLeft:focus {
        outline: 1px dashed var(--neutral-white);
        outline-offset: -2px;
    }

.traveler-info {
    padding: 0 3px 10px 3px;
}

.hotel-profile-wrap .expco-added-value .expco-trigger {
    padding: 5px;
}

.seat-map-modal :focus,
.hotel-profile-wrap .expco-trigger:focus {
    outline: 1px dashed var(--primary);
    outline-offset: -2px;
}

.hotel-profile-tabs.ui-tabs :focus {
    outline: 1px dashed var(--primary);
    outline-offset: -4px;
}

.hotel-profile-tabs.ui-tabs .hotel-room-image a {
    padding: 0;
    display: inline-block;
}

    .hotel-profile-tabs.ui-tabs .hotel-room-image a:focus {
        outline-offset: 2px;
    }

    .hotel-profile-tabs.ui-tabs .hotel-room-image a img:focus {
        outline: none;
    }

#vehicleProfileTabs.ui-tabs :focus {
    outline: 1px dashed var(--primary);
    outline-offset: -2px;
}

.ui-widget-content a {
    padding: 4px;
}

button.button.seat-action {
    margin-left: 3px;
}

.CART-COMPONENT-DETAIL.hotel-read-only,
.CART-COMPONENT-DETAIL.vehicle-read-only,
.CART-COMPONENT-DETAIL.feature-read-only {
    padding-left: 3px;
}

.hotel-ro-image-wrap {
    margin-top: 3px;
}

.review-flight {
    padding: 0 0 15px 3px;
}

.applyPromoInput {
    margin-right: 10px;
}

/*------ RESPONSIVE styles ---*/

@media screen and (min-width: 1440px) {
    .header-section {
        padding: 0 40px;
    }
}

@media screen and (max-width: 1440px) {
    .section, .section-title, .header-section, .footer-section, .section-text, .phone-callout, .deal-details, nav {
        width: var(--page-width-responsive);
        margin: var(--section-center);
    }

    .banner-text,
    .banner-slides,
    .banner-controls,
    .tab-titles,
    .tab-container,
    .custom-mapblock,
    .togglemap,
    .custom-section-tab-content,
    .tab-section,
    .custom-heroimage-text,
    .section-title,
    .deal-content,
    .section-disclaimer {
        width: var(--page-width-responsive);
    }

    .page-callout {
        width: var(--page-width-responsive);
        margin: 20px auto;
    }



    .top-border {
        flex-direction: column-reverse;
        align-items: center;
        margin-top: 10px;
    }


        .top-border .footer-subsection p {
            text-align: center;
        }

        .top-border .footer-subsection ul {
            flex-direction: column;
            justify-content: space-between;
            margin: 0 auto;
            text-align: center;
        }
}

@media screen and (max-width: 1148px) {
    .footer-links ul {
        flex-direction: column;
    }

    .mobile-toggle-hide {
        display: none;
    }

    .mobile-toggle-show {
        display: revert;
    }
}

@media screen and (max-width: 992px) {
    .footer-section {
        flex-direction: column;
    }

    .footer-subsection ul {
        flex-direction: column;
        align-items: center;
    }

        .footer-subsection ul.social-icons {
            flex-direction: row;
        }

    ul.social-icons {
        justify-content: space-between;
        margin-bottom: 15px;
    }

    .logos {
        flex-direction: row;
        justify-content: space-between;
    }

    .top-border {
        flex-direction: column-reverse;
        align-items: center;
    }

    .alert-01-footer {
        display: none;
    }

    .alert-01-footer-mobile {
        display: block;
    }

    .hotel-room-options-wrap {
        padding-left: 3px;
    }

    .modal-title {
        width: 90%;
    }
}

@media (min-width: 641px) and (max-width:992px) {
    .pickup-date-wrap label .subLabel,
    .dropoff-date-wrap label .subLabel {
        display: block;
    }
}

@media screen and (max-width: 576px) {
    .logos {
        flex-direction: column;
        align-items: center;
    }
}

@media screen and (max-width: 480px) {
    .footer-column {
        flex-direction: column;
    }
}

@media (max-width: 580px) {
    .cart-modify-button-header-wrap {
        top: -20px;
    }

    .view-all-features-position,
    .hotel-softsell-cart-modify-button-wrap {
        position: relative;
    }

    .booking-options-buttons input {
        margin: 0 20px 20px 0;
    }

    .hotel-room-options-wrap {
        width: 96%;
        margin: 0 auto;
    }
}


@media (max-width: 414px) {

    .hotel-room-options-wrap,
    .upsell-options-table {
        width: 96%;
        margin: 0 auto;
    }

    .cart-modify-button-wrap,
    .cart-header .cart-modify-button-wrap,
    .cart-remove-item-wrap {
        position: relative;
        clear: both;
        width: 100%;
        margin: 15px 0 6px 0;
        text-align: center;
    }
}

@media (max-width: 414px) {
    .cart-modify-button-wrap .cart-modify-button {
        display: block;
        float: none;
        margin: 0px auto;
        width: 96%;
    }
}

@media (max-width: 414px), (max-height: 414px) and (max-width: 896px) {
    .room-type {
        max-width: 75%;
    }
}

/*------ END RESPONSIVE styles ---*/

/*--------HIGH CONTRAST-----------*/
@media (forced-colors: active) {
    a.button {
        forced-color-adjust: none !important; /* Allows custom styling */
        background-color: ButtonFace !important;
        color: ButtonText !important;
        border: 1px solid ButtonText !important;
    }

        a.button:hover {
            background-color: Highlight !important;
            color: HighlightText !important;
            border-color: HighlightText !important;
        }


        a.button:focus {
            outline: 2px solid Highlight !important;
            outline-offset: 2px !important;
        }

    :focus,
    header a:focus,
    footer a:focus,
    .navbar-item a:focus,
    .navbar-menu-section > li > a:focus {
        outline: 2px solid Highlight;
        outline-offset: 2px;
    }

    .navbar-menu-section ul a:hover {
        text-decoration: underline !important;
    }

    .ui-state-default,
    .ui-widget-content .ui-state-default,
    .ui-widget-header .ui-state-default,
    .ui-button, html .ui-button.ui-state-disabled:hover,
    html .ui-button.ui-state-disabled:active {
        background-image: none !important;
        background-color: #000 !important;
    }

    .ui-datepicker .ui-state-active,
    .ui-datepicker .ui-widget-content .ui-state-active,
    .ui-datepicker .ui-widget-header .ui-state-active {
        background-image: none !important;
        background-color: #000 !important;
    }

    footer #ot-sdk-btn.ot-sdk-show-settings,
    footer #ot-sdk-btn.optanon-show-settings,
    header .link {
        color: #fff !important;
        background-color: inherit !important;
        forced-color-adjust: none; /* Prevents Firefox from overriding your color */
    }

    .fp-accordian-title button:focus {
        outline: 2px solid Highlight;
        outline-offset: -4px;
    }
}

/*--------END HIGH CONTRAST-----------*/
