:root {
	--bt-mid-gray: #939597;
	--navy-blue: #2B3959;
	--accent-blue: #006AB6;
	--cool-blue: #3E598A;
	--bt-light-gray: #E2E3E4;
	--bt-charcoal: #2B2F3A;
}

@font-face {
	font-family: 'Gotham';
	src: url('Gotham Book.otf');
}
@font-face {
	font-family: 'Gotham Bold';
	src: url('Gotham Bold.otf');
}
/******* BEGIN PURE.CSS OVERRIDES ********
.pure-g {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}
******* END PURE.CSS OVERRIDES ********/

/******* BEGIN PURE.CSS OVERRIDES ********/
.pure-button {
	border-radius: 10px;
	margin-right: 1em;
	font-size: 1.5em;
	text-transform: uppercase;
	padding: .3em 1em;
}

body.page__enrollMedicalCode .pure-form .pure-grid-data input, 
body.page__enrollDentalCode .pure-form .pure-grid-data input, 
.pure-form .fieldrow input,
.pure-form .fieldrow textarea,
.pure-form .fieldrow select {
	border-radius: 10px;
	box-shadow: none;
	border: 1px solid #066787;
}

body.page__enrollMedicalCode .pure-form .pure-grid-data input, 
body.page__enrollDentalCode .pure-form .pure-grid-data input {
	padding: .5em .6em;
	font-size: 16px;
}

.pure-form-aligned .pure-control-group.fieldrow label {
	text-align: left;
}

.pure-button-primary, .pure-button-selected, a.pure-button-primary, a.pure-button-selected {
	background-color: var(--accent-blue);
}

.pure-button a {
	color: #fff;
	text-decoration: none;
}

input[type="radio"],
input[type="checkbox"] {
	margin-right: 0.5em;
	margin-bottom: 0.2em;
	border: 0px !important;  /* IE rediculousness */
}

input[type="checkbox"] {
	-ms-transform: scale(1.3); /* IE */
	-moz-transform: scale(1.3); /* FF */
	-webkit-transform: scale(1.3); /* Safari and Chrome */
	-o-transform: scale(1.3); /* Opera */
	transform: scale(1.3);
}

.pure-input-swapped {
	margin-left: 0.5em;
}

.pure-form legend {
	color: inherit;
}

.pure-form-aligned .pure-control-group.checkbox label {
	width: inherit;
}

.pure-form-aligned .pure-control-group.radio label {
	width: inherit;
}

.pure-g [class *="pure-u"] {
	font-family: 'Gotham';
}

.pure-g.viewerHeader [class *="pure-u"] {
	font-family: 'Gotham Bold';
}

/******* END PURE.CSS OVERRIDES ********/

html {
	color: #003f5e;
	font-size: 16px;
}

body {
	margin-top: 23px;
	min-width: 768px;
	zoom: 85%;
}

a {
	color: #003f53;
}
.no-underline {
	text-decoration: none;
}
.all-caps {
	text-transform: uppercase;
}
.horiz-nav-link {
	margin-right: 17px;
	display: inline-block;
}
.headerNavRight .horiz-nav-link {
	margin-right: 0px;
	margin-left: 17px;
}

textarea#content {
	color: #000;
	font-size: 1em;
	margin-left: 5px;
}

body.page__logout .imageRow,
body.page__ssoLoginFailure .imageRow,
body.page__twoFA .imageRow,
body.page__landing1 .imageRow, body.page__landing2 .imageRow, body.page__landing3 .imageRow, body.page__landing4 .imageRow, body.page__landing5 .imageRow,
body.page__landing6 .imageRow, body.page__landing7 .imageRow, body.page__landing8 .imageRow, body.page__landing9 .imageRow, body.page__landing10 .imageRow,
body.page__landing11 .imageRow, body.page__landing12 .imageRow, body.page__landing13 .imageRow, body.page__landing14 .imageRow, body.page__landing15 .imageRow,
body.page__landing16 .imageRow, body.page__landing17 .imageRow, body.page__landing18 .imageRow, body.page__landing19 .imageRow, body.page__landing20 .imageRow,
body.page__landing21 .imageRow, body.page__landing22 .imageRow, body.page__landing23 .imageRow, body.page__landing24 .imageRow, body.page__landing25 .imageRow,
body.page__landing26 .imageRow, body.page__landing27 .imageRow, body.page__landing28 .imageRow, body.page__landing29 .imageRow, body.page__landing30 .imageRow,
body.page__landing31 .imageRow, body.page__landing32 .imageRow, body.page__landing33 .imageRow, body.page__landing34 .imageRow, body.page__landing35 .imageRow,
body.page__landing36 .imageRow, body.page__landing37 .imageRow, body.page__landing38 .imageRow, body.page__landing39 .imageRow, body.page__landing40 .imageRow,
body.page__landing41 .imageRow, body.page__landing42 .imageRow, body.page__landing43 .imageRow, body.page__landing44 .imageRow, body.page__landing45 .imageRow,
body.page__resetOwnPassword .imageRow {
	display: flex;
}
body.page__resetOwnPassword .imageRow {
	margin-top: 28px;
}

.imageRow {
	display: none;
}

body.page__landing .imageRow{
	position: inherit;
}

.imageRowContainer {
	width: 100%;
}

.imageRow .bannerImgDiv {
	max-width: 1366px;
	display: block;
	margin: 0 auto;
}

.contact-icon {
	width: 100%;
	/* the next two lines are merely to reduce the css flicker in older IE */
	max-width: 145px;
	max-height: 108px;
}

.contact-icon-top {
	padding-top: 35px;
}

.contact-icon-bottom {
	padding-bottom: 35px;
}

.home-icon {
	height: 45px;
}

.loginFormHeader {
	font-size: 44px;
	font-family: 'Gotham Bold';
	margin-bottom: 20px;
}

.loginFormFooter {
	font-size: 14px;
	margin: 24px 0;
	clear: both;
}

.loginFormWelcome {
	background: none;
	color: inherit;
	margin-bottom: 2em;
	margin-top: 0;
	text-align: right;  
}

.loginFormWelcome img {
	width: 100%;
	max-width: 520px;
}

.loginFormTitle {
	font-weight: bold;
	font-size: 2em;
	margin-bottom: 18px;
	margin-top: 54px;
}

.loginForm #submit {
	background-color: #fff;
	color: var(--accent-blue);
	border-radius: 10px;
	font-size: 20px;
	font-weight: bold;
	padding: 8px 2.0em;
	margin-bottom: 16px;
	border: none;
}

body.page__landing .mainContent,
body.page__login .mainContent {
	background-color: var(--cool-blue);
	color: #fff;
	display: flex;  /* need this to override imageRow's hidden */
	padding-bottom: 20px;
	padding-top: 40px;
}
body.page__login .mainContent input {
	color: var(--navy-blue);
	border: 1px solid black;
}
body.page__login .mainContent .pure-u-sm-20-24 {
	display: flex;
}

body.page__login label {
	margin: 0.5em 0 0.8em 0;
	font-size: 19px;
}

.resetOwnPasswordLinkDiv {
	float: right;
	background-color: var(--navy-blue);
	padding: 8px 1.4em;
	font-size: 20px;
	border-radius: 10px;
	margin-bottom: 16px; /* matches LOGIN button, in case RESET button it too wide to goes to next line */
	color: #fff;
	text-decoration: none;
}
.resetOwnPasswordLinkDiv:hover,
div.homeMenuDiv:hover {
	background-image: linear-gradient(transparent,rgba(0,0,0,.05) 40%,rgba(0,0,0,.1));
}



/*
div.header {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}
*/
.headerNav {
	margin-top: 0.8em;
	text-transform: uppercase;
	background-color: var(--navy-blue);
	color: #fff;
	text-align: center;
}
.headerNavLeft {
	height: 67px;
	align-content: center;
}

.adminHeader {
	border-top: 1px solid #003f5e;
	padding: 1em 0;
}

.welcomeDiv {
	font-size: 28px;
	width: 100%;
}
.bold {
	font-weight: bold;
}

.headerNavRight,
.adminHeader {
	text-align: right;
}

.adminHeader .horiz-nav-link {
	margin-right: 0;
}
.adminHeader .horiz-nav-link + .horiz-nav-link {
	margin-left: 17px;
}

.rightHeaderText {
	margin-top: 35px;
}

.double_enroll_jump_div, .double_enroll_jump_div a {
	margin-bottom: 1em;
	font-weight: bold;
	color: #a9cce3;
}

/******* BEGIN HAMBURGER!!! *******/
.custom-wrapper {
    margin-bottom: 0.3em;
    -webkit-font-smoothing: antialiased;
    height: 100%;
    overflow: hidden;
    background-color: var(--navy-blue);
}

.custom-wrapper.open {
    height: 17.6em;
}

.custom-toggle {
    border: 1px solid #fff;
    display: block;
    top: 0;
    display: none;
    padding: 9px 10px;
}

.custom-toggle .bar {
    background-color: #fff;
    display: block;
    width: 26px;
    height: 2px;
}

.custom-toggle .bar + .bar {
    margin-top: 4px;
}

div.hamburger {
	display: none;
	height: 37px;
	width: 47px;
	margin-top: 16px;
}

/*
 * Commenting the hamburger menu out as it will not be needed on all sites
 * Here is an example of how to turn it on though... width will be determined
 * by contents on menu on the site on which you are adding it to.
 * You may also need to enter custom css for the following elements based on the site:
 *  - .headerNavLeft.tallerForMenu
 *  - .custom-wrapper.open 
 *
 * @media (max-width: 899px) {
 *     div.hamburger,
 *     .custom-toggle {
 *         display: block;
 *     }
 * 
 *     .menudiv {
 * 	margin-left: 10px;
 *     }
 * }
 */

.menudiv {
	height: 100%;
}

.headerNavLeft.tallerForMenu {
	height: 281px;
}

.headerNavLeft.tallerForMenu .pure-menu-item {
	text-align: left;
}


.homelink {
	display: block;
	float: left;
	margin-right: 1em;
	margin-top: 11px; 
}

li.pure-menu-item {
	padding: 0.2em;
	height: unset;
}

.pure-menu-list {
	height: 100%;
	align-content: center;
}
/*******  END  HAMBURGER!!! *******/

body.page__login div.buttons {
	padding-top: 0;
	height: 3em;
	margin-top: 1em;
}

.systemTitle {
	font-size: 1.8em;
	text-transform: uppercase;
	padding: 26px 0 20px 26px;
}

.imageRow_inner, .mainTableBottom_inner, .beneTips_inner, .mainTableTopContent, .headerNavLeft, .header_inner, .adminMainTable_inner, .adminHeader {
	max-width: 1500px;
	margin: auto;
}
.header_inner_left, .header_inner_right {
	width: 50%;
	float: left;
}

.mainTableTop {
	padding: 2em 0;
}
.mainTableTopContent {
	background-color: var(--cool-blue);
	border-radius: 10px;
	color: #fff;
}
body.page__home .mainTableTopContent {
	background-color: #fff;
}
.main-table-top-content-right {
	float: right;
	padding: 0 20px 20px 20px;
}

.double_enroll_jump_div, 
.mainTableTopContent .content {
	padding: 0 26px 10px 26px;
}

.mainTableTopContent .content p {
	margin-top: 0;
}

div.buttons {
	padding-top: 2em;
}

div.buttons input {
	margin-bottom: 2em;
}

.mainTableBottom {
	padding: 2em 0;
	background: #fff;
}

@media (min-width: 864px) {
	body.page__home .mainTableBottom {
		padding: 0 0 2em 0;
	}
}

.beneTips {
	background: var(--cool-blue);
	color: #fff;
	padding: 1em 0;
}

.footer {
	background: var(--bt-charcoal);
	padding-top: 30px;
	padding-bottom: 27px;
}
.footer a,
.menudiv a,
.adminHeader a{
	color: #fff;
}

span.form_tooltip {
	color: red;
	padding-left: 1em;
}

.system-alert-message {
	background: #f00;
	color: #fff;
	font-weight: bold;
	padding: 5px;
	text-align: center;
}

.confirmationPageTitle,
.subTitle {
	color: var(--accent-blue);
	text-transform: uppercase;
	margin-bottom: 0.5em;
	margin-top: 1em;
	font-size: 2em;
	font-family: 'Gotham Bold';
}

body.page__quickEnroll div.tuition {
	margin-top: 2em;
}
body.page__quickEnroll div.tuition label div {
	margin-top: 1em;
}

.viewer {
	margin: 0 0 1em;
	width: 100%;
}

div.container div.pure-g div.viewer [class*='pure-u'],
div.container div.pure-g div.viewer {
	font-family: "Gotham";  /*"Arial Narrow", "Helvetica Condensed", Arial, Helvetica, sans-serif;*/
}
div.container div.pure-g div.viewerHeader [class*='pure-u'],
div.container div.pure-g div.viewerHeader {
	font-family: "Gotham Bold";  /*"Arial Narrow", "Helvetica Condensed", Arial, Helvetica, sans-serif;*/
}

div.homeMainTitle1 {
	font-family: 'Gotham Bold';
	color: var(--bt-mid-gray);
	font-size: 34px;
	text-transform: uppercase;
}
div.homeMainTitle2 {
	font-family: 'Gotham Bold';
	color: var(--accent-blue);
	font-size: 58px;
	text-transform: uppercase;
	margin-top: -10px;
	margin-bottom: 10px;
}
div.homeMainSub {
	color: var(--navy-blue);
	font-size: 20px;
}
div.notice {
	background-color: var(--bt-charcoal);
	color: #fff;
	border-radius: 10px;
	width: 60%;
	font-size: 22px;
	display: flex; 
	flex-direction: row;
	align-items: center;
}

div.notice_wrapper {
	display: flex;
	flex-direction: row;
	align-items: end;
}

div.notice_image {
	margin-left: 30px;
	margin-top: 10px;
}

div.notice_main {
	padding: 1em 0;
}

div.notice h2 {
	font-size: 26px;
	margin: 0;
	text-transform: uppercase;
}

div.notice a {
	color: #fff;
	text-decoration: none;
}

div.homeMenuDiv {
	float: left;
	width: 160px;
	margin-bottom: 2em;
	background-color: var(--cool-blue);
	margin-right: 10px;
	border-radius: 10px;
	min-height: 176px;
	align-content: center;
}
div.homeMenuDiv.last {
	margin-bottom: 0;
	margin-right: 0;
}

div.homeMenuDivIcon {
	width: 100%;
	float: left;
	text-align: center;
	margin: 12px 0 4px;
}

div.homeMenuDivLink {
	padding-top: 0.3em;
	clear: left;
	font-size: 13px;
	text-align: center;
	margin: 0 10px 10px 10px;
	color: #fff;
}

div.homeMenuDivText {
	color: #0d607e;
	display: none;
}

.confirmationTable {
	width: 100%;
}

.confirmationLabel {
	vertical-align: top;
}

.jsPrintLink {
	text-decoration: none;
}

.jsPrintLink img {
	margin-right: 0.5em;
}

.confirmationTable td.confirmationTitle,
table.dbdisplay thead tr,
table.report_table tr.report_table_header,
.viewerHeader {
	background-color: var(--bt-light-gray);
	color: var(--navy-blue);
	text-transform: uppercase;
	padding: 0.5em 1em;
	margin-bottom: 2px;
	font-size: 1em;
	border-radius: 10px;
}

/* so ELECTION text doesn't run out of room on small screens */
body.page__changeMedical .viewerHeader,
body.page__changeDental .viewerHeader,
body.page__changeVision .viewerHeader,
body.page__changePrescription .viewerHeader {
	font-size: 0.95em;
}

.confirmationTable {
	margin-top: 1.3em;
}

.confirmationTable td.confirmationColHdr {
	color: #003f5e;
}

.viewerHeader.viewerHeaderCurrent {
	background-color: #ccd7ee;
}

.viewerHeader div,
.viewerData div {
	vertical-align: middle;
}

.padRight {
	padding-right: 1em;
}

.confirmationTable td,
table.dbdisplay tbody tr,
table.report_table tr,
.viewerData {
	color: var(--navy-blue);
	padding: 0.5em 1em;
	margin-bottom: 2px;
	font-size: 1em;
}

.detailedEmpcovViewerWrapper .viewerHeader, 
.detailedEmpcovViewerWrapper .viewerData {
	background-color: #fff;
	padding: 0;
}

.detailedEmpcovViewerWrapper .viewerHeader .detailedEmpcovViewerCurrent {
	background-color: #CCD7EE;
	padding: 0.5em 0;
	border-radius: 10px;
}
.detailedEmpcovViewerWrapper .viewerHeader .detailedEmpcovViewerFuture {
	background-color: var(--bt-light-gray);
	padding: 0.5em 0;
	border-radius: 10px;
}

.detailedEmpcovViewerWrapper .viewerHeader .detailedEmpcovViewerCurrent  .detailedEmpcovViewerCurrent, 
.detailedEmpcovViewerWrapper .viewerHeader .detailedEmpcovViewerFuture .detailedEmpcovViewerFuture {
	margin-left: 1em;
}

.detailedEmpcovViewerWrapper .viewerData .detailedEmpcovViewerCurrent,
.detailedEmpcovViewerWrapper .viewerData .detailedEmpcovViewerFuture {
	background-color: #fff;
	padding: 0.5em 0;
}

.detailedEmpcovViewerWrapper .viewerData .detailedEmpcovViewerCurrent .detailedEmpcovViewerCurrent,
.detailedEmpcovViewerWrapper .viewerData .detailedEmpcovViewerFuture .detailedEmpcovViewerFuture {
	margin-left: 1em;
	padding-bottom: 0;
}

div.currentOnly div.viewer div.detailedEmpcovViewerFuture div.contentDivText {
	float: left;
	width: 50%;
}

div.currentOnly div.viewer div.detailedEmpcovViewerFuture div.contentDivText.additionalDetailsLink {
	width: 25%;
}

.detailedEmpcovViewerWrapper .viewerData div {
	vertical-align: top;
}
/*
.detailedEmpcovViewerWrapper .viewerData {
	display: flex;
}
*/
.detailedEmpcovViewerWrapper div.hidden-button {
	visibility: hidden;
}

.detailedEmpcovViewerWrapper .contentDivText {
	margin-bottom: 0.5em;
}

.dataDiv {
	margin-bottom: 1em;
}

.dependentBeneficiarySelectionViewer .viewerData {
	margin-bottom: 0;
	padding: 0.3em 1em;
}
.dependentBeneficiarySelectionViewer .viewerData .dataDiv {
	margin: 0;
}
.dependentBeneficiarySelectionViewer .viewerData.firstRow {
	padding-top: 1em;
}
.dependentBeneficiarySelectionViewer .viewerData.lastRow {
	padding-bottom: 1em;
}

.pure-form .inputDiv select {
	padding: 0.3em 0.6em;
}

.manageBeneficiariesButton {
	margin-top: 1em;
}

.manageBeneficiariesButton,
.manageBeneficiariesButton a {
	width: 19em;
}

.copy-beneficiaries-button {
	background: var(--cool-blue);
	color: #fff;
	font-size: 1em;
	margin-bottom: 0.5em;
}

.button-short.beneficiary-button {
	width: 5em;
	margin-top: 0;
	margin-bottom: 0.2em;
}

a.cbxLink {
	background: url(../commonImages/checkbox-unchecked.png) no-repeat center center;
	text-decoration: none;
}
a.cbxLink:hover {
	background: url(../commonImages/checkbox-hover.png) no-repeat center center;
}
.currentlySelectedBenefitOption,
.currentlySelectedBenefitOption a {
	background-color: #8CC63F;
	color: #fff;
	border-radius: 10px;
}
html body div.currentlySelectedBenefitOption a.cbxLink_checked,
html body div.currentlySelectedBenefitOption a.cbxLink_checked:hover {
	background: #8CC63F url(../commonImages/checkbox-checked.png) no-repeat center center;
}
	
.dependentsViewerWrapper {
	margin-bottom: 1.5em;
}

.button-margin-top {
	margin-top: 1em;
}

.button-short {
	font-size: 1em;
	margin-top: -0.8em;
	margin-bottom: -0.4em;
	margin-right: 0.3em;
	padding: 0.2em 0.4em;
}

.button-medium {
	font-size: 1em;
	margin-bottom: 0.5em;
}

.upload-button {
	margin-top: 0.1em;
}
body.page__enrollSpousalSurcharge label[for="upload"] {
	width:12em;
}

/* IE won't let us do just "display:none" */
.pure-form .fieldrow input[type="file"] {
	position: absolute;
	width: 0px;
	height: 0px;
	padding: 0px;
	margin: 0px;
	overflow: hidden;
	clip: rect(0,0,0,0);
	border: 0px; 
}

label[for="upload"] {
	float: left;
}

div#myUploadFileName {
	border: 1px solid #066787;
	padding: 1em;
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
	border-radius: 10px;
}

body.page__libraryOther1 div#myUploadFileName,
body.page__uploadLOA div#myUploadFileName {
	margin-top: 0.5em;
}

div.spousalSurchargeRadioButtonHeader {
	font-weight: bold;
	padding-top: 1em;
}

div.formFieldSuccess {
	border: 1px solid #d6e9c6;
	background-color: #dff0d8;
	color: #468847;
	padding: 0.5em;
	margin: 0.5em 0;
}

.qmcsoError,
form div.error { 
	border: 1px solid #ebccd1;
	background-color: #ffeeff;
	color: #e21b1e;
	padding: 0.5em;
	margin: 0.5em 0;
	border-radius: 10px;
}

.errorViewer {
	margin: 1em 0;
	border: 1px solid #ebccd1;
	background-color: #ffeeff;
	color: #e21b1e;
	border-radius: 10px;
}
	
.errorMsg {
	text-decoration: none;
	padding: 1em;
}

.errorHdr {
	font-weight: bold;
}

.text-left {
	text-align: left;
}
.text-right {
	text-align: right;
}
.text-center {
	text-align: center;
}

.confirmationData-totalRow {
	border-top: 1px solid #066787;
}

.fsa_credit_div, .hsa_credit_div {
	margin-bottom: 1em;
}

/******* Library table *******/
.libraryMainTable {
	text-align: center;
	width: fit-content;
	margin: auto;
}

.libraryMainTable div {
	float: left;
}

.libraryMainTable .glossaryLink {
	color: #5a82b5;
	font-size: 10pt;
	font-weight: bold;
	text-decoration: none;
}

dd {
	margin: 0 0 1em;
}

/******* HSA Form ******/
label[for=hsacheckbox] {
	float: left;
	margin-right: 0;
}

input.hsacheckbox {
	margin: 1em;
}

.hsacheckboxLabelBox {
	text-align: left;
	border: thin solid black;
	height: 20em;
	overflow: auto;
	margin: 1em 1em 1em 0;
	width: 700px;
	float: left;
}

.hsacheckboxLabelBox p {
	margin-left: 4px;
	margin-top: 0px;
}

/******* Progress Bar *******/
.meter-header {
	float: left;
	font-weight: normal !important;
	font-size: 1.5em;
	text-transform: uppercase;
	margin-bottom: 0.5em;
}

.meter-header-complete {
	float: right;
	font-weight: normal !important;
	text-transform: uppercase;
	margin: 2em 0 0;
}

.meter-header .tt {
	background: url("../commonImages/bg_tooltip.jpg") no-repeat scroll center center;
	display: inline-block;
	height: 17px;
	width: 17px;
}

.meter {
	height: 23px;
	overflow: hidden;
	clear: both;
	padding: 8px;
	border: 1px solid #78a6be;
	-webkit-box-shadow: inset 0 0 10px 2px #78a6be;
	-moz-box-shadow: inset 0 0 10px 2px #78a6be;
	box-shadow: inset 0 0 10px 2px #78a6be;
	border-radius: 10px;
}

.meter span.progress {
	background-image: url("../commonImages/progress_bar_background.jpg");
}
body.page__complete .meter span.progress {
	background-image: url("../commonImages/progress_bar_background_complete.jpg");
}
body.page__complete .meter {
	margin-bottom: 2em;
}
body.page__complete .meter-header {
	margin-top: 0;
}
body.page__complete .meter-header-complete {
	margin: 0.5em 0 0;
}

.meter span {
	background-color: #066787;
	height: 100%;
	float: left;
}

/******* BEGIN Shopping Cart *******/
div.cart-icon {
	float: right;
	top: 8px;
}
div.cart-icon .horiz-nav-link {
	margin-right: 0;
}
div.cart-icon img.cart-icon {
	width: 30px;
}

div.cart-header {
	width: 100%;
	background-color: var(--accent-blue);
	height: 67px;
	padding: 0;
	align-content: center;
	margin-bottom: 28px;
}

div.cart-header-text {
	font-size: 28px;
	width: 100%;
	text-align: center;
	color: #fff;
	font-weight: bold;
}

div.cart {
	right: -500px;
	top: 0px;
	width: 500px;
	position: fixed;
	z-index: 300;
	background-color: var(--bt-light-gray);
	height: 100%;
	overflow-x: hidden;
	transition: right 1s ease;
}

div.cart-top {
	width: 100%;
	text-align: center;
	margin-top: 20px;
	margin-bottom: 20px;
}

div.cart-top-x {
	text-align: right;
	margin-right: 16px;
}

div.cart-slided {
	right: 0px;
}

a.flyout-slided {
	right: 500px;
}

div.container {
	width:100%;
	transition: width 1s ease;
}
div.container-slided {
	width:calc(100% - 501px);
}

div.cart-inner {
	position: relative;
	height: 100%;
}

div.cart-section {
	color: #000;
	padding: 0.5em 1em;
	font-size: 1em;
	border-bottom: 1px solid #999;
	margin: 0 16px;

}
div.cart-section.cart-section-last {
	border-bottom: none;
}

div.cart-section-current {
	background-color: #d6d6d6;
}

div.cart-section-cov-type {
	padding: 5px 0;
}

div.cart-section-enrolled-ind {
	width: 2em;
	float: left;
}

div.cart-section-enrolled-ind img {
	width: 1.3em;
}

div.cart-section-cov-text {
	overflow-x: auto;
	float: left;
	font-weight: bold;
	font-size: 15px;
}

div.cart-section-cov-text a {
	text-decoration: none;
}
div.cart-section-cov-text a:hover {
	text-decoration: underline;
}

div.cart-section-status-text {
	text-align: right;
}

div.headerNavLeft div.menudiv .pure-menu-horizontal {
	float: left;
	width: unset;
	height: 100%;
	white-space: normal; /* undoes pure-min.css' nowrap for sites with too many menu items */
}
/*******  END  Shopping Cart *******/


/******* Admin Site *******/
span.enableImportButtonSpan {
	float: right;
}

body.page__adminReports table.adminReportsMainTable td {
	padding:1em;
}

body.page__dba table {
	width: 100%;
}

table.dbdisplay {
	text-align: center;
}

#dbasearchform {
	text-align: center;
	margin-bottom: 0.5em;
}

span.searchfield input {
	margin-right: 15px;
}

span.searchfield label {
	margin-right: 2px;
}

div.dbdisplay div.scroll span a {
	color: #000;
	position: relative;
}
div.dbdisplay div.scroll span a.disabled { color: #999; }
div.dbdisplay div.scroll span a span.img {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    margin: 0;
    padding: 0;
    height: 16px;
    width: 16px;
    background: url(../commonImages/sprite.gif) 0 0 no-repeat;
}
div.dbdisplay div.scroll span.first a span.img { background-position: 0 0; }
div.dbdisplay div.scroll span.first a.disabled span.img { background-position: 0 -16px; }
div.dbdisplay div.scroll span.first a span.txt { margin-left: 16px;}
div.dbdisplay div.scroll span.previous a span.img { background-position: -16px 0; display: inline;}
div.dbdisplay div.scroll span.previous a.disabled span.img { background-position: -16px -16px; display: inline;}
div.dbdisplay div.scroll span.previous a span.txt { margin-left: 16px;}
div.dbdisplay div.scroll span.next a span.img { background-position: -32px 0; left: auto; right: 0; display: inline;}
div.dbdisplay div.scroll span.next a.disabled span.img { background-position: -32px -16px; display: inline;}
div.dbdisplay div.scroll span.next a span.txt { margin-right: 16px;}

#ajaxspinner,
body.page__dba div#pagetitle,
body.page__adminLogin div.systemTitle {
	display: none;
}

div.scroll, div.search {
	text-align: center;
	font-weight: bold;
	color: #333;
	font-size: 80%;
	padding: 3px;
	border-bottom: 1px solid black;
	line-height: 1.5em;
}

div.dbdisplay a {
	text-decoration: none;
}

div.dbdisplay th a {
	color: #fff;
}

table.dbdisplay th,
table.dbdisplay td,
table.report_table th,
table.report_table td {
	padding: 0.5em 1em;
	font-weight: normal;
	border-bottom: 2px white solid;
}

div.scroll form {
	margin: 0;
	padding: 0;
}

div.dbdisplay div.buttons {
	display: none;
}

.report_header {
	font-size: 1.3em;
	margin-top: 1.3em;
}

div.report_header.data_column {
	border-bottom: 1px solid #e5e5e5;
	margin-bottom: 0.3em;
	padding: 0.3em 0;
}

.report_content {
	margin: 0.5em 0 1em;
}

.report-button {
	width: 12em;
}

.small-report-button {
	width: 17em;
	font-size: 1em;
	margin-top: 0.5em;
	margin-bottom: 1em;
}

.report-checkbox {
	width: 10px;
}

table.pure-form tr.fieldrow td {
	padding: 0 0.5em 0.5em 0;
}
	
body.page__dba input#submit,
body.page__dba input.editor_ok_button {
	background-color: #003f5e;
	border: none;
	color: #fff;
	text-transform: uppercase;
	padding: 0.6em 1em;
	margin-right: 0.3em;
}

body.page__dba table.dbdisplay thead tr {
	background-color: var(--cool-blue);
}

body.page__dba input {
	border: 1px solid #066787;
	padding: 0.5em 0.6em;
	margin-left: 0.3em;
	margin-bottom: 0.5em;
	border-radius: 10px;
}

div.adminLogoutDiv div {
	text-align: center;
	padding: 0.5em;
}

/******* TierBenefit *******/
div.tierLabel {
	display: inline;
	vertical-align: top;
}

.viewerSubRow {
	font-size: 0.9em;
	font-style: italic;
}
/******* LiveBetter *******/
.livebetter_cbx_label {
	font-weight: bold;
	margin-left: 1em;
}
.livebetter_date_label {
	margin-left: 2.5em;
}

/****** AdditionalInfo ******/
div .pure-control-group.additional-info {
	margin-bottom: 2em;
}
.pure-control-group.additional-info input {
	margin-bottom: auto;
	width: 4em;
}

.pure-control-group.additional-info label {
	width: 80%;
	text-align: left;
}

/****** Flyouts (from Blackout) ******/

.flyout {
	background-position: left top;
	background-repeat: no-repeat;
	background-size: contain;
	font-family: "franklin-gothic-urw",sans-serif;
	font-size: 18px;
	height: 60px;
	line-height: 1;
	overflow: hidden;
	padding: 1.1em 0 0 3.4em;
	position: absolute;
	right: 0;
	text-transform: uppercase;
	width: 60px;
	z-index: 11;
	white-space: nowrap;
	box-sizing: border-box;
}

.flyout-transition {
	-webkit-transition: width 2s; /* Safari */
	transition: width 2s;
}

.flyout.phone {
	background-image: url(../commonImages/Phone.png);
	background-color: var(--navy-blue);
	top: 14em;	
}

.flyout.chat {
	background-image: url(../commonImages/Chat.png);
	background-color: var(--bt-charcoal);
	top: 17.6em;	
}

.flyout.email {
	background-image: url(../commonImages/Email.png);
	background-color: var(--bt-mid-gray);
	top: 21.2em;	
}

.flyout.basket {
	background-image: url(../commonImages/Basket.png);
	background-color: var(--cool-blue);
	top: 24.8em;	
}

/* sites the hide the banner image also need minimum-heights set on .mainTableTop so that the flyouts don't float down into the white section below (see Invenergy for example) */

@media (min-width:1101px) {
	.flyout {
		background-position: 2px 0;
		padding: 1.4em 0 0 4.1em;
		width: 70px;
		height: 70px;
	}

	.flyout.chat {
		top: 18.2em;
	}
	.flyout.email {
		top: 22.4em;
	}
	.flyout.basket {
		top: 26.6em;
	}
}

@media (min-width:1301px) {
	.flyout {
		background-position: 6px 0;
		padding: 1.5em 0 0 4.6em;
		width: 76px;
		height: 73px;
	}

	.flyout.chat {
		top: 18.5em;
	}
	.flyout.email {
		top: 23.0em;	
	}
	.flyout.basket {
		top: 27.5em;	
	}
}	

a.flyout {
	text-decoration: none;
	border-radius: 10px 0 0 10px;
}

a.flyout.phone,
a.flyout.chat,
a.flyout.basket,
a.flyout.email {
	color: #fff;
}


.mainTableTop .flyout-transition:hover,
.flyout-transition:hover {
	width: 358px;
}

/* hide flyouts on devices smaller than standard iPads, and reclaim space on right side of screen for main content */
@media (max-width: 863px) {
	.flyout {
		display: none;
	}	

	.mainTableTop .noBannerImage_left {
		width: 100%;
	}

	.mainTableTop .noBannerImage_right {
		width: 0;
	}
}

@media (max-width: 863px) {
	.header {
		margin-left: 15px;
		margin-right: 15px;
	}
	.headerNav {
		padding-left: 15px;
		padding-right: 15px;
	}

	.beneTips,
	.footer,
	body.page__login .mainContent,
	body.page__twoFA .mainContent,
	.mainTableTop,
	.mainTableBottom,
	.adminMainTable {
		padding-left: 15px;
		padding-right: 15px;
	}
}

@media (max-width: 979px) {
	.viewer {
		font-size: 0.95em;
	}
	
	.confirmationTable td, table.dbdisplay tbody tr, table.report_table tr, .viewerData, 
	.confirmationTable td.confirmationTitle, table.dbdisplay thead tr, table.report_table tr.report_table_header, .viewerHeader {
		padding: 0.3em 1em;
	}
}

/******* Report LOA ********/
.loa_bigger_label {
	font-weight: bold;
	font-size: 125%;
	margin-top: 2em;
}

.loa_big_label {
	margin-top: 1em;
	font-size: 115%;
}

.loa_content {
	font-style: italic;
}

div.fieldrow.cbx.loa_acknowledge {
	margin-bottom: 2em;
}

.pure-control-group.fieldrow.leave_schedule_more_info label {
	text-align: right;
}

div.loa_content_under_radio {
	margin-left: 1.4em;
}

div.loa_name_wrapper {
	vertical-align: middle;
}

.pure-form-aligned .pure-control-group.fieldrow label.loa_name_label {
	text-align: right;
	width: initial;
}

.pure-form-aligned .pure-control-group.fieldrow label.loa_faml_radio_label {
	width: 80%;
}

.pure-form-aligned .pure-control-group.fieldrow label.loa_faml_sub_radio_label {
	display: inline;
}

div.loa_faml_sub_radio {
	vertical-align: middle;
}

.pure-form-aligned .pure-control-group.fieldrow .loa_faml_date_label {
	width: inherit;
}

.termsBox {
	border: 1px solid #066787;
	padding-right: 25px;
	height: 15em;
	overflow: auto;
}

html body.page__documentsLOA div.fieldrow.certification.checkbox.pure-control-group {
	margin-top: 3em;
}

.loa_confirm_label {
	font-weight: bold;
	vertical-align: top;
}

.loa_confirm_value {
	vertical-align: top;
}

.pure-form-aligned .pure-control-group label[for="reduced_work_schedule_more_info"] {
	width: 18em;
}

/******* Pure_GridForm *******/
.pure-form .pure-grid-data input {
	border-radius: 0;
	box-shadow: none;
	border: 1px solid #066787;
	font-size: 1em;
	padding: 0.1em 0.6em;
}

/********* Dependent Popup ***********/
.dependentCertificationPopupHeader {
	background-color: var(--cool-blue);
	color: white;
	padding: 1em;
	border-radius: 10px;
}
.dependentCertificationPopupLabel {
	font-weight: bold;
	margin-top: 1em;
	margin-bottom: .5em;
}

/******** FSA Calculator *********/
#fsaWorksheet fieldset {
	padding: .5em;
	border: 1px solid #066787;
	width: 90%;
	margin: 1em auto;
}

#fsaWorksheet legend {
	border: 1px solid #066787;
	padding: .25em;
}

#fsaWorksheet fieldset.noborder {
	border: none;
}
#fsaWorksheet input.fsaCalcInput {
	background-color: #FFFF99;
}
#fsaWorksheet div.rightAlign {
	margin-left: auto;
	margin-right: 0;
	text-align: right;
}
div.eight_pt,span.eight_pt {
	font-size: 8pt;
}
#fsaWorksheet .bold {
	font-weight: bold;
}
#fsaWorksheet div.fsaHeader {
	font-weight: bold;
	margin-top: .5em;
	padding: 0;
	text-align: right;
}

#fsaWorksheet div.fsaHeader span {
	text-align: right;
	margin-left: auto;
	margin-right: 0;
	width: 30%;
	padding: 0;
	font-size: 14px;
}

#fsaWorksheet .fieldrow div {
	vertical-align: middle;
}
#fsaWorksheet div.fieldrow.test {
	padding: 0;
	margin: 0;
}

#fsaWorksheet .fieldrow input {
	border-radius: 0;
	box-shadow: none;
	border: 1px solid #066787;
	height: 1.5em;
	margin-top: .25em;
	margin-bottom: .25em;
}

div.savings {
	margin-top: 1em;
}

/******* BEGIN GOOGLE TRANSLATE **********/
html div#WidgetFloaterPanels {
	display:none !important;
}

.spanishLink {
	font-size: 16pt; 
	font-weight:bold; 
	color: #e21b1e;
}

/* need to !important this so Google Translate leaves header text alone, **/
.text-right {
	text-align: right !important;
}

/******** END GOOGLE TRANSLATE ***********/
.emergency_contact_info {
	margin-top: 2em;
}

.emergency_contact_info .pure-form {
	margin-top: 1em;
}

.emergency_contact_info .pure-form .pure-input-1-3 {
	width: 60%;
}

/******* BEGIN BCI SSO IFRAME (4ps) **********/

.iframe_div {
	margin-top: 130px;
	margin-bottom: 76px;
	position: absolute; 
	top: 0px; 
	left: 0px;
	right: 0px; 
	bottom: 0px;
}

iframe#BciFrame {
	position:absolute; 
	width: 100%;
	height: 100%;
	border: none;
}

body.page__bciSso .footer {
	position:absolute;
	width: 100%;
	height: 32px;
	bottom: 0px;
}

/******** END BCI SSO IFRAME (4ps) ***********/

.wellness_acknowledgement_checkbox_header {
	font-weight: bold;
	color: #066787;
}

.wellness_acknowledgement_checkbox_label {
	margin-top: 4px;
}

.fieldrow.wellness_acknowledgement {
	margin-top: 2em;
}

body.page__changeEmployeeCriticalVOL div.confirm,
body.page__changeHospitalVOL div.confirm,
body.page__changeAccidentVOL div.confirm {
	margin-top: 2.5em;
}

.confirmation-total-amount {
	font-size: 28px;
	margin: 18px;

}

/******** BEGIN UNIVERSAL LIFE *************/

body.page__changeEmployeeUniversalLife div.checkbox,
body.page__changeEmployeeUniversalLife div.ded_limit {
	margin-bottom: 1.5em;
}

/********* END UNIVERSAL LIFE **************/

/******** BEGIN BTB *************/
body.page__changeBtbCashOut .pure-form-aligned label,
body.page__changeBtbCashOut .btb_label {
	width: 18em;
}

body.page__changeBtbCashOut .btb_readonly_row {
	padding-bottom: 8px;
}

body.page__changeBtbCashOut .btb_label, body.page__changeBtbCashOut .btb_value {
	float: left;
}

body.page__changeBtbCashOut .btb_label {
	margin-right: 1em;
	font-weight: bold;
}

body.page__changeBtbCashOut .pure-form .pure-input-1-3 {
	width: 6em;
}

/******** END BTB *************/

/*********** BEGIN (Catholic Health) LANDING PAGE **************/

body.page__landing .imageRow {
	min-height: unset;
}
body.page__landing .imageRow a {
	color: #fff;
}
body.page__landing .loginFormWelcome {
	text-align: left;
}

body.page__landing .loginFormTitle {
	margin-top: 10px;
}

body.page__landing .beneTips {
	background: none;
	color: unset;
}

.landing_img {
	text-align: right;
	margin-bottom: 2em;
}
.landing_img  img {
	max-width: 520px;
}

.landing_button {
	background-color: #fff;
	color: var(--accent-blue);
	text-transform: uppercase;
	padding: 8px 2.0em;
	border-radius: 10px;
	font-weight: bold;
	width: fit-content;
}
.landing_button:hover {
	background-image: linear-gradient(transparent,rgba(0,0,0,.05) 40%,rgba(0,0,0,.1));
}

.landing_block_wrapper {
	display: flex;
}

.landing_block {
	border: 1px solid #ccc;
	margin: 10px 0;
	padding: 10px;
	width: 32%;
	float: left;
}

.landing_block_spacer {
	width: 2%;
	float: left;
}

/*********** END (Catholic Health) LANDING PAGE **************/


/******** BEGIN COVID19 VACCINATION STATUS *************/
body.page__reportCovid19VaccinationStatus .pure-form-aligned .pure-control-group label {
	width: 28em;
}
/******** END COVID19 VACCINATION STATUS *************/
body.page__twoFA .fieldrow {
	margin-top: 12px;
}

/* this block should only show in confirmation emails that get sent out, not on screen */
.confirmEmailHTML {
	display: none;
}

/* hide login_id column on old halia Employee Lookup admin page, for all clients by default (only used by Catholic Health) */
body.page__dba th.login_id,
body.page__dba td.login_id {
	display: none;
}

/* hide emp_no search field on old halia Employee Lookup admin page, for all clients by default (only used by Catholic Health) */
body.page__dba label[for="srch_emp_no"],
body.page__dba input#srch_emp_no {
	display: none;
}

.ssn_viewer {
	width: 64%;
}
.ssn_viewer, .eyeball_viewer {
	float: left;
}
.confirmation_ssn_wrapper_block {
	display: block;
}
.confirmation_ssn_wrapper_none {
	display: none;
}

.eyeball_form {
	margin-bottom: -1px;
}
