/**
Theme Name: Astra Child
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra-child
Template: astra
*/

/*!*** BASE SCALES AND VARIABLES */
body[class*='elementor-kit-'] {
	/* clamped at MIN VW 768px, MAX VW 1140px */
	--ci-global-head-size-900: clamp(2.25rem, 0.7016rem + 3.2258vw, 3rem);
	--ci-global-head-size-800: clamp(1.875rem, 0.5847rem + 2.6882vw, 2.5rem); /* h1 */
	--ci-global-head-size-700: clamp(1.4375rem, 0.7923rem + 1.3441vw, 1.75rem); /* h2 */
	--ci-global-head-size-600: clamp(1.1875rem, 0.8004rem + 0.8065vw, 1.375rem); /* h3 */
	--ci-global-head-size-500: clamp(0.9375rem, 0.6794rem + 0.5376vw, 1.0625rem); /* h4 */
	--ci-global-head-size-400: clamp(0.875rem, 0.746rem + 0.2688vw, 0.9375rem); /* h5 h6 */

	--ci-global-text-size-600: clamp(1.375rem, 1.1169rem + 0.5376vw, 1.5rem);
	--ci-global-text-size-500: clamp(1.25rem, 0.9919rem + 0.5376vw, 1.375rem);
	--ci-global-text-size-400: clamp(1.125rem, 0.8669rem + 0.5376vw, 1.25rem); /* text */
	--ci-global-text-size-300: clamp(1rem, 0.7419rem + 0.5376vw, 1.125rem);
	--ci-global-text-size-200: clamp(0.875rem, 0.6169rem + 0.5376vw, 1rem);
	--ci-global-text-size-150: clamp(0.8594rem, 0.666rem + 0.403vw, 0.9531rem); /* vanity phone numerical */
	--ci-global-text-size-100: clamp(0.75rem, 0.6169rem + 0.5376vw, 0.875rem);
	--ci-global-text-size-050: clamp(0.6875rem, 0.4294rem + 0.5376vw, 0.8125rem);

	--ci-global-line-height-800: clamp(1.125em, 0.9702em + 0.3226vw, 1.2em); /* heads */
	--ci-global-line-height-400: clamp(1.3em, 1.0935em + 0.4301vw, 1.4em); /* text */
	--ci-global-line-height-200: clamp(1.4em, 1.1935em + 0.4301vw, 1.5em);

	--ci-global-letter-space-800: -0.02em; /* h1 */
	--ci-global-letter-space-750: -0.015em; /* h2 */
	--ci-global-letter-space-700: -0.01em; /* h3 */

	--ci-global-button-size: clamp(1rem, 0.7419rem + 0.5376vw, 1.125rem);

	/* clamped at MIN VW 375px, MAX VW 768px */
	--ci-global-text-flex-400: clamp(1rem, 0.8807rem + 0.5089vw, 1.125rem);
	--ci-global-text-flex-300: clamp(0.875rem, 0.7557rem + 0.5089vw, 1rem);

	/* Elementor typography font mapping */
	--ci-size-h1-lg: var(--ci-global-head-size-900);
	--ci-size-h1: var(--ci-global-head-size-800);
	--ci-size-h2: var(--ci-global-head-size-700);
	--ci-size-h3: var(--ci-global-head-size-600);
	--ci-size-h4: var(--ci-global-head-size-500);
	--ci-size-h5: var(--ci-global-head-size-400);
	--ci-size-h6: var(--ci-global-head-size-400);

	--ci-size-text-xl: var(--ci-global-text-size-600);
	--ci-size-text-lg: var(--ci-global-text-size-500);
	--ci-size-text: var(--ci-global-text-size-400);
	--ci-size-text-sm: var(--ci-global-text-size-300);
	--ci-size-text-xs: var(--ci-global-text-size-200);
	--ci-size-text-xxs: var(--ci-global-text-size-100);
	--ci-size-text-3xs: var(--ci-global-text-size-050);

	--ci-size-text-flex-mobile: var(--ci-global-text-flex-400);
	--ci-size-text-flex-mobile-sm: var(--ci-global-text-flex-300);

	/* Global generic colors - Site specific values from Elementor */
	--ci-color-red: var(--e-global-color-2fec9fa, #b00600);
	--ci-color-gray: var(--e-global-color-01fc4b3, #545859);
	--ci-color-gray-light-1: var(--e-global-color-f3d4703, #808486);
	--ci-color-gray-light-2: var(--e-global-color-f10ae76, #abb1b6);
	--ci-color-gray-light-3: var(--e-global-color-df57ee8, #d3d8db);
	--ci-color-gray-light-4: var(--e-global-color-7fb004c, #e1e7eb);
	--ci-color-gray-light-5: var(--e-global-color-7323bef, #f0f2f2);

	/* Global accent colors CINS - Site specific values from Elementor */
	--ci-color-accent-dark: var(--e-global-color-e623b59, #2c193b);
	--ci-color-accent: var(--e-global-color-accent, #4a2365);
	--ci-color-accent-light-1: var(--e-global-color-aa9a8d0, #916dab);
	--ci-color-accent-light-2: var(--e-global-color-428a823, #bda4de);
	--ci-color-accent-light-3: var(--e-global-color-37a08e0, #d1c2e5);
	--ci-color-accent-light-4: var(--e-global-color-b9b4f23, #ddd5e6);
	--ci-color-accent-light-5: var(--e-global-color-e427b10, #e8e4ed);

	/* Transparency colors for menu overlay */
	--ci-color-accent-a90: color-mix(in srgb, var(--ci-color-accent), transparent 10%);
	--ci-color-accent-dark-a90: color-mix(in srgb, var(--ci-color-accent-dark), transparent 10%);
}

@media (width < 768px) {
	:root :is(h3, h4, h5, h6) {
		--ci-global-line-height-800: 1.3em; /* heads */
	}
}

/*!*** ELEMENTOR RESETS */
/* Set overscroll background color on site */
body[class*='elementor-kit-'] {
	background-color: var(--e-global-color-text);
}
/* Set background color of page */
div#page {
	background-color: var(--e-global-color-secondary);
}
/* Fix for Elementor admin preview background color */
body.elementor-editor-active[class*='elementor-kit-'],
#e-styleguide-preview-dialog {
	background-color: var(--e-global-color-secondary);
}
/* Fix icons in buttons */
.elementor-button-icon {
	height: 1em;
}
/* Remove square aspect ratio in svg icons. Fix for svg icon width set to 100% in Safari using "Fit to size" toggle in Elementor. */
.elementor-element .svg-fit-to-size .elementor-icon-wrapper.elementor-icon-wrapper .elementor-icon svg {
	width: auto;
}
.elementor-button-icon svg {
	display: block;
	transition: fill 0.3s;
}
.elementor-button-content-wrapper {
	align-items: center;
}
/* Fix icon widget height */
.elementor-widget-icon {
	line-height: 0;
}
/* ie9+ for screen readers */
.visually-hidden:not(:focus):not(:active) {
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	height: 1px;
	overflow: hidden;
	position: absolute;
	white-space: nowrap;
	width: 1px;
}
/* smooth scrolling */
@media (prefers-reduced-motion: no-preference) {
	html,
	body {
		scroll-behavior: smooth;
	}
}
/* Fix for images with links applied */
.elementor-widget-wrap .elementor-widget-image a {
	display: block;
}
/* Fix inline Elementor font icons experiment */
.elementor-nav-menu .sub-arrow .e-font-icon-svg {
	fill: currentcolor;
}
/* used to hide reset button on physicians archive and more */
.hidden {
	display: none;
}
/* Increase side padding on site */
:where(header, footer) > .elementor-element,
:where(.ast-container, .site-main, .dialog-message, .entry-content) > :where(.elementor) > .elementor-element {
	padding-left: 10px;
	padding-right: 10px;
}
.elementor > .cp-bleed {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

/* Better text wrap for heads */
:is(h1, h2, h3, h4, h5, h6) {
	text-wrap: pretty;
}
/* Change list item indent */
ul,
li > ul {
	margin-bottom: 0;
	margin-left: 1em;
}
ol,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}
ol > li::marker {
	font-feature-settings: tnum;
	font-variant-numeric: tabular-nums;
}
/* Change list item bullet color */
ul > li::marker {
	color: var(--ci-color-accent);
}
li > ul > li::marker {
	color: var(--ci-color-gray-light-1);
}
/* Remove text-decoration underline on nav, buttons and such */
.cc-header-main .menu-link:is(:hover, :focus),
.cp-footer-nav .menu-link:is(:hover, :focus),
.elementor-button.elementor-button:is(:hover, :focus),
.elementor-pagination .page-numbers:is(:hover, :focus) {
	text-decoration: none;
}
/* Fix Astra theme overriding line height on widgets */
div.elementor-widget-heading :is(h1, h2, h3, h4, h5, h6).elementor-heading-title {
	line-height: var(--ci-global-line-height-800);
}
/* Fix Astra theme adding margin on widgets */
div.entry-content :is(h1, h2, h3, h4, h5, h6) {
	margin-bottom: 0;
}
/*!*** SITE HEADER 2022-11 */
header.elementor-location-header {
	position: relative;
	z-index: 800;
}
/* Force site logo to left */
.cc-header-main .cc-header-main-logo,
.cc-header-mobile .cc-header-main-logo,
.cc-header-sticky .cc-header-sticky-logo {
	margin-right: auto;
}
/* Fix search icon */
.cc-header-main .elementor-icon-wrapper,
.cc-header-mobile .elementor-icon-wrapper,
.cc-header-sticky .elementor-icon-wrapper {
	line-height: 0;
}
/* Adjust sub-nav arrow */
.cc-header-main .cc-header-main-nav-menu .sub-arrow {
	padding-left: 5px;
}
/* Force buttons to left */
@media (max-width: 767px) {
	.cc-header-sticky .cc-sticky-btn-last {
		margin-right: auto;
	}
}
.cc-menu-open .elementor-icon-wrapper:hover,
.cc-menu-open .elementor-icon-wrapper:focus-visible {
	cursor: pointer;
}
/* Hide sticky header until scroll */
#cc-header-sticky.cc-header-sticky {
	opacity: 0;
	transform: translatey(-80px);
	transition:
		opacity 0s ease 0.3s,
		transform 0.3s ease 0s;
}
#cc-header-sticky.cc-header-sticky.elementor-sticky--effects {
	opacity: 1;
	transform: translatey(0px);
	transition:
		opacity 0s ease 0s,
		transform 0.3s ease 0s;
}
/* fix so sticky header is visible in Elementor editor */
body.elementor-editor-active #cc-header-sticky.cc-header-sticky {
	opacity: 1;
	transform: translatey(0px);
	position: static !important;
	margin: 0 !important;
}
/* Smaller screen width adjustments  */
@media (max-width: 410px) {
	.cc-header-cta-mobile .elementor-button,
	.cc-header-sticky .elementor-button {
		font-size: 0.8125rem !important;
	}
}
@media (max-width: 360px) {
	.cc-header-cta-mobile .elementor-button,
	.cc-header-sticky .elementor-button {
		font-size: 0.75rem !important;
	}
	.cc-header-sticky .elementor-column > .elementor-widget-wrap {
		padding: 0 !important;
	}
}
/*!*** MENU OVERLAY 2022-11 */
.cc-menu-overlay .dialog-widget-content {
	background-image: linear-gradient(90deg, var(--ci-color-accent-dark) 55%, var(--ci-color-accent) 55%);
}
.cc-menu-overlay.elementor-popup-modal .dialog-message {
	height: 100dvh !important;
}
.cc-menu-overlay .cc-menu-overlay-header {
	position: relative;
}
.cc-menu-overlay .cc-menu-overlay-header::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	width: 55%;
	background-image: linear-gradient(180deg, var(--ci-color-accent-dark) 20%, var(--ci-color-accent-dark-a90) 65%, transparent 100%);
	z-index: -1;
}
.cc-menu-overlay .cc-menu-overlay-header::after {
	content: '';
	position: absolute;
	top: 0;
	right: 20px;
	bottom: 0;
	width: calc(45% - 20px);
	background-image: linear-gradient(180deg, var(--ci-color-accent) 20%, var(--ci-color-accent-a90) 65%, transparent 100%);
	z-index: -1;
}
.cc-menu-overlay .elementor-icon-wrapper {
	line-height: 0;
}
.cc-menu-overlay-content .cc-menu-overlay-nav-minor {
	width: min((100vw * 0.55), (100vw * 0.55) - ((100vw - 1120px) / 2));
	order: 1;
}
.cc-menu-overlay-content .cc-menu-overlay-nav-main {
	width: min((100vw * 0.45), (100vw * 0.45) - ((100vw - 1120px) / 2));
	order: 2;
}
.cc-menu-overlay-search .elementor-search-form__input {
	padding-left: 25px !important;
}
.cc-menu-overlay-search .elementor-search-form__submit {
	border-top-left-radius: 50px !important;
	border-bottom-left-radius: 50px !important;
}
.cc-menu-overlay-search .elementor-search-form button {
	font-size: var(--e-search-form-submit-icon-size, 16px) !important;
}
/* prevents scrolling on nav ul */
.cc-menu-overlay-nav-main .elementor-nav-menu {
	margin-bottom: 10px;
}
.cc-menu-overlay-nav-main .elementor-nav-menu li {
	padding-top: 10px;
}
.cc-menu-overlay-nav-main .elementor-nav-menu li > a {
	display: inline-flex;
	line-height: 1em;
	border-bottom: 0.075em solid transparent;
	border-left: none;
}
.cc-menu-overlay-nav-main .elementor-nav-menu li > a:is(:hover, :focus, :focus-visible) {
	line-height: 1em;
	border-bottom: 0.075em solid currentcolor;
	border-left: none;
	background-color: transparent !important;
}
.cc-menu-overlay-nav-main .elementor-nav-menu .sub-menu li > a {
	font-size: 2rem !important;
	letter-spacing: 0 !important;
}
.cc-menu-overlay-nav-minor p {
	padding-top: 0.33em;
}
.cc-menu-overlay-nav-minor p > a {
	padding: 5px 0;
	display: inline-flex;
	line-height: 1em !important;
	border-bottom: 0.075em solid transparent;
}
.cc-menu-overlay-nav-minor p > a:is(:hover, :focus, :focus-visible) {
	text-decoration: none;
	border-bottom: 0.075em solid currentcolor;
}
.cc-menu-overlay-nav-minor a[href^='tel:']::after {
	content: '';
	background-color: currentColor;
	display: inline-block;
	width: 0.9em;
	margin-left: 0.33em;
	-webkit-mask-image: url('/wp-content/uploads/2021/08/icon-phone.svg');
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-position: center;
	-webkit-mask-size: contain;
	mask-image: url('/wp-content/uploads/2021/08/icon-phone.svg');
	mask-repeat: no-repeat;
	mask-position: center;
	mask-size: contain;
}
@media (max-width: 1024px) {
	.cc-menu-overlay .dialog-widget-content {
		background-image: linear-gradient(0deg, var(--ci-color-accent-dark) 50%, var(--ci-color-accent) 50%);
	}
	.cc-menu-overlay .cc-menu-overlay-header::before {
		background-image: linear-gradient(180deg, var(--ci-color-accent) 20%, var(--ci-color-accent-a90) 65%, transparent 100%);
	}
	.cc-menu-overlay-content .cc-menu-overlay-nav-minor {
		width: 100%;
		order: 2;
	}
	.cc-menu-overlay-content .cc-menu-overlay-nav-main {
		width: 100%;
		order: 1;
	}
	.cc-menu-overlay-nav-main {
		background-color: var(--ci-color-accent);
		box-shadow: 0 0 0 100vmax var(--ci-color-accent);
		clip-path: inset(-200px -100vmax 0);
	}
	.cc-menu-overlay-nav-minor {
		background-color: var(--ci-color-accent-dark);
		box-shadow: 0 0 0 100vmax var(--ci-color-accent-dark);
		clip-path: inset(0 -100vmax);
	}
}
@media (max-width: 767px) {
	.cc-menu-overlay-nav-main .elementor-nav-menu .sub-menu li > a {
		font-size: 1.5rem !important;
	}
}
/*!*** DEFAULT FOOTER EDITS */
/* External Cooper and Inspira links */
.cp-footer-nav .ci-external-link a.menu-link::before {
	content: '';
	position: relative;
	display: block;
	background-color: currentColor !important;
	order: 15;
	height: 0.75em;
	width: 0.75em;
	margin-left: 0.33em;
	opacity: 1 !important;
	bottom: auto;
	left: auto;
	-webkit-mask-image: url('/wp-content/uploads/2023/07/external-link-alt-solid.svg');
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-position: center;
	-webkit-mask-size: contain;
	mask-image: url('/wp-content/uploads/2023/07/external-link-alt-solid.svg');
	mask-repeat: no-repeat;
	mask-position: center;
	mask-size: contain;
}
/* Fix social icon height */
#cp-footer-menu .cp-social-main {
	line-height: 0;
	flex-shrink: 0;
}
/* prevent bottom nav bar items from wrapping */
@media (min-width: 768px) {
	#cp-footer-menu .cp-footer-menu-inner-col > .elementor-widget-wrap {
		flex-wrap: nowrap;
	}
}
/* adjust for spacing between items that wrap */
#cp-footer-menu .cp-footer-nav {
	margin-inline-start: calc(var(--e-nav-menu-horizontal-menu-item-margin) * -1);
}
#cp-footer-menu .elementor-nav-menu--layout-horizontal .elementor-nav-menu {
	margin-inline-end: calc(var(--e-nav-menu-horizontal-menu-item-margin) * -2);
}
#cp-footer-menu .elementor-nav-menu--layout-horizontal .elementor-nav-menu > li:last-child > a {
	margin-inline-end: var(--e-nav-menu-horizontal-menu-item-margin);
}
#cp-footer-menu .elementor-nav-menu--layout-horizontal .elementor-nav-menu > li:first-child > a {
	margin-inline-start: var(--e-nav-menu-horizontal-menu-item-margin);
}

/*!*** PHYSICIANS POSTS AND ARCHIVE */
/* Adjust facet filter options */
.post-type-archive-physicians .facetwp-facet {
	font-weight: 500;
	margin-bottom: 0;
}
.post-type-archive-physicians .facetwp-type-checkboxes {
	font-size: 0.9375rem;
	line-height: 1.2;
}
.post-type-archive-physicians .facetwp-type-checkboxes .facetwp-checkbox:last-child {
	margin-bottom: 4px;
}
.post-type-archive-physicians .facetwp-checkbox {
	margin-bottom: 10px;
	background-image: url('assets/cp-checkbox.png');
}
.post-type-archive-physicians .facetwp-checkbox.checked {
	background-image: url('assets/cp-checkbox-on.png');
}
.post-type-archive-physicians .facetwp-counter {
	float: right;
	color: var(--ci-color-gray-light-2);
}
/* FacetWP autocomplete submit button */
.post-type-archive-physicians .facetwp-facet-physician_name {
	position: relative;
}
.post-type-archive-physicians .facetwp-facet-physician_name .facetwp-autocomplete-update {
	background-color: transparent;
	color: transparent;
	border-radius: 0;
	padding: 0;
	position: absolute;
	cursor: pointer;
	right: 10px;
	width: 30px;
	height: 100%;
	font-weight: normal;
	font-size: 0.5rem;
	line-height: 1;
}
.post-type-archive-physicians .facetwp-facet-physician_name::before {
	display: inline-block;
	position: absolute;
	content: '';
	right: 10px;
	width: 30px;
	height: 100%;
	background-image: url('assets/icon-search-bg.png');
	background-repeat: no-repeat;
	background-position: 5px 48%;
	background-size: 20px 20px;
	opacity: 0.5;
}
.post-type-archive-physicians .facetwp-facet-physician_name .facetwp-autocomplete-update:is(:hover, :focus) {
	background-color: transparent;
}
/* Format FacetWP field dropdowns */
.post-type-archive-physicians .facetwp-facet-physician_name .fcomplete-wrap,
.post-type-archive-physicians .facetwp-facet-physician_location .location-results {
	border: 1px solid var(--ci-color-gray-light-2);
	background-color: #fff;
	border-radius: 22px;
	box-shadow: 0px 8px 14px -4px rgba(0, 0, 0, 0.2);
	transform: translateY(-1px);
	line-height: 1em;
	overflow: hidden;
	z-index: 30;
}
.post-type-archive-physicians .facetwp-facet-physician_name .fcomplete-result,
.post-type-archive-physicians .facetwp-facet-physician_name .fcomplete-status {
	padding: 12px 20px;
	font-style: normal;
	font-size: 1rem;
}
.post-type-archive-physicians .facetwp-facet-physician_name .fcomplete-result:hover {
	background-color: var(--ci-color-gray-light-5);
}
.post-type-archive-physicians .facetwp-facet-physician_location .location-result,
.post-type-archive-physicians .facetwp-facet-physician_location .location-result .result-main {
	font-size: 1rem;
}
.post-type-archive-physicians .facetwp-facet-physician_location .location-result {
	font-size: 1rem;
	padding: 12px 20px;
	border-bottom: none;
}
.post-type-archive-physicians .facetwp-facet-physician_location .location-attribution {
	padding: 6px 20px;
	border-bottom: none;
}
.post-type-archive-physicians .facetwp-facet-physician_location .location-result:hover {
	background-color: var(--ci-color-gray-light-5);
}
.post-type-archive-physicians .facetwp-facet-physician_location .location-result.active {
	background-color: var(--ci-color-accent-light-5);
}
[class*='elementor-kit-'] .cp-physician-toggle-mobile h2 {
	font-size: 1.125rem;
}
.cp-physician-toggle-mobile h2 .elementor-toggle-icon {
	font-size: 1rem;
	padding-top: 0.125rem;
}
/* adjust icon position and size on accordion titles for mobile filters */
.cp-physician-filter-mobile .elementor-accordion h3.elementor-tab-title {
	font-size: 0.875rem;
}
.cp-physician-filter-mobile .elementor-accordion .elementor-tab-title .elementor-accordion-icon {
	padding-top: 1px;
}
/* Adjust selection and sort display  */
.cp-physician-filter-mobile,
.cp-physician-filter-control {
	font-size: 0.875rem;
	font-weight: 500;
}
.cp-physician-filter-control > * {
	flex-wrap: nowrap;
}
.cp-physician-filter-reset,
.cp-physician-filter-choices,
.cp-physician-sort {
	padding: 4px 0;
}
.cp-physician-filter-mobile .facetwp-selections ul,
.cp-physician-filter-control .facetwp-selections ul {
	margin: 0;
	line-height: 1.4;
}
.cp-physician-filter-mobile .facetwp-selections li,
.cp-physician-filter-control .facetwp-selections li {
	line-height: 1.4;
}
.cp-physician-filter-mobile .facetwp-selections .facetwp-selection-label,
.cp-physician-filter-control .facetwp-selections .facetwp-selection-label {
	display: none;
}
.cp-physician-filter-mobile .facetwp-selections .facetwp-selection-value,
.cp-physician-filter-control .facetwp-selections .facetwp-selection-value {
	margin-right: 1.125em;
}
/* Reset all filters button */
.cp-physician-filter-reset button.facetwp-reset {
	font-size: 0.875rem;
	font-weight: 500;
	background-color: var(--ci-color-red);
	padding: 8px 16px;
	margin-right: 1.125em;
}
.cp-physician-filter-reset button.facetwp-reset {
	display: inline-block;
	padding-right: 34px;
	background-image: url('assets/icon-close-white.png');
	background-size: 12px 12px;
	background-repeat: no-repeat;
	background-position: right 16px center;
	white-space: nowrap;
}
.cp-physician-filter-reset button.facetwp-reset:hover {
	background-color: var(--e-global-color-primary);
}
/* force Sort dropdown to right */
.cp-physician-filter-control .cp-physician-sort {
	margin-left: auto;
}
/* sort select max width */
.post-type-archive-physicians .facetwp-sort-select {
	min-width: 240px;
}
/* mileage select dropdown */
.post-type-archive-physicians .facetwp-radius-dropdown {
	margin: 12px 0 6px;
	max-width: 75%;
}
/* proximity field */
.post-type-archive-physicians .facetwp-input-wrap {
	display: block;
}
.post-type-archive-physicians .facetwp-icon {
	right: 10px;
}
.post-type-archive-physicians .facetwp-facet input.facetwp-search,
.post-type-archive-physicians .facetwp-facet input.facetwp-location,
.post-type-archive-physicians .facetwp-facet input.facetwp-autocomplete {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	margin: 0;
	width: 100%;
	font-family: inherit;
	color: var(--e-global-color-primary);
	border: 1px solid var(--ci-color-gray-light-2);
	border-radius: 100px;
	padding: 15px 40px 15px 20px;
	font-size: 1rem;
	line-height: 1em;
	background-color: #fff;
	padding-right: 40px;
	min-width: auto;
}
.post-type-archive-physicians .facetwp-facet input.facetwp-search:focus-visible,
.post-type-archive-physicians .facetwp-facet input.facetwp-location:focus-visible,
.post-type-archive-physicians .facetwp-facet input.facetwp-autocomplete:focus-visible {
	border: 1px solid var(--ci-color-accent);
	outline-color: var(--ci-color-accent);
}
.physician-list-title a,
.physician-list-title a:is(:hover, :focus) {
	color: #02182d !important;
}
.uael-post__content-wrap a:hover {
	text-decoration: none;
}
/* Physicians Single Post Updates Mid-2023 */
.ci-physician-education-col h3.elementor-cta__title {
	margin-bottom: 0;
}
.ci-physician-education-col .elementor-cta__description p + p {
	margin-top: 0.5em;
}
.ci-physician-education-col .elementor-cta__description p strong {
	font-weight: 500;
}
/* Physician list responsive adjustments */
@media (max-width: 1024px) {
	.post-type-archive-physicians .facetwp-facet input.facetwp-search,
	.post-type-archive-physicians .facetwp-facet input.facetwp-location,
	.post-type-archive-physicians .facetwp-facet input.facetwp-autocomplete {
		font-size: 1rem;
		padding: 13px 35px 13px 15px;
		background-position: right 15px center;
	}
	.cp-physician-filter-control > * {
		flex-wrap: wrap;
	}
	.post-type-archive-physicians .facetwp-sort-select {
		min-width: 170px;
		max-width: 400px;
	}
	/* adjust listing grid gaps */
	.elementor-493 .elementor-element.elementor-element-c54299c {
		--grid-column-gap: 15px;
		--grid-row-gap: 25px;
	}
}
/* Adjust number of columns on landscape tablet  */
@media (min-width: 960px) and (max-width: 1024px) {
	.post-type-archive-physicians .elementor-grid-tablet-2 .elementor-grid {
		grid-template-columns: repeat(3, 1fr);
	}
}
@media (max-width: 767px) {
	.cp-physician-sort {
		padding: 0;
		width: 100% !important;
	}
	.post-type-archive-physicians .facetwp-facet {
		margin-bottom: 6px;
	}
	.post-type-archive-physicians .facetwp-facet input.facetwp-search,
	.post-type-archive-physicians .facetwp-facet input.facetwp-location,
	.post-type-archive-physicians .facetwp-facet input.facetwp-autocomplete {
		font-weight: 500;
	}
	button.cp-filter-reset-btn {
		margin-right: 0;
	}
	.cp-physician-filter-choices {
		flex-basis: auto;
	}
	.post-type-archive-physicians .facetwp-facet input.facetwp-search,
	.post-type-archive-physicians .facetwp-facet input.facetwp-location,
	.post-type-archive-physicians .facetwp-facet input.facetwp-autocomplete {
		padding: 13px 35px 13px 13px;
		font-size: 1rem;
		line-height: 1em;
		background-color: #fff;
		padding-right: 40px;
		min-width: auto;
	}
	.post-type-archive-physicians .facetwp-facet-physician_name .fcomplete-wrap,
	.post-type-archive-physicians .facetwp-facet-physician_location .location-results {
		border: 1px solid var(--ci-color-gray-light-2);
		background-color: #fff;
		border-radius: 24px;
		box-shadow: 0px 8px 14px -4px rgba(0, 0, 0, 0.2);
		transform: translateY(-1px);
		line-height: 1em;
		overflow: hidden;
		z-index: 30;
	}
	.post-type-archive-physicians .facetwp-facet-physician_name .fcomplete-result,
	.post-type-archive-physicians .facetwp-facet-physician_name .fcomplete-status,
	.post-type-archive-physicians .facetwp-facet-physician_location .location-result {
		padding: 10px 13px;
	}
	.post-type-archive-physicians .facetwp-facet-physician_location .location-attribution {
		padding: 2px 13px 6px;
	}
	.post-type-archive-physicians .facetwp-sort-select {
		max-width: 100%;
	}
}
/* Make languages and npi number display in same row */
@media (min-width: 768px) {
	.cp-physician-row-lang-npi > .elementor-container {
		flex-wrap: nowrap;
	}
	.cp-physician-row-lang-npi .elementor-widget-wrap {
		flex-direction: column;
	}
	.cp-physician-row-lang-npi .cp-physician-col-lang {
		width: fit-content;
	}
	.cp-physician-row-lang-npi .cp-physician-col-npi {
		width: max-content;
	}
}

/* Make physician scheduling box and buttons display properly */
.cp-physician-schedule-box .cp-schedule-box-col > .elementor-widget-wrap {
	flex-direction: column;
}
.cp-physician-schedule-box .elementor-container,
.cp-physician-schedule-box .elementor-column,
.cp-physician-schedule-box .elementor-widget-wrap {
	display: inline-flex !important;
}
@media (max-width: 767px) {
	.cp-physician-schedule-box {
		text-align: center;
	}
}
/* Adjust image object fit position for headshots */
.cc-img-headshot-cover img {
	object-position: center 30% !important;
}
/* remove padding from loop when no physician locations found */
.single-physicians .elementor-widget-loop-grid .e-loop-nothing-found-message {
	padding: 0;
}

/*!*** LOCATION POSTS AND ARCHIVE */
/* adjust bold font weight in location hours */
.ci-location-post-details .elementor-icon-list-text strong {
	font-weight: 500;
}
/* override link color on phone numbers */
.single-locations .elementor-icon-list-text a {
	color: var(--e-global-color-primary);
}
.single-locations .elementor-icon-list-text a:hover {
	color: var(--ci-color-red);
}
/* Spacing between location details */
.ci-location-details .elementor-widget + .elementor-widget {
	margin-top: 8px;
}
.ci-location-details .elementor-widget .elementor-icon-list-item a {
	display: block;
}
/* add border radius on gallery images */
.single-locations .uael-img-gallery-wrap .uael-grid-img-thumbnail {
	border-radius: 40px;
}
.fancybox-content img.fancybox-image {
	border-radius: 40px;
}
/* Gallery image height */
.single-locations .uael-img-gallery-wrap .uael-grid-img-thumbnail img {
	object-fit: cover;
	height: 150px;
}
@media (max-width: 1024px) {
	.single-locations .uael-img-gallery-wrap .uael-grid-img-thumbnail {
		border-radius: 30px;
	}
	.single-locations .uael-img-gallery-wrap .uael-grid-img-thumbnail img {
		height: 130px;
	}
}
/* gallery lightbox close button */
[class*='elementor-kit-'] button.fancybox-button {
	background-color: rgba(30, 30, 30, 0.6);
	border-radius: 0;
	padding: 10px;
}
[class*='elementor-kit-'] button.fancybox-button:is(:hover, :focus) {
	background-color: var(--ci-color-red);
}
/* responsive adjustments */
@media (max-width: 1024px) {
	/* adjust listing grid gaps */
	.post-type-archive-locations .elementor-widget-posts.elementor-grid-tablet-2 {
		--grid-column-gap: 20px;
	}
	.single-locations .uael-img-gallery-wrap .uael-grid-img-thumbnail {
		border-radius: 10px;
	}
}
/* Make location scheduling box and buttons display properly */
.cp-location-schedule-box .cp-schedule-box-col > .elementor-widget-wrap {
	flex-direction: column;
}
.cp-location-schedule-box .elementor-container,
.cp-location-schedule-box .elementor-column,
.cp-location-schedule-box .elementor-widget-wrap {
	display: inline-flex !important;
}
/* Adjust for vanity numbers listed in location posts */
p.ci-location-vanity-numerical {
	font-size: var(--ci-global-text-size-150);
	line-height: 1;
	margin-bottom: 0.25em;
}

/*!*** SEARCH RESULTS */
.cp-search-tags span {
	font-weight: bolder;
}
.search .facetwp-facet {
	margin-bottom: 0;
}
/*!*** FORMS */
/* Dropdown selects */
select {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	margin: 0;
	font-family: inherit;
	font-weight: 500;
	color: var(--e-global-color-primary);
	width: 100%;
	max-width: 30ch;
	border: 1px solid var(--ci-color-gray-light-2);
	border-radius: 100px;
	padding: 15px 40px 15px 18px;
	font-size: 1rem;
	cursor: pointer;
	line-height: 1em;
	background-color: #fff;
	background-image: url('assets/cp-chevron-down.svg');
	background-repeat: no-repeat;
	background-position: right 20px center;
	background-size: 1em;
}
select::-ms-expand {
	display: none;
}
@media (max-width: 1024px) {
	select {
		font-size: 1rem;
		padding: 13px 35px 13px 15px;
		background-position: right 15px center;
	}
}
/* Schedule form */
.schedule-form-section .cp-form-disclaimer {
	font-size: var(--ci-size-text-xs);
	line-height: var(--ci-global-line-height-400);
	margin-bottom: 0.625em;
}
.schedule-form-section .elementor-mark-required .elementor-field-label::after {
	padding-left: 0;
	position: absolute; /* removes inline white space */
}
.schedule-form-section .grecaptcha-badge {
	visibility: hidden;
}
/* align fields to at bottom (when labels wrap to 2 lines) */
.schedule-form-section .elementor-field-group {
	align-content: end;
}
/* add date input defaults from theme */
input[type='date'] {
	color: #666;
	padding: 0.75em;
	height: auto;
	border-width: 1px;
	border-style: solid;
	border-color: var(--ast-border-color);
	border-radius: 2px;
	background: var(--ast-comment-inputs-background);
	box-shadow: none;
	box-sizing: border-box;
	transition: all 0.2s linear;
}

/*!*** UTILITIES */
/* Make background overlay above image on home page for heartbeat lines */
.cp-bg-overlay .elementor-background-overlay {
	z-index: 10;
	pointer-events: none;
}
/* Prevent text items from breaking */
.cp-no-break {
	white-space: nowrap;
}
/* Apply balanced trext wrapping */
.ci-text-wrap-balance {
	text-wrap: balance;
}
/* add margin between items in stack */
.cp-stack .elementor-widget-wrap > *:not(style) + *:not(.elementor-element),
.cp-stack .elementor-widget-container > *:not(style) + *:not(.elementor-element),
.cp-stack .elementor-widget-container .elementor-text-editor > *:not(style) + * {
	margin-top: max(0.8em, calc(var(--ci-size-text) * 0.8));
}
.cp-stack-sm .elementor-widget-wrap > *:not(style) + *:not(.elementor-element),
.cp-stack-sm .elementor-widget-container > *:not(style) + *:not(.elementor-element),
.cp-stack-sm .elementor-widget-container .elementor-text-editor > *:not(style) + * {
	margin-top: max(0.4em, calc(var(--ci-size-text) * 0.4));
}
.cp-stack-xsm .elementor-widget-wrap > *:not(style) + *:not(.elementor-element),
.cp-stack-xsm .elementor-widget-container > *:not(style) + *:not(.elementor-element),
.cp-stack-xsm .elementor-widget-container .elementor-text-editor > *:not(style) + * {
	margin-top: max(0.2em, calc(var(--ci-size-text) * 0.2));
}
/* class on ol or ul list to add spacing between li items and nested lists */
:is(ol, ul).cp-stack > li + li,
li > ul.cp-stack {
	margin-top: max(0.8em, calc(var(--ci-size-text) * 0.8));
}
:is(ol, ul).cp-stack-sm > li + li,
li > ul.cp-stack-sm {
	margin-top: max(0.4em, calc(var(--ci-size-text) * 0.4));
}
:is(ol, ul).cp-stack-xsm > li + li,
li > ul.cp-stack-xsm {
	margin-top: max(0.2em, calc(var(--ci-size-text) * 0.2));
}

/* stack case with no space before UL or OL */
:is(.cp-stack, .cp-stack-sm, .cp-stack-xsm).cp-list-collapse .elementor-widget-wrap > * + ul,
:is(.cp-stack, .cp-stack-sm, .cp-stack-xsm).cp-list-collapse .elementor-widget-container > * + ul,
:is(.cp-stack, .cp-stack-sm, .cp-stack-xsm).cp-list-collapse .elementor-widget-container .elementor-text-editor > * + ul,
:is(.cp-stack, .cp-stack-sm, .cp-stack-xsm).cp-list-collapse .elementor-widget-wrap > * + ol,
:is(.cp-stack, .cp-stack-sm, .cp-stack-xsm).cp-list-collapse .elementor-widget-container > * + ol,
:is(.cp-stack, .cp-stack-sm, .cp-stack-xsm).cp-list-collapse .elementor-widget-container .elementor-text-editor > * + ol {
	margin-top: 0;
}
/* add extra margin for heads in stack */
.cp-stack.cp-stack .elementor-widget-container > *:not(style) + :is(h2, h3, h4, h5, h6),
.cp-stack.cp-stack .elementor-widget-container .elementor-text-editor > *:not(style) + :is(h2, h3, h4, h5, h6) {
	margin-top: 1em;
}
.cp-stack-sm.cp-stack-sm .elementor-widget-container > *:not(style) + :is(h2, h3, h4, h5, h6),
.cp-stack-sm.cp-stack-sm .elementor-widget-container .elementor-text-editor > *:not(style) + :is(h2, h3, h4, h5, h6) {
	margin-top: 0.8em;
}
.cp-stack-xsm.cp-stack-xsm .elementor-widget-container > *:not(style) + :is(h2, h3, h4, h5, h6),
.cp-stack-xsm.cp-stack-xsm .elementor-widget-container .elementor-text-editor > *:not(style) + :is(h2, h3, h4, h5, h6) {
	margin-top: 0.8em;
}
/* fix extra margin on pages with Elementor Table of Contents Widget auto inserted anchor links */
.cp-stack .elementor-widget-container > span[id^='elementor-toc__heading-anchor']:first-child + :is(h2, h3, h4, h5, h6),
.cp-stack .elementor-widget-container > style + span[id^='elementor-toc__heading-anchor'] + :is(h2, h3, h4, h5, h6) {
	margin-top: 0;
}

/* adjust head sizes with utility class */
.ci-head-size-down {
	--ci-size-h1-lg: var(--ci-global-head-size-800);
	--ci-size-h1: var(--ci-global-head-size-700);
	--ci-size-h2: var(--ci-global-head-size-600);
	--ci-size-h3: var(--ci-global-head-size-500);
	--ci-size-h4: var(--ci-global-head-size-400);
}
/* less space after heads */
div.ci-head-less-after h2,
div.ci-head-less-after h3 {
	margin-bottom: -0.5em;
}

/*!*** LINK UTILITY CLASSES */
/* underline links on text as needed */
[class*='elementor-kit-'] .ci-link-underline :not(h1, h2, h3, h4, h5, h6) > a {
	text-decoration: underline;
}
/* Prevent automatic linking for NPI and Fax numbers and Prevent negative margins on sections from blocking links */
body:not(.elementor-editor-active) .cp-not-a-link {
	pointer-events: none;
}
body:not(.elementor-editor-active) .cp-not-a-link a {
	text-decoration: none;
	color: inherit;
}
/* Make links bolder within text */
.cp-bolder-links a {
	font-weight: bolder;
}
/* Adjustments for new font and weights */
.cp-bolder-links :not(h1, h2, h3, h4, h5, h6) > a {
	font-weight: 500;
}
.cp-bolder-links b a,
.cp-bolder-links strong a {
	font-weight: 700;
}
/*!*** HOME */
.home-blog-header h2 a {
	color: #02182d !important;
}
.ci-text-xl-500 {
	font-weight: 500;
	font-size: var(--ci-size-text-xl);
	line-height: var(--ci-global-line-height-400);
}
.ci-text-xl-400 {
	font-size: var(--ci-size-text-xl);
	line-height: var(--ci-global-line-height-400);
}

/*!*** HOME PAGE MID 2023 CICC */
.ci-hero,
.ci-home-hero {
	background-position: 50% 25%;
	background-size: cover;
}
@media (max-width: 767px) {
	.ci-hero,
	.ci-home-hero {
		isolation: isolate;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	.ci-hero::before,
	.ci-home-hero::before {
		height: max(50% + var(--border-width-top) + var(--border-width-bottom), 50%);
	}
}
/*!*** PAGINATION */
/* Elementor and UAE Pagination Styles to match Blog */
.elementor-pagination {
	margin-top: 50px;
}
body:not(.rtl) .elementor-pagination .page-numbers:not(:last-child) {
	margin-right: 0 !important;
}
body:not(.rtl) .elementor-pagination .page-numbers:not(:first-child) {
	margin-left: 0 !important;
}
.elementor-pagination span.page-numbers.prev,
.elementor-pagination span.page-numbers.next {
	display: none;
}
.uael-grid-pagination a.page-numbers,
.uael-grid-pagination span.page-numbers.current,
.elementor-pagination a.page-numbers,
.elementor-pagination span.page-numbers.current {
	padding: 0;
	display: inline-block;
	min-width: 50px;
	min-height: 50px;
	border-radius: 100px 100px 100px 100px;
	font-weight: 500;
	line-height: 50px;
	text-align: center;
}
.uael-grid-pagination a.page-numbers.prev,
.uael-grid-pagination a.page-numbers.next,
.elementor-pagination a.page-numbers.prev,
.elementor-pagination a.page-numbers.next {
	padding: 0 20px;
}
.elementor-pagination span.page-numbers.current {
	color: #fff;
	background-color: var(--ci-color-accent);
}
.elementor-pagination a.page-numbers:is(:hover, :focus) {
	color: var(--ci-color-accent);
	background-color: var(--ci-color-gray-light-5);
}
/*!*** TOC WIDGET */
/* Elementor Table of Contents Widget adjustments */
.cp-table-of-contents .elementor-toc__header {
	padding-bottom: 10px;
}
.cp-table-of-contents .elementor-toc__body {
	padding-top: 0;
}
.cp-table-of-contents .elementor-toc__body ul {
	margin-left: 0;
}
.cp-table-of-contents .elementor-toc__list-item-text-wrapper {
	align-items: start;
}
.cp-table-of-contents .elementor-toc__list-item-text-wrapper > :first-child {
	flex-shrink: 0;
	margin-top: 0.5em;
}
.cp-table-of-contents.cp-toc-tight .elementor-toc__list-item {
	margin-bottom: 0.25em;
}
/* account for sticky header when scrolling to anchor */
.elementor-menu-anchor {
	scroll-margin-top: 80px;
}
/* Hide collapse-expand toggle on larger screens */
@media (min-width: 768px) {
	.cp-table-of-contents .elementor-toc__toggle-button {
		display: none;
	}
}
@media (max-width: 1024px) {
	.cp-table-of-contents.elementor-widget-table-of-contents .elementor-widget-container {
		--box-border-radius: 30px;
	}
	.cp-table-of-contents .elementor-toc__list-item {
		margin-bottom: 0.33em;
	}
}
/*!*** Sidebar boxes with buttons layout adjustments */
@media (min-width: 600px) and (max-width: 1024px) {
	.cp-aside-button-box .elementor-widget-wrap {
		align-items: center;
	}
	.cp-aside-button-box .elementor-widget-wrap > div:first-of-type {
		/* width: auto; */
		flex: 1;
	}
	.cp-aside-button-box .elementor-widget-wrap > div:first-of-type > .elementor-widget-container {
		padding-bottom: 0;
	}
	.cp-aside-button-box .elementor-widget-wrap > div:last-of-type {
		width: auto;
		flex-shrink: 0;
		flex-grow: 0;
		padding-left: 20px;
	}
}
/*!*** Captions */
.wp-caption figcaption.widget-image-caption {
	font-weight: 500;
	padding: 0 60px;
	margin-bottom: 0;
}
@media (width < 768px) {
	.wp-caption figcaption.widget-image-caption {
		padding: 0;
	}
}

/* scroll-to-top button */
#ast-scroll-top {
	transition: all 0.3s;
}
.ast-scroll-to-top-right {
	right: max(20px, calc(calc(100% - 1100px) / 2));
}
@media (max-width: 767px) {
	.ast-scroll-to-top-right {
		bottom: 20px;
	}
}
/*!*** BLOG 2023  */
/* Fix for Astra theme adding padding to loop grid items */
.elementor-loop-container .e-loop-item {
	padding-left: 0;
	padding-right: 0;
	margin: 0;
}
/* Allow blog images to wrap around heads. Overrides Astra theme */
.cc-blog-main :is(h1, h2, h3, h4, h5, h6) {
	clear: inherit;
}
/* Adjust image object fit position for blog card images */
.cc-loop-item-bg img {
	object-position: center 30% !important;
}
/* Alternate color background on loop grid items */
.cc-loop-alternate-bg.elementor-widget-loop-carousel .e-loop-item:nth-of-type(odd) > .cc-loop-item-bg {
	background-color: var(--ci-color-accent-light-4);
}
@media (width >= 1024px) {
	.cc-loop-alternate-bg.elementor-widget-loop-grid .e-loop-item:nth-of-type(odd) > .cc-loop-item-bg {
		background-color: var(--ci-color-accent-light-4);
	}
	.blog:not(.paged) .cc-loop-alternate-bg.elementor-widget-loop-grid .e-loop-item:nth-of-type(2) > .cc-loop-item-bg {
		background-color: var(--ci-color-accent-light-4);
	}
	.blog:not(.paged) .cc-loop-alternate-bg.elementor-widget-loop-grid .e-loop-item:nth-of-type(3) > .cc-loop-item-bg {
		background-color: var(--ci-color-gray-light-4);
	}
}
@media (768px <= width < 1024px) {
	.cc-loop-alternate-bg.elementor-widget-loop-grid .e-loop-item:nth-of-type(4n) > .cc-loop-item-bg,
	.cc-loop-alternate-bg.elementor-widget-loop-grid .e-loop-item:nth-of-type(4n + 1) > .cc-loop-item-bg {
		background-color: var(--ci-color-accent-light-4);
	}
	.blog:not(.paged) .cc-loop-alternate-bg.elementor-widget-loop-grid .e-loop-item:nth-of-type(2) > .cc-loop-item-bg {
		background-color: var(--ci-color-accent-light-4);
	}
	.blog:not(.paged) .cc-loop-alternate-bg.elementor-widget-loop-grid .e-loop-item:nth-of-type(1) > .cc-loop-item-bg {
		background-color: var(--ci-color-gray-light-4);
	}
}
@media (width < 768px) {
	.cc-loop-alternate-bg.elementor-widget-loop-grid .e-loop-item:nth-of-type(odd) > .cc-loop-item-bg {
		background-color: var(--ci-color-accent-light-4);
	}
}
/* equal height cards on tablet and above  */
@media (width > 767px) {
	.ci-post-loop .elementor-grid {
		grid-auto-rows: 1fr;
	}
	.ci-post-loop .e-loop-item > div {
		height: 100%;
	}
}
/* position of Popular Topics card */
.ci-post-loop .elementor-loop-container.elementor-grid {
	grid-auto-flow: row dense;
}
@media (width > 767px) {
	.ci-post-loop .elementor-loop-container.elementor-grid > .e-loop-item:has(> .ci-topics-card) {
		grid-column-start: 2;
	}
}
@media (width > 1024px) {
	.ci-post-loop .elementor-loop-container.elementor-grid > .e-loop-item:has(> .ci-topics-card) {
		grid-column-start: 3;
	}
}
/* Popular Topics icons and text alignment */
.ci-topics-card .elementor-widget.elementor-widget-icon-list .elementor-icon-list-icon.elementor-icon-list-icon {
	padding-right: 0.5em;
}
.ci-topics-card .elementor-widget.elementor-widget-icon-list .elementor-icon-list-icon svg {
	margin: 0;
}
.ci-topics-card .elementor-widget .elementor-icon-list-icon + .elementor-icon-list-text {
	padding-inline-start: 0;
}
/* Special blog intro/larger text option */
.cc-intro-text,
.cc-blog-main > .elementor-widget-container > p:first-child {
	font-weight: 500;
	font-size: var(--ci-size-text-xl);
	line-height: var(--ci-global-line-height-400);
}
/* Decrease h3 bottom margin for posts */
[class*='elementor-kit-'] .cc-blog-main h3,
[class*='elementor-kit-'] .cc-blog-main h2.ci-head-size-down {
	margin-bottom: -0.5em;
}
/* Blog search facet */
/* .cc-facetwp-search .facetwp-facet {
	margin-bottom: 0;
}
.cc-facetwp-search .facetwp-input-wrap {
	display: flex;
	border-radius: 40px;
	min-height: 54px;
}
.cc-facetwp-search .facetwp-facet input.facetwp-search {
	font-family: inherit;
	font-size: 2rem;
	font-weight: 500;
	color: var(--ci-color-accent);
	background-color: white;
	border: 1px solid var(--ci-color-gray-light-1);
	border-radius: 40px;
	padding: 0 90px 0 25px;
	width: 100%;
}
.cc-facetwp-search .facetwp-facet input.facetwp-search::placeholder {
	color: inherit;
	font-family: inherit;
	opacity: 0.6;
}
.cc-facetwp-search .facetwp-facet i.facetwp-icon {
	min-width: 86px;
	background-color: var(--ci-color-accent-light-1);
	border-radius: 40px;
	opacity: 1;
	transition: 0.2s;
}
.cc-facetwp-search .facetwp-facet i.facetwp-icon:hover,
.cc-facetwp-search .facetwp-facet i.facetwp-icon:focus {
	background-color: var(--ci-color-accent);
}
.cc-facetwp-search .facetwp-facet i.facetwp-icon::before {
	display: block;
	content: '';
	width: 100%;
	height: 100%;
	background: url('assets/cc-search-button-white.svg') no-repeat;
	background-position: center;
	background-size: 24px 24px;
}
.cc-facetwp-search .facetwp-facet i.facetwp-icon.f-loading::before {
	background-image: url('assets/cc-search-loading-spinner-white.svg');
}
@media (max-width: 1024px) {
	.cc-facetwp-search .facetwp-facet input.facetwp-search {
		font-size: 1.75rem;
	}
}
@media (max-width: 767px) {
	.cc-facetwp-search .facetwp-facet input.facetwp-search {
		font-size: 1.5rem;
	}
} */

/* pullquote box with provider photo */
@media (width < 768px) {
	.cp-quote-physician {
		background-color: var(--ci-color-accent-light-4) !important;
	}
}

/* inline image, figure, and captions default */
.cc-blog-main p > img,
.cc-blog-main figure > img {
	border-radius: 30px;
}
.cc-blog-main p > img:not(.alignleft, .alignright, .aligncenter),
.cc-blog-main figure:not(.alignleft, .alignright, .aligncenter) {
	width: 100%;
}
.cc-blog-main p:has(> img:not(.alignleft, .alignright, .aligncenter)),
.cc-blog-main figure:not(.alignleft, .alignright, .aligncenter) {
	margin-block-end: 26px;
	padding-block-start: 10px;
}
.cc-blog-main figcaption.wp-caption-text {
	text-align: left;
	font-style: italic;
	text-wrap: pretty;
	font-size: var(--ci-size-text-xs);
	margin: 0.5em 0 0 0;
	line-height: 1.3em;
}

/*!*** CLASSES FOR INDIVIDUAL BLOG POSTS */

/*!*** FOOTNOTES – Footnotes Made Easy Plugin */
.site-content ol.footnotes {
	color: var(--e-global-color-text);
}
.site-content ol.footnotes li {
	font-size: var(--ci-size-text-xs);
	line-height: var(--ci-global-line-height-400);
}
.site-content ol.footnotes li + li {
	margin-top: 0.25em;
}
.site-content ol.footnotes .footnote-back-link-wrapper {
	margin-left: 0.25em;
}
.site-content .footnote {
	overflow-wrap: break-word;
}
.site-content .footnote,
.site-content .footnote-identifier-link {
	scroll-margin-top: 100px;
}
.site-content h2#ci-footnotes-head {
	font-size: var(--ci-size-h3);
	margin-top: 1.5em;
	padding-top: 0.75em;
	border-top: 1px solid var(--ci-color-gray-light-2);
}

/*!*** FAQs */
.uael-faq-container .uael-accordion-icon svg {
	display: block;
}
.uael-faq-accordion:has(.uael-accordion-title:is(:hover, :focus, :focus-within)) :is(.uael-accordion-title, .uael-accordion-content) {
	background-color: var(--ci-color-accent-light-4) !important;
}
.uael-accordion-title .uael-question-span {
	text-wrap: balance;
}
.uael-accordion-title:is(:focus, :focus-within) .uael-question-span {
	outline: none;
}
.uael-faq-container .uael-accordion-content > span > span > * + * {
	margin-top: max(0.4em, calc(var(--ci-size-text) * 0.8));
}
.uael-faq-container .uael-accordion-content > span > span > * + ul,
.uael-faq-container .uael-accordion-content > span > span > * > li + li {
	margin-top: max(0.4em, calc(var(--ci-size-text) * 0.4));
}
.uael-faq-container .uael-accordion-content > span > span a {
	font-weight: 500;
}

/*!*** REAL STORIES PAGES */
/* video icon overlay */
.cc-video-icon-img a::after {
	content: '';
	display: block;
	position: absolute;
	width: 20%;
	max-width: 100px;
	height: 100%;
	top: 50%;
	left: 50%;
	background-color: #fff;
	opacity: 0.7;
	transform: translate(-50%, -50%);
	-webkit-mask-image: url('assets/circle-play.svg');
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-position: center;
	-webkit-mask-size: contain;
	mask-image: url('assets/circle-play.svg');
	mask-repeat: no-repeat;
	mask-position: center;
	mask-size: contain;
	transition: opacity 0.2s;
}
.cc-video-icon-img:hover a::after {
	opacity: 1;
}

/* Remove extra padding on mobile */
@media (width < 768px) {
	.single-real-stories .elementor > .cp-bleed .elementor > .elementor-element > .e-con-inner {
		padding-bottom: 0;
	}
}

/*!*** HOME PAGE UPDATES 2024 */

/* container padding for right offset scrolling loop grid  */
.ci-loop-container,
.ci-loop-container-mobile {
	padding-left: 10px;
	padding-right: 0px;
}
@media (width > 1024px) {
	.ci-loop-container {
		padding-left: 10px;
		padding-right: 10px;
	}
}
@media (width > 767px) {
	.ci-loop-container-mobile {
		padding-left: 10px;
		padding-right: 10px;
	}
}

/*!*** CAROUSELS */
/* remove hover if disabled */
.elementor-element .swiper .elementor-swiper-button.swiper-button-disabled,
.elementor-element .swiper ~ .elementor-swiper-button.swiper-button-disabled,
.elementor-lightbox .swiper .elementor-swiper-button.swiper-button-disabled,
.elementor-lightbox .swiper ~ .elementor-swiper-button.swiper-button-disabled {
	pointer-events: none;
}
/* Utility class to hide nav arrows and pagination dots above tablet view (no elements to scroll) */
@media (width >= 1024px) {
	.ci-posts-carousel.ci-hide-nav-desktop .elementor-swiper-button,
	.ci-posts-carousel.ci-hide-nav-desktop .swiper-pagination {
		display: none;
	}
}
/* Hide navigation arrows on mobile - ALWAYS */
@media (width < 768px) {
	.ci-posts-carousel.elementor-element .elementor-swiper-button {
		display: none;
	}
}
/* Adjust offset size on carousels to show overflow on left side when scrolling and show partial card on right when infinite loop is disabled */
@media (width <= 1024px) {
	.home .ci-posts-carousel.elementor-widget-loop-carousel .elementor-loop-container,
	.single-post .ci-posts-carousel.elementor-widget-loop-carousel .elementor-loop-container {
		--swiper-offset-size: 60px;
		padding-inline: var(--swiper-offset-size);
		margin-inline-start: calc(var(--swiper-offset-size) * -1);
	}
}

/* Real stories carousel with only 2 items */
/* this first rule fixes breakpoint error at 767px when 2 items are displayed */
@media (width < 768px) {
	.single-real-stories .ci-posts-carousel.elementor-widget-loop-carousel .elementor-loop-container {
		--swiper-offset-size: 20px;
		padding-inline-end: var(--swiper-offset-size);
	}
}
@media (width < 767px) {
	.single-real-stories .ci-posts-carousel.elementor-widget-loop-carousel .elementor-loop-container {
		--swiper-offset-size: 60px;
		padding-inline: var(--swiper-offset-size);
		margin-inline-start: calc(var(--swiper-offset-size) * -1);
	}
}

/*!*** EXPLORE CAROUSEL on HOME PAGE */
/* Hide navigation and pagination above tablet view (no elements to scroll) */
@media (width > 1024px) {
	.ci-explore-carousel.elementor-element .elementor-swiper-button,
	.ci-explore-carousel.elementor-element .swiper-pagination {
		display: none;
	}
}
/* Hide navigation on mobile */
@media (width < 768px) {
	.ci-explore-carousel.elementor-element .elementor-swiper-button {
		display: none;
	}
}
/* expand card heading link to full card size */
.ci-explore-carousel .swiper-slide > div {
	position: relative;
}
/* remove relative position from heading widget */
.ci-explore-carousel .swiper-slide > div > .elementor-widget-heading {
	position: unset;
}
.ci-explore-carousel .swiper-slide > div h3 > a::after {
	content: '';
	position: absolute;
	inset: 0;
	display: flex;
	z-index: 1;
}
.ci-explore-carousel .swiper-slide > div h3 > a:is(:hover, :focus, :focus-visible) {
	text-decoration: none;
}
.ci-explore-carousel .swiper-slide > div:focus-within :focus {
	outline: none;
}
.ci-explore-carousel .swiper-slide > div:is(:hover, :focus-within) > .elementor-widget-icon .elementor-icon {
	background-color: var(--ci-color-red);
	color: var(--e-global-color-secondary);
	transform: scale(1.1);
}
.ci-explore-carousel .swiper-slide > div:is(:hover, :focus-within) > .elementor-widget-icon .elementor-icon svg {
	fill: var(--e-global-color-secondary);
}
/* page color background on loop grid items */
.cc-loop-white-bg.elementor-widget-loop-grid .e-loop-item > .cc-loop-item-bg.cc-loop-item-bg,
.cc-loop-white-bg.elementor-widget-loop-carousel .e-loop-item > .cc-loop-item-bg.cc-loop-item-bg {
	background-color: var(--e-global-color-secondary);
}

/* Adjust offset size on explore carousel to show overflow on left side when scrolling and show partial card on right when infinite loop is disabled */

/*!*** DISABLED FOR ONLY 3 CARDS in explore carousel */
/* @media (width <= 1024px) {
	.home .ci-explore-carousel.elementor-widget-n-carousel .e-n-carousel {
		--e-n-carousel-swiper-offset-size: 60px;
		padding-inline: var(--e-n-carousel-swiper-offset-size);
		margin-inline-start: calc(var(--e-n-carousel-swiper-offset-size) * -1);
	}
} */

/*!*** ADJUSTMENTS FOR ONLY 3 CARDS in explore carousel */
/* Hide nav arrows and dots */
@media (width >= 768px) {
	.ci-explore-carousel.elementor-element .elementor-swiper-button,
	.ci-explore-carousel.elementor-element .swiper-pagination {
		display: none;
	}
}
@media (width <= 1024px) {
	.home .ci-explore-carousel.elementor-widget-n-carousel .e-n-carousel {
		--e-n-carousel-swiper-offset-size: 20px;
		padding-inline: var(--e-n-carousel-swiper-offset-size);
		margin-inline-start: calc(var(--e-n-carousel-swiper-offset-size) * -1);
	}
}
@media (width < 767px) {
	.home .ci-explore-carousel.elementor-widget-n-carousel .e-n-carousel {
		--e-n-carousel-swiper-offset-size: 60px;
		padding-inline: var(--e-n-carousel-swiper-offset-size);
		margin-inline-start: calc(var(--e-n-carousel-swiper-offset-size) * -1);
	}
}

/*!*** CLICKABLE CARDS */
/* add to main card element */
.ci-clickable-card {
	position: relative;
}
/* remove relative position from other widgets */
.ci-clickable-card :is(.elementor-widget, .elementor-element) {
	position: unset;
}
/* remove visible focus from inside card */
.ci-clickable-card:focus-within :focus {
	outline: none;
}
.ci-clickable-card:is(:hover, :focus-within) .ci-clickable-link a:hover {
	text-decoration: none;
}
/* expand link by using class .ci-clickable-link */
.ci-clickable-card .ci-clickable-link a::after {
	content: '';
	position: absolute;
	inset: 0;
	z-index: 1;
}
/* add focus to card with faux button (no link) */
.ci-clickable-card:is(:hover, :focus-within) div.ci-focus-element .elementor-button {
	background-color: var(--e-global-color-2fec9fa);
	transform: scale(1.1);
}
/* add focus to card with image filter (no link) */
.ci-clickable-card:is(:hover, :focus-within) div.ci-focus-element img {
	filter: brightness(105%) contrast(100%) saturate(100%) blur(0px) hue-rotate(0deg);
}
