/* tools */

#et-main-area,body,html{overflow-x:hidden}.animate{-webkit-transition:.2s ease-in-out;-moz-transition:.2s ease-in-out;-ms-transition:.2s ease-in-out;-o-transition:.2s ease-in-out;transition:.2s ease-in-out}.aspect-ratio{position:relative;max-width:100%;height:auto}.aspect-ratio>*{position:absolute;top:0;left:0;width:100%;height:100%}.aspect-ratio-16-9{padding-top:56.25%!important}.mx-inline-buttons{text-align:right}.mx-inline-buttons .et_pb_button_module_wrapper{display:inline-block;margin-right:10px}.mx-inline-center{text-align:center}.mx-inline-left{text-align:left}@media screen and (max-width:980px){.tablet50 .et_pb_column_1_2{margin-right:5.5%!important;width:47.25%!important}}

/*

NAV PILLS

*/

/* ========================================
   DIVI 5 NAV PILL BUTTONS
   Request Care + Employee Portal
   ======================================== */

/* Target the text span inside each nav item */
.et-menu li.care_nav > a > span,
.et-menu li.portal_nav > a > span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 0.25em 1.3em;
    border-radius: 999px;
    color: #ffffff;
    font-weight: 700;
    line-height: 1.1;
    text-decoration: none;
    white-space: nowrap;
    transition: transform 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
}

/* Button colours */
.et-menu li.care_nav > a > span {
    background: #B872AF;
}

.et-menu li.portal_nav > a > span {
    background: #6E297A;
}

/* Keep the parent link from adding awkward button spacing */
.et-menu li.care_nav > a,
.et-menu li.portal_nav > a {
    padding-top: 0;
    padding-bottom: 0;
    color: #ffffff;
}

/* Hover / focus polish */
.et-menu li.care_nav > a:hover > span,
.et-menu li.portal_nav > a:hover > span,
.et-menu li.care_nav > a:focus-visible > span,
.et-menu li.portal_nav > a:focus-visible > span {
    transform: translateY(-1px);
    filter: brightness(1.04);
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.14);
}

/* Prevent Divi hover colour from overriding the span text */
.et-menu li.care_nav > a:hover,
.et-menu li.portal_nav > a:hover,
.et-menu li.care_nav > a:focus-visible,
.et-menu li.portal_nav > a:focus-visible {
    color: #ffffff;
    opacity: 1;
}

/* Optional: slightly tighter mobile pills */
@media (max-width: 980px) {
    .et-menu li.care_nav > a > span,
    .et-menu li.portal_nav > a > span {
        min-height: 44px;
        padding: 0.28em 1.15em;
    }
}



/**/


/* 

Program Cards — square/tile layout for Divi text modules
Add class `program_card` to each Text Module.
Optional: wrap the row/section with class `program_cards_grid` for the gap/mobile helpers below.

*/

/* Optional wrapper/row cleanup */
.program_cards_grid {
  --program-card-gap: 14px;
}

.program_cards_grid .et_pb_column {
  display: flex;
}

/* Main card shape */
.program_card {
  width: 100%;
  aspect-ratio: 3 / 2; /* desired screenshot is slightly wider than tall */
  min-height: 220px;      /* fallback safety for older browsers + desktop consistency */
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: clamp(22px, 3vw, 52px);
  box-sizing: border-box;
  overflow: hidden;
}

/* Make Divi's internal text wrapper fill nicely */
.program_card .et_pb_text_inner {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  line-height: 1.05;
}

/* Card title */
.program_card h2,
.program_card h3,
.program_card h4,
.program_card .program-title {
  margin: 0;
  color: #fff;
  font-family: inherit;
  font-size: clamp(36px, 4.2vw, 64px);
  font-weight: 800;
  line-height: 0.95;
  letter-spacing: 0.01em;
}

/* Card subtitle / age range */
.program_card p,
.program_card .program-age {
  margin: 0.2em 0 0;
  color: #fff;
  font-size: clamp(22px, 2.35vw, 39px);
  font-weight: 700;
  line-height: 1.05;
}

/* If Divi inserts empty paragraphs, don't let them affect height */
.program_card p:empty {
  display: none;
}

/* Optional tighter gap if these are in a Divi Row */
.program_cards_grid .et_pb_row,
.et_pb_row.program_cards_grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--program-card-gap);
}

.et_pb_row.program_cards_grid::after,
.program_cards_grid .et_pb_row::after {
  display: none;
}

.et_pb_row.program_cards_grid .et_pb_column,
.program_cards_grid .et_pb_row .et_pb_column {
  width: auto !important;
  margin: 0 !important;
}

/* Tablet */
@media (max-width: 980px) {
  .et_pb_row.program_cards_grid,
  .program_cards_grid .et_pb_row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .program_card {
    aspect-ratio: 1.2 / 1;
    min-height: 190px;
  }
}

/* Mobile */
@media (max-width: 640px) {
  .et_pb_row.program_cards_grid,
  .program_cards_grid .et_pb_row {
    grid-template-columns: 1fr;
  }

  .program_card {
    aspect-ratio: auto;
    min-height: 170px;
  }
}

/* Optional: if one card needs a forced title wrap, add <br> in the text module
   or target it with a helper class like .program_card--pa-days.
*/
.program_card--pa-days h2,
.program_card--pa-days h3,
.program_card--pa-days h4,
.program_card--pa-days .program-title {
  max-width: 8.5em;
}

/**/


/* MX - CSS */

/* two-cols  */

@media only screen and (max-width: 980px) {
	#footer-cols #col-1 { width: 70%!important; }
	#footer-cols #col-2 { width: 30%!important; }
	.three .et_pb_column { width: 33.33%!important;	}
	.four-cols .et_pb_column { width: 25%!important; }

	.bio-cols .col-1 { width: 22%!important; }
	.bio-cols .col-2 { width: 75%!important; padding-right: 3%; }
}
/* +5214424250754  */
/* Use: https://wa.me/5214424250754  */

/**/

#et-main-area { padding-top: 0; }

/*  top menu offset */

@media screen and (min-width: 981px) {
	#et-main-area { padding-top: 0; }
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	#et-main-area { padding-top: 0; }
}

/* bios */

@media screen and (min-width: 480px) and (max-width: 980px) {

	.tablet-2 .et_pb_column {
		width: 50%!important;
	}
}

/* FF form */

.frm_required_field label { 
	display: none !important; 
	font-family: 'Montserrat', sans-serif !important; 
	text-transform: uppercase;
}

.frm_required_field input[type="text"], .frm_error {
	font-family: 'Montserrat', sans-serif !important; 
}

.frm_form_title { display: none !important; }

.frm_button_submit { 
	border:none !important; 
	font-family: 'Montserrat', sans-serif !important; 
	box-shadow: none !important;
	-moz-box-shadow: none !important;
	-webkit-box-shadow: none !important;
	text-transform: uppercase !important;
}

/* MX Styles */

#mx-footer-menu ul { margin: 0; padding: 0; text-align: right; }

#mx-footer-menu ul li { display: inline-block; list-style: none; margin: 0 auto 0 10px; }




/*

POPUP

*/

.pippen_download_popup {
	text-align: center;
	max-width: 980px;
	margin: 0 auto;
	padding: 2em;
}

.pippen_download_popup_title {
	margin: 0 0 20px;
	font-size: clamp(42px, 5vw, 92px);
	line-height: 0.95;
	font-weight: 400;
	letter-spacing: -0.03em;
	color: #005E62;
	font-family: 'Gelica', serif;
}

.pippen_download_popup_subtitle {
	margin: 0 0 40px;
	font-size: 1em;
	line-height: 1.7em;
	color: #8d7b7f;
	font-family: 'Helvetica Neue', Helvetica, Inter, Arial, sans-serif !important;
}

.pippen_download_popup_buttons {
	display: flex;
	justify-content: center;
	gap: 28px;
	flex-wrap: wrap;
	margin: 0 0 64px;
}

.pippen_download_popup_button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
	min-width: 270px;
	padding: 18px 28px;
	border-radius: 18px;
	background: #F15D3E;
	color: #fff;
	text-decoration: none;
	font-size: 20px;
	font-weight: 500;
	line-height: 1.2;
	transition: transform 0.15s ease, background 0.15s ease, opacity 0.15s ease;
}

.pippen_download_popup_button:hover {
	transform: translateY(-1px);
	background: #005E62;
	opacity: 0.96;
}

.pippen_download_popup_icon {
	display: inline-flex;
	width: 28px;
	height: 28px;
}

.pippen_download_popup_icon svg {
	width: 100%;
	height: 100%;
}

.pippen_download_popup_heading {
	margin: 0 0 24px;
	font-size: clamp(28px, 3vw, 40px);
	line-height: 1.15;
	font-weight: 400;
	color: #2b0010;
}

.pippen_download_popup_steps {
	display: inline-block;
	margin: 0;
	padding-left: 1.4em;
	text-align: left;
	font-size: 1em;
	line-height: 1.7em;
	color: #8d7b7f;
	font-family: 'Helvetica Neue', Helvetica, Inter, Arial, sans-serif !important;
}

.pippen_download_popup_steps li + li {
	margin-top: 2px;
}

@media (max-width: 767px) {
	.pippen_download_popup_title {
		font-size: 44px;
	}

	.pippen_download_popup_button {
		width: 100%;
		min-width: 0;
	}

	.pippen_download_popup_heading {
		font-size: 28px;
	}

	.pippen_download_popup_steps {
		font-size: 16px;
		line-height: 1.7;
	}
}


/*

VERTICAL MENU
 
*/


/* ========================================
   DIVI 5 VERTICAL MENU — TIGHT / NO OFFSET
   Add class: mx-vertical-menu
   ======================================== */

/* Reset Divi menu spacing/positioning inside this module only */
.mx-vertical-menu,
.mx-vertical-menu .et_pb_menu_inner_container,
.mx-vertical-menu .et_pb_menu__wrap,
.mx-vertical-menu .et-menu-nav,
.mx-vertical-menu nav,
.mx-vertical-menu .et-menu {
  margin: 0 !important;
  padding: 0 !important;
  width: 100%;
  max-width: 100%;
  transform: none !important;
}

/* Stop Divi from centering/pushing the menu horizontally */
.mx-vertical-menu .et_pb_menu__wrap {
  justify-content: flex-start !important;
}

.mx-vertical-menu .et-menu-nav {
  display: block !important;
}

/* Main vertical stack */
.mx-vertical-menu .et-menu {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 0.25rem;
}

/* Each menu item full width, no negative/side offset */
.mx-vertical-menu .et-menu > li,
.mx-vertical-menu .et-menu li {
  display: block !important;
  width: 100%;
  margin: 0 !important;
  padding: 0 !important;
  position: static !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
}

/* Links — tighter line height and controlled spacing */
.mx-vertical-menu .et-menu > li > a {
  display: flex !important;
  align-items: center;
  width: 100%;
  margin: 0 !important;
  padding: 0.22em 0 !important;
  line-height: 1.25 !important;
  border-radius: 10px;
  text-decoration: none;
  transition: background-color 0.2s ease, transform 0.2s ease;
}

/* Hover state */
.mx-vertical-menu .et-menu > li > a:hover {
  background: rgba(255, 255, 255, 0.06);
  transform: translateX(2px);
}

/* ========================================
   HIDE SUBMENUS + DIVI CHEVRONS
   ======================================== */

.mx-vertical-menu .sub-menu {
  display: none !important;
}

.mx-vertical-menu .menu-item-has-children > a:first-child:after,
.mx-vertical-menu .et-menu .menu-item-has-children > a:after {
  display: none !important;
  content: none !important;
}

/* Remove extra padding Divi adds for dropdown arrows */
.mx-vertical-menu .menu-item-has-children > a,
.mx-vertical-menu .et-menu .menu-item-has-children > a:first-child {
  padding-right: 0 !important;
}

/* ========================================
   KEEP DESKTOP-STYLE VERTICAL MENU ON MOBILE
   ======================================== */

.mx-vertical-menu .et_mobile_nav_menu {
  display: none !important;
}

.mx-vertical-menu .et_pb_menu__menu,
.mx-vertical-menu .et-menu-nav {
  display: block !important;
}

/* ========================================
   OPTIONAL ACTIVE LINK STYLING
   ======================================== */

.mx-vertical-menu .current-menu-item > a,
.mx-vertical-menu .current_page_item > a {
  background: rgba(255, 255, 255, 0.08);
  font-weight: 600;
}

/* ========================================
   OPTIONAL: FOOTER-SPECIFIC TUNING
   Uncomment if the footer still feels too loose.
   ======================================== */

/*
.mx-vertical-menu .et-menu {
  gap: 0.12rem;
}

.mx-vertical-menu .et-menu > li > a {
  padding-top: 0.14em !important;
  padding-bottom: 0.14em !important;
  line-height: 1.2 !important;
}
*/
