/*
Theme Name: Flexile
Theme URI: https://diviextended.com/products/flexile/
Description: Flexile is a multipurpose child theme for Divi with pre-built pages and large layouts library. It also includes multiple headers, footers, hero sections and WooCommerce product page templates.
Author: Divi Extended
Author URI: https://diviextended.com/
Update URI: https://elegantthemes.com/
Template: Divi
Version: 2.5.5
Tags: flexile, multipurpose, child theme, headers, footers, woocommerce templates, hero sections, homepages, rtl headers, divi library items, divi styles modules, prebuilt pages, homepage templates, divi extended
License: GPL v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/

/* Body */

body {
    overflow-x: hidden;
}

/* Body Ends */


/* Typography */

.fx-cursive-inner-subheading h2 {
	font-weight: 500;
}

/* Typography Ends */


/* Header */

#top-menu li.mega-menu>ul>li>a:first-child {
    border-bottom: none;
}

#top-menu li.mega-menu>ul {
	padding: 20px 0 !important;
}

#top-menu li.mega-menu>ul>li a {
    padding: 10px 30px !important;
}

.nav li:not(.mega-menu) li ul {
    left: 240px !important;
	top: 0;
}

#top-menu li {
    font-weight: 500;
}

#top-menu li li a {
	opacity: 0.8;
	padding: 3px 30px;
	width: 240px;
}

#top-menu li li a:hover {
    background: rgba(0,0,0,0);
}

.fx-menu-dark .et_mobile_menu li:not(:last-child) a,
.fx-menu-dark .nav li li:not(:last-child),
.fx-menu-woo .et_mobile_menu li:not(:last-child) a,
.fx-menu-woo .nav li li:not(:last-child) {
    border-bottom: 1px solid rgb(255,255,255,0.2);
}

.fx-menu-light .et_mobile_menu li:not(:last-child) a,
.fx-menu-light .nav li li:not(:last-child) {
    border-bottom: 1px solid rgb(0,0,0,0.1);
}

.et_mobile_menu .menu-item-has-children > a {
    background-color: rgba(0,0,0,0);
	font-weight: 600;
	position: relative;
}

.et_pb_menu .et_mobile_menu,
.et_mobile_menu {
    border-top: none;
    padding: 0;
}

.et_pb_menu .et-menu-nav>ul ul,
.nav li ul {
	border-top: none;
    left: auto !important;
    right: 0;
	width: 240px;
}

.fx-menu-dark .nav li ul,
.fx-menu-light .nav li ul,
.fx-menu-woo .nav li ul {
	padding: 0;
}

#top-menu li li,
.nav li li {
    padding: 0;
}

.et_mobile_menu .menu-item-has-children > a:after {
    content: '\50';
	font-family: 'ETmodules';
	font-size: 16px;
	font-weight: normal;
	position: absolute;
	right: 10px;
	top: 13px;
}

.et_mobile_menu .menu-item-has-children > .fx-menu-switched-icon:after {
	content: '\4f';
}

.et_mobile_menu .menu-item-has-children .sub-menu li {
	display: none;
}

.et_mobile_menu .menu-item-has-children .sub-menu .fx-show-menu-items {
	display: block;
}

.fx-menu-woo .et_pb_menu__icon.et_pb_menu__cart-button {
    padding-left: 20px;
}

.fx-menu-woo .et_pb_menu__cart-button:after {
    background: rgb(0,0,0,0.3);
    border-radius: 50%;
    padding: 8px 12px 8px 10px;
}

body .et-fixed-header#main-header {
    box-shadow: 0px 5px 80px rgba(0, 0, 0, 0.1) !important;
}

/* Header Ends */


/* Blurbs */

.fx-icon-bg-blurb .et_pb_main_blurb_image {
	text-align: center;
	vertical-align: middle;
	width: 150px;
}

.fx-icon-bg-blurb .et_pb_image_wrap {
    display: inline-block;
}

.fx-icon-bg-blurb .et_pb_blurb_container {
	padding: 20px;
}

.fx-icon-border-blurb .et-pb-icon {
	border: 2px solid;
	border-radius: 4px;
	padding: 10px;
}

.fx-circle-icon-blurb.et_pb_blurb_position_left .et-pb-icon {
	padding: 20px;
}

.fx-circle-icon-blurb.et_pb_blurb_position_left .et_pb_blurb_container {
    padding-left: 25px;
}

/* Blurbs Ends*/


/* Hero Section */

.fx-hero-slider .et_pb_slide_image {
	margin-top: 50px !important;
    position: relative;
	top: 0;
    width: 100%;
}

.fx-hero-slider .et_pb_slide_image img {
    max-width: 100px;
}

.fx-hero-slider .et_pb_slide_description {
	padding: 30px 0 80px;
	text-shadow: none;
	width: 100%;
}

.fx-hero-slider .et_pb_button:after {
	border-left: 1px solid;
	padding: 0 10px;
	position: absolute;
	right: 0;	
}

.fx-hero-slider .et-pb-arrow-next,
.fx-hero-slider .et-pb-arrow-prev {
	border: 1px solid;
	font-size: 36px;
    padding: 5px 3px 7px 0px;
}

.fx-hero-slider .et-pb-controllers a {
    background-color: rgba(0,0,0,0);
    border: 2px solid #ffffff;
    border-radius: 50%;
    height: 12px;
    opacity: 1;
    width: 12px;
}

.fx-hero-slider .et-pb-controllers .et-pb-active-control {
    background-color: #ffffff;
}

.fx-hero-illustration .et_pb_button_module_wrapper {
    display: inline-block;
}

.fx-hero-form .et_pb_contact_form {
    margin-left: 0;
}

.fx-hero-form .et_pb_contact_field_half {
    float: left;
	padding: 0;
    width: 35%;
}

.fx-hero-form .et_pb_contact_field_half:first-child input {
	border-radius: 5px 0 0 5px;
}

.fx-hero-form .et_contact_bottom_container {
	margin-top: 0;
	width: 30%;
}

.fx-hero-form .et_contact_bottom_container .et_pb_contact_submit {
	border-radius: 0 5px 5px 0;
	margin: 0;
	width: 100%;
}

/* Hero Section Ends */

/* Content Section */

.fx-full-height-image,
.fx-full-height-image .et_pb_image_wrap {
	height: 100%;
}

.fx-full-height-image img {
	height: 100%;
	object-fit: cover;
	width: 100% !important;
}

/* Content Section Ends */


/* Service Section */

.fx-blurb-with-image .et_pb_blurb_container {
    padding: 0 20px;
}

/* Service Section Ends */

/* Testimonials */

.fx-testimonial-slider .et_pb_slide_image {
	margin-top: 50px !important;
    position: relative;
	top: 0;
    width: 100%;
}

.fx-testimonial-slider .et_pb_slide_image img {
    max-width: 100px;
}

.fx-testimonial-slider .et_pb_slide_description {
	display: flex;
	flex-direction: column-reverse;
	flex-wrap: wrap;
	justify-content: center;
	padding: 30px 50px 80px;
	text-shadow: none;
	width: 100%; 
}

.fx-testimonial-slider .et_pb_slide_description .et_pb_slide_title {
	margin-top: 20px; 
}

.fx-testimonial-slider .et_pb_slide_content {
	position: relative;
}

.fx-testimonial-slider .et_pb_slide_content:before {
	content: '\7b';
    font-family: ETmodules;
    font-size: 60px;
	left: -50px;
	position: absolute;
	top: 0;
    transform: rotate(180deg);
}

.fx-medical-testimonial-slider .et_pb_slide_content:before {
	content: '';
}

.fx-testimonial-slider .et-pb-controllers a {
    height: 8px;
    width: 8px;
}

.fx-testimonial-slider .et-pb-controllers .et-pb-active-control {
    width: 30px;
}

.fx-divider-testimonial .et_pb_testimonial_author {
	position: relative;
}

.fx-divider-testimonial .et_pb_testimonial_author:before {
	content: '';
	height: 3px;
	left: calc(50% - 25px);
	position: absolute;
    top: -20px;
	width: 50px;
}

/* Testimonials Ends*/


/* FAQ */

.fx-faq-accordion .et_pb_toggle {
	margin-bottom: 0 !important;
	padding: 0 0 24px 20px;
}

.fx-faq-accordion .et_pb_toggle .et_pb_toggle_content {
	padding-right: 30px;
}

.fx-faq-accordion .et_pb_toggle_title:before {
	content: '\33';
	font-size: 18px;
	font-weight: bold;
}

.fx-faq-accordion .et_pb_toggle_open .et_pb_toggle_title:before {
	content: '\32';
	display: block !important;
}

.fx-faq-accordion .et_pb_toggle_title:after {
	background-color: #666666;
	border-radius: 50%;
	content: '';
	height: 12px;
	left: -20px;
	position: absolute;
	top: calc(50% - 4px);
    width: 12px;    
}

.fx-faq-accordion-light .et_pb_toggle_title:after {
	background-color: #ffffff;  
}

.fx-faq-tabs {
    border: none;
}

.fx-faq-tabs ul.et_pb_tabs_controls {
	background: transparent;
    float: left;
	margin-right: 3%;
    width: 35%;
}

.fx-faq-tabs ul.et_pb_tabs_controls:after {
    content: none;
}

.fx-faq-tabs .et_pb_tabs_controls li {
	border-right: none;
	margin-bottom: 3px;
    width: 100%;
}

.fx-faq-tabs .et_pb_tabs_controls li a {
    padding: 24px;
}

.fx-faq-tabs .et_pb_tab {
    padding: 0;
}

.fx-faq-tabs .et_pb_tab_content {
    display: flex;
    flex-wrap: wrap;
}

/* FAQ Ends */

/* Team Section */

.fx-team-hover {
	position: relative;
}

.fx-team-hover .et_pb_team_member_image {
	margin: 0 !important;
	max-width: 100%;
}

.fx-team-hover .et_pb_team_member_image img,
.fx-team-hover .et_pb_member_position,
.fx-team-hover .et_pb_member_social_links,
.fx-team-hover .et_pb_module_header {
	width: 100%;
}

.fx-team-hover .et_pb_team_member_image img {
	object-fit: cover;
}

.fx-team-hover .et_pb_module_header {
	padding-bottom: 4px;
}

.fx-team-hover .et_pb_team_member_image:before {
	background: linear-gradient(to bottom,rgba(255,255,255,0) 30%,rgba(255,255,255,0.9) 100%);
	content: '';
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

.fx-team-hover .et_pb_team_member_description {
	align-content: center;
	bottom: 10px;
	display: flex;
	flex-wrap: wrap;
	left: 0;
	padding: 0 20px;
    position: absolute;
	transition: all ease 0.4s;
    width: 100%;
}

.fx-team-hover:hover .et_pb_team_member_description {
	background: #cccccc;
	bottom: 0;
	height: 100%;
	padding: 20px;
	transition: all ease 0.4s;
}

.fx-team-hover .et_pb_team_member_description div,
.fx-team-hover .et_pb_team_member_description .et_pb_member_social_links,
.fx-team-hover:hover .et_pb_module_header,
.fx-team-hover:hover .et_pb_member_position {
	display: none;
}

.fx-team-hover:hover .et_pb_team_member_description div,
.fx-team-hover:hover .et_pb_team_member_description .et_pb_member_social_links {
	display: block;
}

.fx-team-basic .et_pb_team_member_image {
	float: none;
	margin: auto;
	max-width: 200px;
	transition: all ease .4s;
	width: 100%;
}

.fx-team-basic:hover .et_pb_team_member_image {
	transform: scale(1.02);
}

.fx-team-basic .et_pb_team_member_description {
	display: block;
}

.fx-team-basic .et_pb_module_header {
	margin-top: 24px;
}

.fx-team-basic .et_pb_member_position {
	margin-bottom: 16px;
}

.fx-team-basic .et_pb_member_social_links li:last-child {
	margin-right: 0;
}

.fx-team-basic .et_pb_member_social_links a:before {
	background: #aaaaaa;
	border-radius: 50%;
	padding: 5px;
}

/* Team Section Ends */

/* Pricing Tables */

.fx-basic-pricing-table .et_pb_pricing_table {
	padding-bottom: 20px;
}

.fx-basic-pricing-table .et_pb_pricing_heading {
	padding: 20px 20px 0;
}

.fx-basic-pricing-table .et_pb_pricing_title {
	padding-bottom: 12px;
}

.fx-basic-pricing-table .et_pb_pricing_content_top {
	border-bottom: none;
	padding: 20px 20px 10px;
}

.fx-basic-pricing-table .et_pb_pricing_content {
    padding: 20px;
}

.fx-basic-pricing-table .et_pb_pricing li span:before {
	border: none;
	content: '\e052';
	font-family: ETmodules;
	left: -20px;
	top: 0;
}

.fx-basic-pricing-table .et_pb_pricing li {
	padding-left: 20px;
}

.fx-basic-pricing-table .et_pb_pricing_table .et_pb_button_wrapper {
    padding-left: 20px;
    padding-right: 20px;
}

.fx-basic-pricing-table .et_pb_pricing_table .et_pb_button_wrapper a {
    width: 100%;
}

/* Pricing Table Ends */


/* Blog */

.fx-grid-blog .et_pb_post {
	display: flex;
	flex-wrap: wrap;
}

.fx-grid-blog .et_pb_image_container {
	margin: 0 0 10px;
    order: 1;
    padding: 0;
    width: 100%;
}

.fx-grid-blog .post-meta {
	order: 2;
	padding-bottom: 5px;
}

.fx-grid-blog .entry-title {
	order: 3;
}

.fx-grid-blog .post-content {
	order: 4;
}

.fx-grid-blog .et_pb_post .entry-featured-image-url {
    margin-bottom: 10px;
}

.fx-grid-blog .et_pb_image_container img {
	border-radius: 10px;
}

.fx-grid-blog .et_pb_post div.post-content a.more-link {
	display: block;
	margin-top: 10px;
	text-transform: capitalize;
}

/* Blog Ends */


/* Contact Section */

.fx-fullwidth-form .et_contact_bottom_container,
.fx-fullwidth-form .et_contact_bottom_container .et_pb_button {
	width: 100%;
}

.fx-centered-form .et_contact_bottom_container {
	float: none;
    justify-content: center;
}

.fx-left-aligned-form .et_contact_bottom_container {
	float: none;
    justify-content: left;
}

/* Contact Section Ends */


/* Portfolio Section */

.fx-filterable-portfolio .et_pb_portfolio_item {
	box-shadow: 0 2px 18px 0 rgba(0,0,0,.1);
	border-radius: 10px;
	padding-bottom: 15px;
	margin-top: 25px;
}

.fx-filterable-portfolio .et_portfolio_image {
	padding: 0 15px 5px;
}

.fx-filterable-portfolio .et_pb_portfolio_item img {
	box-shadow: 0px 12px 18px -6px rgba(0,0,0,0.1);
	border-radius: 10px;
	margin-top: -25px;
}

/* Portfolio Section Ends*/


/* Countdown Timer */

.fx-bg-countdown-timer .sep {
	display: none;
}
    
.fx-bg-countdown-timer .section.values {
	width: 22%;
}

.fx-bg-countdown-timer .section.values:not(:last-child) {
	margin-right: 4%;
}

.fx-bg-countdown-timer .section.values .value {
	background: #333333;
	border-radius: 10px 10px 0 0;
	padding: 20px;
}

.fx-bg-countdown-timer .section.values .label {
	background: #cccccc;
	border-radius: 0 0 10px 10px;
	padding: 10px 20px;
}

.fx-box-countdown-timer .sep {
	display: none;
}
    
.fx-box-countdown-timer .section.values {
	border: 1px solid #cccccc;
	display: inline-flex;
	flex-direction: column-reverse;
	flex-wrap: wrap;
	padding: 30px 20px;
	width: 22%;
}

.fx-box-countdown-timer .section.values:not(:last-child) {
	margin-right: 4%;
}

.fx-box-countdown-timer .section.values .value {
	padding-top: 10px;
}

/* Countdown Timer Ends*/


/* Homepages */

.fx-usage-blurb .et_pb_image_wrap:before{
	content: '+';
	font-size: 30px;
	font-weight: 700;
	left: -30px;
	position: absolute;
	top: calc(50% - 20px);
}

.fx-usage-last-blurb .et_pb_image_wrap:before{
	content: '=';
}

.flexile-agency-about-section .et_pb_row {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
}

.fx-university-hero .et-pb-arrow-next,
.fx-university-hero .et-pb-arrow-prev {
    border-radius: 4px;
}

.fx-store-category {
	align-items: flex-end;
	display: flex;
	background-size: 100% 100% !important;
	position: relative;
	transition: background-size 300ms ease 0ms;
}

.fx-store-category:hover {
	background-size: 110% 110% !important;
	transition: background-size 300ms ease 0ms;
}

.fx-store-category .et_pb_text_inner {
	position: absolute;
	bottom: -10px;
	transition: bottom 300ms ease 0ms;
}

.fx-store-category:hover .et_pb_text_inner {
	bottom: 20px;
	transition: bottom 300ms ease 0ms;
}

.fx-store-category .et_pb_text_inner p {
	opacity: 0;
	transition: opacity 300ms ease 0ms;
}

.fx-store-category:hover .et_pb_text_inner p {
	opacity: 1;
	transition: opacity 300ms ease 0ms;
}

/* Homepages Ends*/


/* Footer */

.fx-footer-widget h4.title {
	display: none;
}

.fx-footer-menu .et_pb_widget {
	font-weight: 400;
	margin-bottom: 30px !important;
    text-align: center;
	width: 100% !important;
}

.fx-bottom-bar-menu .et_pb_widget {
	margin-bottom: 0 !important;
	width: 100% !important;
}

.fx-footer-menu .et_pb_widget ul li,
.fx-bottom-bar-menu .et_pb_widget ul li {
    display: inline-block;
    margin-bottom: 0;
}

.fx-footer-menu .et_pb_widget ul li:not(:last-child),
.fx-bottom-bar-menu .et_pb_widget ul li:not(:last-child) {
    margin-right: 15px;
}

.fx-footer-blurb .et-pb-icon-circle-border {
    border: 2px solid;
}

.fx-footer-blurb .et-pb-icon-circle {
    padding: 15px;
}

/* Footer Ends */


/* Media Queries */

@media screen and (min-width: 981px) {
    
    /* Header */
    
    #top-header,
    #main-header {
    	border-bottom: 1px solid rgba(255,255,255,0.3);
    }
    
    .et_fullwidth_secondary_nav #top-header .container {
        padding: 0;
    }
    
    #top-header .container {
        font-weight: 500;
    }
    
    #top-header #et-info {
    	border-right: 1px solid rgba(255,255,255,0.3);
    	padding: 0 13px;
    }
    
    #top-header #et-info #et-info-phone,
    #top-header #et-info #et-info-email {
    	border-right: 1px solid rgba(255,255,255,0.3);
    	display: inline-block;
    	padding: 10px 13px 10px 0;
    }
    
    #top-header .et-social-icons {
        margin-left: -5px;
    }
    
    #et-secondary-menu {
    	border-left: 1px solid rgba(255,255,255,0.3);
        padding: 10px 13px 0;
    }
    
    /* Header Ends */
    
    /* Pricing Tables */
    
    .fx-basic-pricing-table {
    	margin: 0 -10px;
    }
    
    .fx-basic-pricing-table .et_pb_pricing_table {
    	margin: 0 10px;
    	width: calc(25% - 20px);
    }
    
    /* Pricing Tables Ends */
    
    
    /* Blog */
    
    .et_pb_gutters3 .et_pb_column_4_4 .fx-grid-blog .et_pb_blog_grid .column.size-1of3 {
        margin-right: 3.5%;
        width: 31%;
    }
    	
    .et_pb_gutters3 .et_pb_column_4_4 .fx-grid-blog .et_pb_blog_grid .column.size-1of3:nth-child(3n) {
        margin-right: 0;
    }
    
    /* Blog Ends */
    
    
    /* Portfolio Section */
    
    .fx-filterable-portfolio .et_pb_portfolio_item {
        margin-bottom: 2% !important;
        margin-right: 2% !important;
		width: 23.5% !important;
	}

	.fx-filterable-portfolio .et_pb_portfolio_item:nth-child(4n) {
		margin-right: 0 !important;
	}
	
	/* Portfolio Section Ends */
	
	
	/* Countdown Timer */
	
	.fx-countdown-timer .sep {
    	display: none;
    }
    
    .fx-countdown-timer .section.values {
    	border-radius: 50%;
    	box-shadow: 0 2px 18px 0 rgba(0,0,0,.2);
    	padding: 40px 20px;
    	width: 22%;
    }
    
    .fx-countdown-timer .section.values:not(:last-child) {
    	margin-right: 4%;
    }
    
    /* Countdown Timer Ends*/
	
	/* Home Pages */
	
	 .fx-university-countdown-timer .section.values {
    	padding: 46px 20px;
    }
    
    /* Home Pages Ends */
    
}

@media screen and (max-width: 980px) {
    
    /* Header */
    
    #main-header #logo {
		filter: brightness(0);
	}
	
	.fx-menu-inline  .et_pb_menu_inner_container,
	.fx-menu-centered  .et_pb_menu_inner_container {
	    align-items: center;
		display: flex;
		padding-bottom: 10px;
	}

	.fx-menu-inline .et_pb_menu__logo-wrap,
	.fx-menu-centered .et_pb_menu__logo-wrap {
		margin-bottom: 0 !important;
	}
	
	.fx-menu-inline .et_pb_menu__wrap,
	.fx-menu-centered .et_pb_menu__wrap {
		justify-content: flex-end;
	}
	
	/* Header Ends */
	
	/* Pricing Tables */
	
	.fx-basic-pricing-table .et_pb_pricing_table {
	    margin-bottom: 20px !important;
    	margin-top: 0 !important;
    	max-width: 100% !important;
    	width: 100% !important;
    }
    
    /* Pricing Tables Ends */
    
    
    /* Portfolio Section */
    
    .fx-filterable-portfolio .et_pb_portfolio_items_wrapper {
		margin-top: 70px;
	}
	
	/* Portfolio Section Ends */
	
}

@media screen and (min-width: 768px) and (max-width: 980px) {
    
    /* Portfolio Section */
	
	.fx-filterable-portfolio .et_pb_portfolio_item {
	    margin-bottom: 60px !important;
	    margin-right: 2% !important;
		width: 32% !important;
	}

	.fx-filterable-portfolio .et_pb_portfolio_item:nth-child(3n) {
		margin-right: 0 !important;
	}
	
	/* Portfolio Section Ends */
    
}

@media screen and (min-width: 768px) {
    
    /* Blog */
    
    .fx-post-slider .et_pb_container {
    	width: calc(100% + 65px);
    }
    
    .fx-post-slider .et_pb_slide_description {
    	padding: 10% 65px 10% 0;
    	width: calc(47.5% + 65px);
    }
    
    .fx-post-slider .et_pb_slide_description .post-meta {
    	margin-bottom: 10px;
    }
    
    .fx-post-slider .et_pb_slide_image {
    	margin-left: -65px;
    }
    
    .fx-post-slider .et-pb-controllers {
        left: auto;
        right: 10px;
        top: 45%;
        width: 20px;
    }
    
    .fx-post-slider .et-pb-controllers a {
        display: block;
        margin-bottom: 10px;
    }
    
    .fx-post-slider .et-pb-controllers a.et-pb-active-control {
    	border-radius: 30%;
    	height: 20px;
    }
    
    /* Blog Ends */
    
}

@media screen and (max-width: 767px) {
    
    /* Header */
    
    #et_top_search {
		display: none;
	}
	
	/* Header Ends */
	
	/* Hero Section */
    
    .fx-hero-form .et_pb_contact_field_half input {
    	border-radius: 5px;
    }
    
    .fx-hero-form .et_contact_bottom_container {
    	width: 100%;
    }
    
    .fx-hero-form .et_contact_bottom_container .et_pb_contact_submit {
    	border-radius: 5px;
    }
    
    /* Hero Section Ends */
    
    /* FAQ */
    
    .fx-faq-tabs ul.et_pb_tabs_controls {
        margin-bottom: 30px;
        margin-right: 0;
		width: 100%;
    }
    
    .fx-faq-tabs .et_pb_tabs_controls li {
        border-bottom: none;
    }
    
    .fx-faq-tabs .et_pb_tab {
        padding: 0;
    }
  
    .fx-faq-tabs .et_pb_tab_content {
        display: block;
    }    
    
    /* FAQ Ends */
    
    
    /* Portfolio Section */
    
   .fx-filterable-portfolio .et_pb_portfolio_item {
        margin-bottom: 60px !important;
        margin-right: 4% !important;
        width: 48% !important;
	}

	.fx-filterable-portfolio .et_pb_portfolio_item:nth-child(2n) {
		margin-right: 0 !important;
	}
	
	/* Portfolio Section Ends */
	
	
	/* Home Pages */
	
	.fx-usage-blurb .et_pb_image_wrap:before {
    	left: calc(50% - 10px);
    	top: -20px;
    }
    
    /* Home Pages Ends */
    
}

@media screen and (max-width: 480px) {
    
    /* Portfolio Section */
	
	.fx-filterable-portfolio .et_pb_portfolio_item {
	    margin-bottom: 60px !important;
		width: 100% !important;
	}
	
	/* Portfolio Section Ends */

}

/* Media Queries Ends */


/********Learn Dash*********/

/*Home-learndash*/


.ld-courses-5 .ld-course-list-items .ld_course_grid .thumbnail.course img {
    width: 200px;
    height: 200px;
    object-fit: cover;
    padding: 20px;
    border-radius: 50%;
}
.ld-courses-5 .ld-course-list-items .ld_course_grid article.thumbnail.course {
    display: flex;
    flex-direction: row;
    border-radius: 0;
}
.ld-courses-5 .ld-course-list-items .ld_course_grid .thumbnail.course .ld_course_grid_price {
    left: -8px;
}
.ld-courses-5 .ld_course_grid_button .btn.btn-primary {
    width: max-content;
}
.ld-courses-5 .ld-course-list-items .ld_course_grid .thumbnail.course:hover img {
    transform: scale(1);
}
.ld-courses-5 .ld-course-list-items .ld_course_grid {
    margin-bottom: 40px;
}

/* Team Section */

.ld-team-basic .et_pb_team_member_image {
	float: none;
	margin: auto;
	max-width: 200px;
	transition: all ease .4s;
	width: 100%;
}

.ld-team-basic:hover .et_pb_team_member_image {
	transform: scale(1.02);
}

.ld-team-basic .et_pb_team_member_description {
	display: block;
}

.ld-team-basic .et_pb_module_header {
	margin-top: 24px;
}

.ld-team-basic .et_pb_member_position {
	margin-bottom: 16px;
}

.ld-team-basic .et_pb_member_social_links li:last-child {
	margin-right: 0;
}

.ld-team-basic .et_pb_member_social_links a:before {
	background: #fff;
	border-radius: 50%;
	padding: 5px;
}

/* Team Section Ends */


/* Testimonials */

.ld-testimonial-slider .et_pb_slide_image {
	margin-top: 50px !important;
    position: relative;
	top: 0;
    width: 100%;
}

.ld-testimonial-slider .et_pb_slide_image img {
    max-width: 100px;
}

.ld-testimonial-slider .et_pb_slide_description {
	display: flex;
	flex-direction: column-reverse;
	flex-wrap: wrap;
	justify-content: center;
	padding: 30px 50px 80px;
	text-shadow: none;
	width: 100%; 
}

.ld-testimonial-slider .et_pb_slide_description .et_pb_slide_title {
	margin-top: 20px; 
}

.ld-testimonial-slider .et_pb_slide_content {
	position: relative;
}

.ld-testimonial-slider .et_pb_slide_content:before {
	content: '\7b';
    font-family: ETmodules;
    font-size: 60px;
	left: -50px;
	position: absolute;
	top: 0;
    transform: rotate(180deg);
}

.ld-testimonial-slider .et-pb-controllers a {
    height: 8px;
    width: 8px;
}

.ld-testimonial-slider .et-pb-controllers .et-pb-active-control {
    width: 30px;
}

/* Testimonials Ends*/


/*Home-learndash-Ends*/


/* Single Course Page */

.ld-single-course-content .ld-progress.ld-progress-inline .ld-progress-bar {
	background-color: #e2e7ed;    
}

.ld-single-course-content .ld-course-status {
	background: #fff !important;
}


.ld-single-course-content .ld-item-list .ld-item-list-item {
    border: 1px solid #43495c;
    border-radius: 6px;
}

.ld-single-course-content .ld-course-status.ld-course-status-enrolled {
	padding: 30px;
}

.ld-single-course-content .ld-progress-steps {
	color: #000;
}

.ld-single-course-content .ld-text {
	font-weight: 500;
}

.ld-single-course-content .ld-lesson-section-heading {
	font-weight: 600;
}

.ld-single-course-content .ld-expandable .ld-text,
.ld-single-course-content .ld-expandable .ld-icon {
	color: #fff;
}

.ld-single-course-content .ld-tabs {
	background: #fff;
	box-shadow: 0 1px 3px rgb(0, 0, 0, 0.15);
	border-radius: 6px;
}

.ld-single-course-content .ld-item-list {
	background: #fff;
	box-shadow: 0 1px 3px rgb(0, 0, 0, 0.15);
	border-radius: 6px;
	padding: 30px;
}

.ld-single-course-content .ld-lesson-section-heading {
	border-left: 6px solid !important;
	color: #42495b; 
	font-weight: 500 !important; 
	margin-top: 40px !important; 
	padding-left: 10px;
}

.ld-single-course-content .ld-course-status {
	box-shadow: 0 1px 3px rgb(0 0 0 / 15%);
}


.ld-single-course-content  .ld-item-list .ld-item-list-item a.ld-item-name:hover {
	color: #42495b !important;
}

.ld-single-course-content .ld-course-status.ld-course-status-not-enrolled>* {
	border-color: #eaeaea;
}

.ld-single-course-content .ld-course-status-label {
	font-size: 14px !important; 
	font-weight: 500 !important;
}

.ld-single-course-content .ld-status {
	border-radius: 20px; 
	font-size: 14px; 
	font-weight: 500; 
	padding: 10px 16px; 
	text-transform: capitalize;
}

.ld-single-course-content #btn-join, 
.ld-single-course-content .btn-join {
	font-size: 14px; 
	font-weight: 500; 
	padding: 10px 16px;
}

.ld-single-course-content .ld-expand-button {
	font-size: 14px; 
	font-weight: 500; 
	padding: 10px 12px;
}

.ld-single-course-content .ld-expandable .ld-icon-unlocked {
	color: #42495b;
}

.ld-single-course-content .ld-expand-button .ld-text {
	padding: 0 0 0 8px;
}

.ld-single-course-content .ld-lesson-list-progress {
	font-size: 13px; 
	font-weight: 600;
}

.ld-single-course-content .ld-lesson-list-steps {
	font-size: 13px; 
	font-weight: 500;
}

.ld-single-course-content .ld-content-actions .ld-content-action+a {
	font-size: 14px;
}

.ld-single-course-content .ld-table-list .ld-table-list-header {
	font-weight: 600;
}

.ld-single-course-content .ld-course-status-not-enrolled .ld-status {
	background: #fff7f1 !important;
	border-radius: 0px;
	border-left: 2px solid !important;
}

.ld-single-course-content .ld-course-status-not-enrolled .ld-course-status-price {
	color: #42495b;
}

.ld-single-course-content .ld-course-status-not-enrolled .ld-currency {
	font-size: 28px; 
	font-weight: 500; 
	margin-right: 3px;
}

.ld-course-status-action .ld-button {
    color: #fff!important;
    font-size: 14px;
    font-weight: 500;
    padding: 10px 16px;
    text-transform: capitalize;
    
}

/*Single Course Page Ends */

/* Single Lesson Page */

.ld-single-lesson-content .ld-primary-background.ld-status {
    background: transparent !important;
    border-bottom: dashed 2px #02A560;
    border-radius: 0px;
	color: #02A560!important;
    padding: 0px 0 5px;
}

.ld-single-lesson-content .ld-tabs {
	background: #fff;
	box-shadow: 0 1px 3px rgb(0, 0, 0, 0.15);
	border-radius: 6px;

}

.ld-single-lesson-content .ld-table-list .ld-table-list-items {
	background: #fff;
	box-shadow: 0 1px 3px rgb(0 0 0 / 15%);
	padding: 0px 30px;
}

.ld-single-lesson-content .ld-breadcrumbs-segments span a {
    color: #999 !important;
	font-weight: 500;
	font-size: 14px;
}

.ld-single-lesson-content .ld-breadcrumbs-segments span:last-child a {
    color: #43495c !important;
}

.ld-single-lesson-content .ld-progress{
    background: #f3f3f3;
    margin: 0px !important;
    padding: 15px 10px !important;
}

/* Single Lesson Page Ends */


/* Profile Right Sidebar */

.ld-profile-sidebar .ld-primary-background.ld-status {
    background: transparent !important;
    border-bottom: dashed 2px #02A560;
    border-radius: 0px;
	color: #02A560!important;
    padding: 0 0 5px;
}

.ld-profile-sidebar #ld-profile button.ld-icon-search.ld-icon {
	font-size: 20px;
	font-weight: 500;
    margin-right: 0;
}

.ld-profile-sidebar .ld-item-list-item-preview .ld-status-icon {
	margin-right: 10px;
    margin-top: 0;
}

.ld-profile-sidebar .ld-expand-button.ld-button-alternate .ld-icon {
    flex: 0 0 24px;
	font-weight: 500;
	height: 24px;
	line-height: 23px;
	width: 24px;
    
}

.ld-profile-sidebar .ld-item-list .ld-section-heading h3 {
	margin: 0;
    padding: 0;
}

.ld-profile-sidebar .ld-profile-summary {
	background: #fff;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
	margin: 0em 0 3em;   
    padding: 30px 0;
    
}

.ld-profile-sidebar .ld-profile-summary .ld-profile-card {
	margin: 0 0 50px;
}

.ld-profile-sidebar .ld-profile-summary .ld-profile-card .ld-profile-edit-link {
    font-size: 14px;
	line-height: 1.4;
    padding: 10px 0;
}

.ld-profile-sidebar .ld-item-list-item-expanded .ld-progress {
	padding: 30px 20px !important;
}

.ld-profile-sidebar .et_pb_post{
	margin-bottom: 0 !important;
}

.learndash-wrapper .ld-profile-summary .ld-profile-stats .ld-profile-stat {
    padding: 0 10px !important; 
    flex: 0 0 60px !important;
}

.learndash-wrapper .ld-profile-summary .ld-profile-stats .ld-profile-stat strong {
    font-size: 28px;

}

.ld-profile-sidebar .ld-profile-summary .ld-profile-stat span{
    font-size:12px !important;   
}

/* Profile Right Sidebar Ends */

/* Global Course Page */

.ld_course_grid .thumbnail.course {
	border: none;
	box-shadow: 0 12px 18px -6px rgb(0 0 0 / 15%);
	border: solid 1px rgba(0,0,0,0.06);
}


.ld_course_grid .thumbnail.course a.btn-primary {
    background-color: #ffffff;
	border: none;
    font-size: 16px;
	padding: 0;
    text-align: left;
    text-transform: capitalize;
}

.ld_course_grid .thumbnail.course .ld_course_grid_price {
    font-weight: 500 !important;
    letter-spacing: 0.6px;
    padding: 5px 10px !important;
}


.learndash-wrapper .ld-progress .ld-progress-heading .ld-progress-label{
	font-weight: 600;
}

.learndash-wrapper .learndash_mark_complete_button{
	background-color: #02A560!important;
	font-weight: 500;
}

.learndash-wrapper .ld-breadcrumbs {
    background: #f3f3f3 !important;
}

.learndash-wrapper .ld-breadcrumbs .ld-status.ld-status-complete {
	background-color: #02A560!important;
}

.ld-expand-button.ld-primary-background.ld-compact.ld-not-mobile {
    border-radius: 50px;
}

.ld_course_grid .thumbnail.course {
    display: flex !important;
    flex-direction: column;
    min-height: 100% !important;
}

.ld_course_grid .thumbnail .caption {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding:20px !important;
}

.ld_course_grid .entry-title {
    font-size: 22px !important; 
    font-weight: 700 !important;
    line-height: 1.6;
}

.ld-course-list-items .ld_course_grid .thumbnail .caption p {
    color: #666;
    line-height: 1.6;
    margin: 0 0 15px !important;
    
}

.ld-course-list-items .ld_course_grid .thumbnail .caption .ld_course_grid_button {
   margin-top: auto!important;
   margin-bottom: 0 !important;
}

.ld-course-list-items .ld_course_grid .thumbnail.course:hover img {
	transform: scale(1.1);
	transition: 0.3s all;
}

.ld-course-list-items .ld_course_grid .thumbnail.course img {
	transition: 0.5s all;
}

.ld-course-list-items .ld_course_grid .thumbnail.course a {
	overflow: hidden;
}

.ld-single-course-content .et_pb_row {
	max-width: 100% !important;
	width: 100% !important;
	
}

.learndash-wrapper .ld-tabs .ld-tabs-content .ld-tab-content {
    padding: 30px !important;
}

.ld-tab-content .ld-video {
	margin-bottom: 35px;
}

#ld_course_categorydropdown{
	margin-bottom: 40px;
}

#ld_course_categorydropdown_select{
    border-radius: 36px;
    font-size: 16px;
    height: 50px;
    padding: 10px 30px;
}

#ld_course_categorydropdown form{
	text-align: right;
}

#ld_course_categorydropdown form label{
	display: none;
}

/* Global Course Page Ends */

/* BAYADA (bayadabenefits.com) — Divi Custom CSS */

/* ==========================================================================
   1. Root & headings
   ========================================================================== */
:root {
  --red:   #ce0e2d;
  --gray:  #6f7271;
  --ring:  #c7ced4;
  --gap:   14px;
  --curve: 135%;
  --bleed: -9%;
}

h1 { font-size: clamp(2.4rem, 5vw, 3.6rem); line-height: 1.1; }
h2 { font-size: 1.875rem; }
h3 { font-size: 1.375rem; }
h4 { font-size: 1.125rem; }
h5 { font-size: 0.9375rem; }
h6 { font-size: 0.8125rem; }

/* Section subheads: the bold <h2> inside content text modules, in BAYADA's dark #161718 (Marketing,
   2026-10-07: headlines and sub-headlines #161718, as on bayada.com; they were brand red). Divi normally sets this
   PER-MODULE (header_2_text_color="#ce0e2d" + header_2_font="|700|…"), which the importer emits —
   but a hand-added/edited section can miss those attrs and its <h2> then falls back to the theme
   default (grey, normal weight → reads "smaller"). This makes the dark bold the DEFAULT for
   every content <h2>, so a section styles correctly even without the per-module settings. It's a
   fallback: a module that DOES set its own header_2 color/weight has higher specificity and still
   wins, so intentional per-module overrides are preserved. (Doesn't touch table/hero/nav headings —
   those aren't <h2> in .et_pb_text.) NOTE: color is only half the story — a bare module also lacks
   module_id, so that section still won't anchor in the "On This Page" sidebar until module_id is set. */
.et_pb_text h2 {
  color: #161718 !important;
  font-weight: 700 !important;
}

/* Consistent heading SIZE regardless of column width. Divi's core (style-static.min.css) shrinks
   headings inside NARROW columns — it sets `.et_pb_column_1_3/1_4/1_5/1_6/2_5 h2 { font-size:23px }`
   (h3 20 / h4 18 / h5 16 / h6 15) — so the SAME <h2> renders smaller in a split/2-column section
   than at full width (4/4). (That's why "Benefits Eligibility" in a 1/3 column looked smaller than
   "New Hires" in a full-width one, though both are identical <h2>s.) Reset those back to our
   canonical sizes. Scoped to STANDARD column classes only, so the Theme-Builder footer — whose
   columns are `.et_pb_column_*_tb_footer` — keeps its own large heading sizes. h1 is intentionally
   left out: the only <h1> is the hero, which is full-width (4/4) and never shrunk. */
.et_pb_column_1_3 h2, .et_pb_column_1_4 h2, .et_pb_column_1_5 h2, .et_pb_column_1_6 h2, .et_pb_column_2_5 h2 { font-size: 1.875rem !important; }
.et_pb_column_1_3 h3, .et_pb_column_1_4 h3, .et_pb_column_1_5 h3, .et_pb_column_1_6 h3, .et_pb_column_2_5 h3 { font-size: 1.375rem !important; }
.et_pb_column_1_3 h4, .et_pb_column_1_4 h4, .et_pb_column_1_5 h4, .et_pb_column_1_6 h4, .et_pb_column_2_5 h4 { font-size: 1.125rem !important; }
.et_pb_column_1_3 h5, .et_pb_column_1_4 h5, .et_pb_column_1_5 h5, .et_pb_column_1_6 h5, .et_pb_column_2_5 h5 { font-size: 0.9375rem !important; }
.et_pb_column_1_3 h6, .et_pb_column_1_4 h6, .et_pb_column_1_5 h6, .et_pb_column_1_6 h6, .et_pb_column_2_5 h6 { font-size: 0.8125rem !important; }

/* Auto-balancing two-column list — put `module_class="two-col-list"` on ONE Text module holding a
   single <ul>, and the items flow into two EQUAL-HEIGHT columns that reflow to the width. Use this
   instead of splitting a list across a rigid Divi 1/2 + 1/2 column pair: those two columns never
   balance, so a longer side runs past the shorter one and leaves a dead gap (the Making Changes
   "Qualified Life Events" bug). Collapses to one column on phones, where a split would be too narrow. */
.two-col-list ul { column-count: 2; column-gap: 40px; margin: 0; }
.two-col-list li { break-inside: avoid; margin-bottom: 8px; }
@media (max-width: 767px) { .two-col-list ul { column-count: 1; } }

/* Divi specialty-section quirk: on the sidebar-layout pages the content lives in a 2/3 "specialty
   column", but Divi's renderer keeps only the first inner rows inside that column and EJECTS later
   ones as FULL-WIDTH siblings of the column (seen on Making Changes — "How to Make a Change" spanned
   the whole page instead of the content column). An ejected row is the ONLY .et_pb_row_inner that's
   a DIRECT child of .et_pb_row (normal inner rows sit inside .et_pb_specialty_column), so this
   re-constrains just those back to the 2/3 content column, offset past the 1/3 sidebar. The 64.8 /
   35.2 split matches Divi's rendered 2_3-with-1_3-sidebar widths (verified at desktop width). */
.et_section_specialty .et_pb_row > .et_pb_row_inner {
  width: 64.8% !important;
  max-width: 64.8% !important;
  margin-left: 35.2% !important;
  margin-right: 0 !important;
  float: none !important;
}
@media (max-width: 980px) {
  /* Below Divi's column-stack breakpoint the sidebar stacks on top, so the row is full-width again. */
  .et_section_specialty .et_pb_row > .et_pb_row_inner {
    width: auto !important; max-width: 100% !important; margin-left: 0 !important;
  }
}


/* ==========================================================================
   2. Photo-circle bands (.pc-band)
   ========================================================================== */
.pc-band {
  --curve:   135%;
  --bleed:   -14%;
  --ring:    #c7ced4;
  --gap:     14px;
  --photo-w: 60%;
  --pos:     center;
  position: relative !important;
}

.pc-band .et_pb_column {
  position: static !important;
  float: none !important;
  height: 100% !important;
  display: flex !important;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}

.pc-band.flip .et_pb_column {
  align-items: flex-end;
}

.pc-band .pc-content {
  position: relative;
  z-index: 3;
  max-width: 46%;
}

.pc-band .pc-photo {
  position: absolute !important;
  top: 0 !important;
  bottom: 0 !important;
  right: 0 !important;
  left: auto !important;
  width: var(--photo-w) !important;
  height: 100% !important;
  margin: 0 !important;
  z-index: 1 !important;
}

.pc-band.flip .pc-photo {
  right: auto !important;
  left: 0 !important;
}

.pc-band .pc-photo .et_pb_image_wrap {
  display: block !important;
  position: relative !important;
  height: 100% !important;
  width: 100% !important;
  overflow: visible !important;
  clip-path: inset(0 -100vw) !important;
}

.pc-band .pc-photo img {
  position: absolute !important;
  top: 50% !important;
  right: var(--bleed) !important;
  left: auto !important;
  transform: translateY(-50%) !important;
  height: var(--curve) !important;
  width: auto !important;
  aspect-ratio: 1 / 1 !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: var(--pos) !important;
  border-radius: 50% !important;
  outline: 4px dotted var(--ring);
  outline-offset: var(--gap);
}

.pc-band.flip .pc-photo img {
  right: auto !important;
  left: var(--bleed) !important;
}

.pc-band .pc-photo.ring-red img {
  outline-color: #ce0e2d;
}

@media (max-width: 980px) {

  .pc-band,
  .pc-band.flip {
    height: auto !important;
  }

  .pc-band .et_pb_column {
    display: block !important;
    height: auto !important;
  }

  .pc-band .pc-content {
    max-width: 100% !important;
    text-align: center;
    padding: 0 24px 8px !important;
  }

  .pc-band .pc-photo,
  .pc-band.flip .pc-photo {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    width: 70vw !important;
    max-width: 340px !important;
    height: auto !important;
    aspect-ratio: 1 !important;
    margin: 20px auto 0 !important;
  }

  .pc-band .pc-photo .et_pb_image_wrap {
    overflow: visible !important;
    height: 100% !important;
    width: 100% !important;
  }

  .pc-band .pc-photo img {
    position: static !important;
    transform: none !important;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    height: 100% !important;
    width: 100% !important;
    aspect-ratio: 1 !important;
    object-fit: cover !important;
    border-radius: 50% !important;
    outline: 4px dotted var(--ring) !important;
    outline-offset: var(--gap) !important;
  }
}


/* ==========================================================================
   3. Sidebar nav (.sidebar-nav)
   ========================================================================== */
.sidebar-nav ul.et-menu{display:block !important;padding:6px 18px 12px !important;margin:0 !important}
.sidebar-nav ul.et-menu > li{display:block !important;float:none !important;margin:0 !important}

.sidebar-nav ul.et-menu > li > a{
  display:block !important;padding:8px 12px !important;color:#161718 !important;
  font-size:14.5px !important;font-weight:600 !important;opacity:1 !important;line-height:1.3 !important;
  border-left:3px solid transparent !important;border-radius:0 4px 4px 0 !important}

.sidebar-nav ul.et-menu > li > a:hover{
  background:#fff !important;
  color: #a00b23 !important;
 }

.sidebar-nav ul.et-menu > li.current-menu-item > a,
.sidebar-nav ul.et-menu > li.current_page_item > a,
.sidebar-nav ul.et-menu > li.is-active > a,
.sidebar-nav ul.et-menu > li > a[aria-current="page"]{
  background:#fff !important;color:#ce0e2d !important;font-weight:700 !important;
  border-left:3px solid #ce0e2d !important;
  border-radius:0 4px 4px 0 !important;
  box-shadow:0 1px 3px rgba(0,0,0,.06) !important}

.sidebar-nav ul.et-menu > li.nav-label > a{
  font-family:"Frutiger LT Pro",Arial,sans-serif !important;font-size:12px !important;
  font-weight:700 !important;letter-spacing:.12em !important;text-transform:uppercase !important;
  color:#6f7271 !important;pointer-events:none !important;padding:6px 0 6px 0px !important;
  border-left:0 !important}


/* ==========================================================================
   4. Enrollment steps (.enroll-step)
   ========================================================================== */
.enroll-step .et_pb_module_header::before{ color:#ce0e2d; font-weight:800; margin-right:4px; }
.enroll-step-1 .et_pb_module_header::before{ content:"1."; }
.enroll-step-2 .et_pb_module_header::before{ content:"2."; }
.enroll-step-3 .et_pb_module_header::before{ content:"3."; }

/* brand Red, like the step numbers (was hover red #a00b23 — "Update red", RS round 2) */
.enroll-step .et_pb_blurb_description strong{ color:#ce0e2d; font-weight:700; }

.enroll-step{ margin-bottom:22px !important; }
.enroll-step .et_pb_blurb_description{ margin-left:22px; }

.steps-col .et_pb_button_module_wrapper{
  display:inline-block; vertical-align:top; margin:0 14px 0 0 !important;
}


/* ==========================================================================
   5. Layout helpers (.rem-narrow/.rem-wide, .rollover-icon, .card-col, .callout)
   ========================================================================== */
.rem-narrow {
    flex:0 0 15% !important;
    max-width:15% !important;
    width: 15% !important;
    margin: 0 !important;
}
.rem-wide{
    flex:0 0 85% !important;
    max-width:85% !important;
    width: 85% !important;
    margin: 0 !important;
}

@media (max-width:980px) {
  .rem-band {
      flex-direction:column;
      align-items:flex-start;
    }
  .rem-narrow, .rem-wide {
      flex:1 1 100% !important;
      max-width:100% !important;
      padding-left:0;
    }
}

/* body copy on the green #93cccc band: theme gray -> ink, for contrast (RS round 2, Dental #2) */
.rem-band .et_pb_text p,
.rem-band .et_pb_text li{ color:#161718 !important; }

.rollover-icon {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
}
.rollover-icon svg,
.rollover-icon img {
  display: block !important;
  margin: 0 !important;
}

.card-col { display: flex; }
.card-col > .et_pb_module { width: 100%; }

.callout.callout.callout{
  border: 1px solid rgba(147, 204, 204, .30) !important;
  overflow: hidden !important;
  background:
    radial-gradient(circle 75px at calc(100% - 30px) calc(100% - 30px), rgba(147,204,204,.30) 0 97%, transparent 100%),
    linear-gradient(135deg, rgba(147,204,204,.07) 0%, rgba(147,204,204,.24) 100%) !important;
}
.callout.et_pb_promo .et_pb_module_header,
.callout.et_pb_promo .et_pb_promo_description p{ color: #161718 !important; }
/* Links inside a callout: BAYADA red like links elsewhere (the CTA module's dark layout otherwise
   leaves them Divi's default blue #2ea3f2) — Dental's Maximum Rollover, Disability/ADA Leave's Important Note */
.callout.et_pb_promo .et_pb_promo_description a{ color: #ce0e2d !important; }

/* .callout-oe: the same callout in brand Blue #9bc4dc — Home's Open Enrollment message, so it
   reads as its own block above the green "Need Assistance?" callout (RS round 2, Home #6) */
.callout.callout.callout.callout-oe{
  border: 1px solid rgba(155, 196, 220, .30) !important;
  background:
    radial-gradient(circle 75px at calc(100% - 30px) calc(100% - 30px), rgba(155,196,220,.30) 0 97%, transparent 100%),
    linear-gradient(135deg, rgba(155,196,220,.07) 0%, rgba(155,196,220,.24) 100%) !important;
}


/* ==========================================================================
   6. Hero (.hero-split)
   ========================================================================== */
.hero-split{
  position:relative;
  overflow:hidden;
  background-size:cover;
  background-position:right center;
}

.hero-split .et_pb_row{
  position:relative;
  z-index:2;
  margin-left:0 !important;
  max-width:40% !important;
}

@media (max-width: 767px){
  .hero-split .et_pb_row{ max-width: 100% !important; }
  .hero-split > svg,
  .hero-split .hero-curve{ display: none !important; }
}

.hero-split .et_pb_text_0{
  padding-right:0 !important;
  max-width:100% !important;
  text-align:left !important;
}
.hero-split .et_pb_text_0 *{
  overflow-wrap:normal !important;
  word-break:normal !important;
  text-align:left !important;
}


/* ==========================================================================
   7. Header nav (.dfh-70)
   ========================================================================== */
.dfh-70 .et-menu { flex-wrap: nowrap !important; justify-content: center !important; }
.dfh-70 .et-menu > li { flex: 0 0 auto !important; width: auto !important; padding: 0 26px 0 0 !important; }
.dfh-70 .et-menu > li:last-child { padding-right: 0 !important; }
.dfh-70 .et-menu > li > a { white-space: nowrap !important; font-size: 16px !important; }
@media (max-width: 1100px) { .dfh-70 .et-menu { flex-wrap: wrap !important; } }

.dfh-70 .et-menu ul.sub-menu li > a { padding: 9px 20px !important; line-height: 1.25 !important; }
.dfh-70 .et-menu ul.sub-menu li.menu-item-has-children > a { padding-right: 34px !important; }


/* ==========================================================================
   8. Max Mega Menu — desktop (min-width: 1380px)
   ========================================================================== */
/* Non-clickable category items (top-level toggles like "Your Wealth", in-panel sub-group headers
   like "Retirement Plans", and dead-leaf placeholders) all link to "#" and were showing a pointer
   cursor as if clickable. Every real page link carries a full permalink, so keying off href="#"
   reverts just the non-clickable ones to the default arrow. Left outside the 1380px block so it
   applies wherever the desktop bar renders (harmless on the mobile accordion — no cursor there). */
#mega-menu-primary-menu a.mega-menu-link[href="#"] { cursor: default !important; }

@media (min-width: 1380px) {

#mega-menu-primary-menu { text-align: center !important; }
#mega-menu-primary-menu ul.mega-sub-menu { text-align: left !important; }
#mega-menu-primary-menu > li.mega-menu-item { float: none !important; display: inline-block !important; vertical-align: middle !important; }
#mega-menu-primary-menu > li.mega-menu-item > a.mega-menu-link { font-size: 16px !important; }

#mega-menu-primary-menu > li.mega-menu-item-has-children { position: relative !important; }
#mega-menu-primary-menu > li.mega-menu-item-has-children > ul.mega-sub-menu {
  width: max-content !important;
  max-width: min(1100px, 94vw) !important;
  left: 0 !important;
  right: auto !important;
  background: #fff !important;
  border-top: 3px solid #ce0e2d !important;
  box-shadow: 0 22px 40px rgba(0,0,0,.20) !important;
  padding: 22px 26px !important;
  border-radius: 0 0 8px 8px !important;
}

#mega-menu-primary-menu li.mega-menu-row,
#mega-menu-primary-menu li.mega-menu-row > ul.mega-sub-menu { width: auto !important; }
#mega-menu-primary-menu li.mega-menu-row > ul.mega-sub-menu {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 18px 34px !important;
}
#mega-menu-primary-menu li.mega-menu-column {
  width: auto !important;
  min-width: 0 !important;
  max-width: 250px !important;
  float: none !important;
  flex: 0 1 auto !important;
  margin: 0 !important;
  padding: 0 !important;
}
#mega-menu-primary-menu li.mega-menu-column li.mega-menu-item { margin: 0 !important; padding: 0 !important; }
#mega-menu-primary-menu li.mega-menu-column ul.mega-sub-menu:empty { display: none !important; }
/* Leaves of Absence panel has 5 grid columns — keep them on ONE row (override the
   general flex-wrap:wrap above so the last column can't drop to a second row). Columns
   already have min-width:0 + flex:0 1 auto, so they shrink to fit instead of wrapping.
   278700 is the FT Main Menu item; each sibling site's Main Menu copy gives its Leaves of
   Absence item the CSS class "panel-nowrap" instead (copies have new item IDs). Max Mega
   Menu prefixes custom item classes with "mega-", so it renders as .mega-panel-nowrap. */
#mega-menu-primary-menu #mega-menu-item-278700 li.mega-menu-row > ul.mega-sub-menu,
#mega-menu-primary-menu li.mega-panel-nowrap li.mega-menu-row > ul.mega-sub-menu {
  flex-wrap: nowrap !important;
}

/* Sub-group headers — the items that OVERSEE children (e.g. "Savings & Spending Accounts",
   "Retirement Plans"). Per client feedback these are styled to look TYPOGRAPHICALLY IDENTICAL
   to the direct-page links below (same case / size / weight / color); the hierarchy is now
   carried by INDENTING the children (see the sub-item rule), not by making the header a small,
   grayed-out, uppercase label. The one header-only affordance kept is the thin bottom rule that
   visually groups the indented children beneath it. */
#mega-menu-primary-menu li.mega-menu-column li.mega-menu-item-has-children > a.mega-menu-link {
  text-transform: none !important;
  font-size: 15px !important;
  letter-spacing: normal !important;
  font-weight: 700 !important;
  color: #161718 !important;
  padding: 0 0 8px 0 !important;
  margin-bottom: 6px !important;
  border-bottom: 1px solid #e4e6e6 !important;
}
/* MMM appends a dropdown chevron (span.mega-indicator) to EVERY has-children link. Hide it on the
   in-panel headers so they read identically to the direct-page links (which carry no chevron).
   Scoped to items inside a column, so the top-level bar items keep their chevron. */
#mega-menu-primary-menu li.mega-menu-column li.mega-menu-item-has-children > a.mega-menu-link > span.mega-indicator {
  display: none !important;
}
/* Even breathing room between TOP-LEVEL column items (both sub-group headers AND direct-page
   links) so the panel reads as one clean top-to-bottom outline — this is what resolves the
   "out of sequence" feel (before, gray uppercase labels vs. bold dark links made the reading
   order look scrambled even though the items were in sequence). The `>` child combinator keeps
   this OFF the nested sub-items, which live one level deeper in their own ul. :first-child is
   skipped so the first item in a column stays flush to the top. */
#mega-menu-primary-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item:not(:first-child) {
  margin-top: 8px !important;
}

/* Sub-items — the children of a header (e.g. HSA / FSAs under "Savings & Spending Accounts").
   INDENTED beneath their header and kept lighter in WEIGHT (400 vs 700), in the same #161718 as the
   rest of the text (Marketing 2026-10-07; earlier #6f7271, then #54585a). Size stays 1px under the
   top-level items. The left padding is the indent that carries the hierarchy. */
#mega-menu-primary-menu li.mega-menu-column li.mega-menu-item-has-children > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link {
  text-transform: none !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  color: #161718 !important;
  padding: 6px 0 6px 11px !important;
}

/* Direct-page links (top-level items with no children, e.g. "Life and AD&D"). Their top padding
   is 0 (was 6px) so the gap ABOVE every top-level item is uniform: the sub-group headers already
   have top padding 0, so with all tops at 0 each gap = the 16px li margin-top + the 6px bottom of
   the item above (a direct link and a sub-item both end in 6px, so they match). Without this,
   Life→Short-Term (link over link, +6) was larger than Short-Term→Retirement (link over header). */
#mega-menu-primary-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item:not(.mega-menu-item-has-children) > a.mega-menu-link {
  text-transform: none !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #161718 !important;
  padding: 0 0 6px 0 !important;
}

#mega-menu-primary-menu li.mega-menu-column a.mega-menu-link:hover { color: #ce0e2d !important; }

#mega-menu-primary-menu > li.mega-menu-item-has-children:nth-last-child(1) > ul.mega-sub-menu {
  left: auto !important;
  right: 0 !important;
}
#mega-menu-primary-menu > li.mega-menu-item-has-children:nth-last-child(2) { position: static !important; }
#mega-menu-primary-menu > li.mega-menu-item-has-children:nth-last-child(2) > ul.mega-sub-menu {
  left: auto !important;
  right: 0 !important;
}

}


/* ==========================================================================
   9. Mobile: comparison tables (max-width: 980px)
   ========================================================================== */
@media (max-width: 980px) {

  .supsystic-tables-wrap,
  .dataTables_wrapper {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }

  table.supsystic-table {
    table-layout: fixed !important;
    width: 100% !important;
    min-width: 440px !important;
  }

  table.supsystic-table tbody td,
  table.supsystic-table tbody tr:first-child td,
  table.supsystic-table th,
  table.supsystic-table td {
    padding-left: 12px !important;
    padding-right: 12px !important;
    box-sizing: border-box !important;
    white-space: normal !important;
  }

  table.supsystic-table.oneColumn { display: table !important; }
  table.supsystic-table.oneColumn thead { display: table-header-group !important; }
  table.supsystic-table.oneColumn tbody { display: table-row-group !important; }
  table.supsystic-table.oneColumn tr { display: table-row !important; }
  table.supsystic-table.oneColumn th,
  table.supsystic-table.oneColumn td { display: table-cell !important; }

  table.supsystic-table td:first-child,
  table.supsystic-table th:first-child {
    width: 140px !important;
    position: sticky !important;
    left: 0 !important;
    z-index: 2 !important;
    box-shadow: 2px 0 0 rgba(0,0,0,.06) !important;
  }

}


/* ==========================================================================
   10. Mobile: table scroll affordance (max-width: 600px)
   ========================================================================== */
@media (max-width: 600px) {

  .supsystic-tables-wrap { position: relative !important; }

  .supsystic-tables-wrap::before {
    content: "Swipe to compare \2192" !important;
    display: block !important;
    font-size: 12px !important;
    font-style: italic !important;
    color: #6f7271 !important;
    margin: 0 0 8px 2px !important;
  }

  .supsystic-tables-wrap::after {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 40px !important;
    background: linear-gradient(to right, rgba(255,255,255,0), #fff) !important;
    pointer-events: none !important;
  }

}


/* ==========================================================================
   11. Mobile: hero (max-width: 767px) — add class "mobile-hero" to each hero section
   ========================================================================== */
@media (max-width: 767px) {

  .mobile-hero {
    min-height: 0 !important;
    padding-top: 26px !important;
    padding-bottom: 26px !important;
  }
  .mobile-hero.mobile-hero h1,
  .mobile-hero.mobile-hero h2 {
    color: #161718 !important;
  }
  .mobile-hero.mobile-hero p {
    color: #161718 !important;
  }

  .mobile-hero .et_pb_button_module_wrapper {
    display: block !important;
    width: 100% !important;
  }
  .mobile-hero .et_pb_button {
    display: block !important;
    width: 100% !important;          /* full content width — matches the paragraph */
    margin: 0 0 12px 0 !important;
    text-align: center !important;
    box-sizing: border-box !important;
  }

}


/* ==========================================================================
   12. Mobile: reminder bands (max-width: 767px) — .rem-band
   ========================================================================== */
@media (max-width: 767px) {

  .rem-band {
    padding-left: 22px !important;
    padding-right: 22px !important;
  }

}


/* ==========================================================================
   13. Header — desktop: search | logo | Enroll (Divi default).
       Mobile (<=980px, matches the MMM hamburger breakpoint): logo top-left,
       and the 2nd search instance in the black bar, left of the hamburger.
       (Two search modules with Divi per-breakpoint visibility — see steps §3.)
   ========================================================================== */
/* Logo column (2nd in the top row) — always show it (Divi hides it on tablet + phone). */
.et_pb_row_0_tb_header > .et_pb_column:nth-child(2) { display: block !important; }
.et_pb_row_0_tb_header > .et_pb_column:nth-child(2) .et_pb_code { display: none !important; }
.et_pb_row_0_tb_header > .et_pb_column:nth-child(2) .et_pb_image,
.et_pb_row_0_tb_header > .et_pb_column:nth-child(2) .et_pb_image img { display: block !important; }

@media (max-width: 980px) {

  /* Top row: logo left, Enroll Now right (the desktop search column is hidden here) */
  .et_pb_row_0_tb_header {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: space-between !important;
  }
  .et_pb_row_0_tb_header > .et_pb_column {
    float: none !important;
    width: auto !important;
    margin: 0 !important;
  }
  .et_pb_row_0_tb_header > .et_pb_column:nth-child(1) { display: none !important; }   /* desktop search #1 column */
  .et_pb_row_0_tb_header > .et_pb_column:nth-child(3) { margin-left: auto !important; }  /* push Enroll Now flush right */

  /* Black bar: 2nd search fills the left, hamburger on the right, one line.
     min-height makes the bar taller than the 39px search so it sits centered
     with breathing room (bar was too thin at ~40px). */
  .et_pb_row_1_tb_header > .et_pb_column {
    display: flex !important;
    align-items: center !important;
    flex-direction: row !important;
    gap: 12px !important;
    min-height: 64px !important;
  }
  .et_pb_row_1_tb_header > .et_pb_column > .et_pb_search { flex: 1 1 auto !important; margin: 0 !important; width: auto !important; }
  .et_pb_row_1_tb_header > .et_pb_column > .et_pb_code { flex: 0 0 auto !important; margin: 0 !important; width: auto !important; }
  /* soften the search field's corners (it was a full pill) */
  .et_pb_row_1_tb_header .et_pb_search,
  .et_pb_row_1_tb_header .et_pb_search form,
  .et_pb_row_1_tb_header .et_pb_search input { border-radius: 8px !important; }

}

/* Phone (<=767px): shrink the logo a touch */
@media (max-width: 767px) {
  .et_pb_row_0_tb_header > .et_pb_column:nth-child(2) img {
    max-height: 40px !important;
    width: auto !important;
  }
}

/* Desktop (>=981px): the search column must always show, and — because search is
   visible here — the logo is CENTERED (on mobile, with search hidden, it's left).
   The guard also protects the search column if the mobile hide ever loses its
   media scope in compilation. */
@media (min-width: 981px) {
  .et_pb_row_0_tb_header > .et_pb_column:nth-child(1) { display: block !important; }
  .et_pb_row_0_tb_header > .et_pb_column:nth-child(2) { text-align: center !important; }
  .et_pb_row_0_tb_header > .et_pb_column:nth-child(2) .et_pb_image,
  .et_pb_row_0_tb_header > .et_pb_column:nth-child(2) .et_pb_image img {
    margin-left: auto !important;
    margin-right: auto !important;
  }
}


/* ==========================================================================
   14. Table house style — Data Tables by Supsystic
   Applies AUTOMATICALLY to every Supsystic table (keyed off `table.supsystic-table` /
   `.supsystic-tables-wrap`, which the plugin always outputs) — no per-module class needed.
   (Previously scoped to a `.styled-table` module class; dropped so tables style on their own.)
   To opt a single table OUT, you'd add an override rule for it, not a class.
   ========================================================================== */
.supsystic-tables-wrap .dataTables_wrapper {
  border: 1px solid #e4e6e6;
  border-radius: 10px;
  overflow: hidden;
}

table.supsystic-table {
  width: 100% !important;
  margin: 0 !important;
  border: 0 !important;
  border-collapse: collapse !important;
  background: #fff !important;
  font-family: "Inter", "Arial", sans-serif !important;
  font-size: 15px !important;
}

table.supsystic-table thead {
  display: none !important;
}

table.supsystic-table tbody td {
  border: 0 !important;
  border-top: 1px solid #e4e6e6 !important;
  padding: 14px 18px !important;
  background: #fff !important;
  color: #161718 !important;
  font-weight: 600 !important;
  vertical-align: middle !important;
}

table.supsystic-table tbody td[data-x="0"] {
  text-align: left !important;
}

table.supsystic-table tbody td:not([data-x="0"]) {
  text-align: center !important;
}

table.supsystic-table tbody tr:not(:first-child) td[data-x="0"] {
  font-weight: 400 !important;
  color: #161718 !important;
}

table.supsystic-table tbody tr:not(:first-child) td[data-x="0"] strong,
table.supsystic-table tbody tr:not(:first-child) td[data-x="0"] b,
table.supsystic-table tbody tr:not(:first-child) td[data-x="0"].bold,
table.supsystic-table tbody tr:not(:first-child) td[data-x="0"] .bold {
  font-weight: 700 !important;
  color: #161718 !important;
}

table.supsystic-table tbody tr:first-child td {
  background: #161718 !important;
  color: #fff !important;
  border-top: 0 !important;
  padding: 15px 18px !important;
  font-family: "Frutiger LT Pro", "Frutiger", "Arial", sans-serif !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
}

table.supsystic-table tbody tr:nth-child(even) td {
  background: #f6f7f7 !important;
}

/* Supsystic renders a full-width merged cell as the colspan cell PLUS the merged-away cells
   as empty <td>s; those get pushed past the colspan into phantom columns, adding empty space
   on the right of a scrolled table (e.g. the "Plan Features" / "Your Costs for Care" /
   "Emergency Room" section rows). The table-layout can't be fixed via CSS (Supsystic forces
   table-layout:auto), so instead hide the stray EMPTY cells that follow a colspan cell — the
   table then sizes to its real columns only. Safe: only empty cells after a colspan are hit. */
table.supsystic-table td[colspan] ~ td:empty { display: none !important; }


/* ==========================================================================
   15. Table house style — TablePress (.tablepress)
   Mirrors sec. 14 (Supsystic) for TablePress markup: real <thead><th>, cells
   .column-N, striped tbody. Tables are emitted with use_datatables=false, so
   there is no DataTables chrome to style; a couple of guards hide it if a
   table is ever rendered with DataTables on.
   ========================================================================== */
.tablepress {
  width: 100% !important;
  margin: 0 !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  border: 1px solid #e4e6e6 !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  background: #fff !important;
  font-family: "Inter", "Arial", sans-serif !important;
  font-size: 15px !important;
}

.tablepress thead th {
  background: #161718 !important;
  color: #fff !important;
  border: 0 !important;
  padding: 15px 18px !important;
  font-family: "Frutiger LT Pro", "Frutiger", "Arial", sans-serif !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  text-align: center !important;
}
.tablepress thead th.column-1 { text-align: left !important; }

/* The empty/merged header corner renders as a <td> (not <th>), so the rule above misses it
   and TablePress's default light-blue (#d9edf7) shows through. Force it to the dark header. */
.tablepress thead td { background: #161718 !important; border: 0 !important; }

.tablepress tbody td {
  border: 0 !important;
  border-top: 1px solid #e4e6e6 !important;
  padding: 14px 18px !important;
  background: transparent !important;
  color: #161718 !important;
  font-weight: 600 !important;
  vertical-align: middle !important;
  text-align: center !important;
}

/* first column: left-aligned, lighter label (bold when the cell marks it) */
.tablepress tbody td.column-1 {
  text-align: left !important;
  font-weight: 400 !important;
  color: #161718 !important;
}
.tablepress tbody td.column-1 strong,
.tablepress tbody td.column-1 b {
  font-weight: 700 !important;
  color: #161718 !important;
}

.tablepress tbody tr:nth-child(even) td { background: #f6f7f7 !important; }

/* hide TablePress's front-end "Edit" caption (admins only see it anyway) */
.tablepress + .tablepress-scroll-wrapper caption,
.tablepress caption { display: none !important; }

/* belt-and-suspenders: if a table ever renders with DataTables on, hide the chrome */
.dataTables_wrapper .dataTables_filter,
.dataTables_wrapper .dataTables_length,
.dataTables_wrapper .dataTables_info,
.dataTables_wrapper .dataTables_paginate { display: none !important; }


/* ==========================================================================
   16. Auto-injected Photo Circles (floated in content, .pc-wrap / .pc-circle)
   The float + size are set inline on the <img> so it works without this block;
   this only makes the circle stack full-width on phones instead of floating.
   ========================================================================== */
.pc-wrap { overflow: hidden; }

@media (max-width: 767px) {
  .pc-circle {
    float: none !important;
    display: block !important;
    width: 62% !important;
    max-width: 300px !important;
    margin: 0 auto 18px !important;
  }
}


/* ==========================================================================
   17. TablePress scroll + frozen first column + edge fade
   Full parity with the old Supsystic tables (secs. 9 + 10), which TablePress lost:
   it renders a bare <table class="tablepress"> with no wrapper once DataTables is off,
   so a wide table (e.g. MEC Plan Comparison, 5 cols) crushed its columns / overflowed the
   page instead of scrolling with a locked label column and a "there's more" fade.
   Structure the importer now emits (render_table): an OUTER .tablepress-scroll
   (position:relative — anchors the fade + swipe hint) wrapping an INNER
   .tablepress-scroll-inner (the overflow-x:auto scroller) wrapping the table. Mirrors the
   old .supsystic-tables-wrap > .dataTables_wrapper nesting exactly.
   Desktop is untouched (table fits, keeps its sec.15 rounded card); the frozen column +
   fade only engage on the narrow breakpoints, like the Supsystic rules did.
   ========================================================================== */
.tablepress-scroll { position: relative !important; }

/* the scroller. :has() fallback keeps any table NOT yet wrapped (re-imported) scrollable. */
.tablepress-scroll-inner,
.et_pb_text_inner:has(table.tablepress):not(:has(.tablepress-scroll-inner)) {
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch !important;
}

@media (max-width: 980px) {
  /* let the table exceed the viewport so it scrolls (instead of shrinking to 100% and
     wrapping every cell); overflow:visible so the sticky column can lock to the scroller
     rather than to the table's own (sec.15) overflow:hidden box. Tune 600px per table. */
  table.tablepress { min-width: 600px !important; overflow: visible !important; }

  /* frozen first column — the row labels stay put while the value columns scroll under it */
  table.tablepress thead th.column-1,
  table.tablepress tbody td.column-1 {
    position: sticky !important;
    left: 0 !important;
    z-index: 2 !important;
    box-shadow: 2px 0 0 rgba(0,0,0,.06) !important;
  }
  /* opaque backgrounds so scrolling cells pass UNDER the frozen column, not through it
     (matches the sec.15 white / #f6f7f7 striping and the dark header) */
  table.tablepress tbody td.column-1 { background: #fff !important; }
  table.tablepress tbody tr:nth-child(even) td.column-1 { background: #f6f7f7 !important; }
  table.tablepress thead th.column-1 { background: #161718 !important; z-index: 3 !important; }

  /* overflow:visible drops the table's own corner clipping — re-round the 4 corner cells */
  table.tablepress thead th.column-1 { border-top-left-radius: 10px !important; }
  table.tablepress thead th:last-child { border-top-right-radius: 10px !important; }
  table.tablepress tbody tr:last-child td.column-1 { border-bottom-left-radius: 10px !important; }
  table.tablepress tbody tr:last-child td:last-child { border-bottom-right-radius: 10px !important; }
}

/* white edge-fade + swipe hint (mirrors old sec.10), on the non-scrolling outer wrapper so
   the fade pins to the visible right edge instead of scrolling away with the content */
@media (max-width: 600px) {
  .tablepress-scroll::before {
    content: "Swipe to compare \2192" !important;
    display: block !important;
    font-size: 12px !important;
    font-style: italic !important;
    color: #6f7271 !important;
    margin: 0 0 8px 2px !important;
  }
  .tablepress-scroll::after {
    content: "" !important;
    position: absolute !important;
    top: 24px !important;      /* clear the swipe-hint line above */
    right: 0 !important;
    bottom: 0 !important;
    width: 44px !important;
    background: linear-gradient(to right, rgba(255,255,255,0), #fff) !important;
    pointer-events: none !important;
  }

  /* Fade AWAY once you reach the far-right column — pure CSS: a scroll-driven animation ties
     the fade's opacity to the scroller's position (full until 85% scrolled, gone at the end).
     Guarded by @supports so browsers without scroll-driven animations (older Safari/Firefox)
     simply skip it and keep the static fade above — verified in Chrome. */
  @supports (animation-timeline: scroll()) {
    .tablepress-scroll { timeline-scope: --tbl-scroll !important; }
    .tablepress-scroll-inner {
      scroll-timeline-name: --tbl-scroll !important;
      scroll-timeline-axis: inline !important;
    }
    .tablepress-scroll::after {
      animation: tbl-fade-out linear both !important;
      animation-timeline: --tbl-scroll !important;
      animation-range: 85% 100% !important;
    }
    @keyframes tbl-fade-out { to { opacity: 0; } }   /* no !important — invalid inside keyframes */
  }
}


/* ==========================================================================
   18. Content links (inline body / blurb copy)
   Divi's default link blue (#2ea3f2) is off-brand. The brand guide (Comprehensive Book p. 60)
   says linked words are BAYADA Red with NO underline; the secondary teal/blue/yellow are
   background-only, so Red is the text accent on white and on the teal (#93cccc) bands alike.
   Red vs the #161718 body text is 3.18:1, enough for colour alone to mark a link (WCAG 1.4.1)
   provided hover and keyboard focus add a non-colour cue, so the underline returns on
   :hover / :focus-visible. Scoped to text/blurb content so nav, sidebar, buttons and the
   table headers keep their own styling.
   ========================================================================== */
.et_pb_text a,
.et_pb_blurb a {
  color: #ce0e2d !important;
  text-decoration: none !important;
  text-underline-offset: 2px !important;
}
.et_pb_text a:hover,
.et_pb_blurb a:hover,
.et_pb_text a:focus-visible,
.et_pb_blurb a:focus-visible {
  color: #ce0e2d !important;
  text-decoration: underline !important;
}


/* ==========================================================================
   19. Home CTA cards (Option C) — .cta-cards row / .cta-card columns
   Each card is a Divi COLUMN (module_class="cta-card") styled white + soft shadow + 10px radius via
   module settings, holding an et_pb_blurb (badge icon + red title + gray body) + an et_pb_button, and
   made clickable via the column's link_option_url. This block only: sizes/centers the badge, sets
   the title and body to #161718 (Marketing 2026-10-07; the title was red), and makes the three cards equal-height with the button pinned to the bottom.
   Badge size: 96px (Steve, 2026-10-10: "the icons got super small"). It rendered at 46.8px before,
   not 72: the blurb's Image Width (image_icon_width) was 65%, which Divi outputs as max-width:65% on
   .et_pb_image_wrap, and the img is capped at 100% of that wrap. Rendered size = this width × Image
   Width. All six home pages now have image_icon_width 100% and image_max_width 96px (desktop, tablet,
   phone), so this rule alone sets the size.
   ========================================================================== */
.cta-cards.cta-cards { display: flex !important; align-items: stretch !important; flex-wrap: wrap; }
.cta-cards > .et_pb_column { float: none !important; }
.cta-card { display: flex !important; flex-direction: column !important; }
.cta-card .et_pb_main_blurb_image { text-align: center !important; margin: 0 0 16px 0 !important; }
.cta-card .et_pb_main_blurb_image img { width: 96px !important; height: auto !important; display: inline-block !important; }
.cta-card .et_pb_module_header { color: #161718 !important; }
.cta-card .et_pb_blurb_description { color: #161718 !important; }
.cta-card > .et_pb_button_module_wrapper { margin-top: auto !important; }

@media (max-width: 767px) {
  .cta-cards.cta-cards { display: block !important; }   /* stack on phones */
}


/* ==========================================================================
   20. Marketing brand pass — BAYADA Marketing feedback (Kristen, 2026-10-07)
   Values: BAYADA brand guide + bayada.com, which Marketing named as the reference ("consistent
   with the look and feel of bayada.com"); measured on bayada.com 2026-10-10:
     headings Frutiger Bold #161718 · body Inter · header white with a 1px #d1d6db rule ·
     footer #f7f7f7 · buttons 8px radius, title case, Frutiger, 13px 24px padding, #ce0e2d fill.
   bayada.com also has a grey-blue secondary button (#dfe6eb); it isn't used here. Every button is red
   (Heath, 2026-10-12: Marketing asked for consistent buttons, not a second style).
   Fonts: "Frutiger LT Pro" → Frutiger → Arial (the guide's approved substitute) until BAYADA
   supplies licensed web-font files; add their @font-face above this section and it takes over.
   Header images: a hero that hasn't been converted to the frosted component (sec. 23) keeps its
   white text on tablet/desktop, because its photo is still darkened; on phones the hero text
   already sits on white (sec. 11) and is dark.
   ========================================================================== */
:root {
  --ink:       #161718;
  --rule:      #d1d6db;
  --footer-bg: #f7f7f7;
  --font-head: "Frutiger LT Pro", "Frutiger", Arial, sans-serif;
  --font-body: "Inter", Arial, sans-serif;
}

/* --- Type: Frutiger (stack) for headlines and larger type, Inter for body copy --- */
body { font-family: var(--font-body) !important; color: var(--ink) !important; }
h1, h2, h3, h4, h5, h6,
.et_pb_module_header,
.et_pb_toggle_title,
.et_pb_tabs_controls li a { font-family: var(--font-head) !important; }

/* --- Text colour: all body copy, headlines and sub-headlines #161718 (light-background modules;
       dark-layout modules and the tablet/desktop hero keep their light text). Divi prints each
       module's own colours AFTER this file with !important (e.g. ".et_pb_text_4 h2"), so these
       selectors carry one extra class/element ("body .et_pb_section …") to win. --- */
body .et_pb_section .et_pb_bg_layout_light :is(p, li, dd, dt, blockquote, .et_pb_blurb_description, .et_pb_toggle_content),   /* table cells: sec. 14/15 */
body .et_pb_section .et_pb_bg_layout_light.et_pb_text,
body .et_pb_section .et_pb_bg_layout_light .et_pb_text_inner { color: var(--ink) !important; }
body .et_pb_section .et_pb_bg_layout_light :is(h1, h2, h3, h4, h5, h6),
body .et_pb_section .et_pb_bg_layout_light .et_pb_module_header,
body .et_pb_section .et_pb_bg_layout_light .et_pb_toggle_title { color: var(--ink) !important; }
/* Linked blurb titles are web addresses (the contact blurbs: aetna.com, irs.gov, …), so they stay
   links: BAYADA red, no underline (sec. 18 adds it on hover/focus). Some carry Divi's own #000. */
body .et_pb_section .et_pb_bg_layout_light .et_pb_module_header a { color: #ce0e2d !important; }
@media (min-width: 768px) {
  body .et_pb_section.mobile-hero:not(.hero-frosted) .et_pb_bg_layout_light :is(p, li, h1, h2, h3, h4, h5, h6),
  body .et_pb_section.mobile-hero:not(.hero-frosted) .et_pb_bg_layout_light.et_pb_text,
  body .et_pb_section.mobile-hero:not(.hero-frosted) .et_pb_bg_layout_light .et_pb_text_inner { color: #fff !important; }
}
/* Flimp Video module captions ship with their own #2b2d2e title colour */
body .et_pb_section .flimp-video__title { color: var(--ink) !important; }
/* Content links stay BAYADA red via sec. 18 (text/blurb links only, so menus keep their own colours). */

/* --- Buttons: one treatment site-wide, "meeting in the middle" between pill and square, as on
       bayada.com. Every button is the red fill.
       Type is Inter Bold: the brand guide (Comprehensive Book p. 86) sets Inter for web buttons.
       Divi's per-button settings print as "body #page-container .et_pb_section .et_pb_button_N"
       with !important, so these lead with "html" to outrank them. --- */
html body #page-container .et_pb_section .et_pb_button,
html body #page-container .et_pb_section .et_pb_button:hover {
  border-radius: 8px !important;
  border-width: 0 !important;
  text-transform: none !important;
  letter-spacing: 0.15px !important;
  font-family: var(--font-body) !important;
  font-weight: 700 !important;
  font-size: 16px !important;
  line-height: 1.5 !important;
  padding: 13px 24px !important;
}
html body #page-container .et_pb_section .et_pb_button { background-color: #ce0e2d !important; color: #fff !important; }
html body #page-container .et_pb_section .et_pb_button:hover { background-color: #a00b23 !important; color: #fff !important; }
html body #page-container .et_pb_section .et_pb_button::after { display: none !important; }   /* no Divi hover arrow glyph */

/* Search fields: same 8px corners, a visible rule on the white header */
.et-l--header .et_pb_search,
.et-l--header .et_pb_search input { border-radius: 8px !important; border-color: var(--rule) !important; }

/* --- Header: white nav bar (was black), dark links, red on hover/open — as on bayada.com.
       The bar itself is the Theme Builder header's 2nd row (white + a 1px #d1d6db bottom rule set
       on that row, so it stays editable in the Visual Builder); Max Mega Menu's own theme also
       paints the menu black, which has no REST setting, so it's overridden here. --- */
#mega-menu-wrap-primary-menu,
#mega-menu-wrap-primary-menu #mega-menu-primary-menu { background: #fff !important; }
#mega-menu-wrap-primary-menu #mega-menu-primary-menu > li.mega-menu-item > a.mega-menu-link {
  background: transparent !important;
  color: var(--ink) !important;
  font-family: var(--font-body) !important;
}
#mega-menu-wrap-primary-menu #mega-menu-primary-menu > li.mega-menu-item > a.mega-menu-link:hover,
#mega-menu-wrap-primary-menu #mega-menu-primary-menu > li.mega-menu-item.mega-toggle-on > a.mega-menu-link,
#mega-menu-wrap-primary-menu #mega-menu-primary-menu > li.mega-menu-item.mega-current-menu-ancestor > a.mega-menu-link,
#mega-menu-wrap-primary-menu #mega-menu-primary-menu > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link {
  color: #ce0e2d !important;
  background: transparent !important;
}
/* mobile: white toggle bar with a dark hamburger; white panel with dark links */
#mega-menu-wrap-primary-menu .mega-menu-toggle { background: #fff !important; }
#mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-animated-inner,
#mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-animated-inner::before,
#mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-animated-inner::after { background-color: var(--ink) !important; }
@media (max-width: 980px) {   /* MMM's hamburger breakpoint (measured: bar to 981px, toggle at 980px) */
  #mega-menu-wrap-primary-menu #mega-menu-primary-menu { border-top: 1px solid var(--rule) !important; }
  #mega-menu-wrap-primary-menu #mega-menu-primary-menu li.mega-menu-item > a.mega-menu-link {
    background: #fff !important;
    color: var(--ink) !important;
    border-bottom: 1px solid var(--rule) !important;
  }
  #mega-menu-wrap-primary-menu #mega-menu-primary-menu ul.mega-sub-menu,
  #mega-menu-wrap-primary-menu #mega-menu-primary-menu ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link { background: var(--footer-bg) !important; }
}

/* --- Footer: light grey (was black), dark text — as on bayada.com. The #f7f7f7 background, the
       1px #d1d6db rule above the copyright row and the colour logo are set on the Theme Builder
       footer's modules (editable in the Visual Builder); these keep its text and links in line. --- */
.et-l--footer, .et-l--footer :is(p, li, span, h1, h2, h3, h4, h5, h6) { color: var(--ink) !important; }
.et-l--footer a:not(.et_pb_button) { color: var(--ink) !important; }
.et-l--footer a:not(.et_pb_button):hover { color: #ce0e2d !important; }


/* ==========================================================================
   21. Search results pages — Flimp Scoped Search 0.8.0 "Search results page"
   The plugin lays out the page numbers under the results (Previous left, numbers
   centre, Next right) and leaves colour to the site. Links in BAYADA Red with no
   underline (underline on hover / keyboard focus, as sec. 18); the current page
   is a Red box with white text. Independent of the brand pass (sec. 20).
   ========================================================================== */
.flimp-ss-pagination a {
  color: #ce0e2d !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}
.flimp-ss-pagination a:hover,
.flimp-ss-pagination a:focus-visible { text-decoration: underline !important; }
.flimp-ss-pagination .page-numbers.current {
  background: #ce0e2d !important;
  border-color: #ce0e2d !important;
  color: #fff !important;
}


/* ==========================================================================
   22. Keyboard focus — a visible ring on everything you can Tab to
   The live file's sec. 21, fitted to the brand pass. Technical findings 2026-10-13 (P1): Divi
   turns the browser's focus outline off, so keyboard users couldn't see where they were.
   :focus-visible is keyboard focus, so a mouse click on a link or button shows nothing new.
   Here the header bar, the phone menu and the footer are white / light grey, so the ring is the
   same everywhere: a Black (#000000) outline with a White gap between it and the element (the
   live file swaps to a White ring on its black areas). Mega menu items keep an inset ring like
   MMM's own (-3px, so the bar doesn't clip it) in their text colour. Divi's search module clips
   anything outside its field (overflow: hidden), so its ring goes on the module.
   ========================================================================== */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible,
[tabindex]:not([tabindex="-1"]):focus-visible,
.et_pb_search:focus-within {
  outline: 3px solid #000000 !important;
  outline-offset: 2px !important;
  box-shadow: 0 0 0 2px #ffffff !important;
}
.et_pb_search input:focus-visible {
  outline: none !important;
  box-shadow: none !important;
}
#mega-menu-wrap-primary-menu :focus-visible,
#mega-menu-wrap-primary-menu.mega-keyboard-navigation :focus {
  outline: 3px solid currentColor !important;
  outline-offset: -3px !important;
  box-shadow: none !important;
}
#mega-menu-wrap-primary-menu .mega-menu-toggle button:focus-visible,
#mega-menu-wrap-primary-menu button.mega-close:focus-visible {
  outline: 3px solid #000000 !important;
  outline-offset: 2px !important;
  box-shadow: 0 0 0 2px #ffffff !important;
}


/* ==========================================================================
   23. Header image: frosted hero component — .hero-frosted section, .hero-frost box
   The hero's content column IS the frosted box: a real element that holds the headline, the
   intro and the buttons (one row, one column). The section carries the full-colour photo (no
   scrim) as its Divi background, in the same 2400×860 frame with background-size: auto 120%, so
   the crop is unchanged. Every rule is keyed to .hero-frosted, so a hero that hasn't been
   converted keeps today's look (sec. 20 keeps its white text). New pages: insert the Divi
   Library section "Hero – Frosted", then set its photo, headline, intro and buttons.
   Box (approved 2026-10-12): rgba(255,255,255,.65), 4px backdrop blur, 8px radius; 20px from the
   section's top and bottom; 32px padding, reaching 32px left of the row so the text keeps the
   page's left edge; content width max(58% of the row, 500px). Tablets: the whole row, 16px
   padding. Phones: no photo and no box (sec. 11 styles the text and buttons).
   ========================================================================== */
@media (min-width: 768px) {
  body #page-container .et_pb_section.hero-frosted {
    display: flex;                 /* the row stretches to the section's full height */
    align-items: stretch;
  }
  body #page-container .et_pb_section.hero-frosted > .et_pb_row {
    display: flex;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    min-height: 351px;             /* the section's 391px min-height − 2 × 20px padding */
  }
  body #page-container .et_pb_section.hero-frosted .et_pb_column.hero-frost {
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
    align-content: flex-start;
    column-gap: 16px;
    width: calc(max(58%, 500px) + 64px) !important;
    max-width: calc(100% + 64px);
    margin: 0 0 0 -32px !important;
    padding: 32px !important;
    background: rgba(255, 255, 255, 0.65);
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px);
    border-radius: 8px;
  }
  /* headline and intro take the full width; the buttons sit side by side below them */
  body #page-container .hero-frost > .et_pb_module { flex: 0 0 100%; }
  body #page-container .hero-frost > .et_pb_button_module_wrapper {
    flex: 0 0 auto;
    margin: 24px 0 0 !important;
  }
}
@media (min-width: 768px) and (max-width: 980px) {
  body #page-container .et_pb_section.hero-frosted .et_pb_column.hero-frost {
    width: calc(100% + 32px) !important;
    max-width: none;
    margin: 0 0 0 -16px !important;
    padding: 16px !important;
  }
}
@media (max-width: 767px) {
  body #page-container .et_pb_section.hero-frosted .et_pb_column.hero-frost {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: none;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
    border-radius: 0;
  }
}
