﻿/* ---- fix for preview mode overlay delaying using the site ---- */
#ribbonPreLoadingIndicator {
    display: none;
}
/* --------------------- GENERAL STYLES --------------------- */
.fontAwesome {
    font-family: 'FontAwesome', Arial, Helvetica, sans-serif;
}

.print-only {
    display: none;
}

.body {
    background-color: #fff;
    text-align: center;
    padding: 0;
    margin: 0;
    overflow-x: hidden;
}

body {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 16px;
    color: #5d6e66;
    line-height: 1.5em;
}

p {
    text-align: left;
    color: #5d6e66;
}

hr {
    margin-top: 50px;
    margin-bottom: 50px;
    clear: both;
}

a,
a:visited,
a:hover {
    color: #0079c1;
    text-decoration: none;
    font-weight: bold;
}

    a:hover {
        text-decoration: underline;
    }

img {
    max-width: 100%;
    height: auto !important;
    border: none;
}

.greyButton, .orangeButton {
    height: 19px;
    display: inline-block;
    padding: 15px;
    text-align: center;
    font-size: 16px;
    line-height: 1em;
}

    .orangeButton, .orangeButton:visited {
        color: #ffffff;
        background-color: #F78E1E;
    }

        .orangeButton:hover {
            color: #F78E1E;
            background-color: #ebebeb;
            text-decoration: none;
        }

.embed-responsive.embed-responsive-16by9 {
    position: relative;
    padding-bottom: 56.25%; /* 16:9 */
    height: 0;
}

    .embed-responsive.embed-responsive-16by9 iframe.embed-responsive-item {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }

.hide {
    display: none;
}

input[type="search"], input[type="text"], input[type="number"], input[type="tel"], input[type="email"] {
    padding: 8px;
}

/* ----------------- header -------------- */
.subNav {
    margin-top: 22px;
    float: right;
}

    .subNav a,
    .subNav a:hover,
    .subNav a:visited {
        color: #0079c1;
        padding-bottom: 17px;
        padding-left: 20px;
    }

.subLinks {
    display: flex;
}

    .subLinks a {
        background-color: #0079c1;
        flex-flow: row;
        flex-grow: 1;
        margin-top: 15px;
        margin-right: 15px;
        padding: 20px;
        font-weight: normal;
        text-align: center;
    }

        .subLinks a:last-of-type {
            margin-right: 0;
        }

        .subLinks a,
        .subLinks a:visited {
            color: #fff;
        }

            .subLinks a:hover {
                color: #5d6e66;
            }

.topDivider {
    margin-top: 20px;
    margin-bottom: 40px;
}

.campusHome {
    margin-top: -43px;
}

/* ----------------- main -------------- */
#pnlOuterContainer {
    background-color: transparent;
    margin-left: auto;
    margin-right: auto;
    width: 970px;
    text-align: left;
    position: relative;
    margin-top: 10px;
}

.Amenities {
    list-style-type: none;
    display: block;
    margin-left: 0px;
    padding-left: 0px;
}

    .Amenities li {
        display: inline-flex;
        width: 33%;
        font-weight: bold;
        vertical-align: middle;
        padding-top: 11px;
        padding-right: 0px;
        box-sizing: border-box;
        display: inline-flex;
        align-items: center;
    }

@media (max-width: 550px) {

    .Amenities li img {
        margin-top: 0px;
        width: 50px !important;
        height: 50px !important;
    }
}
/* ----------------- footer -------------- */
footer {
    background-color: #004161;
    color: #fff;
    margin-top: 50px;
}

    footer p {
        color: #fff;
        margin-top: 7px;
        margin-bottom: 7px;
    }

    footer a {
        color: #fff;
    }

        footer a:hover {
            color: #5d6e66;
        }

#footerContent {
    width: 970px;
    position: relative;
    margin-left: auto;
    margin-right: auto;
}

.leftFooter,
.rightFooter {
    display: inline-block;
    margin-top: 40px;
}

.rightFooter {
    float: right;
}

.contactBox {
    display: inline-block;
    vertical-align: top;
    width: 53%;
    box-sizing: border-box;
    text-align: left;
    position: relative;
    padding-left: 35px;
    padding-top: 20px;
}

    .contactBox:first-of-type {
        padding-right: 20px;
        width: 44%;
    }

    .contactBox .fa {
        /* color: #F78E1E; */
        display: inline-block;
        padding: 7px;
        height: 13px;
        vertical-align: top;
        text-align: left;
        left: 0;
        position: absolute;
    }

    .contactBox a {
        padding-top: 5px;
        margin-bottom: 22px;
        display: inline-block;
        font-weight: normal;
    }

    .contactBox div {
        padding-top: 5px;
    }

.rightFooter .orangeButton {
    margin-top: 3px;
}

.imageForOrange {
    height: 49px;
    display: inline-block;
    vertical-align: bottom;
}

.copyright {
    padding-bottom: 16px;
    margin-bottom: 0;
}

.social a {
    margin-right: 20px;
}

    .social a:last-of-type {
        margin-right: 0;
    }

    .social a:hover {
        color: #5d6e66;
    }

        .social a:hover img {
            opacity: 0.5;
        }

#mobileMenu {
    display: none;
    color: #F78E1E;
}

@media (max-width: 992px) {
    .rightFooter {
        margin-top: 42px;
    }

        .rightFooter .orangeButton {
            margin-top: 0;
            padding-top: 10px;
            padding-bottom: 10px;
        }

        .rightFooter .imageForOrange {
            height: 39px;
        }

            .rightFooter .imageForOrange img {
                width: 44px;
            }

    #pnlOuterContainer {
        width: 700px;
    }

    .subNav {
        margin-top: 10px;
    }

    .subLinks a {
        margin-top: 5px;
        margin-right: 5px;
        padding: 10px;
    }

    .Amenities li {
        width: 49%;
    }

    #footerContent {
        width: 700px;
    }

    .leftFooter img,
    header img {
        max-width: 200px;
    }

    .copyright,
    .contactBox {
        font-size: 0.9em;
    }

        .contactBox .fa {
            font-size: 16px;
        }
}

@media (max-width: 768px) {
    #pnlOuterContainer {
        width: 95%;
    }

    #footerContent {
        width: 95%;
    }

    .leftFooter img,
    header img {
        max-width: 100%;
    }

    .leftFooter .contactBox {
        display: block;
        max-width: 210px;
        padding-top: 0px;
        padding-bottom: 20px;
    }

    .rightFooter {
        position: absolute;
        bottom: 70px;
        width: 305px;
        right: 0;
        float: none;
    }

        .rightFooter .orangeButton {
            padding-top: 15px;
            padding-bottom: 15px;
            font-size: 12px;
        }

        .rightFooter .imageForOrange {
            height: 49px;
        }

            .rightFooter .imageForOrange img {
                width: 100%;
            }

    #mobileMenu {
        display: block;
        float: right;
        font-size: 40px;
    }

    .hideMobile {
        display: none;
    }

    .subNav {
        float: none;
        margin-bottom: 0;
    }

        .subNav a,
        .subNav a:visited {
            display: block;
            background-color: #F78E1E;
            color: #fff;
            border-bottom: 1px solid #fff;
            padding-top: 10px;
            padding-bottom: 10px;
            /* text-align: right; */
            padding-right: 10px;
        }

            .subNav a:hover {
                color: #5d6e66
            }

    .subLinks {
        display: block;
        margin-top: 15px;
    }

        .subLinks a {
            margin-right: 0;
            width: 100%;
            box-sizing: border-box;
            display: block;
        }

    .Amenities li {
        width: 49%;
        font-size: 12px;
    }

    .contactBox,
    .contactBox:first-of-type {
        width: 100%;
        padding-top: 20px;
        padding-bottom: 0;
    }
}

@media (max-width: 550px) {
    .subNav a {
        display: block;
    }

    .rightFooter {
        position: initial;
        margin-top: 5px;
        width: 100%;
    }
}

/* ---- Home sections ---- */
.sectionContent img {
    width: 30px !important;
    vertical-align: middle !important;
    margin-right: 5px;
    margin-bottom: 10px !important;
    margin-top: 10px;
    margin-right: 10px !important;
}

.section {
    font-size: 0;
    clear: both;
}

.sectionImage {
    width: 50%;
    box-sizing: border-box;
    vertical-align: top;
    float: right;
    padding-left: 20px;
    padding-right: 0;
}

.section:nth-of-type(2n+1) .sectionImage {
    float: none;
    padding-right: 20px;
}

.sectionText {
    font-size: 12px;
    display: inline-block;
    width: 50%;
    box-sizing: border-box;
    padding-left: 40px;
    padding-right: 40px;
    vertical-align: top;
}

    .sectionText strong {
        display: inline-block;
    }

    .sectionText h1 {
        font-size: 32px;
        margin-top: 0;
        padding-top: 0;
    }

    .sectionText a.orangeButton {
        border-radius: 5px;
        padding-top: 7px;
        padding-bottom: 5px;
        margin-top: 10px;
    }

@media (max-width: 768px) {
    .sectionImage {
        width: 100%;
    }

    .sectionText {
        width: 100%;
        margin-top: 20px;
    }
}
/* ---- Photo Gallery ---- */
.photoPrev, .photoNext {
    vertical-align: top;
    margin-top: 200px;
    padding: 0px;
    margin-left: 0px;
    margin-right: 0px;
    float: left;
}

.photoMainHolder {
    margin: 0px;
    margin-left: -32px;
    margin-right: -32px;
    padding: 0px;
    padding-left: 32px;
    padding-right: 32px;
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    overflow: hidden;
    text-align: center;
    display: inline-block;
    float: left;
    z-index: 0;
    position: relative;
}

.photoButtonLeft,
.photoButtonRight {
    z-index: 100;
    position: relative;
}

.photoMain {
    min-height: 250px;
}

.photoCaption {
    text-align: left;
}

.photoThumbsHolder {
    clear: both;
    width: 100%;
    max-width: 100%;
    height: 105px;
    overflow: auto;
}

    .photoThumbsHolder table {
        margin-left: auto;
        margin-right: auto;
    }

.photoThumbImage {
    border-color: #00629d;
    max-width: initial;
    margin-right: 5px;
}

td:last-child .photoThumbImage {
    margin-right: 0;
}

.photoSlideshowCounter {
    float: left;
}

.photoSlideshowStopper {
    float: right;
}

.photoSlideshowAdvancer {
    display: none;
}
/* mobile width */
@media (max-width: 749px) {
    .photoPrev, .photoNext {
        margin-top: 50px;
    }

    .photoMain {
        min-height: 85px;
    }
}

/* ---------- FAQ ------------ */
.faq #searchbox {
    width: 100%;
    margin-bottom: 15px;
    box-sizing: border-box;
}

.faq .linkSpacer {
    padding-bottom: 15px;
}

    .faq .linkSpacer .menuSubLevelLinkLine a.menuSubLevelDrop,
    .faq .linkSpacer .menuSubLevelLinkLine a.menuSubLevelText,
    .faq .linkSpacer .menuSubLevelLinkLine .disabledCourse {
        display: table-cell;
    }

    .faq .linkSpacer:empty {
        display: none;
    }

.faq .menuSubLevelLinkLine {
    margin-top: 1em;
    margin-bottom: 1em;
    font-size: 0;
    clear: right;
    position: relative;
}

.faq a.menuSubLevelText,
.faq a.menuSubLevelText:visited {
    color: #5d6e66;
    font-weight: 700;
    font-size: 18px;
    line-height: 1.5em;
}

.faq .menuSubLevelDrop {
    width: 23px;
    display: inline-block;
}

.faq .questionHolder {
    margin-left: 23px;
    display: none;
    padding-bottom: 20px;
}

    .faq .questionHolder:last-of-type {
        padding-bottom: 0;
    }

    .faq .questionHolder a.menuSubLevelText,
    .faq .questionHolder a.menuSubLevelText:visited {
        color: #0079c1;
    }

    .faq .questionHolder .answerHolder {
        margin-left: 24px;
        margin-right: 24px;
        display: none;
        padding-bottom: 10px;
    }

    .faq .questionHolder:last-of-type .answerHolder:last-of-type {
        padding-bottom: 0;
    }

        .faq .questionHolder:last-of-type .answerHolder:last-of-type p:last-child,
        .faq .questionHolder:last-of-type .answerHolder:last-of-type ul:last-child,
        .faq .questionHolder:last-of-type .answerHolder:last-of-type ol:last-child {
            padding-bottom: 0;
        }

@media (max-width: 992px) {
    .faq .questionHolder .fullWidth,
    .faq .questionHolder .eventModule {
        width: 712px !important;
    }

    .halfWidth {
        width: 341px !important;
    }
}

@media (max-width: 768px) {
    .faq .questionHolder .fullWidth,
    .faq .questionHolder .eventModule {
        width: 95% !important;
    }

    .halfWidth {
        width: 100% !important;
    }
}

/* ---- sitecore forms ---- */
.sitecoreForm span.field-validation-valid,
.sitecoreForm span.field-validation-error {
    display: block;
    margin-bottom: 10px;
}

.sitecoreForm .validation-summary-errors,
.sitecoreForm span.field-validation-error {
    color: #B62529;
}

.sitecoreForm label {
    display: block;
}

    .sitecoreForm label input[type=checkbox],
    .sitecoreForm label input[type=radio] {
        margin-right: 5px;
    }

.sitecoreForm select,
.sitecoreForm input[type=date] {
    padding-top: 8px;
    padding-bottom: 8px;
    font-size: 16px;
}

.sitecoreForm .fl_left {
    float: left;
}

.sitecoreForm .fl_right {
    float: right;
}

.sitecoreForm .clear {
    clear: both;
}

.sitecoreForm .displayFormMessage p {
    margin: 0;
    padding: 0;
}

.sitecoreForm .hideSubLabels label {
    display: none;
}

.sitecoreForm label.hideSubLabels {
    font-size: 0;
}

.sitecoreForm .col-md-1,
.sitecoreForm .col-md-2,
.sitecoreForm .col-fifth,
.sitecoreForm .col-md-3,
.sitecoreForm .col-md-4,
.sitecoreForm .col-md-5,
.sitecoreForm .col-md-6,
.sitecoreForm .col-md-7,
.sitecoreForm .col-md-8,
.sitecoreForm .col-md-9,
.sitecoreForm .col-md-10,
.sitecoreForm .col-md-11,
.sitecoreForm .col-md-12 {
    margin-bottom: 15px;
    padding-left: 2px;
    padding-right: 2px;
    box-sizing: border-box;
    display: inline-block;
    vertical-align: top;
}

.sitecoreForm .col-md-1 {
    width: 8%
}

.sitecoreForm .col-md-2 {
    width: 16%
}

.sitecoreForm .col-fifth {
    width: 20%
}

.sitecoreForm .col-md-3 {
    width: 24.5%
}

.sitecoreForm .col-md-4 {
    width: 33%
}

.sitecoreForm .col-md-5 {
    width: 41%
}

.sitecoreForm .col-md-6 {
    width: 49.5%
}

.sitecoreForm .col-md-7 {
    width: 58%
}

.sitecoreForm .col-md-8 {
    width: 66%
}

.sitecoreForm .col-md-9 {
    width: 74.5%
}

.sitecoreForm .col-md-10 {
    width: 83%
}

.sitecoreForm .col-md-11 {
    width: 91%
}

.sitecoreForm .col-md-12 {
    width: 100%;
}

.sitecoreForm label.col-md-1,
.sitecoreForm label.col-md-2,
.sitecoreForm label.col-fifth,
.sitecoreForm label.col-md-3,
.sitecoreForm label.col-md-4,
.sitecoreForm label.col-md-5,
.sitecoreForm label.col-md-6,
.sitecoreForm label.col-md-7,
.sitecoreForm label.col-md-8,
.sitecoreForm label.col-md-9,
.sitecoreForm label.col-md-10,
.sitecoreForm label.col-md-11,
.sitecoreForm label.col-md-12,
.sitecoreForm input[type=submit] {
    clear: left;
}

    .sitecoreForm label.col-side-by-side,
    .sitecoreForm input[type=submit].col-side-by-side {
        clear: none;
        display: inline-block;
    }

.sitecoreForm input[type="button"],
.sitecoreForm input[type="submit"] {
    height: 28px;
    background-color: #F78E1E;
    border: 1px solid #F78E1E;
    color: #fff;
    font-size: 16px;
    margin-bottom: 20px;
}

    .sitecoreForm input[type="button"]:hover,
    .sitecoreForm input[type="submit"]:hover {
        background-color: #ebebeb;
        border: 1px solid #ebebeb;
        color: #F78E1E;
    }

.sitecoreForm .hide {
    display: none;
}

.sitecoreForm .bold {
    font-weight: bold;
}

.sitecoreForm .border {
    border: 1px solid #000;
    padding-left: 5px;
    margin-top: 5px;
    margin-bottom: 5px;
}

.sitecoreForm .rightAlign {
    text-align: right;
}


.sitecoreFormRadioOptionSpan,
.sitecoreFormCheckboxListSpan {
    font-size: 0;
}

    .sitecoreFormRadioOptionSpan label,
    .sitecoreFormCheckboxListSpan label {
        font-size: 15px;
    }

.sitecoreForm label.col-side-by-side,
.sitecoreForm input[type=submit].col-side-by-side {
    clear: none;
}

@media (max-width: 767px) {
    .sitecoreForm .col-phone-full-width {
        width: 100%;
        display: block;
        float: left;
    }

    .sitecoreForm .col-md-1 {
        width: 33%
    }

    .sitecoreForm .col-md-2 {
        width: 33%
    }

    .sitecoreForm .col-fifth {
        width: 50%
    }

    .sitecoreForm .col-md-3 {
        width: 50%
    }

    .sitecoreForm .col-md-4 {
        width: 100%
    }

    .sitecoreForm .col-md-5 {
        width: 100%
    }

    .sitecoreForm .col-md-6 {
        width: 100%
    }

    .sitecoreForm .col-md-7 {
        width: 100%
    }

    .sitecoreForm .col-md-8 {
        width: 100%
    }

    .sitecoreForm .col-md-9 {
        width: 100%
    }

    .sitecoreForm .col-md-10 {
        width: 100%
    }

    .sitecoreForm .col-md-11 {
        width: 100%
    }

    .sitecoreForm .col-md-12 {
        width: 100%;
    }

    .sitecoreForm .col-phone-1 {
        width: 8%
    }

    .sitecoreForm .col-phone-2 {
        width: 16%
    }

    .sitecoreForm .col-phone-fifth {
        width: 20%
    }

    .sitecoreForm .col-phone-3 {
        width: 24.5%
    }

    .sitecoreForm .col-phone-4 {
        width: 33%
    }

    .sitecoreForm .col-phone-5 {
        width: 41%
    }

    .sitecoreForm .col-phone-6 {
        width: 49.5%
    }

    .sitecoreForm .col-phone-7 {
        width: 58%
    }

    .sitecoreForm .col-phone-8 {
        width: 66%
    }

    .sitecoreForm .col-phone-9 {
        width: 74.5%
    }

    .sitecoreForm .col-phone-10 {
        width: 83%
    }

    .sitecoreForm .col-phone-11 {
        width: 91%
    }

    .sitecoreForm .col-phone-12 {
        width: 100%;
    }
}

/* ------- spinners for submit buttons ----- */
input[type=button].spin,
input[type=submit].spin {
    background-image: url('/common/images/generic/colorbox/_loading.gif');
    background-repeat: no-repeat;
    width: 30px;
    height: 30px;
    background-color: transparent !important;
    color: transparent !important;
    pointer-events: none !important;
    border: none !important;
}

/* ----- Appointment Booking ----- */
.appointmentTable {
    width: 100%;
    margin-bottom: 20px;
}

    .appointmentTable tr td {
        vertical-align: top;
        position: relative;
    }

        .appointmentTable tr td.timeSlot {
            width: 160px;
        }

        .appointmentTable tr td.takenTime {
            background-color: #0079c1;
            color: #fff;
            border: 1px solid #fff;
            padding: 5px;
        }

    .appointmentTable .currentTime {
        position: absolute;
        border-top: 1px solid black;
        right: 0;
        left: 0;
        height: 0;
    }


.sitecoreForm .roomBookingSearchDropdowns {
    text-align: center;
    padding-bottom: 10px;
    border: 1px solid rgba(94, 110, 102, 0.8);
    background-color: rgba(94, 110, 102, 0.8);
    border-radius: 5px;
}

    .sitecoreForm .roomBookingSearchDropdowns select {
        border: 1px solid rgba(94, 110, 102, 0.8);
        vertical-align: text-top;
        padding: 4px;
        font-size: 16px;
        margin-top: 10px;
    }

    .sitecoreForm .roomBookingSearchDropdowns input {
        border: 1px solid rgba(94, 110, 102, 0.8);
        margin-top: 10px;
        height: 26px;
        vertical-align: text-top;
        background-color: #fff;
        border: 0;
        padding-top: 2px;
        padding-bottom: 0;
        padding-left: 5px;
        padding-right: 5px;
    }

        .sitecoreForm .roomBookingSearchDropdowns input[type="button"],
        .sitecoreForm .roomBookingSearchDropdowns input[type="submit"] {
            height: 28px;
            background-color: #F78E1E;
            border: 1px solid #F78E1E;
            color: #fff;
            font-size: 16px;
            margin-bottom: 0;
        }

            .sitecoreForm .roomBookingSearchDropdowns input[type="button"]:hover,
            .sitecoreForm .roomBookingSearchDropdowns input[type="submit"]:hover {
                background-color: #ebebeb;
                border: 1px solid #ebebeb;
                color: #F78E1E;
            }

.sitecoreForm .roomBookingSearchResults {
    min-height: 50px;
}

    .sitecoreForm .roomBookingSearchResults #txtNote {
        width: 100%;
        box-sizing: border-box;
    }

    .sitecoreForm .roomBookingSearchResults .timeSelect {
        display: inline-block;
        border: 1px solid #ebebeb;
        margin: 5px;
        padding: 5px;
        border-radius: 5px;
    }

        .sitecoreForm .roomBookingSearchResults .timeSelect:has(:checked) {
            border-color: #F78E1E;
        }

    .sitecoreForm .roomBookingSearchResults .timeSelection input[type=submit] {
        margin-top: 10px;
        margin-right: 5px;
        width: 108px;
        height: 50px;
    }

    .sitecoreForm .roomBookingSearchResults .timeSelection label {
        clear: none;
        display: inline-block;
    }

/* 735 width */
@media (max-width: 992px) {
    .sitecoreForm .roomBookingSearchDropdowns select {
        padding-top: 12px;
        padding-bottom: 12px;
        padding-left: 4px;
        padding-right: 4px;
    }

    .sitecoreForm .roomBookingSearchDropdowns input {
        text-align: center;
        padding-top: 9px;
        padding-bottom: 9px;
    }

        .sitecoreForm .roomBookingSearchDropdowns input[type="button"], .sitecoreForm .roomBookingSearchDropdowns input[type="submit"] {
            height: 45px;
        }
}

/* mobile width */
@media (max-width: 767px) {
    .sitecoreForm .roomBookingSearchDropdowns {
        border: none;
        background: none;
    }

        .sitecoreForm .roomBookingSearchDropdowns select {
            padding: 7px;
            font-size: inherit;
            display: block;
            width: 100%;
        }

        .sitecoreForm .roomBookingSearchDropdowns input {
            width: 100%;
            height: 35px;
            box-sizing: border-box;
            text-align: center;
            margin-top: 10px;
            border: 1px solid rgba(94, 110, 102, 0.8);
        }

            .sitecoreForm .roomBookingSearchDropdowns input[type="button"], .sitecoreForm .roomBookingSearchDropdowns input[type="submit"] {
                height: 35px;
            }
}


.roomBookingReview input[type="submit"], .roomBookingReview input[type="button"] {
    background-color: #F78E1E;
    border: none;
    color: #fff;
    padding-left: 10px;
    margin: 10px;
    margin-left: 0;
    margin-bottom:0;
    padding-right: 10px;
    padding-top: 5px;
    padding-bottom: 5px;
}

.connectHeader {
    display:none;
}