/*
Theme Name: Ameren Illinois Savings
Theme URI: https://amerenillinoissavings.com/
Description: Hello Elementor child theme for Ameren Illinois Savings.
Author: caymenp
Template: hello-elementor
x-release-please-start-version
Version: 1.3.1
x-release-please-end
Text Domain: savings-hello-child
*/

/*
 * OceanWP used a 10px rem baseline. Existing Elementor templates were authored
 * against that scale, so preserve it while the site runs on Hello Elementor.
 */
html {
	font-size: var(--savings-root-font-scale, 62.5%);
}

body {
	-webkit-font-smoothing: auto;
}

body h1,
body h2,
body h3,
body h4,
body h5,
body h6,
body b,
body strong {
	font-weight: 600;
}

body h1,
body h2,
body h3,
body h4,
body h5,
body h6 {
	margin-top: 0;
	margin-bottom: 20px;
	line-height: 1.4;
	color: #218837;
}

#page {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}

#content {
	flex: 1;
}

[id] {
	scroll-margin-top: 90px;
}

.bg-green {
	background-color: #228737 !important;
}

.bg-blue {
	background-color: #1a6cb5;
}

.bg-red {
	background-color: #d23430;
}

.bg-orange {
	background-color: #228737 !important;
}

.bg-blue-lt {
	background-color: #5096d1;
}

.bg-green-lt {
	background-color: #6ab837;
}

.elementor-nav-menu .sub-menu {
	background-color: #f4f4f4 !important;
}

#mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-megamenu > ul.mega-sub-menu:has(.bg-green) > li.mega-menu-item > a.mega-menu-link,
#mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-megamenu > ul.mega-sub-menu:has(.bg-green) li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link {
	color: #228737;
}

#mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-megamenu > ul.mega-sub-menu:has(.bg-blue) > li.mega-menu-item > a.mega-menu-link,
#mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-megamenu > ul.mega-sub-menu:has(.bg-blue) li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link {
	color: #1a6cb5;
}

#mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-megamenu > ul.mega-sub-menu:has(.bg-red) > li.mega-menu-item > a.mega-menu-link,
#mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-megamenu > ul.mega-sub-menu:has(.bg-red) li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link {
	color: #d23430;
}

#mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-megamenu > ul.mega-sub-menu:has(.bg-orange) > li.mega-menu-item > a.mega-menu-link,
#mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-megamenu > ul.mega-sub-menu:has(.bg-orange) li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link {
	color: #228737 !important;
}

#mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-megamenu > ul.mega-sub-menu:has(.bg-blue-lt) > li.mega-menu-item > a.mega-menu-link,
#mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-megamenu > ul.mega-sub-menu:has(.bg-blue-lt) li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link {
	color: #5096d1;
}

#mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-megamenu > ul.mega-sub-menu:has(.bg-green-lt) > li.mega-menu-item > a.mega-menu-link,
#mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-megamenu > ul.mega-sub-menu:has(.bg-green-lt) li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link {
	color: #6ab837;
}

.elementor-shape-top svg {
	filter: drop-shadow(0 0 4px rgba(0, 0, 0, 0.3));
	margin-bottom: 1rem;
}

.elementor-widget-n-accordion .e-n-accordion-item > .e-con {
	border: 0;
}

:where(#content, [data-elementor-type="wp-page"]) a:not(.elementor-button, .elementor-button-link) {
	text-decoration: underline;
}

:where(#content, [data-elementor-type="wp-page"]) a:not(.elementor-button, .elementor-button-link) {
	color: #228737;
}

:where(#content, [data-elementor-type="wp-page"]) a:visited:not(.elementor-button, .elementor-button-link) {
	color: #228737;
}

:where(#content, [data-elementor-type="wp-page"]) a:not(.elementor-button, .elementor-button-link):hover,
:where(#content, [data-elementor-type="wp-page"]) a:not(.elementor-button, .elementor-button-link):focus-visible {
	color: #165d24;
}

.elementor-widget-search .e-search-input {
	font-size: 14px;
	line-height: 1.8;
	background-color: transparent;
}

.elementor-field-textual.elementor-size-sm {
	padding-block: 0;
}

.pie-events-month,
.pie-event-title {
	color: #218837;
}

.pie-events-searchbar__submit {
	padding: var(--savings-event-submit-padding-vertical, 14px) var(--savings-event-submit-padding-horizontal, 20px);
	border: 1px solid #fff;
	border-radius: 0;
	background-color: #228737;
	color: #fff;
}

.pie-events-filters input[type="checkbox"] {
	display: inline-block;
	appearance: none;
	width: var(--savings-event-checkbox-size, 16px);
	min-width: var(--savings-event-checkbox-size, 16px);
	height: var(--savings-event-checkbox-size, 16px);
	margin: -3px 10px 0 0;
	border: 1px solid #bbb;
	border-radius: 0;
	background-color: #fff;
	box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
	color: #636363;
	font-size: 9.5px;
	line-height: 0;
	text-align: center;
	vertical-align: middle;
}

.pie-events-filters input[type="checkbox"]:checked::before {
	display: inline-block;
	float: left;
	width: var(--savings-event-checkbox-size, 16px);
	margin-bottom: -1px;
	color: var(--savings-event-check-color, #13aff0);
	content: "\f00c";
	font-family: "Font Awesome 5 Free";
	font-weight: 600;
	line-height: calc(var(--savings-event-checkbox-size, 16px) - 2px);
	text-rendering: auto;
}

button[type="submit"],
input[type="button"],
input[type="reset"],
input[type="submit"] {
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.e-grid[data-grid="mdi"] {
	grid-template-columns: repeat(12, 1fr) !important;
}

.mega-sub-menu .mega-sub-menu .mega-sub-menu .mega-sub-menu {
	display: none;
}

.single :is(.category-residential, .category-multifamily) > [data-header] {
	background-image: linear-gradient(90deg, var(--e-global-color-primary) 40%, var(--e-global-color-c99262d) 100%) !important;
}

.single .category-business > [data-header] {
	background-image: linear-gradient(90deg, var(--e-global-color-secondary) 40%, var(--e-global-color-d02e3a3) 100%) !important;
}

.single .category-mdi > [data-header] {
	background-image: url("/wp-content/uploads/2024/11/amerencolors-gradient-01-scaled.jpg") !important;
	background-size: cover;
}

.single .category-program-ally > [data-header] {
	background-image: linear-gradient(90deg, var(--e-global-color-645c9e1) 40%, var(--e-global-color-81adc98) 100%) !important;
}

.wp-element-button {
	background-color: #228737 !important;
	color: #fff !important;
	padding: 8px 32px !important;
	text-decoration: none !important;
}

.wp-element-button:hover {
	background-color: #2cb347 !important;
	color: #fff !important;
}

#mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu ul.mega-sub-menu ul.mega-sub-menu {
	margin-left: 24px !important;
}

#mega-menu-wrap-main_menu #mega-menu-main_menu > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item li.mega-menu-item:has(.mega-sub-menu) > a.mega-menu-link {
	font-weight: bolder;
}

.site-main:has(.post-password-form) {
	display: flex;
	align-items: center;
	justify-content: center;
}

.post-password-form {
	max-width: 400px;
	padding: 3rem;
	background-color: #f8fff2;
	border-radius: 2rem;
	box-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
}

.post-password-form input[name="Submit"] {
	margin-top: 20px;
	padding: 6px 32px;
	border-radius: 9999px;
}

.page-id-24490 .elementor-location-header {
	display: none;
}

ul.wp-chatbot-messages-container > li.wp-chatbot-msg .wp-chatbot-paragraph,
.wp-chatbot-agent-profile .wp-chatbot-bubble,
ul.wp-chatbot-messages-container li:first-child.wp-chatbot-msg .wp-chatbot-paragraph {
	color: #fff !important;
}

#scroll-top {
	display: block;
	position: fixed;
	right: var(--savings-scroll-top-offset, 20px);
	bottom: var(--savings-scroll-top-offset, 20px);
	z-index: 100;
	width: var(--savings-scroll-top-size, 40px);
	height: var(--savings-scroll-top-size, 40px);
	padding: 0;
	background-color: var(--savings-scroll-top-background, rgba(0, 0, 0, 0.4));
	border-radius: var(--savings-scroll-top-radius, 2px);
	color: #fff;
	opacity: 0;
	pointer-events: none;
	text-align: center;
	transition: opacity 300ms ease, background-color 150ms ease;
}

#scroll-top.is-visible {
	opacity: 1;
	pointer-events: auto;
}

#scroll-top:hover,
#scroll-top:focus-visible {
	background-color: var(--savings-scroll-top-background-hover, rgba(0, 0, 0, 0.8));
	color: #fff;
}

#scroll-top svg {
	width: 18px;
	height: 18px;
	margin-top: calc((var(--savings-scroll-top-size, 40px) - 18px) / 2);
	fill: none;
	stroke: currentcolor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 2;
}

.savings-archive,
.savings-error-page {
	--savings-fallback-accent: var(--e-global-color-primary, #228737);
	--savings-fallback-accent-hover: var(--e-global-color-c99262d, #186627);

	background-color: #fff;
}

.savings-archive__container {
	width: var(--savings-fallback-content-width, 90%);
	max-width: var(--savings-fallback-content-max-width, 1200px);
	margin-inline: auto;
	padding-block: var(--savings-archive-padding, 50px);
}

#content .savings-error-page__title {
	margin: 0 0 25px;
	font-size: var(--savings-error-title-size, 46px);
}

.savings-archive__description {
	max-width: 800px;
	margin-top: 16px;
}

.savings-archive__description > :last-child,
.savings-archive-card__excerpt > :last-child {
	margin-bottom: 0;
}

.savings-archive__layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(240px, 320px);
	gap: clamp(40px, 6vw, 80px);
	align-items: start;
}

.savings-archive__posts {
	display: grid;
	gap: 30px;
}

.savings-archive-card {
	padding-bottom: 30px;
	border-bottom: 1px solid #f1f1f1;
}

.savings-archive-card__image {
	display: block;
	margin-bottom: 20px;
	background-color: #f4f4f4;
}

.savings-archive-card__image img {
	display: block;
	width: 100%;
	height: auto;
}

.savings-archive-card__body {
	padding: 0;
}

#content .savings-archive-card__title,
#content .savings-archive-card__title a {
	margin: 0 0 20px;
	font-size: var(--savings-archive-title-size, 24px);
	font-weight: 600;
	line-height: 1.4;
	letter-spacing: 0.6px;
}

#content .savings-archive-card__title a {
	color: #228737;
}

#content .savings-archive-card__title a:visited,
#content .savings-archive-card__read-more:visited {
	color: #228737;
}

.savings-archive-card__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 18px;
	margin: 0 0 12px;
	padding: 0 0 10px;
	color: var(--e-global-color-1c65255, #4a4a4a);
	font-size: var(--savings-archive-meta-size, 14px);
	line-height: 1.3;
	list-style: none;
}

.savings-archive-card__meta li {
	display: list-item;
	padding-bottom: 5px;
}

body:not(.elementor-page) #content .savings-archive-card__meta a,
body:not(.elementor-page) #content .savings-archive-card__meta a:visited {
	display: inline;
	color: #4a4a4a;
}

.savings-archive-card__meta i {
	width: 16px;
	text-align: center;
}

.savings-archive-card__excerpt {
	margin-bottom: 20px;
}

#content .savings-archive-card__read-more {
	display: inline-block;
	padding: 10px 16px;
	border: 1px solid #ddd;
	border-radius: 2px;
	color: #228737;
	font-weight: 400;
	letter-spacing: 0.6px;
	text-transform: capitalize;
}

.savings-archive .navigation.pagination {
	margin-top: 40px;
}

.savings-archive .nav-links {
	display: inline-block;
	width: 100%;
	padding-top: 10px;
	text-align: right;
}

#content.savings-archive .page-numbers {
	display: inline-block;
	min-width: var(--savings-pagination-size, 38px);
	margin: 0 var(--savings-pagination-gap, 8px) 0 0;
	padding: 0;
	border: 1px solid #e9e9e9;
	border-radius: 2px;
	color: #555;
	line-height: var(--savings-pagination-size, 38px);
	text-align: center;
	text-decoration: none;
}

#content.savings-archive .page-numbers.current,
#content.savings-archive a.page-numbers:hover,
#content.savings-archive a.page-numbers:focus-visible {
	background-color: #f8f8f8;
	color: #333;
}

.savings-archive-sidebar {
	padding-left: 30px;
	font-size: var(--savings-archive-sidebar-size, 13px);
}

.savings-archive-sidebar__widget + .savings-archive-sidebar__widget {
	margin-top: 40px;
}

.savings-archive-sidebar__title {
	margin: 0 0 16px;
}

.savings-archive-sidebar .wp-block-heading {
	margin: 0 0 20px;
	color: #218837;
	font-size: 13px;
	line-height: 1;
	letter-spacing: 1px;
}

.savings-archive-sidebar ul {
	margin: 0;
	padding-left: 20px;
}

.savings-archive-sidebar li + li {
	margin-top: 8px;
}

.savings-archive-sidebar .wp-block-search__inside-wrapper,
.savings-error-page .search-form {
	display: flex;
	gap: 8px;
}

.savings-archive-sidebar input[type="search"],
.savings-error-page input[type="search"] {
	min-width: 0;
}

.savings-error-page {
	padding: 50px 0;
	text-align: center;
}

.savings-error-page__content {
	width: var(--savings-fallback-content-width, 90%);
	max-width: var(--savings-fallback-content-max-width, 1200px);
	margin-inline: auto;
}

.savings-error-page__text {
	margin: 0 0 35px;
	font-size: var(--savings-error-text-size, 18px);
	font-weight: 300;
}

.savings-error-page__search {
	width: 100%;
	max-width: 390px;
	margin: 0 auto;
}

.savings-error-page__search label {
	flex: 1;
}

.savings-error-page__search input[type="search"] {
	width: 100%;
}

.savings-error-page__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-top: 60px;
	padding: 14px 26px;
	background-color: var(--savings-fallback-accent);
	border-radius: 3px;
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	text-decoration: none;
}

#content a.savings-error-page__button {
	background-color: #228737;
	color: #fff;
	font-size: 13px;
}

#content a.savings-error-page__button:visited {
	color: #fff;
}

#content a.savings-error-page__button:hover,
#content a.savings-error-page__button:focus-visible {
	background-color: var(--savings-fallback-accent-hover);
	color: #fff;
}

@media (max-width: 480px) {
	.savings-error-page__button {
		margin-top: 40px;
	}
}

@media (max-width: 1024px) {
	.menu-item {
		background-color: #228737;
	}

	.menu-item a {
		justify-content: space-between;
		padding: 1rem 2rem;
		line-height: 1.8lh;
		text-transform: uppercase;
	}

	.menu-item a:is(:hover, :active, :focus, :focus-within, :focus-visible) {
		padding: 1rem 2rem !important;
		line-height: 1.8lh !important;
	}

	.menu-item .sub-menu .menu-item a {
		text-transform: unset;
	}

	.menu-item .sub-menu[aria-expanded="true"] {
		border-bottom: 1px solid #186627;
	}

	.elementor-nav-menu > .menu-item {
		border-bottom: 1px solid #186627 !important;
	}

	.elementor-nav-menu > .menu-item .sub-menu .menu-item:has(.highlighted) {
		border-block: 1px solid #fff !important;
	}

	.elementor-nav-menu > .menu-item:has(.highlighted) {
		border-block: 3px solid #fff !important;
	}

	.elementor-nav-menu .menu-item:nth-of-type(1):has(.highlighted) > .sub-menu > .menu-item {
		border-top: 1px solid #186627 !important;
	}

	.elementor-nav-menu .menu-item:nth-of-type(1) .highlighted,
	.elementor-nav-menu .menu-item:nth-of-type(1) a[aria-current="page"] {
		background-color: #186627 !important;
		color: #fff !important;
	}

	.elementor-nav-menu > .menu-item:nth-of-type(1) .sub-menu .menu-item a {
		background-color: #228737 !important;
	}

	.elementor-nav-menu > .menu-item:nth-of-type(2):has(.highlighted) .sub-menu .menu-item {
		border-top: 1px solid #155289 !important;
	}

	.elementor-nav-menu > .menu-item:nth-of-type(2) .highlighted,
	.elementor-nav-menu > .menu-item:nth-of-type(2) a[aria-current="page"] {
		background-color: #1b6cb5 !important;
		color: #fff !important;
	}

	.elementor-nav-menu > .menu-item:nth-of-type(2) .sub-menu .menu-item a {
		background-color: #1b6cb5 !important;
	}

	.elementor-nav-menu > .menu-item:nth-of-type(3):has(.highlighted) .sub-menu .menu-item {
		border-top: 1px solid #d96d21 !important;
	}

	.elementor-nav-menu > .menu-item:nth-of-type(3) .highlighted,
	.elementor-nav-menu > .menu-item:nth-of-type(3) a[aria-current="page"] {
		background-color: #228737 !important;
		color: #fff !important;
	}

	.elementor-nav-menu > .menu-item:nth-of-type(3) .sub-menu .menu-item a {
		background-color: #228737 !important;
	}

	.elementor-nav-menu > .menu-item:nth-of-type(4):has(.highlighted) .sub-menu .menu-item {
		border-top: 1px solid #5c9f2f !important;
	}

	.elementor-nav-menu > .menu-item:nth-of-type(4) .highlighted,
	.elementor-nav-menu > .menu-item:nth-of-type(4) a[aria-current="page"] {
		background-color: #6bb837 !important;
		color: #fff !important;
	}

	.elementor-nav-menu > .menu-item:nth-of-type(4) .sub-menu .menu-item a {
		background-color: #6bb837 !important;
	}

	.elementor-nav-menu > .menu-item:nth-of-type(5):has(.highlighted) .sub-menu .menu-item {
		border-top: 1px solid #b42c2a !important;
	}

	.elementor-nav-menu > .menu-item:nth-of-type(5) .highlighted,
	.elementor-nav-menu > .menu-item:nth-of-type(5) a[aria-current="page"] {
		background-color: #d13431 !important;
		color: #fff !important;
	}

	.elementor-nav-menu > .menu-item:nth-of-type(5) .sub-menu .menu-item a {
		background-color: #d13431 !important;
	}
}

@media (max-width: 768px) {
	.savings-archive__container {
		width: min(100% - 32px, var(--savings-fallback-content-max-width, 1200px));
		padding-block: var(--savings-archive-mobile-padding-top, 48px) var(--savings-archive-mobile-padding-bottom, 64px);
	}

	.savings-archive__layout,
	.savings-archive-card {
		grid-template-columns: 1fr;
	}

	.savings-archive-sidebar {
		padding: 32px 0 0;
		border-top: 1px solid #f1f1f1;
	}

	.e-grid[data-grid="mdi"] {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 480px) {
	#scroll-top {
		right: var(--savings-scroll-top-mobile-offset, 10px);
		bottom: var(--savings-scroll-top-mobile-offset, 10px);
		width: var(--savings-scroll-top-mobile-size, 26px);
		height: var(--savings-scroll-top-mobile-size, 26px);
	}

	#scroll-top svg {
		width: 14px;
		height: 14px;
		margin-top: calc((var(--savings-scroll-top-mobile-size, 26px) - 14px) / 2);
	}
}
