/*************** CALENDAR ***************/
#Calendar {
    width: 177px;
    background-color: #ffffff;
    padding: 0px;
    margin: 8px 0px 0px 0px;
    border: 1px solid #14374B;
    float: left;
    overflow: hidden;
    float: left;
}
#Calendar span {
    background-color: #ff6600;
    float: left;
    width: 20px;
    height: 20px;
    padding: 0;
    margin: 1px;
    text-align: left;
    border: 1px solid #ffffff;
    line-height: 15px;
    vertical-align: super;
}
#Calendar a.cal:hover {
    text-decoration: none;
    color: #ffffff;
}
#Calendar span:hover {
    color: #ffffff;
    border: 1px solid #000000;
    background-color: #335A83;
    cursor: pointer;
}
#Calendar .selected {
    color: #ffffff;
    background-color: #335A83;
    border: 1px solid #000000;
}
#Calendar a.selected {
    color: #ffffff;
    border: 0px;
}
#Calendar a.selected:hover {
    color: #ffffff;
    border: 0px;
    cursor: pointer;
}
#Calendar .month {
    color: #ffffff;
    font-family: Verdana, Tahoma, Arial;
    font-weight: bold;
}
#Calendar .empty {
    border: 0px solid #ffffff;
}
#Calendar .empty:hover {
    border: 1px solid #ffffff;
}
#Calendar .Sundayempty {
    border: 1px solid #ffffff;
    clear: left;
}
#Calendar .Sundayempty:hover {
    border: 1px solid #ffffff;
    clear: left;
}
#Calendar .Sunday {
    clear: left;
}
#Calendar .cal_title {
    border: 0px;
    text-align: center;
    height: 15px;
    line-height: 12px;
    color: #15264C;
    font-weight: bold;
    font-size: 1.3em;
    font-family: Verdana, Tahoma, Arial;
}
#Calendar .cal_viewing {
    border: 0px;
    text-align: center;
    height: 15px;
    line-height: 14px;
    font-weight: bold;
}
#Calendar a.cal_viewing:hover {
    border: 0px;
    text-align: center;
    height: 15px;
    line-height: 14px;
    text-decoration: none;
}
#Calendar .cal_key {
    border: 0px;
    text-align: center;
    line-height: 10px;
}
#Calendar .damonth {
    color: #15264C;
    font-family: Verdana, Tahoma, Arial;
    font-weight: bold;
}
#Calendar .event {
    border: 1px solid #F38F1D;
}
#Calendar .today {
    border: 1px solid #13354E;
}
#h2TheDay {
    color: #000000;
}
#singleEvent {
    display: none;
}
#calRight {
    margin-left: 200px;
    display: none;
}
#table-week .hidden, #Calendar .hidden {
    display: none;
}
#fullView {
    float: right;
}

/*---- FULL MONTH ----*/
div.ui-tooltip {
    max-width: 500px;
}
.cal_viewing {
    border: 0px;
    text-align: center;
    height: 15px;
    line-height: 14px;
    font-weight: bold;
    font-size: 13px;
    text-decoration: none;
    margin-bottom: 3px;
}
#calendarMonth {
    margin-left: 24px;
}
.table-daynames {
    width: 100%;
    table-layout: fixed;
    text-align: center;
    background-color: #ffffff;
}
.table-daynames tr td {
    border: 1px solid #C3D9FF;
    padding: 3px 0;
}
.table-days {
    width: 100%;
    table-layout: fixed;
    height: 80px;
    background-color: #ffffff;
}
.table-days tr td {
    border: 1px solid #C3D9FF;
    padding: 3px 0;
    vertical-align: top;
}
.table-days .dayTitle {
    background-color: #E8EEF7;
    text-align: right;
    margin-top: -3px;
}
.table-days .dayTitleCurr {
    background-color: #BBCCDD;
    text-align: right;
    margin-top: -3px;
}
.table-days .event {
    white-space: nowrap;
    overflow: hidden;
    font-size: .9em;
    color: #28754E;
    cursor: pointer;
    padding: 2px 2px 1px 3px;
}
.table-days .eventDay {
    white-space: nowrap;
    overflow: hidden;
    font-size: .9em;
    cursor: pointer;
}
/* NEW */
.table-days .eventDay {
    background-color: #668CB3;
    color: #ffffff;
    border-radius: 3px 3px 3px 3px;
    -moz-border-radius: 3px 3px 3px 3px;
    -webkit-border-radius: 3px 3px 3px 3px;
    padding: 1px 1px 1px 3px;
}
.table-days .eventBegin {
    background-color: #668CB3;
    color: #ffffff;
    -moz-border-radius-bottomleft: 3px;
    -moz-border-radius-topleft: 3px;
    padding: 1px 1px 1px 3px;
    margin: 0 -1px 0 0;
}
.table-days .eventMid {
    background-color: #668CB3;
    color: #ffffff;
    padding: 1px 1px 1px 4px;
    margin: 0 -1px;
}
.table-days .eventEnd {
    background-color: #668CB3;
    color: #ffffff;
    -moz-border-radius-bottomright: 3px;
    -moz-border-radius-topright: 3px;
    padding: 1px 1px 1px 4px;
    margin: 0 0 0 -1px;
}
/* END NEW */

.monthRow .current-day {
    background-color: #FFFFCC;
}
/*---- END FULL MONTH ----*/

/*---- WEEK ----*/
#table-week {
    width: 100%;
    table-layout: fixed;
    background-color: #ffffff;
}
#table-week .event {
    background-color: #65AD89;
    border-bottom-color: #28754E;
    border-left-color: #28754E;
    border-right-color: #28754E;
    border-top-color: #28754E;
    border: 1px solid;
    -moz-border-radius-bottomleft: 3px;
    -moz-border-radius-bottomright: 3px;
    -moz-border-radius-topleft: 3px;
    -moz-border-radius-topright: 3px;
    margin: 8px 1px;
    cursor: pointer;
}
#table-week tr td {
    border: 1px solid #C3D9FF;
    vertical-align: top;
}
#table-week .evntTime {
    background-color: #28754E;
    color: #ffffff;
}
/*---- END WEEK ----*/

/*---- LIST VIEW ----*/
#table-list {
    border: 1px solid #014426;
    width: 100%;
}
#table-list div {
    display: none;
}
.tl-date {
    font-weight: bold;
}
#table-list td {
    padding: 5px 7px 5px 5px;
    vertical-align: top;
}
.tl-row {
    background-color: #f1cb9c;
}
.tl-alt {
    background-color: #F3DABB;
}
.tl-date {
    width: 85px;
}
.tl-time {
    width: 135px;
}
#table-list .event {
    border-left: 2px solid #BBCCDC;
    margin: 0 0 4px;
    padding: 0 8px 4px 10px;
}
/*---- END LIST ----*/

/*---- RIGHT ----*/
#calCats {
    clear: both;
    width: 230px;
}
#calCats div {
    margin-bottom: 3px;
}
/*---- END RIGHT ----*/
/*************** END CALENDAR ***************/





/*************** CAREERS ***************/
/* Main listing page */
#careerList .careerLocationName {
    font-size: 16px;
    font-weight: bold;
    margin: 0 0 7px 0;
}
#careerList .careerDepartmentName {
    font-size: 14px;
    font-weight: bold;
    color: #666666;
    margin: 0 0 7px 23px;
}
#careerList ul {
    padding: 0 0 0 20px;
    margin: 6px 0 6px 35px;
}
#careerList .careerTrigger:before {
    content: '\f067';
}
#careerList .careerTrigger {
    padding: 5px 0 5px 25px;
}
#careerList .careerTrigger.active {
}
#careerList .careerTrigger a {
    font-size: 18px;
    line-height: normal;
}
#careerList .careerContainer {
    margin: 7px 0 3px 25px;
}

/* Individual career page */
#divCareerDisplay table {
    margin: 0 0 14px 0;
    width: auto;
}
#divCareerDisplay table td {
    vertical-align: top;
    padding: 2px 0;
}
#divCareerDisplay .tdCareerLeft {
    font-weight: bold;
    width: 110px;
}
#divCareerDisplay .resumeHeader {
    font-size: 16px;
    font-weight: bold;
    padding: 9px 0 3px 0;
    border-bottom: 1px solid #666666;
}

#divCareerResume {
    float: right;
    width: 250px;
    border: 1px solid #CCCCCC;
    padding: 7px;
    -webkit-border-radius: 13px;
    -moz-border-radius: 13px;
    border-radius: 13px;
}
#divCareerResume table {
    margin: 0;
}
#divCareerResume .inputText {
    width: 220px;
}
#divCareerResume .inputZipText {
    width: 110px;
}
#divCareerResume .tdCareerLeft {
    font-weight: bold;
    text-align: right;
    padding: 0 6px 0 0;
    width: 10px;
}
#divCareerResume .required {
    color:#FF0000;
}
#divCareerResume .smaller {
    font-size: 9px;
    color: #666666;
}
#divCareerResume #errors {
    font-size: 12px;
    color: #cc3333;
    border: 1px solid #cc3333;
    padding: 4px 5px;
}
#divCareerResumeHeader {
    font-size: 18px;
    font-weight: bold;
    text-align: center;
}
#divCareerResume .infieldLabel {
    color: #999999;
    font-weight: normal;
    margin: 0;
    padding: 0;
    position: absolute;
    top: 2px;
    left: 7px;

    opacity: 1;
    display: block;
}
#divCareerResume .inputDiv {
    position: relative;
}
/*************** END CAREERS ***************/





/*************** FORMS ***************/
.cmForm, #dynamicForm {
    clear: both;
}
.cmForm a img {
    border: none;
}
.formElements .hide {
    display: none;
}
.formElements .row, .formElements .formRow {
    clear: both;
}
.formElements .row > ul > li, .formElements .formRow > ul > li {
    padding: 5px 10px 5px 0;
    float: left;
}
.formElements .row > ul, .formElements .formRow > ul, .formElements {
    margin: 0;
    padding: 0;
    list-style-type: none;
}
.formElements h2 {
    color: #000000;
    margin: 0;
    padding: 0;
}
.formElements .row > ul > li, .formElements .formRow > ul > li {
    padding: 5px 0;
}
.formElements label, .formElements fieldset legend, #ecomTotal label {
    margin: 0;
    font-weight: bold;
    text-align: left;
    line-height: 1em;
    width: auto;
    padding: 0 0 2px 0;
    float: none;
    display: block;
}
.formElements span label {
    display: inline;
    font-weight: normal;
    margin-left: 3px;
}
.formElements .row > ul > li > span, .formElements .formRow > ul > li span {
    display: block;
    margin-top: 5px;
    float: none;
}
.formElements .row fieldset {
    margin: 0;
    padding: 0;
    border: 0;
}
.formElements .row fieldset legend {
    color: #000000;
}
.formElements .left {
    float: left;
    margin: 3px 7px 0 0;
}
.formElements .smaller {
    font-size: .9em;
    color: #666666;
    width: auto;
    margin: 0;
    display: inline;
}
.formElements textarea {
    overflow: auto;
}
.formElements .spanExample {
    font-size: 11px;
    color: #666666;
    padding-left: 7px;
}
.formElements .row > ul > li span.required {
    color: #FF0000;
    display: inline;
}
.formElements .formRow > ul > li.required > label:after, .formElements .formRow > ul > li.required legend:after {
    content: " *";
    color: #FF0000;
}
.formElements #pageButton {
    clear: both;
    padding: 10px 0 0 0;
}
.formElements .hidden {
    visibility: hidden;
}
.formElements .pageBack {
}
.formElements .pageNext {
    float: right;
}
.formElements .row > ul > li .dsSig, .formElements .row > ul > li .dsDate,
.formElements .formRow > ul > li .dsSig, .formElements .formRow > ul > li .dsDate {
    border-bottom: 1px solid #000000;
    text-align: center;
}
.formElements .row > ul > li .dsSig2 label, .formElements .row > ul > li .dsDate2 label,
.formElements .formRow > ul > li .dsSig2 label, .formElements .formRow > ul > li .dsDate2 label {
    text-align: center;
    font-weight: normal;
}
.formElements .row > ul > li .dsSpace,
.formElements .formRow > ul > li .dsSpace {
    width: 20px;
}

/* PREDEFINED */
.formElements .row > ul > li .left {
    float: left;
    margin: 0 5px 0 0;
}
.formElements .row > ul > li .smaller {
    font-size: .9em;
    color: #666666;
    width: auto;
    margin: 0;
    display: inline;
}

/* ECOM */
.formElements ul li [name*="ecomVariable"], #ecomTotalInput {
    width: 5rem;
}
.formElements ul li [name*="ecomVariable"], .formElements ul li [for*="ecomVariable"], #ecomTotal label, #ecomTotalInput {
    display: inline-block;
}
#paymentForm #amexDisclaimer {
    float: left;
    font-size: .9em;
    width: auto;
    margin: 0 0 0 7px;
    display: inline;
}
#paymentForm #billing {
    width: 350px;
    float: left;
}
#paymentForm #shipping {
    float: left;
    width: 350px;
}
#paymentForm #clearPayment {
    clear: both;
    padding: 20px 0 0 0;
}
#paymentForm #payment {
    float: left;
    width: 350px;
}
#paymentForm label {
    clear: both;
    display: block;
    float: left;
    margin-right: 0.5em;
    text-align: right;
    width: 100px;
}
#paymentForm input, #paymentForm select {
    float: left;
    margin: 2px 0 10px 0;
}
#paymentForm input[type=submit] {
    clear: both;
    width: auto;
    margin: 0;
}
#billing {
    width: 350px;
    float: left;
}
#shipping {
    float: left;
    width: 350px;
}
#clearPayment {
    clear: both;
    padding: 20px 0 0 0;
}
#payment {
    float: left;
    width: 350px;
}
.clear {
    clear: both;
    margin: 0;
    padding: 0;
}
#orderDecline {
    border: 1px solid #666666;
    background-color: #F0F0F0;
    padding: 5px;
}
#orderDecline h3 {
    font-size: 1.3em;
    color: #990000;
}
#orderAccept {
    border: 1px solid #666666;
    background-color: #F0F0F0;
    padding: 5px;
}
#orderAccept h3 {
    font-size: 1.3em;
    color: #003300;
}
#orderAccept td {
    padding-right: 5px;
}
#errors {
    font-size: .85em;
    color: #FF0000;
    border: 1px solid #ff0000;
    padding: 5px;
}
.cmForm .hidden {
    visibility: hidden;
}
/* END ECOM */

.currentForm input[type=submit] {
    display: block;
    clear: both;
    margin: 10px 0 0 0;
}
.currentForm .clear {
    clear: both;
    margin: 0;
    padding: 0;
}
.currentForm .formErrors {
    border: 1px solid #FF0000;
    color: #FF0000;
    font-size: 0.9em;
    padding: 5px;
}
#filelist {
    line-height: 1.5em;
}
.fa-custom-delete {
    color: #AD0000;
    text-shadow: 2px 2px 2px #ccc;
    margin-left: 7px;
    cursor: pointer;
}
/*************** END FORMS ***************/





/*************** LOCATIONS ***************/
/*===== MAP PAGE =====*/
#locationsLeft {
    float: left;
    width: 315px;
}
#locationsSearch {
    width: 315px;
    height: 57px;
    margin-bottom: 11px;
}
#locationsDivSearch {
    width: 286px;
    height: 36px;
    border: 1px solid #cccccc;
    border-top-left-radius: 6px;
    border-top-right-radius: 6px;

    padding: 12px 0 0 14px;
}
#locationsResults {
    padding-right: 14px;
    width: 301px;
    height: 560px;
}
#locationsFilterText {
    float: right;
    padding: 2px 0 0 0;
    min-width: 140px;
}
#locationsFilterBox {
    position: absolute;
    margin: 28px 0 0 -8px;
    max-width: 300px;

    border: 1px solid #cccccc;
    background-color: #F0F0F0;
    padding: 10px;
    z-index: 9;
}
#locationsFilterClose {
    float: right;
    margin: -7px 0 0 6px;
}
#locationsFilterClose a:hover {
    color: #900;
}
#locationsMap {
    height: 615px;
    border: 3px solid #cccccc;
    border-radius: 6px;
    overflow: hidden;
}

#locationsDivSearch .inputDiv {
    position: relative;
    float: left;
}
#locationsDivSearch .inputLabel {
    color: #999999;
    font-weight: normal;
    margin: 0;
    padding: 0;
    position: absolute;
    top: 2px;
    left: 7px;

    opacity: 1;
    display: block;
}
#inputAddress {
    width: 180px;
    margin-right: 12px;
}

#locationsPanel ul {
    list-style: none outside none;
    margin: 0;
    padding: 0;
}
#locationsPanel ul li {
    border: 1px solid #cccccc;
    border-radius: 6px;
    display: block;
    margin-top: 7px;
    cursor: pointer;
    height: 100px;
}
#locationsPanel .listText {
    padding: 9px 24px 11px 60px;
    position: relative;
    vertical-align: top;
}
#locationsPanel .letter {
    font-weight: bold;
    margin-top: 90%;
    text-align: center;
}
#locationsPanel .listName {
    margin: 2px 0 4px 0;
    padding: 0;
    font-size: 14px;
    font-weight: bold;
}
.listLeftBG {
    float: left;
    width: 45px;
    height: 100%;
    border-right: 1px solid #cccccc;
}
#locationsPanel .listHover, #locationsPanel .listClick {
    border: 1px solid #868686;
}
#locationsPanel .listHover .listLeftBG, #locationsPanel .listClick .listLeftBG {
    background-position: -100px;
}
#locationsNav {
    margin-top: 7px;
}
/*===== END MAP PAGE =====*/


/*===== INDIVIDUAL LOCATION PAGE =====*/
#mapIndividual {
    height: 200px;
    max-width: 300px;
}
#locationDetails {
    clear: both;
    margin-top: 23px;
}
/*===== END INDIVIDUAL LOCATION PAGE =====*/


/*===== STATE LISTING PAGE =====*/
#locationList {
}
#locationList .locationName {
    font-size: 16px;
    font-weight: bold;
    margin: 0 0 7px 0;
}
#locationList ul {
    padding: 0 0 0 20px;
    margin: 6px 0 6px 35px;
}
#locationList li {
}
#locationList .locationTrigger {
    padding: 5px 0 5px 25px;
}
#locationList .locationTrigger.active {
}
#locationList .locationTrigger a {
    font-size: 18px;
    line-height: normal;
}
#locationList .locationContainer {
    margin: 7px 0 3px 25px;
}
/*===== END STATE LISTING PAGE =====*/
/*************** END LOCATIONS ***************/





/*************** MENU ***************/
.menuPageHeader {
    font-size: 24px;
}
.menuPageHeader .sectionHeader {
    font-size: 20px;
}
.menuItems {
    border: none;
    border-bottom: 1px solid #000000;
    border-right: 1px solid #000000;
}
.menuItems td {
    padding: 5px;
    border-top: 1px solid #000000;
    border-left: 1px solid #000000;
    width: 33%;
}
.menuItemName {
    font-weight: bold;
    font-size: 16px;
}
.menuItemDesc {
}
.menuItemPrice {
    font-style: italic;
}
.menuItemPricev1 {
    float: right;
}
/*************** END MENU ***************/





/*************** NEWS ***************/
#allYears {
    margin-right: 10px;
}
#headerRow {
    margin-top: 8px;
}
.date {
    float: left;
    width: 120px;
    padding: 3px 0;
}
.newsRow .title {
    padding: 3px 0;
    margin-left: 120px;
}
.newsRow {
    clear: both;
}
.short_description {
    margin: 0 0 0 120px;
    font-size: .9em;
}
#newsYears {
    padding: 0 0 4px 4px;
    margin: 0;
    list-style: none;
    width: 60px;
    float: left;
}
.yearOn {
    background-color: #bbb49a;
}
#pagePrev {
    display: none;
}
#dirNav {
    padding: 5px 3px 0 0;
    text-align: right;
}
/*************** END NEWS ***************/

.screen-reader-only {
    position: fixed;
    top: 0px;
    left: 0px;
    width: 4px;
    height: 4px;
    opacity: 0;
    overflow: hidden;
    border: none;
    margin: 0;
    padding: 0;
    display: block;
    visibility: visible;
    white-space: nowrap;
}
nav.breadcrumb ol {
    list-style: none;
    padding: 0;
    margin: 0;
}
nav.breadcrumb ol li {
    display: inline;
}
nav.breadcrumb ol li:not(:last-child):after {
    content: "\00A0>\00A0";
}