@charset "utf-8";
/* CSS Document */

h1, h2, h3, h4, h5 {
    font-family: var(--base-header-font-family);
}

h1 {
    /* NOPE - style guide is wrong per mocks font-size: 2.5rem;  40px */
    color: var(--inverse-text-color);
    font-weight: 700;
    font-size: 3rem; /* 48px */
    line-height: 55px;
}

h2 {
    color: var(--primary-color);
    font-size: 2.25rem; /* 36px */
    line-height: 53px;
    font-weight: 700; 
}

h3 {
    color: var(--primary-color);
    font-size: 2rem;   /* 32px */
    font-weight: 400;
    text-transform: none;
}

h4 {
    font-size: 1.375rem;  /* 22px */
    font-weight: 700;
}

h2 + h3 {
    padding-top: 0;
}

input::placeholder {
    color: #58595B;
    opacity: 1;
}

.form-element-container .errorMsg {
    display: flex;
}

a.white-link {
    color: #fff !important;
}

.file-upload label{
    visibility: hidden;
}

.faux-h1 > div {
    font-family: var(--base-header-font-family);
    color: var(--inverse-text-color);
    font-weight: 700;
    font-size: 3rem;
    line-height: 55px;
    margin-bottom: 0.8rem;
}

p, li, div {
    color: var(--text-color);
    font-family: var(--base-font-family);
    line-height: 24px;
}

.big-number {
    font-size: 250%;
    color: var(--primary-color);
    font-weight: 800;
}


/*** Basic Page Control ***/
.row, section.pageBodyRow {
    max-width: var(--row-class-width);
    padding: 0;
}

.section-margin {
    margin-bottom: 2.5rem;
}

/*** [end] Basic Page Control ***/


/*** Header/Megamenu Styles ***/
.topNavContainer, .top-bar, .top-bar ul {
    background-color: #fff;
}

.topNavContainer {
    padding-top: 1rem;
}

.topnav-item {
    position: relative;
}

.menu li .dropdown-pane a, 
.menu.expanded li .dropdown-pane a {
    text-transform: none;
    font-weight: 400;
}

.menu.expanded li.topnav-item {
    padding: 0 1.5rem;
}

.navLogoContainer img,
.navbar-fixed .navLogoContainer a img {
    width: 150px;
    margin-left: 1rem;
}

.quickLinks {
    background-color: var(--light-background);
}

.quickLinks a {
    color: #595959;
}

.quickLinks a:nth-of-type(2) { order: 1; }
.quickLinks a:nth-of-type(3) { order: 2; }
.quickLinks a:nth-of-type(4) { order: 3; }

.quickLinks a, .quickLinks a:active, .quickLinks a:hover {
    color: var(--text-color);
}

.dropdown.menu a, .dropdown.menu a:active, .dropdown.menu a:hover {
    font-weight: 700;
    font-size: 1rem;
    color: var(--secondary-color);
}

.dropdown.menu a.find-provider-button {
    padding: 0.875rem 1rem 1rem;;
}

.dropdown.menu a.find-provider-button::after {
    display: none;
}

.dropdown.menu a.find-provider-button::before {
    font-family: "Font Awesome 6 Pro";
    font-weight: 400;
    content: "\f002";
    padding-right: 0.5rem;
}

.dropdown.menu a.find-provider-button:hover {
    text-decoration: none;
    border-bottom: none;
}

.navLinkContainer a:hover {
    border-bottom: none;
}

.find-provider .button.primary {
    border-bottom: none;
}

.find-provider .button.dropdown::after {
    display: none;
}

.find-provider .button.dropdown::before {
    font-family: "Font Awesome 6 Pro";
    font-weight: 400;
    content: "\f002";
    padding-right: 0.5rem;
}

.find-provider .button.dropdown,
.find-provider .button.dropdown:hover, 
.find-provider .button.dropdown:focus {
    padding: .875rem 1.5rem 1rem 1rem;
    text-decoration: none;
}

#find-provider {
    display: none;
}

#megamenu .top-bar .dropdown-pane {
    top: 54px !important;
    margin-top: -2rem;
    box-shadow: none;
    padding: 2.25rem 0 1rem;
    left: -4px !important;
}

#megamenu .top-bar .dropdown-pane#mm-employers,
#megamenu .top-bar .dropdown-pane#mm-brokers,
#megamenu .top-bar .dropdown-pane#mm-members,
#megamenu .top-bar .dropdown-pane#mm-providers {
    width: 260px;
    max-width: 260px;
}

#megamenu .top-bar .dropdown-pane#mm-login {
    width: 185px;
    max-width: 185px;
}

/*** [end] Header/Megamenu Styles ***/



/*** Section Stuff ***/
.section-white-background h1,
.section-white-background h2 {
    color: var(--primary-color);
}
.section-color-light .marqueePadding {
    padding: 0vh 10vw 1vw;
}

.section-color-light {
    background-color: var(--light-background);
}

.section-color-light h2 {
    color: var(--primary-color);
}

.section-color-light p {
    color: var(--text-color);
}

.section-color-background1 {
    background-color: var(--background-color-1);
    color: var(--text-color);
    font-weight: 400;
}

.section-color-dark {
    background-color: var(--section-color-dark);
}

.section-color-dark h1, .section-color-background2 h1, 
.section-color-dark h2, .section-color-background2 h2,
.section-color-dark h3, .section-color-background2 h3,
.section-color-dark h4, .section-color-background2 h4,
.section-color-dark p, .section-color-background2 p {
    color: var(--inverse-text-color);
}

.section-color-background2 {
    background-color: var(--background-color-2);
    
}

.section-color-dark.marqueePadding {
    padding: 5vh 10vw;
}

/*** [end] Section Stuff ***/




/*** HERO styles ***/
.hero-section3 {
    padding-top: 0;
}

.hero-section3 .hero-section-text h1 {
    /* font-weight: 300; */
}
/*** [end] HERO styles ***/




/*** Spread Stuff ***/
.spread .container, .spread.container {
    display: flex;
}

.spread .column {
    padding-left: 0;
    padding-right: 0;
}

.spread .column .headerBlock {
    padding-left: 1rem;
    padding-right: 1rem; 
}

.spread h3 {
    padding-top: 0;
}

/*** [end] Spread Stuff ***/


/*** Grid Styles ***/

.special-offers.cardGrid .imageBlock img {
    max-width: 300px;
}

.special-offers-grid img {
    box-shadow: 0 2px 8px 0 rgba(0,0,0,.2);
    padding: 2rem;
}


/*** [end] Grid Styles ***/


/*** Testimonial Styles ***/
.blockquote-border { border: none; }

.paragraphBlock.stackedIcon .paragraphContainer { width: 100%; }
.paragraphBlock.stackedIcon .iconImage { margin-bottom: 0; }

.iconImage.icon-scale-2p0 i {
    padding-right: 0;
    font-size: 1.5rem;
}

.testimonials .column {
    padding-left: 0;
    padding-right: 0;
}

.testimonials .paragraph-wrapper p {
    margin-top: 0;
}

/*** [end] Testimonial Styles ***/

/***  Block Grids (not sure why there isn't more) ***/
.blockGrid3 .paragraphBlock .linkContainer {
    display: block; /* this is set to display:grid in basesite file - see if this messes anything */
}



/*** Link Styles ***/
a { color: var(--secondary-color); }

a.standardLink {
    font-weight: 700;
}

.linkContainer .standardLink,
a.standardLink.iconBefore:hover, 
a.standardLink.iconBefore:visited, 
a.standardLink.iconBefore:active {
    display: block;
}

.linkContainer a.standardLink::after,
.article-summary-readmore a::after {
    display: inline-block;
    content: "\f054";
    font-size: 0.8rem;
    font-weight: 800;
    font-family: "Font Awesome 6 Pro";
    padding-left: 0.4rem;
    text-decoration: none;
    line-height: 0.8;
}

.linkContainer.download a.standardLink::after {
    content: "\f33d";
}

.download a.standardLink:hover, 
.download a.standardLink:visited, 
.download a.standardLink:active {
    display: block;
}

.flex-footer-column a.phone-link { 
    color: var(--secondary-color);
    display: block;
    margin-top: 1rem;
}

.back-link .linkContainer {
    margin: 0;
}

.back-link .linkContainer a.standardLink::after {
    content: '';
}

.back-link .linkContainer a.standardLink::before {
    display: inline-block;
    content: "\f053";
    font-size: 0.8rem;
    font-weight: 800;
    font-family: "Font Awesome 6 Pro";
    padding-right: 0.4rem;
    text-decoration: none;
    line-height: 0.8;
}

.jump-links .linkContainer a.standardLink {
    margin: 0 2.75rem;
}

.jump-links .linkContainer a.standardLink::after, 
.jump-links .linkContainer a.standardLink.textLink::after {
    content: "\f105";
}

.telephone p span a {
    color: var(--secondary-color);
    font-weight: bold;
}

.footer-container a.standardLink {
    font-weight: 400;
}

/*** [end] Link Styles ***/




/*** Button Styles ***/
.button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    /*font-family: var(--base-font-family);
    font-weight: var(--base-link-font-bold); */
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: .0075rem;
    text-align: center;
    padding: 0.3rem 1.5rem;
    border-radius: 16px;
    height: 3rem;
    width: auto;
    min-width: 3rem;
    text-decoration: none;
    cursor: pointer;
    margin-bottom: 0;
}

.button.primary {
    background-color: var(--secondary-color);
    color: #fff !important;
    border: 1px solid #fff;
}

.button.secondary {
    background-color: transparent;
    color: var(--secondary-color);
    border: 1px solid var(--secondary-color);
}

.button.primary:hover, .button.secondary:hover,
.button.primary:focus {
    background-color: var(--darker-blue);
    text-decoration: underline;
    color: #fff;
}

.columnBlockContainer a.button {
    margin: 0.5rem 0;
}

/*.centerComponentContent .button:first-child, */
.cardGrid .button:first-child {
    margin-left: 0;
}

input[type="submit"] {
    background-color: var(--secondary-color) !important;
}

/*** [end] Button Styles ***/




/*** Accordion Styles ***/
.accordion-title {
    position: relative;
    display: block;
    padding: 1.25rem 1rem;
    border: 1px solid #e6e6e6;
    border-bottom: 0;
    font-size: 1rem;
    line-height: 1;
    color: var(--secondary-color);
}

.accordion-title::before {
    position: absolute;
    top: 50%;
    right: 1rem;
    margin-top: -0.75rem;
    margin-right: 0;
    content: "\f107";
    font-size: 1.5rem;
    font-weight: 800;
    font-family: "Font Awesome 6 Pro";
}

.accordion-item {
    background-color: var(--light-background);
    margin-bottom: 0.5rem;
    color: var(--secondary-color);
    font-weight: 700;
}

.accordion-content {
    border-bottom: 1px solid #e6e6e6;
}

.is-active>.accordion-title::before {
    content: '\f077';
}

/* This SHOULD be coming from utility.css but for some reason it's not getting picked up */
.accordion-item.is-active .accordion-content {
    display: flex;
    flex-direction: column;
}

#featuresAccordion {
    
}

#featuresAccordion .accordion-content {
    background-color: var(--light-background);
}

#featuresAccordion .accordion-title {
    color: #fff;
    padding-left: 6rem;
}

#featuresAccordion .accordion-item {
    background-color: var(--secondary-color);
    color: #fff;
    margin-bottom: 0.125rem;
}

#featuresAccordion .accordion-item.is-active,
#featuresAccordion .accordion-title:focus, 
#featuresAccordion .accordion-title:hover {
    background-color: var(--darker-blue);
    color: #fff;
}

#featuresAccordion h3 {
    font-size: 1.375rem;  /* 22px */
    font-weight: 700;
}

#featuresAccordion .accordion-title {
    padding: 1.5rem 1rem 1.5rem 6rem;
}

#featuresAccordion .accordion-title::after {
    position: absolute;
    top: 38%;
    left: 1.25rem;
    margin-top: -1rem;
    margin-right: 0;
    content: " ";
    background-repeat: no-repeat;
    height: 55px;
    width: 55px;
}

.visionary .accordion-title::after { background-image: url("/dam/cecvision/images/icons/Icon_Visionary_50x50.png"); }
.inclusive .accordion-title::after { background-image: url("/dam/cecvision/images/icons/Icon_Inclusive_50x50.png"); }
.operations .accordion-title::after { background-image: url("/dam/cecvision/images/icons/Icon_Operations_50x50.png"); }
.service .accordion-title::after { background-image: url("/dam/cecvision/images/icons/Icon_Customer_Service_50x50_white.png"); }
.fine-print .accordion-title::after { background-image: url("/dam/cecvision/images/icons/Icon_Fine_Print_50x50_white.png"); }
.flexibility .accordion-title::after { background-image: url("/dam/cecvision/images/icons/Icon_Flexibility_50x50.png"); }
.affordability .accordion-title::after { background-image: url("/dam/cecvision/images/icons/Icon_Affordability_50x50.png"); }
/*** [end] Accordion Styles ***/



/* Marquee padding on paragraphs */
.marqueePadding .paragraphBlock .linkContainer {
    margin-top: 1rem;
}

.marquee-short-padding .marqueePadding {
    padding: 2vh 10vw;
}


/*** Slider Styles ***/
.presentation-slider .slick-image .slideCopy { padding: 0 1rem; }
.presentation-slider .slick-next, 
.presentation-slider .slick-prev { top: 55%; }
.presentation-slider .slick-next { right: -35px; }
.presentation-slider .slick-prev { left: -35px; }

.careers-slider .presentation-slider .paragraphBlock .paragraphContainer {
    margin-bottom: 1rem;
}

.careers-slider .presentation-slider .slick-image .paragraphBlock {
    padding: 2rem;
}

.presentation-slider h3 {
    padding: 0;
}

.dotsArea {
    background-color: transparent;
}
/*** [end] Slider Styles ***/


/*** Find a Provider search code field on the home page ***/
.home-search-code-field {
    margin-top: -25px;
    margin-bottom: -25px;
}

.tabsContainer {
    text-align: center;
}

.tabs-content {
    display: inline-flex;
    /* overriding these from foundation - maybe just rename this thing */
    border: none;
    background: none;
    color: #000;
    transition: none;
}

.locationSearch {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: row;
}

.searchFormPreamble {
    margin-right: 1rem;
    color: var(--primary-color); ;
    font-weight: 700;
    font-size: 1.375rem; /* 22px; */
    font-family: var(--base-font-family);
}

.zipOnlySearch {
    display: flex;
    align-items: center;
    flex-direction: column;
}

.zipLabelContainer {
    display: inline-block;
    width: 500px;
    margin-right: 1rem;
    border: 1px solid #000;
}

.zipLabelContainer input {
    box-shadow: none;
}

input::-webkit-input-placeholder,
input:-moz-placeholder {
    color: var(--text-color);
}

/***    FAP main code   ****/
.results-page-wrapper {
    display: flex;
}

.searchWrap {
    background: var(--light-background);
    padding: 2rem;
    margin-top: 2rem;
    max-width: 432px;
}

.searchWrap button.button {
    background: var(--secondary-color);
}

.searchWrap label {
    margin-bottom: 1.5rem;
}

.searchWrap h4 {
    font-size: 22px;
    font-weight: 700;
}

.searchWrap hr {
    margin-top: 2.5rem;
    margin-bottom:2rem;
}

.search-select {
    margin-bottom: 2rem;
}

.refine-options {
    padding-top: 0.5rem;
    position: relative;
    display: flex;
    flex-direction: column;
}

.refine-options label {
    margin-bottom: 1.75rem;
    /*margin-bottom: 0.25rem;*/
    display: flex;
    align-items: center;
}

.refine-options label::after {
    position: absolute;
    top: 0;
    right: 9.25rem;
    margin-right: 0;
    content: " ";
    background-repeat: no-repeat;
    height: 40px;
    width: 40px;
}

.refine-options input {
    width: 16px;
    height: 16px;
    margin-bottom: 0;
}

.opt::after {
    background-image: url("/dam/cecvision/images/icons/Optometrist.png");
}

.refine-options label.ophtha::after {
    background-image: url("/dam/cecvision/images/icons/Ophthalmologist.png");
    top: 3.375rem;
}

.refine-options label.optical::after {
    background-image: url("/dam/cecvision/images/icons/Optical-Services.png");
    top: 6.5rem;
}

.refine-options label.retail::after {
    background-image: url("/dam/cecvision/images/icons/Retail-Chain.png");
    top: 9.75rem;
}

.provider-result-print:hover {
    cursor: pointer;
}

.zipErrorMessage, .nameErrorMessage, .practiceErrorMessage, .cityErrorMessage {
    display: none;
    margin-top: -1.5rem;
}

.zipErrorMessage p, .nameErrorMessage p, .practiceErrorMessage p, .cityErrorMessage p {
    color: red;
}

.reset-search {
    margin-left: 0.5rem;
}

a.reset-search::after,
a.reset-filter::after {
    display: inline-block;
    content: "\f054";
    font-size: 0.8rem;
    font-weight: 800;
    font-family: "Font Awesome 6 Pro";
    padding-left: 0.4rem;
    text-decoration: none;
    line-height: 0.8;
}

.columns.pageRegion {
    padding-left: 0;
    padding-right: 0;
}

.provider-wrapper {
    box-shadow: 0 2px 8px 0 rgba(0,0,0,.2);
    margin-bottom: 2rem;
    padding: 1.5rem 1.5rem 0.5rem;
}

.provider-wrapper h4 {
    color: var(--secondary-color);
    margin-bottom: 0.75rem;
}

.practiceDetails {
    clear: both;
    margin-bottom: 1rem;
}

.practiceDetails p {
    color: var(--secondary-color);
}

.practiceDetails a {
    word-wrap: break-word;
}

.details-link {
    position: absolute;
    top: 10px; 
    right: 50px;
}

.details-link {
    font-size: 12px;
        }

.details-link a:after {
    content: "";
    width: 20px;
    height: 20px;
    background: url(/dam/jcr:6a15f7dc-7e59-4882-be05-58cb3ceb39f6/detailsArrow.png) no-repeat;
    top: 2px;
    right: -25px;
    position: absolute;
    display: inline-block;
}

.provider-result-count-wrap {
    margin-top: 0.75rem;
}

.provider-result-count {
    float: left;
}

.provider-result-print {
    float: right;
}

.fa-location-dot {
    margin-right: 0.375rem;
}

.provider-results .medium-6 {
    text-align : right;
}

 .fap-ad-section .section-color-dark {
    background-color: #11203C;
    
}

.fap-ad-section > .row > .container {
    max-width: 97%;
    margin-left: 1rem;
    display: flex;
    padding-top: .5rem;
    padding-top: 1.5rem;
    padding-bottom: .75rem;
    /* align-items: center;
    height: 120px; */
}

.fap-ad-name h4 {
    text-align: center;
    font-family: 'lato';
    letter-spacing: 5px;
}

.fap-ad-button a.button {
    border-radius: 0;
    background-color: #fff;
    color: black;
    padding: 0.3rem 1.25rem;
}

.fap-ad-button.linkContainer {
    margin-top: 0;
}

.small-lasik {
    background: var(--light-background);
    padding: 2rem;
    margin-top: 2rem;
    max-width: 432px;
}

.small-lasik p {
    font-size: 0.875rem;
}


/*** Pagination ***/

.pageRegion {
    display:none;
}

.pageElementLinks {
    overflow: hidden;
}



/*** page controls ***/
.pageCntrls {
    display:flex;
    position: relative;
    text-align: center;
	margin: 0 0 0.5rem 0;
    background-color:#fff;
}

.visible { visibility: visible; }

.page, .numOfPages {
	display:inline-block;
    color:#003046;
	position: relative;
	top: 40%;
	cursor:pointer;
	outline:none;
}

.pageElements {
    display:inline-block;
    text-align:center;
    font-weight:bold;
}

.pageLink { padding: 0 0.4rem; }

.pageLink.selected {
    color: #0A3046;
    font-weight:bold;
}

.pageSelected {
	color:#666666;
    font-weight:bold;
}

.linkBtn {
    /* font-size: 0.78rem !important; */
    margin: 0 auto;
    width: auto;
    border-radius:4px;
}

.nextContainer, .prevContainer,
.firstPage, .lastPage {
    color: #0069b5;
    font-size: 1rem;
    letter-spacing: 1px;
}

.prev {
	display: inline-block;
    min-width:90px;
	margin-right: 0;
	cursor:pointer;
	outline:none;
}

.next {
	display: inline-block;
    min-width:90px;
    margin-left:1rem;
	cursor:pointer;
	outline:none;
}

.firstPage, .lastPage {
  min-width:90px;
  cursor:pointer;
}

.firstPage { /*margin-right:235px;*/ }


.fa-angle-double-left, .fa-angle-left { margin-right: 0.5rem; }
.fa-angle-double-right, .fa-angle-right { margin-left: 0.5rem; }

.pageCntrls .disabled {
  visibility: hidden;
  background-color: transparent;
  pointer-events:none;
}

/*** [end] Find a Provider ***/

.oon-thank-you {
    display: none;
}

/*** Tab Page styles ***/

.tab-wrapper .tabs {
    background: var(--secondary-color);
}

.tab-wrapper .cardGrid .columnBlockContainer {
    width: 100%;
}

.tabs-content, .tabs-panel {
    width: 100%;
}

.tabs-label {
    float:left;
    margin-left: 2.5rem;
    margin-right: 1rem;
    padding-top: 1rem;
    color: #fff;
    font-weight: 700;
}

.tabs-title { margin-bottom: 0; }
.tabs-title > a {
    font-size: 1rem;
    color: #fff;
}

.tabs-title > a:focus, 
.tabs-title > a[aria-selected=true],
.tabs-title.is-active {
    background: transparent;
    color: #fff;
    text-decoration: underline;
}

.tabs-panel h2 {
    font-size: 1rem;
    font-weight: 700;
    line-height: 24px;
    margin-top: 1rem;
}

.triangle { display: none; }
/*** [end] Tab Page styles ***/


/*** Blog Styles ***/
section.article-component {
    padding-top: 0; /* might need to be desktop only rule */
}

.article-subBlock {
    margin-top: 0;
    margin-bottom: 0;
}

.article-overviewImage, .article .videoContainer {
    margin: 1rem auto 2rem;
}

.anchor-wrap { 
    flex-direction: row; 
}

.anchor-title {
    padding-right: 0.375rem;
}

.article-tag, .article-category {
    padding: 0 0 0 .375rem;
}

/*.article-subBlock > .article-categoryBlock {*/
/*    display: none;*/
/*}*/

.article-subBlock > .article-categoryBlock:first-child {
    display: none;
}

.article-categoryBlock a {
    display: unset;
}

/*.article .anchor-wrap:first-of-type {*/
/*    display: none;*/
/*}*/

.article-category.pretty {
    background-color: #fff;
    color: var(--secondary-color);
    line-height: 1.1rem;
    font-weight: 400;
}

.article-subBlock .pipe { display: none; }

.article-summary-postDate { display: none; }
.article-title h1 { color: var(--primary-color); }
.article-overviewImage img { max-width: 40rem; }

.article-copy h2 {
    font-size: 32px;
    line-height: 48px;
    font-weight: 400;
    margin-top: 1.5rem;
}

.article-copy h3 {
   font-size: 22px;
   color: #0B2335;
   margin-top: .75rem;
   margin-bottom: .5rem;
}

/*.article-copy h4 {*/
/*    font-size: 1.375rem;*/
/*    line-height: 48px;*/
/*    font-weight: 700;*/
/*    margin: 1.5rem 0 .5rem;*/
/*}*/

/*.article-copy ul, */
/*.article-copy ol {*/
ul, ol {
    margin-left: 2.5rem;
    margin-top: 1rem;
}

/*.article-copy ul li, */
/*.article-copy ol li {*/
ul li, ol li {
    margin-bottom: 1rem;
    font-weight: 400;
}

.viewMoreButton {
    text-align: center;
    background: transparent;
    color: #ffffff;
}

.viewMore {
    background: var(--secondary-color);
    padding: .5rem 1rem;
    border-radius: 16px;
    text-transform: none;
    font-size: 16px;
    display: inline;
}

.viewMore:hover {
    background-color: var(--darker-blue);
    text-decoration: underline;
}

.waitMessage {
    font-size: 4.5rem;
    line-height: 3.5rem;
    padding: 2rem 0;
    text-decoration: none;
    border-bottom: none;
    color: #fff;
    display: inline;
}

.fap-results-container .waitMessage {
    display: block;
    padding-top: 1rem;
}

.fap-results-container .fa-spinner {
    color: var(--primary-color); 
    font-size: 4rem;
    padding-bottom: 0rem;
    margin-bottom: .25rem;
}

.fap-results-container .waitMessage span {
    display: block;
    color: #000;
    font-size: 26px;
}
  
.waitMessage span {
    padding: 0;
    text-decoration: none;
    border-bottom: none;
}

  /* These are probably just temporary for the current filter bar which will go away */
.category-container {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
}
.filterContainer .dropdown.menu {
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;
    min-width: 18rem;
}

/* Now, they don't want to see the category at all */

.category-block, .article-subBlock {
    display: none;
}

/*** [end] Blog Styles ***/


/*** Footer Styles ***/

.footerLegal {
    padding-right: 1rem;
}

.flex-footer {
    padding-top: 2.5rem;
    border-top: 1px solid var(--text-color);
    margin-top: 2rem;
    clear: both;
}

.flex-footer-column a,
.flex-footer-column p  {
    color: var(--text-color);
    font-size: 14px;
    line-height: 24px;
    letter-spacing: 0.12px;
    margin-bottom: 0.5rem;
}

.flex-footer-column .list-title {
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 0.5rem;
    color: var(--text-color);
    text-transform: capitalize;
}

.flex-footer-column img {
    max-width: 140px;
}

#socialIcons .linkColumn {
    justify-content: flex-end;
    flex-direction: row;
}

#socialIcons .linkColumn i {
    padding-right: 1rem;
}

/*** [end] Footer Styles ***/

.checkboxGroup {
    margin-bottom: 0 !important;
}

.form-text.group-header p {
    margin-bottom: 0;
}

.file-upload-allow-text {
    margin-top: -1rem;
    margin-bottom: 1rem;
}


/********************** Small only *************************/
@media screen and (max-width: 39.9375em) {
    /* these next few might need to be for tablet too */
    .navLinkContainer a.dropdown::before {
        content: "";
        margin-left: 0;
        margin: 0;
    }
    
    a.dropdown.noLink::after {
        float: right;
        margin-right: 1.375rem;
    }
    
    .menu-icon:hover::after {
        box-shadow: 0 7px 0 #0092B3,0 14px 0 #0092B3;
        background: var(--primary-color); ;
    }
    
    .menu.expanded li.topnav-item {
        padding: 0;
    }
    
    #megamenu .top-bar .dropdown-pane#mm-employers, 
    #megamenu .top-bar .dropdown-pane#mm-brokers, 
    #megamenu .top-bar .dropdown-pane#mm-members, 
    #megamenu .top-bar .dropdown-pane#mm-providers {
        max-width: 340px;
    }
    
    .quickLinks { 
        align-items: center;
        padding-bottom: 0;
    }
    
    .quickLinks a:nth-of-type(2),
    .quickLinks a:nth-of-type(3),
    .quickLinks a:nth-of-type(4) {
        display: none;
    }
    
    .top-bar .dropdown.menu a, 
    .top-bar .dropdown.menu a:active, 
    .top-bar .dropdown.menu a:hover {
        padding-left: 0;
        color: var(--secondary-color);
    }
    
    #megamenu .top-bar .dropdown-pane {
        padding: 0 0 0 1.5rem;
        margin-top: -3rem;
    }
    
    .menuColumnContainer {
        margin-bottom: 1rem;
    }
    
    .centered-menu,
    .menuColumnContainer > .outer {
        padding-left: 0 !important;
    }
    
    .dropdown-pane .menu li.subnav-item, 
    .dropdown-pane .menu.expanded li.subnav-item {
        margin-bottom: 6px;
    }
    
    .dropdown-pane .menu li.subnav-item:last-of-type, 
    .dropdown-pane .menu.expanded li.subnav-item:last-of-type {
        margin-bottom: 1.125rem;
    }
    
    a.dropdown.noLink.hover::after {
        content: " \f106";
    }
    
    .homeZipSearchButton {
        margin-bottom: 0.875rem;
    }
    
    .find-provider a.dropdown.button {
        margin-left: 1rem;
        margin-right: 1rem;
        text-align: center;
        padding-top: 16px;
        margin-top: .5rem;
    }
    
    .find-provider .button.dropdown::before {
        padding-right: 1.5rem;
    }
    
    .dropdown.menu a.find-provider-button {
        margin-left: 0.875rem;
        margin-right: 0.875rem;
    }
    
    .dropdown.menu a.find-provider-button::before {
        margin-left: 1rem;
        padding-right: 1.5rem;
    }

    /* FAP */
    .results-page-wrapper {
        display: block;
    }
    
    .refine-options label::after {
        right: 5.25rem;
    }

    .row .row {
        margin-left: 0;
        margin-right: 0;
    }

    .flex-center {
        display: block;
    }

    .fap-ad-section > .row > .container {
        display: block;
        max-width: 100%;
        margin-left: 0;
    }

    .provider-wrapper {
        padding: 1.5rem .5rem 3rem;
    }

    .fap-ad-section .medium-13 p {
        text-align: center;
    }

    .provider-results .medium-6 {
        text-align : left;
    }

    .fad-directions {
        position: absolute;
        bottom: 7px;
    }

    .details-link {
        top: 5px;
        right: 30px;
    }

    .details-link span {
        display: none;
    }
    
    .searchFormPreamble {
        margin-right: 0;
    }
    
    .jump-links .linkContainer {
        justify-content: left;
        align-items: flex-start;
    }
    
    .jump-links .linkContainer a.standardLink {
        margin: 1rem 0.75rem;
    }

    .zipLabelContainer {
        display: block;
        width: 100%;
        margin-top: 0.75rem;
        margin-bottom: 0.75rem;
    }
    
    h1 {
        color: var(--primary-color);
        font-size: 36px;
        line-height: 48px;
    }
    
    .faux-h1 > div {
        color: var(--primary-color);
    }

    h2 {
        font-size: 28px;
        line-height: 32px;
    }

    h3 {
        font-size: 22px;
        line-height: 33px;
    }

    h4 {
        font-size: 18px;
        line-height: 27px;
    }
    
    .hero-section3 .hero-section-text { padding: 1rem 0 0; }

    .paragraphBlock .linkContainer { text-align: center; }
    .paragraphBlock .linkContainer.telephone { text-align: left; }

    .back-link .paragraphBlock .linkContainer { text-align: left; }   
    section.back-link { padding: 0; }

    .spread-slider .slick-dots { bottom: -70px; }
    .presentation-slider .slick-image .paragraphBlock { color: #fff; }

    .flex-footer a.button.primary {
        padding: 0.3rem 1.5rem;
    }
    
    .flex-footer .flex-footer-column {
        margin-bottom: 1rem;
    }

    .tabs {
        display: flex;
        flex-direction: column;
    }

    .tabs-panel {
        padding: 0;
    }

    .tabs-label {
        float: none;
        margin-left: 4px;
        color: var(--secondary-color);
    }

    .tabs-panel .columns3 {
        padding: 1rem 0;
    }
    
    .marqueePadding {
        padding: 0vh 2vw;
    }
    
    .testimonials .paragraph-wrapper p {
        padding: 0 1rem;
    }
    
    .testimonials {
        margin-top: 0;
    }
    
    .spread .container.small-col-reverse .spreadCol2, 
    .spread .container.stack-spread.small-col-reverse .spreadCol2 {
        margin-bottom: 0;
    }
    
    .catContainer .waitMessage {
        display: inline-block;
        background: none;
    }
    
    .catContainer .viewMore:hover {
        background: var(--secondary-color);
    }
    
    .contact-form {
        padding-bottom: 2rem;
    }
    
    .accordion-title {
        padding: 1.25rem 2.5rem 1.25rem 1rem;
        line-height: 1.5;
    }
    /* jjjjj */
    .navLinkContainer .navLogoContainer-mobile img {
        width: 150px;
        height: 50px;
    }
    
    .fad-directions {
        bottom: -6px;
    }
    
    .pageCntrls {
        flex-wrap: wrap;
    }
    
    .pageElementLinks {
        /*flex-wrap: wrap;*/
        overflow: hidden;
    }
    
    .prev {
        display: none;
        margin-right: 0;
    }
}
/******************* [end] Small only *********************/


/********************** Small and Medium ******************/
@media screen and (max-width: 63.9375em) {
    .topNavContainer {
        padding-top: 0;
    }
    
    .mm-title-bar {
        flex-direction: row-reverse;
        background-color: #fff;
    }

    .menu-icon {
        position: relative;
        display: flex;
        align-items: flex-start;
        width: 26px;
        cursor: pointer;
        margin-top: 2px;
        align-self: center;
        /*vertical-align: middle;*/
    }

    .menu-icon::after {
        background: var(--secondary-color);
        box-shadow: 0 7px 0 #007396, 0 14px 0 #007396;
        height: 3px;
    }

    .navLogoContainer-mobile {
        text-align: left;
    }
    
    /*.navLogoContainer-mobile img {*/
    /*    height: 100%;*/
    /*    border: 5px solid red;*/
    /*}*/
    
    /*.navLinkContainer .navLogoContainer-mobile img {*/
    /*    width: 100%;*/
    /*    height: 100%;*/
    /*}*/

    .navLinkContainer .navLogoContainer-mobile {
        text-align: left;
    }

    .locationSearch {
        flex-direction: column;
    }
    
    .about-us-image img {
        max-width: 320px;
        margin-left: 1rem;
    }
    
}
/********************** [end] Small and Medium ******************/


/********************** Medium only *************************/
@media screen and (min-width: 40em) and  (max-width: 64.1em) {
    
    /* overriding basesite/megamenu rules*/
    .navLinkContainer a.dropdown::before {
        width: 0;
        content: "";
        margin: 0;
    }
    
    h1 {
        font-size: 2.25rem /* 36px */
    }
    .hero-container p {
        color: var(--inverse-text-color);
    }

    .spread-slider .slick-dots {
        bottom: 0;
    }

    .zipLabelContainer {
        width: 18.75rem; /* 300px */
    }
    
    .testimonials {
        margin-top: 0;
    }
    
    .testimonials .paragraph-wrapper {
        padding-left: 0.875rem;
        padding-right: 0.875rem;
    }
    
    .spread .container.small-col-reverse, 
    .spread .container.stack-spread.small-col-reverse, 
    .spread.container.small-col-reverse, 
    .spread.container.stack-spread.small-col-reverse {
        flex-direction: row-reverse;
    }
    
    /* these next 2 are  to TRY and make the tablet footer match the mock. If things
       get wonky on other tablets, then ditch the negative padding and live with it */
    
    .flex-footer .flex-footer-column.tablet-footer-col-helper {
        margin-top: -5rem;
    }
    
    .flex-footer .flex-footer-column.tablet-footer-col-helper2 {
        padding-left: 35%;
    }
    
    .special-offers.cardGrid .imageBlock img {
        max-width: 200px;
    }
    
    .contact-form .submit-button {
        padding-bottom: 2rem;
    }
    
    .image {
        padding-left: 0.925rem;
    }
    
    #megamenu .top-bar .dropdown-pane {
        top: 0 !important;
        max-height: 278px !important;
        padding: 0.25rem 0 1rem;
        margin: 0.2rem 0 1rem 0;
    }
    
    #megamenu .top-bar #mm-members.dropdown-pane {
        max-height: 318px !important;
    }
    
    .menu.expanded li.topnav-item {
        padding: 0 .5rem;
    }
    
    .dropdown.menu a.find-provider-button {
        width: 12rem;
    }
    
    .dropdown.menu a.find-provider-button::before {
        padding-right: 1.5rem;
    }
    
    .jump-links .linkContainer {
        padding-top: 1rem;
        padding-bottom: 1rem;
    }
    
    .jump-links .linkContainer a.standardLink {
        margin: 0 0 1.5rem 0;
        display: flex;
    }
    
    .searchWrap {
        padding: 1rem;
    }
    
    .refine-options label::after {
        right: 0;
    }
    
    .fad-disclaimer {
        padding-left: 1rem;
    }
    
    .tablet-warby {
        margin-left: -1rem;
    }
    
    .tablet-worby-text p {
        font-size: 14px;
        margin-left: 1rem;
    }
    
    .fap-ad-name h4 {
        font-size: 1rem;
    }
    
    .pageCntrls {
        flex-wrap: wrap;
    }
    
    .pageElementLinks {
        /*flex-wrap: wrap;*/
        overflow: hidden;
    }
    
    .prev {
        display: none;
        margin-right: 0;
    }
    
    .practiceImage img {
        margin-bottom: 0.25rem;
    }
    
    .dropdown.menu li.topnav-item:nth-of-type(7) {
        display: none;
    }
    
    
}

/* ----------- iPad 3, 4 and Pro 9.7" (affects others too) ----------- */

/* Portrait */
@media only screen 
  and (min-device-width: 768px) 
  and (max-device-width: 1024px) 
  and (orientation: portrait) 
  and (-webkit-min-device-pixel-ratio: 2) {
    .quickLinks .row {
      flex-direction: row;
      width: 100%;
    }
    .quickLinks a:nth-of-type(2) { order: 1 !important; margin-right: 2rem; }
    .quickLinks a:nth-of-type(3) { order: 2 !important; margin-right: 2rem; }
    .quickLinks a:nth-of-type(4) { order: 3 !important; }
}


/* Landscape */
@media only screen 
  and (min-device-width: 768px) 
  and (max-device-width: 1024px) 
  and (orientation: landscape) 
  and (-webkit-min-device-pixel-ratio: 2) {
    .quickLinks .row {
      flex-direction: row;
    }
    .quickLinks a:nth-of-type(2) { order: 1; }
    .quickLinks a:nth-of-type(3) { order: 2; }
    .quickLinks a:nth-of-type(4) { order: 3; }
}
    


/********* iPad Pro (12.9") ************/
@media only screen
  and (min-device-width: 1024px)
  and (orientation: portrait)
  and (-webkit-min-device-pixel-ratio: 2) {
      
    .quickLinks .row {
      flex-direction: row;
    }
      
    .quickLinks a:nth-of-type(2) { order: 1; }
    .quickLinks a:nth-of-type(3) { order: 2; }
    .quickLinks a:nth-of-type(4) { order: 3; }
}


/********* LARGE and 'up' ************/
@media screen and (min-width: 64em) {
    
    li.mm-providers + li + li {
        z-index: 999;
    }
    
    .dropdown.menu li.topnav-item:nth-of-type(7) {
        display: none;
    }
    
    .topNavContainer.navbar-fixed .headerRow {
        margin: 0 auto;
    }
    
    .menu li .dropdown-pane a, .menu.expanded li .dropdown-pane a {
        line-height: 1.375rem;
    }

    /*** HERO ***/
    /* we should maybe remove the justify-content: center rule from hero-marquee css */
    .hero-section3 .hero-section-text, 
    .hero-section3 .hero-section-text .paragraphBlock {
        justify-content: unset;
    }

    .hero-section3 .hero-section-text {
        padding: 0 6rem 0 3rem;
    }

    .hero-section3 .hero-section-text p {
        color: var(--inverse-text-color);
    }

    /*** Spreads ***/
    .cardGrid .columnBlockContainer {
        padding: 0.9375rem 2rem;
    }
    
    .spread .column .headerBlock {
        padding-left: 3rem;
        padding-right: 3rem;
    }
    
    /* this seems to be how to fix the 'full screen' spreads with margin issues */
    .spread.section-color-light {
        margin-top: 1rem;
        margin-bottom: 1rem;
        padding-top: 3rem;
        padding-bottom: 3rem;
    }

    .headerBlock.marqueePadding {
        /*padding: 3vh 10vw 0;*/
    }



    /*** Testimonials ***/
    .testimonial-section {
        margin-top: 2rem;
        margin-bottom: 2rem;
    }
    
    .testimonial-section .paragraphBlock {
        padding: 0 12rem;
    }
    
    .testimonial-section h3 {
        font-size: 2rem;
        font-weight: 700;
    }

    .testimonial-section p {
        font-size: 1.375rem; /* 22px */
    }

    /* .testimonials .quoteIcon {
        top: 13.8%;
        left: 50%;
        background-image: none;
        background: transparent;
    } */


    /*** Accordions ***/
    .accordion-content {
        padding: 2.2rem 2rem 1rem 2rem;
    }

    .accordion-title::before {
        margin-right: 1rem;
    }

    #featuresAccordion {
        width: 50%;
        margin: 0 auto;
    }

    #featuresAccordion .accordion-content {
        padding: 1rem 5rem;
    }

    /* Basic Slider */
    .row .spreadCol .slick-dots {
        padding: 0;
        position: relative;
        text-align: left;
        bottom: -5px;
    }
    
    /* Forms */
    .contact-form .button-container {
        padding-left: 1rem;
        padding-top: 1rem;
        padding-bottom: 1rem;
    }
    
    .contact-form {
        padding: 1rem 3rem 2rem;
    }

    
}



@media print { 
    .quickLinks,
    .navLogoContainer a::after,
    .topnav-item.mm-employers,
    .topnav-item.mm-brokers,
    .topnav-item.mm-members,
    .topnav-item.mm-providers,
    .dropdown.cec-blog,
    .topnav-item .find-provider-button,
    aside,
    .hero-image,
    .fap-ad-section,
    .provider-result-count-wrap,
    .pageCntrls,
    .fad-directions,
    footer {
        display: none;
    }
    
    /*.top-bar img {*/
    /*    display: none;*/
    /*}*/
    
    a[href]:after {
        content: "";
    }
    
    h1 {
        font-weight: 500;
        font-size: 2rem;
    }
    
    .fap-results-container {
        width: 90%;
    }
    
    .provider-wrapper .medium-6.column {
        display: none;
    }
    
    .hero-section3 .hero-container {
        display: block;
    }
    
    .hero-section3 .hero-section-text {
        position: relative;
        padding: 0;
        margin-top: 1rem;
    }
    
    .provider-wrapper {
        padding: 0 1rem;
    }
    
    .provider-wrapper h4 {
        font-weight: 500;
    }
    
    a, a:visited {
        text-decoration: none;
    }
    
    
}