/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

body{
	text-decoration:none;
}
.elementor-widget-text-editor p:last-of-type {
    margin-bottom: 0 !important;
}
.elementor-widget-text-editor ul, 
.elementor-widget-text-editor ol {
    margin-bottom: 16px;
	margin-top: -6px;
}
.elementor-widget-text-editor ul:last-of-type, 
.elementor-widget-text-editor ol:last-of-type {
    margin-top: 10px;
}
.btn_icon_large span.elementor-button-icon svg {
    width: 29px;
    height: 29px;
}
.btn_icon_large .elementor-button-content-wrapper,
.btn_icon .elementor-button-content-wrapper{
	display: flex;
	align-items: center;
}
.elementor-editor-active .elementor-shape:empty {
    display: none;
}
.elementor-widget-text-editor ul {
    padding-left: 20px;
}
#MainMenu ul.elementor-nav-menu {
    justify-content: space-between;
}
#MainMenu ul.elementor-nav-menu::after {
    display: none;
}
#MainMenu ul.elementor-nav-menu li {
    flex: 0 0 auto;
}
#MainMenu ul.elementor-nav-menu > li > a .sub-arrow svg.e-font-icon-svg {
    opacity: 0;
	    width: 10px;
    height: 10px;
}
#MainMenu ul.elementor-nav-menu li .sub-arrow {
    padding-left: 8px;
}
#MainMenu ul.elementor-nav-menu ul.sub-menu a {
    border: none;
}
#MobileMainMenu {
    width: auto;
}
#SiteBanner .banner_address span.elementor-icon-list-icon {
    border-radius: 6px;
    background: #D96D43;
    padding: 9px 11px;
	    margin-right: 5px;
}
#SiteBanner .banner_address span.elementor-icon-list-icon svg {
    margin: 0;
    width: 23px;
    height: 27px;
}
#BannerSlider .elementor-background-overlay{
	mix-blend-mode: soft-light;
}
#BannerSlider .swiper-slide-contents {
    padding: 50px 100px 58px 60px;
	border-radius: 20px 0 0 0;
	background: #F5F5F5;
	position: relative;
}
#BannerSlider .swiper-slide-contents::before {
    content: '';
    display: block;
    background: #C8384D;
    width: 5px;
    height: calc(100% - 108px);
    position: absolute;
    left: 0;
}
#BannerSlider h1.elementor-slide-heading {
    margin-top: 0;
}
#BannerSlider h1.elementor-slide-heading::before {
    content: 'Welcome to';
    display: block;
    color: #D96D43;
    font-size: 25px;
    font-weight: 400;
    line-height: 22px;
    margin-bottom: 20px;
}
#BannerSlider .elementor-swiper-button {
    border-radius: 7px;
    background: #D96D43;
    width: 40px;
    height: 40px;
	background-image: url('https://valleylist.xyz/masoncounty/wp-content/uploads/2025/11/next.svg');
    background-repeat: no-repeat;
    background-position: center;
    background-size: 18px;
	left: 103px;
    transform: none;
    top: calc(50% - 50px);
}
#BannerSlider .elementor-swiper-button.elementor-swiper-button-prev{
	background-image: url('https://valleylist.xyz/masoncounty/wp-content/uploads/2025/11/prev.svg');
	top: calc(50% + 10px);
}
#BannerSlider .elementor-swiper-button svg {
    display: none;
}
#faqs .e-n-accordion-item {
    border-bottom: 1px solid rgb(0 0 0 / 50%);
}

#EventsCalendar .mec-calendar-events-side {
    border-radius: 16px;
    background: #022147;
    padding: 30px;
}
#EventsCalendar .mec-wrap .mec-totalcal-box .mec-dropdown-search i.mec-sl-folder,
#EventsCalendar .mec-calendar-events-side .mec-calendar-events-sec .mec-table-side-title, 
#EventsCalendar .mec-calendar-events-side .mec-calendar-events-sec .mec-table-side-day,
#EventsCalendar .mec-calendar .mec-event-footer{
    display: none;
}
#EventsCalendar .mec-calendar-events-side article.mec-event-article {
    border-top: none;
    border-bottom: 1px solid rgba(255, 255, 255, 0.50);
    padding-bottom: 10px;
    padding-top: 10px;
    margin-bottom: 30px;
    background: transparent !important;
}
#EventsCalendar article.mec-event-article .mec-event-detail,
#EventsCalendar article.mec-event-article .mec-event-time {
    font-size: 20px;
    line-height: 22px;
    color: #fff;
    font-weight: 500;
}
#EventsCalendar  article.mec-event-article h4.mec-event-title {
    font-size: 22px;
    line-height: 30px;
    color: #fff;
    font-weight: 600;
    text-transform: capitalize;
    margin: 5px 0 0 0;
}
#EventsCalendar article.mec-event-article h4.mec-event-title a.mec-color-hover {
    color: #fff !important;
}
#EventsCalendar article.mec-event-article .mec-event-time i.mec-sl-clock-o {
    padding: 4px;
    font-size: 19px;
    background: #C01B33;
    border-radius: 30px;
    margin-right: 2px;
    vertical-align: top;
}
#EventsCalendar .mec-calendar-side {
    border-radius: 16px;
    border: 1px solid rgba(0, 0, 0, 0.20);
    background: #FFF;
    padding: 30px;
}
#EventsCalendar .mec-calendar-topsec {
    display: flex;
    justify-content: space-between;
    gap: 40px;
}
#EventsCalendar .mec-calendar-events-side, 
#EventsCalendar .mec-calendar-side {
    width: calc(50% - 20px);
    flex: 0 0 auto;
	height: auto;
}
#EventsCalendar .mec-calendar {
    border: none;
    box-shadow: none;
    margin: 0;
    padding: 0;
}
#EventsCalendar .mec-calendar-header, #EventsCalendar .mec-calendar-header h2 {
    margin: 0;
    width: auto;
    text-align: left;
    text-transform: capitalize;
    font-size: 24px;
    line-height: normal;
    font-weight: 600;
    color: #000;
	    min-height: 46px;
    line-height: 46px;
}
#EventsCalendar .mec-calendar .mec-calendar-side .mec-next-month, 
#EventsCalendar .mec-calendar .mec-calendar-side .mec-previous-month {
    left: auto;
	top: 0 !important; 
    right: 0px;
    padding: 16px;
        height: auto;
    border: none;
    box-shadow: none;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0;
	min-width: initial;
}
#EventsCalendar .mec-calendar .mec-calendar-side .mec-next-month .mec-load-month-link, 
#EventsCalendar .mec-calendar .mec-calendar-side .mec-previous-month .mec-load-month-link {
        font-size: 0;
    text-indent: 0;
    text-decoration: none;
    padding: 0;
    line-height: 0;
    width: 14px;
}
#EventsCalendar .mec-calendar .mec-calendar-side .mec-next-month i.mec-sl-angle-right, 
#EventsCalendar .mec-calendar .mec-calendar-side .mec-previous-month i.mec-sl-angle-left {
    font-size: 14px;
    color: #000;
}
#EventsCalendar .mec-calendar .mec-calendar-side .mec-previous-month {
    right: 54px;
}
#EventsCalendar .mec-month-navigator {
    position: relative;
	margin-bottom: 12px;
}
#EventsCalendar .mec-box-calendar.mec-calendar .mec-calendar-table-head dt {
    border: none;
    background: transparent;
    font-size: 14px;
    font-weight: 600;
    text-transform: capitalize;
}
#EventsCalendar .mec-box-calendar.mec-calendar dt {
    width: 64px;
    height: 64px;
    line-height: 64px;
    font-weight: 400;
    color: #000;
    background: #fff;
    border-color: #D5D4DF !important;
}
#EventsCalendar .mec-calendar .mec-has-event a {
    color: #000;
}
#EventsCalendar .mec-box-calendar.mec-calendar dt.mec-table-nullday {
    background: #F2F3F7;
    color: #A8A8A8;
}
#EventsCalendar .mec-box-calendar.mec-calendar dt.mec-calendar-day.mec-selected-day {
    background: #D96D43;
    color: #fff !important;
}
#EventsCalendar .mec-calendar .mec-has-event:after {
    background-color: #D96D43;
}
#EventsCalendar .mec-box-calendar.mec-calendar dt.mec-calendar-day.mec-selected-day a {
    color: #fff;
}
#EventsCalendar .mec-calendar-side .mec-calendar-table {
    min-height: 379px !important;
}
#EventsCalendar .mec-wrap .mec-totalcal-box {
    padding: 0;
    margin: 0 0 30px;
    border: none;
    box-shadow: none;
    display: flex;
    border-radius: 10px;
    background: #F9F9F9;
    flex-direction: row-reverse;
    min-height: 70px;
}
#EventsCalendar .mec-wrap .mec-totalcal-box .mec-dropdown-search, #EventsCalendar .mec-wrap .mec-totalcal-box .mec-text-input-search {
    padding: 0;
	float: none;
	    position: relative;
}
#EventsCalendar .mec-wrap .mec-totalcal-box .mec-text-input-search input,
#EventsCalendar .mec-wrap .mec-totalcal-box .mec-dropdown-search select {
    width: 100%;
    margin: 0;
    height: 70px;
    border: none;
    background: transparent;
    color: #555;
    font-size: 20px;
    line-height: normal;
    padding: 0;
	outline:0;
	box-shadow:none;
}
#EventsCalendar .mec-wrap .mec-totalcal-box .mec-text-input-search i.mec-sl-magnifier {
    float: none;
    position: absolute;
    right: 25px;
    background: transparent;
    border: none;
    width: auto;
    height: auto;
    padding: 0;
    color: #555555;
    top: 50%;
    transform: translateY(-50%);
}
#EventsCalendar .mec-wrap .mec-totalcal-box .mec-text-input-search::after {
    content: '';
    display: inline-block;
    width: 2px;
    height: 36px;
    background: rgba(0, 0, 0, 0.20);
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}
#EventsCalendar dl.mec-calendar-table-head {
    border-bottom: 1px solid #d5d4df;
}
#EventsCalendar .mec-wrap .mec-totalcal-box .mec-dropdown-search {
    padding-left: 25px;
}
#EventsCalendar .mec-wrap .mec-totalcal-box .mec-text-input-search input {
    padding: 0 25px;
}
#EventsCalendar .mec-wrap .mec-totalcal-box .mec-dropdown-search select {
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: url('https://valleylist.xyz/masoncounty/wp-content/uploads/2025/12/select-arrow.png');
    background-repeat: no-repeat;
    background-position-y: center;
    background-position-x: calc(100% - 25px);
}

#GravityForm input, #GravityForm select {
    line-height: normal;
    min-height: 45px;
    background: #fff;
    border-color: #E2E5EB;
    border-radius: 4px;
    box-shadow: none;
    outline: 0;
    font-size: 16px;
    font-weight: 300;
    background-color: #fbfbfb;
    font-family: 'NB-International';
	    padding: 12px;
    padding-top: 13px;
}
#GravityForm textarea{
	line-height: normal;
    border-color: #E2E5EB;
    border-radius: 4px;
    box-shadow: none;
    outline: 0;
    font-size: 16px;
    font-weight: 300;
    background-color: #fbfbfb;
    font-family: 'NB-International';
}
#GravityForm input[type=radio], #GravityForm input[type=checkbox] {
    min-height: initial;
	padding:0;
}
#GravityForm .gfield_error input {
    border-color: #c02b0a;
    background-color: #c02b0a08;
}
#GravityForm .gfield_label, #GravityForm .gform-field-label {
    font-size: 16px;
    margin-bottom: 6px;
    gap: 3px;
    color: #1e1e1e;
    opacity: 1;
}
#GravityForm .validation_message,
#GravityForm .gfield_label .gfield_required span {
    display: none;
}
#GravityForm .gfield_label .gfield_required::after {
    content: '*';
    font-size: 20px;
    line-height: normal;
}
#gform_fields_1 {
    gap: 20px;
}
#GravityForm .gform_button.button {
    background-color: var(--e-global-color-accent);
    font-family: 'Alan Sans';
    font-size: 18px;
    font-weight: 500;
    line-height: 24px;
    color: #FFFFFF;
    border-style: none;
    border-radius: 8px;
    padding: 12px 20px;
    min-width: 165px;
    letter-spacing: 1px;
}
#GravityForm .gform_button.button:hover {
    background-color: #c01b33;
    color: #FFFFFF;
}
#GravityForm .gform_heading,
#GravityForm .gform_validation_errors{
    display: none;
}
#GravityForm #gform_wrapper_9 #gform_9{
    padding: 0 30px 30px;
}
#GravityForm .gfield_checkbox {
    flex-direction: row;
    flex-wrap: wrap;
}
.ginput_container.ginput_container_date, 
.ginput_container.ginput_container_date input {
    width: 100%;
}
#PagesBanner h1.elementor-heading-title {
    text-align: center;
}

#EventsCalendar article.mec-event-article h4.mec-event-title > a {color: #fff;text-decoration: underline;}
@media (min-width: 1441px){
	.elementor-hidden-desktop{
		display: none !important;
	}
}
@media (min-width: 1025px) and (max-width: 1440px){
	.elementor-hidden-laptop{
		display: none !important;
	}
}
@media (min-width: 768px) and (max-width: 1024px){
	.elementor-hidden-tablet{
		display: none !important;
	}
}
@media (min-width: 1025px) and (max-width: 1080px){
	div#MainMenu .elementor-nav-menu .elementor-item {
		font-size: 14px;
	}
	div#MainMenu .elementor-nav-menu .elementor-item svg {
		width: 8px;
		height: 8px;
	}
}
@media (max-width: 1366px){
	#BannerSlider .swiper-slide-contents {
		padding: 40px 60px 45px 45px;
		border-radius: 16px 0 0 0;
	}
	#BannerSlider .swiper-slide-contents::before {
		height: calc(100% - 85px);
	}
	#BannerSlider .elementor-swiper-button {
		left: 24px;
	}
}
@media (max-width: 1024px){
	#MobileMainMenu .elementor-menu-toggle {
		padding: 7px;
		border-radius: 6px;
	}
	#MobileMainMenu .elementor-menu-toggle.elementor-active span.elementor-menu-toggle__icon--close,
	#MobileMainMenu .elementor-menu-toggle:not(.elementor-active) span.elementor-menu-toggle__icon--open {
		display: flex;
	}
	#MobileMainMenu .elementor-nav-menu--dropdown ul {
		background: #fff;
		border-radius: 4px;
	}
	nav.elementor-nav-menu--dropdown li.current_page_item span.sub-arrow svg, 
	nav.elementor-nav-menu--dropdown li a:hover span.sub-arrow svg, 
	nav.elementor-nav-menu--dropdown li a.highlighted span.sub-arrow svg {
		fill: #fff;
	}
	#MobileMainMenu .elementor-nav-menu--dropdown {
		padding: 12px;
		max-width: 570px;
		left: auto !important;
		right: -24px !important;
	}
	#EventsCalendar .mec-calendar-topsec {
		gap: 20px;
	}
	#EventsCalendar .mec-calendar-events-side, #EventsCalendar .mec-calendar-side {
		width: calc(50% - 10px);
	}
	#EventsCalendar .mec-calendar-events-side,
	#EventsCalendar .mec-calendar-side {
		padding: 20px;
	}
	#EventsCalendar  article.mec-event-article h4.mec-event-title {
		font-size: 20px;
		line-height: 26px;
	}
	#EventsCalendar article.mec-event-article .mec-event-detail, #EventsCalendar article.mec-event-article .mec-event-time {
		font-size: 18px;
		line-height: 24px;
	}
	#EventsCalendar article.mec-event-article .mec-event-time i.mec-sl-clock-o {
		padding: 4px;
		font-size: 16px;
		vertical-align: inherit;
	}
	#EventsCalendar .mec-wrap .mec-totalcal-box .mec-text-input-search input, 
	#EventsCalendar .mec-wrap .mec-totalcal-box .mec-dropdown-search select {
		height: 54px;
		font-size: 18px;
	}
	#EventsCalendar .mec-wrap .mec-totalcal-box {
		min-height: 54px;
	}
	#EventsCalendar .mec-calendar-header, #EventsCalendar .mec-calendar-header h2 {
		font-size: 20px;
	}
}
@media (max-width: 767px){
	.elementor-hidden-mobile{
		display: none !important;
	}
	.banner_phone span.elementor-button-text {
		display: none;
	}
	#MobileMainMenu .elementor-nav-menu--dropdown {
		right: -20px !important;
	}
	.btn_icon_large span.elementor-button-icon svg {
		width: 24px;
		height: 24px;
	}
	#BannerSlider .elementor-swiper-button.elementor-swiper-button-prev {
		top: auto;
		left: calc(50% - 50px);
	}
	#BannerSlider .elementor-swiper-button {
		top: auto !important;
		bottom: 20px;
		left: calc(50% + 10px);
	}
	#BannerSlider .swiper-slide-contents {
		padding: 30px 20px 64px;
		border-radius: 14px 14px 0 0;
		background: #f5f5f5bf;
		max-width: 90%;
	}
	#BannerSlider .swiper-slide-inner {
		justify-content: center;
		text-align: center;
	}
	#BannerSlider h1.elementor-slide-heading {
		margin-bottom: 12px;
	}
	#BannerSlider .swiper-slide-contents::before {
		left: 0;
		right: 0;
		margin: auto;
		height: 5px;
		width: 100%;
		top: auto;
		bottom: 0;
	}
	#BannerSlider h1.elementor-slide-heading::before {
		font-size: 20px;
		line-height: 24px;
		margin-bottom: 12px;
	}
	#EventsCalendar .mec-calendar-topsec {
		flex-wrap: wrap;
	}
	#EventsCalendar .mec-calendar-events-side, #EventsCalendar .mec-calendar-side {
		width: 100%;
	}
	#EventsCalendar .mec-box-calendar.mec-calendar dt {
		width: auto;
		height: auto;
		line-height: 54px;
	}
	#EventsCalendar .mec-calendar-side .mec-calendar-table {
		min-height: 330px !important;
	}
	#EventsCalendar .mec-wrap .mec-totalcal-box {
		flex-direction: column-reverse;
	}
	#EventsCalendar .mec-wrap .mec-totalcal-box .mec-text-input-search::after {
    display: block;
		width: 100%;
		height: 1px;
		bottom: 0;
		top: auto;
	}
	#EventsCalendar .mec-wrap .mec-totalcal-box .mec-dropdown-search {
		padding-left: 0;
	}
	#EventsCalendar .mec-wrap .mec-totalcal-box .mec-text-input-search input {
		padding: 0 15px;
	}
	#EventsCalendar .mec-wrap .mec-totalcal-box .mec-dropdown-search select {
		padding: 0 10px;
		background-position-x: calc(100% - 15px);
	}
	#EventsCalendar  article.mec-event-article h4.mec-event-title {
		font-size: 18px;
		line-height: 24px;
	}
	#EventsCalendar .mec-calendar .mec-calendar-side .mec-next-month, #EventsCalendar .mec-calendar .mec-calendar-side .mec-previous-month {
		padding: 10px 10px;
	}
	#EventsCalendar .mec-calendar .mec-calendar-side .mec-previous-month {
		right: 40px;
	}
	#EventsCalendar .mec-calendar-header, #EventsCalendar .mec-calendar-header h2 {
		font-size: 20px;
		min-height: 34px;
		line-height: 34px;
	}
	#EventsCalendar .mec-calendar-events-side article.mec-event-article {
		padding-top: 0px;
	}
	#commissioners .elementor-image-box-wrapper {
		margin: 0 -20px;
	}
	#commissioners .elementor-image-box-wrapper .elementor-image-box-content {
		padding: 0 20px;
	}
	.TeamGrid {
		max-width: 340px;
	}
	#EventsCalendar .mec-wrap .mec-totalcal-box .mec-dropdown-search {
		width: 100%;
	}
	#Finance h4.elementor-heading-title {
		font-size: 20px;
		line-height: 24px;
	}
}