@import url("/wp-content/uploads/uag-plugin/custom-style-blocks.css");

/* ==========================================================================
	CHIC — GLOBAL STYLES & UTILITIES
	--------------------------------------------------------------------------
	Legacy theme — not yet on the tokens/variables + Theme Options framework.
	This file holds the structural, hand-built CSS for this site.

	TABLE OF CONTENTS
	--------------------------------------------------------------------------
	1. Side Menu / Mobile Menu
	2. Top Navigation (Desktop Menu)
	3. Header Layout & Buttons
	4. Internal Page Typography & Layout
		4.1 Page Copy Typography
		4.2 Content Layout
		4.3 Site Notices
	5. Single Blog Page
	6. Blog Search Page
	7. Footer Typography & Layout
	8. Forminator Typography
	9. Image Gallery Styles
	10. Utility Override & Helpers
	--------------------------------------------------------------------------

	NOTES
	--------------------------------------------------------------------------
	• This file defines HOW the theme behaves (structure & layout).
	• Being prepared for migration onto the tokens/variables + Theme Options framework.
	• Prefixed via Autoprefixer (PostCSS).
	• CSS notes live in the Site Notes pages.
========================================================================== */


/* ======================================================
   1. SIDE MENU / MOBILE MENU
====================================================== */
#side-menu-logo {
	text-align: center;
}

#page-wrapper #menu-column {
	z-index: var(--zindex1);
}

#side-menu-navigation > #main-menu li.menu-item.menu-item-has-children > a:after {
	top: 0;
}

#page-wrapper #menu-column #bottom-line {
	width: calc(100vw - 60px);
}


/* ======================================================
   2. TOP NAVIGATION (DESKTOP MENU)
====================================================== */
/* Add underline hover effect to menu */
#header-wrap #header-content div.main-menu > div > ul.menu > li.menu-item > a::before {
	content: '';
	position: absolute;
	display: block;
	width: 100%;
	height: 2px;
	bottom: -5px;
	left: 0;
	background-color: #fff;
	-webkit-transform: scaleX(0);
	-ms-transform: scaleX(0);
	transform: scaleX(0);
	-webkit-transform-origin: top left;
	-ms-transform-origin: top left;
	transform-origin: top left;
	-webkit-transition: -webkit-transform .3s ease;
	transition: -webkit-transform .3s ease;
	-o-transition: transform .3s ease;
	transition: transform .3s ease;
	transition: transform .3s ease, -webkit-transform .3s ease;
}

#header-wrap #header-content div.main-menu > div > ul.menu > li.menu-item:hover > a::before {
	-webkit-transform: scaleX(1);
	-ms-transform: scaleX(1);
	transform: scaleX(1);
}

/* Adjust menu item margins and padding for underline effect */
#header-wrap #header-content div.main-menu > div > ul.menu > li.menu-item {
	margin: 5px 20px;
}

#header-wrap #header-content div.main-menu > div > ul.menu > li.menu-item.menu-item-has-children > a {
	padding-right: 8px;
	white-space: nowrap;
}

#header-wrap #header-content div.main-menu > div > ul.menu > li.menu-item a {
	padding: 0;
}

/* Remove bottom border from menu */
#header-wrap #header-content div.main-menu > div > ul.menu > li.menu-item.menu-item-has-children > ul.sub-menu > li.menu-item {
	border-bottom: 0;
}

/* Adjust sub menu drop shadow and margin */
#header-wrap #header-content div.main-menu > div > ul.menu > li.menu-item.menu-item-has-children > ul.sub-menu {
	-webkit-filter: drop-shadow(2px 3px 5px rgba(0,0,0,.25));
	filter: drop-shadow(2px 3px 5px rgba(0,0,0,.25));
	margin-top: 1px;
}

/* Header menu link styling */
#header-wrap #header-content div.main-menu > div > ul.menu > li.menu-item.menu-item-has-children > ul.sub-menu > li.menu-item a {
	color: #666;
	padding-left: 22px;
	font-weight: 400;
	font-size: 16px;
}


/* ======================================================
   3. HEADER LAYOUT & BUTTONS
====================================================== */
#page-wrapper #hamburger-menu {
	z-index: 999999;
}

#call-now-widget {
	width: 300px;
}

#call-now-widget a.call-now-button,
#call-now-icon-widget a.call-now-icon {
	border-style: solid;
}

#header-wrap.scrolling {
	background-color: #b22341;
}

#header-wrap.at-top #header-content #header-logo img {
	width: 320px;
	height: auto;
}

/* Logo size change on scroll */
#header-wrap.scrolling #header-content #header-logo img {
	width: 256px;
	height: auto;
}

/* Move up site content, remove site content bottom padding, and change header at top bg to transparent */
#page-wrapper #content-column #site-content {
	padding-top: 0;
	padding-bottom: 0;
}

#header-wrap.at-top {
	background-color: transparent;
}

/* Create the offset bottom edge for header background image */
#content-column #site-content div.background-image:before {
	-webkit-clip-path: polygon(0 0, 100% 0, 100% 91%, 0% 100%);
	clip-path: polygon(0 0, 100% 0, 100% 91%, 0% 100%);
	-webkit-filter: brightness(75%);
}

#header-logo-container > div.gb-inside-container {
	padding: 0;
}

#header-call-now-btn-desktop-container > div.gb-inside-container {
	padding: 0;
}

@media (max-width: 1200px) {
	#header-wrap #header-content #call-now-button-desktop > span {
		font-size: 0;
	}

	#header-wrap #header-content #call-now-button-desktop > span:before {
		font-size: 18px;
		content: '555-555-5555';
	}
}

@media (max-width: 1050px) {
	#header-wrap #header-content #header-logo div.business-logo figure img {
		width: 265px !important;
	}
}

@media (max-width: 850px) {
	#header-wrap #header-content #call-now-icon-widget {
		display: block;
	}

	#header-wrap #header-content #social-icons-widget {
		right: 20px;
	}

	#header-wrap #header-content #social-icons-widget .wp-block-social-links .wp-social-link.wp-social-link.wp-social-link {
		padding: 0;
	}

	#header-wrap #header-content #call-now-icon-widget {
		margin-right: 50px;
	}

	#header-wrap #header-content #header-logo {
		margin-right: 30px;
	}
}

@media (max-width: 767px) {
	#header-wrap #header-content #call-now-icon-widget {
		display: none;
	}

	#header-wrap #header-content #header-logo {
		margin-right: 0;
	}
}

@media (max-width: 500px) {
	/* Increase side menu info block padding to match menu */
	#page-wrapper #menu-column > #side-menu-bottom-content {
		padding: 25px;
	}

	#header-wrap.at-top {
		background-color: transparent;
	}

	#page-wrapper #content-column #site-content {
		padding-top: 0;
	}
}


/* ======================================================
   4. INTERNAL PAGE TYPOGRAPHY & LAYOUT
====================================================== */
/* 4.1 Page Copy Typography */
body.single #wrapper #content-column #site-content #content h2, .page-copy h2 {
	font-family: "Playfair Display", serif;
	font-size: 28px;
	font-style: italic;
	font-weight: normal;
	color: #b22341;
}

h3 {
	font-size: 20px;
}

body.single #wrapper #content-column #site-content #content a, .page-copy a {
	color: #b32240;
	text-decoration: underline;
}

body.single h1 strong,
body.single h2 strong,
body.single h3 strong,
body.single h4 strong,
body.single h5 strong,
body.single h6 strong,
body.single h1 b,
body.single h2 b,
body.single h3 b,
body.single h4 b,
body.single h5 b,
body.single h6 b {
  font-weight: inherit;
}

/* 4.2 Content Layout */
/* Adjust spacing for Stats block text */
#kt-adv-heading_888b8f-18,
#kt-adv-heading_888b8f-18 .wp-block-kadence-advancedheading,
.wp-block-kadence-advancedheading.kt-adv-heading_888b8f-18[data-kb-block='kb-adv-heading_888b8f-18'],
.kadence-advanced-heading-wrapper .kt-adv-heading_888b8f-18[data-kb-block='kb-adv-heading_888b8f-18'] {
	margin: 5px;
}

#kt-adv-heading_75a74b-20,
#kt-adv-heading_75a74b-20 .wp-block-kadence-advancedheading,
.wp-block-kadence-advancedheading.kt-adv-heading_75a74b-20[data-kb-block='kb-adv-heading_75a74b-20'],
.kadence-advanced-heading-wrapper .kt-adv-heading_75a74b-20[data-kb-block='kb-adv-heading_75a74b-20'] {
	margin: 5px;
}

#kt-adv-heading_428e10-7f,
#kt-adv-heading_428e10-7f .wp-block-kadence-advancedheading,
.wp-block-kadence-advancedheading.kt-adv-heading_428e10-7f[data-kb-block='kb-adv-heading_428e10-7f'],
.kadence-advanced-heading-wrapper .kt-adv-heading_428e10-7f[data-kb-block='kb-adv-heading_428e10-7f'] {
	margin: 5px;
}

/* 4.3 Site Notices */
#email-notice {
	font-size: 15px;
	line-height: 1.35;
}

#branda-cookie-notice div.cookie-notice-container {
	max-width: 100%;
}

#branda-cookie-notice div.cookie-notice-container div.branda-cn-container span.branda-cn-column {
	color: #fff;
}


/* ======================================================
   5. SINGLE BLOG PAGE
====================================================== */
/* Blog styling */
body.single #page-wrapper #site-content #post-content {
	max-width: 1280px;
}

body.single #page-wrapper #site-content nav.post-navigation {
	max-width: 1255px;
}

body.single #page-wrapper #site-content #post-gallery {
	max-width: 1200px;
}

body.single #page-wrapper #site-content #post-gallery div.am_post_grid div.am_grid_col div.am_single_grid {
	border-radius: 0;
	-webkit-box-shadow: none;
	box-shadow: none;
}

body.single #page-wrapper #site-content #post-gallery div.am_post_grid div.am_grid_col div.am_single_grid div.am_cont {
	background: #f4f4f4;
}

body.single #page-wrapper #site-content #post-gallery div.am_post_grid div.am_grid_col div.am_single_grid div.am_cont div.am__excerpt {
	color: #666;
}

body.single #page-wrapper #site-content #post-gallery div.am_post_grid div.am_grid_col div.am_single_grid div.am_cont h2.am__title {
	font-family: 'Open Sans', sans-serif;
	color: #3b3426;
	font-style: normal;
}

body.single-post .wp-block-uagb-post-grid.is-grid {
	grid-template-columns: repeat(3 , minmax(0, 1fr))!important;
}

.blog-related-posts .is-grid.uagb-post__items {
	row-gap: 20px!important;
	column-gap: 20px!important;
}

body.single-post .is-grid .uagb-post__inner-wrap {
	padding-top: 20px!important;
	padding-bottom: 20px!important;
	padding-left: 20px!important;
	padding-right: 20px!important;
	box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.18)!important;
}

body.single-post .uagb-post__inner-wrap {
	background: #ffffff!important;
	text-align: left!important;
}

body.single-post .uagb-post__inner-wrap .uagb-post__image:first-child {
	margin-left: -20px!important;
	margin-right: -20px!important;
	margin-top: -20px!important;
}

body.single-post .uagb-post__text.uagb-post__title {
	font-family: "Poppins"!important;
	font-weight: 600!important;
	font-size: 20px!important;
	color: #000!important;
}

body.single-post .uagb-post__text.uagb-post__excerpt {
	font-family: "Poppins"!important;
	font-weight: 400!important;
	font-size: 18px!important;
	color: #000000!important;
}

body.single-post .uagb-post__text.uagb-post__cta {
	font-family: "Poppins"!important;
	font-weight: 600!important;
	font-size: 18px!important;
}

body.single-post .uagb-post-grid .uagb-post__inner-wrap .wp-block-button.uagb-post__text.uagb-post__cta a {
	color: #000!important;
	padding-top: 0px!important;
	padding-bottom: 0px!important;
	padding-left: 0px!important;
	padding-right: 0px!important;
}

body.single-post .uagb-post-grid .wp-block-button.uagb-post__text.uagb-post__cta .uagb-text-link.wp-block-button__link {
	color: #000!important;
	background: transparent!important;
	border-style: none!important;
	font-size: 18px!important;
}

body.single-post .is-grid.uagb-post__items {
	row-gap: 20px!important;
	column-gap: 20px!important;
}

body.single-post .uagb-post__image {
	padding-bottom: 15px!important;
}

body.single-post .uagb-post-grid .uagb-post__inner-wrap p:last-of-type {
	margin-bottom: 16px;
}

/* Hide the date display for individual blog posts  – J.O. 07/29/2025 */

body.single #page-wrapper #site-content #post-header #post-img-text-overlay #post-date {
	display: none !important;
}


/* ======================================================
   6. BLOG SEARCH PAGE
====================================================== */
/* Search results page */
body.search-results #header-wrap,
body.search-no-results #header-wrap {
	background-color: #b22341;
}

/* body.search-results #header-wrap #header-content #center-menu #menu-main a,
body.search-results #header-wrap #header-content #center-menu #menu-main a:after,
body.search-no-results #header-wrap #header-content #center-menu #menu-main a,
body.search-no-results #header-wrap #header-content #center-menu #menu-main a:after {
	color: #3b3426 !important;
} */

body.search-results #page-wrapper #content-column #search-title,
body.search-no-results #page-wrapper #content-column #search-title {
	color: #3b3426;
	font-size: 34px;
}

body.search-results #header-wrap #header-content div.main-menu > div > ul.menu > li.menu-item > a:before,
body.search-no-results #header-wrap #header-content div.main-menu > div > ul.menu > li.menu-item > a:before {
	background-color: rgba(59,52,38,1);
}

@media (max-width: 1024px) {
	body.search-results #page-wrapper #content-column #site-content,
	body.search-no-results #page-wrapper #content-column #site-content {
		padding: 0;
	}
}

@media (max-width: 400px) {
	body.search-results #page-wrapper #content-column #site-content,
	body.search-no-results #page-wrapper #content-column #site-content {
		margin-top: 80px;
	}
}


/* ======================================================
   7. FOOTER TYPOGRAPHY & LAYOUT
====================================================== */
/* Footer Fix */
.footer-practice-info {
	padding-left: 25px;
	padding-right: 25px;
}

@media (max-width: 1024px) {
	#content-column #site-content div.footer-practice-info {
		-webkit-box-flex: 0;
		-ms-flex: 0 1 30%;
		flex: 0 1 30%;
		-webkit-flex: 0 1 30%;
		padding-left: 5px;
		padding-right: 5px;
	}

	#footer-container {
		background-position: 25% 50%;
	}
}

@media (max-width: 767px) {
	.footer-practice-info {
		padding-left: 20px;
		padding-right: 20px;
	}

	#footer-container {
		background-size: 767px;
		background-position: 0 0;
	}
}

@media (max-width: 500px) {
	#footer-container {
		background-size: 500px;
		background-position: 0 0;
	}
}


/* ======================================================
   8. FORMINATOR TYPOGRAPHY
====================================================== */
/* Fix font for form buttons (wasn't showing up for some reason) */
.forminator-button-submit {
	font-family: 'Open Sans', sans-serif !important;
}

.forminator-edit-module {
	display: none !important;
}

@media (max-width: 767px) {
	#page-wrapper #content-column #site-content #forminator-module-610.forminator-design--flat input.forminator-input,
	#page-wrapper #content-column #site-content #forminator-module-610.forminator-design--flat input.forminator-input:hover,
	#page-wrapper #content-column #site-content #forminator-module-610.forminator-design--flat input.forminator-input:focus,
	#page-wrapper #content-column #site-content #forminator-module-610.forminator-design--flat input.forminator-input:active {
		background-color: #f0f0f0;
	}

	#page-wrapper #content-column #site-content #forminator-module-610.forminator-design--flat textarea.forminator-textarea,
	#page-wrapper #content-column #site-content #forminator-module-610.forminator-design--flat textarea.forminator-textarea:hover,
	#page-wrapper #content-column #site-content #forminator-module-610.forminator-design--flat textarea.forminator-textarea:focus,
	#page-wrapper #content-column #site-content #forminator-module-610.forminator-design--flat textarea.forminator-textarea:active {
		background-color: #f0f0f0;
	}

	#contact-us-container div.forminator-guttenberg div.forminator-row-last {
		margin-top: 30px;
	}
}


/* ======================================================
   9. IMAGE GALLERY STYLES
====================================================== */
/* ----- Push gallery lightbox overlay and content forward to avoid images being cut off */
.slbOverlay {
	z-index: 99999 !important;
}

.slbWrapOuter {
	z-index: 99999 !important;
}


/* ======================================================
   10. UTILITY OVERRIDE & HELPERS
====================================================== */
.zoom-hover img {
	-webkit-transition: -webkit-transform .2s ease-in-out;
	transition: -webkit-transform .2s ease-in-out;
	-o-transition: transform .2s ease-in-out;
	transition: transform .2s ease-in-out;
	transition: transform .2s ease-in-out, -webkit-transform .2s ease-in-out;
}

.zoom-hover img:hover {
	-webkit-transform: scale(1.03);
	-ms-transform: scale(1.03);
	transform: scale(1.03);
}

/* Zoom effect for images */
.zoom-effect img {
	-webkit-transition: -webkit-transform .2s ease-in-out;
	transition: -webkit-transform .2s ease-in-out;
	-o-transition: transform .2s ease-in-out;
	transition: transform .2s ease-in-out;
	transition: transform .2s ease-in-out, -webkit-transform .2s ease-in-out;
}

.zoom-effect:hover img {
	-webkit-transform: scale(1.05);
	-ms-transform: scale(1.05);
	transform: scale(1.05);
}

/* Float effect for images */
.float-effect img {
	-webkit-transition: margin .2s ease-in-out;
	-o-transition: margin .2s ease-in-out;
	transition: margin .2s ease-in-out;
}

.float-effect:hover img {
	margin-top: -2;
}

/* Class for responsive images that aren't full width */

/* .responsive-img img {
	height: auto !important;
} */

/* Responsive image with black border */
/* .img-w-border img {
	height: auto !important;
	border: 1px solid #000;
} */

/* A class to use to have an image fit a div/container */

.fit-image-to-div img {
	-o-object-fit: cover !important;
	object-fit: cover !important;
}

.uagb-post-grid-byline {
	display: none!important;
}

/* Hide on mobile */
.not-mobile {
	display: block !important;
	/* visibility: visible; // Use this instead if you need to element to still occupy the space */
}

@media (min-width: 1025px) {
	.hide-on-desktop-only {
		display: none !important;
	}
}

@media (max-width: 1024px) {
	.hide-on-tablet {
		display: none !important;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.hide-on-tablet-only {
		display: none !important;
	}
}

@media (max-width: 767px) {
	.hide-on-mobile-only {
		display: none !important;
	}
}

/* Hide on tablet and desktop */
@media (min-width: 741px) {
	.hide-on-tablet-desktop {
		display: none !important;
	}
}

@media (max-width: 740px) {
	.not-mobile {
		display: none !important;
		/* visibility: hidden; / / Use this instead if you need to element to still occupy the space */
	}
}


/* WordPress admin bar override */
#wp-admin-bar-enable-jquery-migrate-helper {
	display: none;
}