/* 
Theme Name: Hello Child - Emberly
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Emberly Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.1
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
*/

/***** FONTS *****/

.jet-mobile-menu__container-inner {
    margin-top: 37px;
}

body { font-family: 'proxima-nova', sans-serif; }

h1, h2, h3, h4, h5, h6 { 
    font-family: 'proxima-nova', sans-serif;
    color: #222;
}

div, p {
    color: #222;
}

body ul {
    margin-bottom: 10px;
    margin-top: 10px;
}

/***** PAGE INTRO *****/
section.page-intro:not(.has-background-image) .overlay-skrim {
    background: none;
}

/***** HOMEPAGE HERO *****/
.homepage-section-wrapper {
    position: relative;
    z-index: 40;
    margin-bottom: 80px;
}

.homepage-hero, .homepage-hero-inner {
    z-index: -1;
}

.homepage-hero .home-slide {
    /* margin-top: -30px; */
}

.homepage-hero .home-slide p {
    font-size: 1rem;
}

.homepage-hero .page-heading {
    line-height: 0.7em;
}

.homepage-hero .page-heading .page-heading-main {
    font-size: 5rem;
    color: #3391bc;
}
.homepage-hero .page-heading .page-heading-subtext {
    font-size: 3.25rem;
}
.homepage-hero .page-heading span {
    text-transform: uppercase;
    line-height: 1em;
}

@media screen and (max-width: 767px) {
	.homepage-section-wrapper {
		margin-bottom: 0;
	}
}

/***** SEARCH BOX *****/
.search-box {
    display: block;
    z-index: 500;
    position: absolute;
    width: 100%;
}

.search-box .container {
    margin-top: -50px;
    margin-bottom: 80px;
}

body .search-box input[type=search] {
    border-radius: 6px;
    border: 0;
    padding: 14px 20px;
    width: 100%;
    font-size: 1.3rem;
    font-weight: bold;
}

body .search-box input[type=search]::placeholder {
    color: #b4b4b4;
}

body .search-box input.search-submit {
    width: 64px;
    height: 64px;
    min-width: 64px;
    border-radius: 6px;
    background-color: #E6B42B;
    padding: 0;
    display: block;
    background-image: url(/wp-content/uploads/2022/03/search-icon-light.svg);
    background-size: 20px;
    background-repeat: no-repeat;
    background-position: center;
    z-index: 100;
    margin-left: -10px;
}


body .search-box input.search-submit, .animate-placeholder::placeholder {
    animation: fade_placeholder 5s ease;
}

@keyframes fade_placeholder {
    0% { opacity: 0; color: #fff; }
    100% { opacity: 1; color: #b4b4b4; }
}

.search-box .search-form-instructions {
    width: 100%;
    max-width: fit-content;
    font-weight: bold;
    font-size: 1.4rem;
}

@media screen and (max-width: 767px) {
	.search-box {
		position: relative;
	}
	.search-box .container {
		margin-bottom: 20px;
	}
}

/***** HOME HERO BOXES *****/
.home-hero-box {
    max-width: 464px;
    transition: all 0.2s ease;
}

.home-hero-box:hover {
    transform: scale(1.05);
}

.home-hero-box em {
    font-size: 0.9rem;
}


/***** *****/
.elementor-nav-menu .sub-arrow {
    width: 10px!important;
    height: 10px!important;
    padding: 0!important;
    margin-left: 8px;
    background-image: url(/wp-content/uploads/2022/03/down-arrow-1.svg);
    background-size: contain;
    background-repeat: no-repeat;
}

.secondary-header .elementor-nav-menu .sub-arrow {
    background-image: url(/wp-content/uploads/2022/07/down-arrow-white.svg);
}

.elementor-nav-menu .sub-arrow i {
    display: none;
}

/**** POST ***/
.em-post-header .em-icon-box, .em-post-header .em-icon-box svg {
	color: #fff;
	fill: #fff;
}

.em-icon-box {
	display: flex;
}

.em-icon-box-icon {
	width: 20px;
	min-width: 20px;
	height: 20px;
	margin-right: 10px;
}

.em-icon-box-icon svg {
	width: 100%;
}

.em-post-meta {
	display: flex;
}

.em-post-meta-item {
	margin-right: 35px;
}

/***** EM SOCIAL SHARE */
.button-container {
    display: flex;
    align-items: center;
    gap: 1rem;
}
.content-block.featured-areas .button-container {
    justify-content: center;
}

.em-social-share-button:last-child {
    margin-right: 0;
}

.em-social-share-button-icon svg {
    width: 100%;
	height: auto;
    fill: #fff;
}
.em-social-share-button-icon {
    width: 25px;
    height: 25px;
    margin-right: 15px;
}

.em-social-share-button {
    display: flex;
	align-items: center;
	justify-content: center;
    background: #232323;
    margin-right: 20px;
    padding: 10px 20px;
    flex: 1;
}

.em-social-share-button, .em-social-share-button-content {
	color: #fff;
	line-height: 1em;
}

.em-social-share-buttons {
	padding-top: 40px;
	margin-top: 40px;
	border-top: 1px solid #ccc;
}

.em-social-share-buttons .em-social-share-buttons-inner {
    display: flex;
}

.em-social-share-button.em-social-share-button-facebook {
	background-color: #3b5998;
}

.em-social-share-button.em-social-share-button-twitter {
	background-color: #00acee;
}

.em-social-share-button.em-social-share-button-linkedin {
	background-color: #0e76a8;
}

.em-social-share-title {
	margin: 0 0 20px 0;
	font-size: 26px;
}

/*** EVENT GALLERY ***/
div#gallery-1 {
    display: flex;
    flex-wrap: wrap;
}

.mr-7-last:not(:last-child) { margin-right: 50px; }

@media screen and (max-width: 800px){ 
    .mr-7-last:not(:last-child) { margin-right: 0px; }
    .mb-7-last:not(:last-child) { margin-bottom: 50px; }
}

.read-more{
    width: 100%!important;
}

.category-filter-container {
    width: 100%;margin-left: 1.5%;margin-right: 1.5%;margin-bottom: 30px;
}

select.category-select {
    width: 300px;margin-left: auto;margin-right: 5px;
}

@media screen and (max-width: 800px){ 
    select.category-select {width: 100%;}
    .category-filter-container {margin: auto;margin-bottom: 30px;}
}

select.category-select {cursor: pointer;}

.no-results {width: 100%;text-align: center;padding-top: 75px;font-size: 20px;letter-spacing: 3px;}

.filter-directory-heading {max-width: 1160px;margin: auto;}
input.search-submit {height: 53px!important;}

.not-found {
    border: 1px dashed #999;
    width: 100%;
    display: block;
    text-align: center;
    padding: 10px;
    font-style: italic;
    color: #555;
}

/**** NEWSLETTER SIGNUP ****/
.confirmation_message {
	text-align: center;
	color: #ffffff;
	font-size: 20px;
}

/***** NEWS *****/
.news-container a.card-item {
    background: #fff;
}

.read-more{
    width: 100%!important;
}

.category-filter-container {
    width: 100%;margin-left: 1.5%;margin-right: 1.5%;margin-bottom: 30px;
}

select.category-select {
    width: 300px;margin-left: auto;margin-right: 5px;
}

@media screen and (max-width: 800px){ 
    select.category-select {width: 100%;}
    .category-filter-container {margin: auto;margin-bottom: 30px;}
}

select.category-select {cursor: pointer;}
.wp-pagenavi {
    width: 100%;
    display: flex;
    justify-content: center;
}


/***** Gform footers *****/
.gform_footer {
    justify-content: flex-end;
}

nav.elementor-pagination .page-numbers {
    padding: 10px;
    min-width: 42px;
    display: inline-block;
    border: 1px solid #eaeaea;
    border-radius: 4px;
    box-shadow: 3px 3px 15px rgb(0 0 0 / 5%);
    margin-bottom: 15px;
}

nav.elementor-pagination {
    margin-top: 70px;
}


/**** LOCATION AND ACF MAPS ****/
.acf-map {
    height: 100%!important;
    width: 100%;
    display: block;
}

.location-directions {
    display: flex;
    height: 200px;
}
/**** Mobile Search form *****/

form.header-search-form {
	position: relative;
	display: flex;
	align-items: center;
}

.mobile-search {
    padding: 20px 35px;
}

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

.mobile-search input[type="search"] {
    width: 100%;
    font-size: 18px;
    padding: 13px 20px;
}

.mobile-search input[type=submit] {
    display: none;
}

.mobile-search .search-icon {
    background: #e6b42b;
    padding: 0 14px;
    fill: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
	width: 50px;
    height: 50px;
}

.wp-pagenavi {
    width: 100%;
    display: flex;
    justify-content: center;
}

body .elementor-widget-search-form {
	max-width: 170px!important;
}

body .jet-regular-item:last-child a.top-level-link {
    padding-right: 0!important;
}

body .secondary-header .menu-item.menu-item-has-children > a::after {
    display: none!important;
}

#gform_wrapper_18 p.gform_required_legend {
    display: none;
}

#gform_fields_18 fieldset#field_18_3 label {
    color: #ffffff!important;
}
section.content-block.page-intro.background-cover.has-background-image .overlay-skrim {
    padding: 60px 30px;
}

section.content-block.page-intro.background-cover.has-background-image {
    padding: 0;
}
fieldset#field_15_6 label {
    color: #ffffff;
	margin-left: 7px;
}
#field_15_6 .ginput_container.ginput_container_consent {
    display: flex;
}

/*** Block Embed Form ***/
.block-embed-form .ginput_container.ginput_container_textarea .mce-widget button, 
.block-embed-form .ginput_container.ginput_container_textarea .mce-widget button i,
.block-embed-form .gform_wrapper.gravity-theme .gfield-choice-input+label,
.block-embed-form .gform_wrapper.gravity-theme .gfield_description, 
.block-embed-form .gform_wrapper.gravity-theme .gform_drop_instructions {
    color: #fff;
}

/*** Header Banner ***/
body .custom-banner {
    width: 100%;
    text-align: center;
    padding: 12px 20px;
    transition: all 0.4s ease;
}
body .custom-banner:hover {
    opacity: .8;
}
body .custom-banner h5 {
    font-size: 20px;
    margin-bottom: 0;
    margin-top: 0;
}

/*** Mega Menu ***/
body .elementor-location-header {
    position: relative;
}

#mega-menu-departments {
    position: absolute;
    top: 100%;
    opacity: 0;
    z-index: -9999;
}

#mega-menu-departments.mega-menu-active, .elementor-editor-active #mega-menu-departments {
    opacity: 1;
    z-index: 9999;
}

.mega-menu-icon-wrapper {
    max-width: 3.5rem;
}

.mega-menu-trigger-departments a::after {
    display: block;
    width: 10px!important;
    height: 10px!important;
    padding: 0!important;
    position: relative;
    content: "";
    background-image: url(/wp-content/uploads/2022/03/down-arrow-1.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    visibility: visible;
    opacity: 1!important;
    margin-left: 8px!important;
}

/*** Planning & Zoning Page ***/
.site-plan h5 {
    background: #f4f4f4;
    padding: 0.5rem;
    width: fit-content;
    font-size: 18px;
}

/*** Toggle Block ***/
.block-editor__container .block-toggles img {
    height: 20px;
}
.block-editor__container .acf-block-preview img {
    width: 14px;
    height: 14px;
}
.toggle-container .toggle-content {
    display: none;
    overflow: hidden;
    /* transition: all .5s ease-in-out; */
}

.toggle-heading {
    padding: .6rem;
    border: 1px solid hsla(0,0%,50.2%,.5019607843);
    background-color: #f4f4f4;
}

.toggle-container {
    margin-bottom: 20px;
}

.toggle-content p {
    margin-bottom: 0;
}
.toggle-container.div-toggle-active .toggle-content {
    display: block;
    /* transition: all .5s ease-in-out; */
}
.toggle-container .toggle-content {
    border: 1px solid #cacaca;
    padding: .6rem;
}

.toggle-container.div-toggle-active .toggle-heading {
    border-bottom: none;
}

.toggle-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.toggle-heading img {
    height: 12px;
    width: 12px;
    max-width: 100%;
    transition: 0.5s all ease;
}
.div-toggle-active .toggle-heading img {
    transform: rotate(180deg);
}
/*** Page Break Block ***/
.flint-page-divider {
    margin: 0 auto;
    padding: 60px 0;
}
/***** Directory Items *****/
.directory-items {
	display: grid;
    grid-template-columns: repeat(auto-fit, minmax(500px, 1fr));
    gap: 2rem;
    justify-items: center;
}
.directory-items .directory-item {
    min-width: 400px;
}

.directory-item-title {max-width: 400px;font-size: 15px; line-height: 1.2;}
.directory-items-search {padding-top: 25px;width: 30%;margin-left: auto;}
@media screen and (max-width: 800px){
	.directory-items { grid-template-columns: 1fr; }
	.directory-items, .directory-items .directory-item { margin-left: 0!important; margin-right: 0!important; }
	.directory-items .directory-item  { min-width: 0; width: 100%; overflow-x: scroll; }
}

/*** Table ***/
table.compressed-table td, table.compressed-table th {
    padding: 4px;
    text-align: left;
}

table.compressed-table th {
    background-color: #d9d9d9;
}

.d-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(350px, 1fr)); gap: 2rem; }