/*
Theme Name: Creating A Happy Family
Theme URI: 
Author: the Development team
Author URI: https://wordpress.org/
Description: A theme for WordPress 5.
Requires at least: WordPress 4.9.6
Version: 1.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: wp5default
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

WP5 Default is based on Underscores https://underscores.me/, (C) 2012-2018 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------*/

html {line-height: 1.2;}
body {margin: 0; padding: 0;}

/*########################################
# Layout
########################################*/
.screen-reader-text, #comments .comment-form-comment label {clip: rect(1px, 1px, 1px, 1px); position: absolute !important; word-wrap: normal !important; overflow: hidden; height: 1px; margin: -1px; padding: 0; width: 1px; border: 0;}
button, input[type="button"], input[type="submit"], .elementor-button {width: 150px !important; box-sizing: border-box;}
button:hover, input[type="button"]:hover, input[type="submit"]:hover, .elementor-button:hover {text-shadow: 0 2px 2px #333;}
button:focus, input:focus, .elementor-button:focus, a:focus {outline: none;}
.elementor-social-icons-wrapper {position: relative; top: 5px;}
.grecaptcha-badge {z-index: 99999; bottom: 12% !important;}
img {transition: all .3s linear;}
img.alignleft {float: left; margin-right: 30px;}
.bdt-cover {transition: none;}

body .no-max-width .elementor-button{
	width: auto !important;
}

/*###################################
## Call to Action
###################################*/
.cta {background: #00AEEF  url("assets/images/phonecall.png") no-repeat center center;border-bottom-left-radius: 40px;border-top: 2px solid #007BAA ;border-top-left-radius: 40px;bottom: 1%;display: none;height: 80px;position: fixed;right: 0;text-decoration: none; text-indent: -9999em;width: 100px;z-index: 999; box-shadow: 0 0 3px #000 !important;}

/*########################################
# Typography
########################################*/
h1, h2, h3 {margin: 0;}
p {margin-top: 0;}
a {transition: all .3s linear;}

.noMargin p {margin-bottom: 0;}

/*########################################
# Header Section
########################################*/
body.elementor-editor-active #header {}
body:not(.elementor-editor-active) #header {position: absolute; width: 100%; top: 0; left: 0;}
#header .hdNav ul.hfe-nav-menu {align-items: center;}
#header .hdNav ul.hfe-nav-menu li:last-of-type {margin-left: 25px;}
#header .hdNav a:hover {text-shadow: 0 0 5px #888;}
#header .hdNav a[href*="connect"] {color: #FFF; padding: 22px 38px; background: #006A72; border-radius: 5px; position: relative;}
#header .hdNav a[href*="connect"]:hover {text-shadow: 2px 2px 8px #000;}

/*########################################
# Banner Section
########################################*/
#banner .bdt-slide-item {height: 100vh;}
#banner .bdt-slide-desc {padding: 0 10px; box-sizing: border-box; margin: 0 auto !important; transform: translateY(-50%); top: 53.5%; left: 7.5%;}
#banner .bdt-slide-desc h2 {max-width: 688px; color: #FFF; text-shadow: 0 4px 7px rgba(0, 0, 0, .2); letter-spacing: -.02em;}
#banner.tabletFix .bdt-slide-item {min-height: 600px;}

/*########################################
# Content Section
########################################*/
.cnTop .cnTopItem .elementor-widget-wrap {border-radius: 20px; box-shadow: 20px 20px 40px rgba(0, 0, 0, .05); padding: 25px 28px 25px 28px; box-sizing: border-box; transition: all .3s linear;}
.cnTop .cnTopItem:hover .elementor-widget-wrap {box-shadow: 0 0 20px #AAA;}
.cnTop .cnTopIco {display: flex; display: -webkit-flex; justify-content: center;}
.cnTop .cnTopIco .elementor-widget-container {width: 150px; height: 150px; display: flex; display: -webkit-flex; align-items: center; justify-content: center; border-radius: 50%; margin-top: -100px;}
.cnTop .cnTopItem:hover .cnTopIco img {transform: scale(1.1);}
.cnTop .cnTopItem p {min-height: 235px;}

.cnMid .stepNum .elementor-widget-container {width: 100px; height: 100px; position: relative; z-index: 2; right: -35px; display: flex; display: -webkit-flex; align-items: center; justify-content: center; border-radius: 50%;}

/*########################################
# Footer Section
########################################*/
#connect-with-us .ftNav ul {width: 100%; padding: 0; margin: 0; display: flex; display: -webkit-flex; justify-content: center; align-items: center; list-style: none;}
#connect-with-us .ftNav ul li {margin-left: 40px;}
#connect-with-us .ftNav ul li:last-of-type {display: none;}
#connect-with-us .ftNav ul li a {font-family: 'Ubuntu', sans-serif; font-weight: 400; font-size: 16px; line-height: 120%; color: #FFF;}

/*########################################
# Error 404 - Search
########################################*/
.error404 #header {position: static !important; box-shadow: 0 2px 2px #555;}
.error404 .content-area {min-height: 400px; padding: 100px 0 50px;}
.search-form {width: 100%; max-width: 800px; margin: 0 auto; display: flex; display: -webkit-flex;}
.search-form label {width: 74%;}
.search-form .search-field {height: 45px; width: 100%; box-sizing: border-box; padding: 0 10px;}
.search-form .search-submit {width: 25%; margin-left: 10px;}
.search-form .search-field {border-radius: 5px; border: 1px solid #D6D6D6;}
.search .site-main, .error404 .site-main {width: 100%; max-width: 1386px; padding: 0 10px; box-sizing: border-box; margin: auto; text-align: center;}
.search-results .page-description {font-weight: 700; font-size: 30px; margin-bottom: 30px;}
.search-results .content-area article {text-align: left; padding: 15px; box-sizing: border-box; box-shadow: 2px 2px 9px #D6D6D6; margin: 10px auto;}

/*########################################
# Responsive
########################################*/

@media screen and (max-width: 1350px) {
	.cnTop .cnTopItem .elementor-column-wrap {padding: 10px 15px !important;}
}

@media screen and (max-width: 1250px) {
	#header .hdNav li:not(:last-of-type) a {padding: 15px 5px !important;}
	#header .hdNav a[href*="connect"] {padding: 20px 30px;}
	.cnTop .cnTopItem .elementor-widget-wrap {padding: 25px 15px !important;}
	.cnTop .cnTopItem h3 {font-size: 20px !important;}
}

@media screen and (max-width: 1100px) {
	#header .hdNav li a {font-size: 14px !important;}
}

@media screen and (max-width: 1000px) {
	#header .hdNav li a {font-size: 13px !important;}
}

@media screen and (max-width: 960px) {
	html.js {margin-top: 0 !important; padding-top: 0 !important;}
	body.admin-bar #wprmenu_bar {box-shadow: 0 2px 2px #555;}
	body.logged-in .wprm-wrapper #mg-wprm-wrap.cbp-spmenu {top: 74px !important;}
	html body div.wprm-overlay {background: rgba(0, 0, 0, .7) !important;}
	#mg-wprm-wrap ul li {border-bottom: 1px solid rgba(0, 0, 0, .05);}
	#mg-wprm-wrap ul li a[href*="urrogate"]:hover {background: #6B9023 !important;}
	#banner .bdt-slide-desc h2 {text-align: center;}
	.cnTop .cnTopItem p {min-height: 175px;}
}

@media screen and (max-width: 600px) {
	#banner.tabletFix .bdt-slide-item {min-height: inherit;}
}

@media screen and (max-width: 782px) {
	body.logged-in .wprm-wrapper #mg-wprm-wrap.cbp-spmenu {top: 88px !important;}
	.cnTop .cnTopItem p {min-height: inherit;}
}

@media screen and (max-width: 767px) {
	.cnMid .stepNum .elementor-widget-container {right: 0; margin: 0 auto -50px;}
}




.elementor-element-8a8b4f6 .elementor-image{
	border-radius: 10px;
    overflow: hidden;
}


.chf-staff-container{
	width: 100%;
	
}

.chf-staff-container .elementor-shortcode{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.chf-staff-container .staff-wrap{
	width: 16%;
}

.chf-staff-container .staff-wrap a.staff-btn{
	display: block;
   /* padding: 20px;*/
    margin: 15px;
    /*border: solid 1px #ccc;*/
    border-radius: 10px;
    overflow: hidden;
}

.chf-staff-container .staff-wrap a.staff-btn:hover{
	box-shadow: 0 0 20px #aaa;
}

.chf-staff-container .staff-wrap a.staff-btn .staff-info{
	color: #2D3652;
	padding: 10px;
}

.chf-staff-container .staff-wrap a.staff-btn:hover .staff-info,
.chf-staff-container .staff-wrap a.staff-btn:hover .staff-info h3.staff-name{
	color: #9B718C;
}

.chf-staff-container .staff-wrap a.staff-btn .staff-img{
	border-radius: 10px;
	overflow: hidden;
}

.chf-staff-container .staff-wrap a.staff-btn .staff-img img{
	display: block;
}

.chf-staff-container .staff-wrap a.staff-btn:hover .staff-img img{
	transform: scale(1.2);
}

.chf-staff-container .staff-wrap a.staff-btn .staff-position{
	color: #9B718C;
}

.chf-staff-container .staff-wrap a.staff-btn .staff-detail{
	max-width: 990px;
	margin: 0 auto;
}

.home .fancybox-button{
	width: 44px !important;
}

@media screen and (max-width: 1024px) {
	.chf-staff-container .staff-wrap{
		width: 25%;
	}
}

@media screen and (max-width: 768px) {
	.chf-staff-container .staff-wrap{
		width: 33.3%;
	}

	.chf-staff-container .staff-wrap a.staff-btn .staff-info h3{
		font-size: 20px;
	}
}

@media screen and (max-width: 500px) {
	.chf-staff-container .staff-wrap{
		width: 50%;
	}

}


@media screen and (max-width: 420px) {
	.chf-staff-container .staff-wrap{
		width: 100%;
	}
}





/*VIDEO ARCHIVE PAGE*/
.podcast-archive-tpl main.site-main{
	margin-top: 100px;
}

.podcast-archive-tpl main.site-main header.page-header{
	text-align: center;
	padding: 30px 10px;
	background: #222;
	margin-bottom: 40px;
}

.podcast-archive-tpl main.site-main header.page-header h1{
	color: #efefef;
}

.podcast-archive-tpl main.site-main article.entry{
	padding: 15px;
	max-width: 990px;
    margin: 0 auto 40px;
}

.podcast-archive-tpl main.site-main article .entry-title{
	margin-bottom: 20px;
	font-size: 22px;

}
.podcast-archive-tpl main.site-main article .entry-title a{
	text-decoration: none;
	color: #6B9023;
}


.podcast-archive-tpl main.site-main article .post-thumbnail{
	text-align: center;
	background: #efefef;
}

.podcast-archive-tpl main.site-main article .post-thumbnail a img{
	max-width: 100% !important;
}



/*SINGLE VIDEO PAGE*/
.single-aiovg_videos{
	padding-top: 1px;
	
}


.single-aiovg_videos main.site-main{
	margin-top: 100px;
}

.single-aiovg_videos .aiovg-player-container{
	background: #222;
}

.single-aiovg_videos .aiovg-player-container .aiovg-player{
	max-width: 1200px; margin: 0 auto;
}

.single-aiovg_videos .video-content-and-podcast-wrap{
	max-width: 1200px; margin: 0 auto;
	padding: 15px;
}

.single-video-content .aiovg-description,
.single-video-content .aiovg-meta{
	max-width: 1200px;
	margin: 0 auto;
	margin-bottom: 20px;
}

.single-video-content .aiovg-videos{
	max-width: 1200px;
	margin: 0 auto;
}


.aiovg .video-content-and-podcast-wrap .lpj-row{
	display: flex;
	flex-direction: row;
    justify-content: space-between;
}

.aiovg-title-content-meta-wrap{
	margin-top: 50px;
	margin-right: 30px;
}

.external-podcast-links-wrap{
	margin-top: 50px;
	padding: 30px;
	background-color: #f6f6f6;

	text-align: center;
}




.external-podcast-links-wrap h3{
	margin-bottom: 30px;
}

.external-podcast-links-wrap a{
	display: block;
	margin-bottom: 15px;
	padding: 8px 5px;

	background-color: #FFF;
    border-radius: 8px !important;
    box-shadow: 0 0.0625rem 0.1875rem 0 rgba(0,0,0,0.15);

    min-width: 250px;
    text-align: center;
}

.external-podcast-links-wrap a img{
	display: inline-block;
	max-width: 250px;
	width: 80%;
}

.external-podcast-links-wrap a:hover{
	box-shadow: -2px 1rem 1rem 0 rgba(0,0,0,0.15);
}



.aiovg .aiovg-single-video{
	margin-bottom: 50px;
}

.aiovg-rel-videos-wrap{
	max-width: 1200px; margin: 0 auto;
	padding: 15px;
}

.aiovg-rel-videos-wrap .aiovg-views{
	display: none;
}


.aiovg-rel-videos-wrap .aiovg-title a,
.aiovg-caption .aiovg-title a{
	color: #9B718C;
}
.aiovg-rel-videos-wrap .aiovg-title a:hover,
.aiovg-caption .aiovg-title a:hover{
	color: #2D3652;
}

.aiovg-rel-videos-wrap .aiovg-category a,
.aiovg-meta .aiovg-category a,
.aiovg-meta .aiovg-tag a,
.aiovg-caption .aiovg-category a,
.aiovg-caption .aiovg-tag a{
	color: #2D3652; 
	text-decoration: none;
	font-style: italic;
	font-size: 80%;
}
.aiovg-rel-videos-wrap .aiovg-category a:hover,
.aiovg-meta .aiovg-category a:hover,
.aiovg-meta .aiovg-tag a:hover,
.aiovg-caption .aiovg-category a:hover,
.aiovg-caption .aiovg-tag a:hover{
	color: #9B718C;
}



/*VIDEO TAG PAGE*/
.video-tag-page .aiovg-videos{
	max-width: 1200px;
	margin: 60px auto;
}


@media screen and (max-width: 1024px) {
	.aiovg-title-content-meta-wrap{
		margin: 0px;
		padding: 50px 15px 15px 30px;
	}

	.video-content-and-podcast-wrap .aiovg-col-p-75{
		width: 60%;
	}


	.video-content-and-podcast-wrap .aiovg-col-p-25{
		width: 40%;
	}


	.external-podcast-links-wrap a{
		max-width: 15;
	}
}


@media screen and (max-width: 425px) {
	
	.aiovg-rel-videos-wrap{
		padding: 30px;
	}


	.video-content-and-podcast-wrap .aiovg-col-p-75{
		width: 100%;
	}


	.video-content-and-podcast-wrap .aiovg-col-p-25{
		width: 100%;
	}
}



/*CATEGORY PAGE*/
.aiovg ul.aiovg-categories-list{
	text-align: center;
}

.aiovg ul.aiovg-categories-list  li{
	display: inline-block;
}

.aiovg ul.aiovg-categories-list li a{
	display: inline-block;
	padding: 10px;
	border-radius: 5px;
	background: #9B718C;
	color: #FFF;
}


.aiovg ul.aiovg-categories-list li a:hover{
	background: #2D3652;
}


.podcast-links-horizontal-wrap{
	text-align: center;
}

.podcast-links-horizontal-wrap a{
	display: inline-block;
	margin: 0 5px 15px 5px;
	padding: 8px 5px;

	background-color: #FFF;
    border-radius: 8px !important;
    box-shadow: 0 0.0625rem 0.1875rem 0 rgba(0,0,0,0.15);

    width: 250px;
    text-align: center;
}

.podcast-links-horizontal-wrap a img{
	display: inline-block;
	max-width: 250px;
	width: 80%;
}

.podcast-links-horizontal-wrap a:hover{
	box-shadow: -2px 1rem 1rem 0 rgba(0,0,0,0.15);
}


.aiovg-videos-template-classic .aiovg-pagination-links .current{
	border: 1px solid #9B718C;
    background-color: #9B718C;
    color: #fff !important;
}

.aiovg-videos-template-classic .aiovg-pagination-links .page-numbers {
    border: 1px solid #2D3652;
    color: #2D3652;
    border-radius: 2px;
    padding: .5em .75em;
    text-decoration: none;
    line-height: 1;
}

.aiovg-videos-template-classic .aiovg-pagination-links a:hover{
	background-color: #2D3652;
	color: #fff !important;
}





#page{
	padding-top: 1px;
}





/*popup*/
.pum-theme-lightbox button.popmake-close{
	width: 26px !important;
}

.pum-theme-lightbox .pum-content{
	line-height: 1.5;
}

@media (max-width: 782px) {
    .forminator-ui.forminator-custom-form[data-design=default] button.forminator-button {
        width: 100% !important;
        margin: 0 0 10px 0;
    }
}





.popup_content_wrap{
	position: relative;
}

.popup_content_wrap .img_wrap{
	width: 35%; 
	float: left;
}

.popup_content_wrap .text_wrap{
	width: 65%; 
	float: left;
}

.popup_content_wrap.called_to_carry_content_wrap .img_wrap{
	width: 50%; 
	float: left;
}

.popup_content_wrap.called_to_carry_content_wrap .text_wrap{
	width: 50%; 
	float: left;
}

.popup_content_wrap .text_wrap h3{
	color: #000000;
    text-align: left;
    text-shadow: 0px 0px 0px rgba(2, 2, 2, 0.23);
    font-family: inherit;
    font-weight: 400;
    font-size: 32px;
    line-height: 36px;
    margin-bottom: 20px;
}

.popup_content_wrap .text_wrap .text_wrap_2{
		padding-left: 20px;
}

@media screen and (max-width: 426px){
	.popup_content_wrap .img_wrap,
	.popup_content_wrap.called_to_carry_content_wrap .img_wrap{
		width: 100%; 
	}

	.popup_content_wrap .text_wrap,
	.popup_content_wrap.called_to_carry_content_wrap .text_wrap{
		width: 100%; 
	}

	.popup_content_wrap .text_wrap .text_wrap_2{
			padding-left: 0px;
	}
}


@media (max-width: 782px) {
    .forminator-ui.forminator-custom-form[data-design=default] button.forminator-button {
        width: 100%;
        margin: 0 0 10px 0;
    }
}


@media (min-width: 1440px) {
	.popup_content_wrap .text_wrap{
		height: 300px;
	}
	.popup_content_wrap .text_wrap .text_wrap_2{
		display: flex;
	    flex-direction: column;
	    justify-content: center;
	    align-items: flex-start;
	    flex-wrap: nowrap;
	    height: 100%;
	}
}



#header .hdNav-update a[href*="https://createahappyfamily.com/lgbtqia"] {
    color: #FFF;
    padding: 14px 22px;
    background: #7F93A7;
    background-image: url(https://createahappyfamily.com/wp-content/uploads/2025/07/progress-pride-flag_2.jpg);
    position: relative;
    font-size: 0px;
    background-size: cover;
    margin-top: 17px;
    margin-right: 10px;
}

.elementor-20 .elementor-element.elementor-element-af7d71e .hfe-site-logo-container .hfe-site-logo-img{
	max-width: 180px;
}

.elementor-20 .elementor-element.elementor-element-8dc4136 .menu-item a.hfe-menu-item{
	padding-top: 20px;
}





.elementor-3940 .elementor-element.elementor-element-c7aeaf7 .rt-filter-item-wrap.rt-search-filter-wrap input.rt-search-input {
    color: #2d3652 !important;
    font-size: 16px;
    font-weight: normal;
}

.full-width-btn a.elementor-button{
	width: auto !important;
}

.large-txt-btn a.elementor-button{
	font-size: 20px !important;
}


/* blog category page */
body.archive .post_list_wrap, 
body.archive .elementor-posts,
body.archive .archive-posts {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
	gap: 30px;
	padding: 20px;
	max-width: 1200px;
	margin: 50px auto;
}

/* Style for individual post items */
body.archive .post,
body.archive .elementor-post,
body.archive article {
	background-color: #fdfdfd;
	border-radius: 10px;
	overflow: hidden;
	box-shadow: 0 4px 12px rgba(0,0,0,0.08);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
	border: 1px solid #eaeaea;
}

/* Hover effect */
body.archive .post:hover,
body.archive .elementor-post:hover {
	transform: translateY(-5px);
	box-shadow: 0 8px 20px rgba(0,0,0,0.1);
}


/* Featured image */
body.archive .post figure.post-thumbnail,
body.archive .elementor-post__thumbnail {
	margin-bottom: 0px;
	background: #9b718c;
}


body.archive .post img,
body.archive .elementor-post__thumbnail img {
	width: 100%;
	height: auto;
	display: block;
	aspect-ratio: 2 / 1;
    object-fit: contain;
}

/* Title styling */
body.archive .post h2 a,
body.archive .elementor-post__title {
	font-size: 1.2rem;
    display: inline-block;
    margin: 15px;
    color: #9b718c;
    font-weight: 600;
    text-decoration: none;
    line-height: 1.2em;
}

body.archive .post h2 a:hover{
	color: #2d3652;
}

/* Excerpt or meta */
body.archive .post .excerpt,
body.archive .elementor-post__excerpt {
	margin: 0 15px 15px;
	font-size: 0.95rem;
	color: #444;
	line-height: 1.6;
}

/* Read more link */
body.archive .elementor-post__read-more,
body.archive .read-more {
	display: inline-block;
	margin: 0 15px 15px;
	color: #f56a98; /* pink from branding */
	font-weight: bold;
	text-decoration: none;
	border-bottom: 2px solid transparent;
	transition: 0.2s ease;
}

body.archive .elementor-post__read-more:hover,
body.archive .read-more:hover {
	border-bottom: 2px solid #f56a98;
}



/* Pagination Container */
.nav-links {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 8px;
	margin: 40px 0;
	font-family: inherit;
}

/* All page links */
.nav-links a.page-numbers,
.nav-links span.page-numbers {
	padding: 10px 16px;
    font-size: 1rem;
    border-radius: 10px;
    text-decoration: none;
    background-color: #9b718c;
    color: #ffffff;
    border: 1px solid #d1ecf1;
    transition: all 0.2s ease-in-out
}

/* Current page number */
.nav-links .page-numbers.current {
	background-color: #2d3652; 
	color: #fff;
	font-weight: bold;
	border-color: #2d3652;
}

/* Hover effect for links */
.nav-links a.page-numbers:hover {
	background-color: #2d3652; 
	color: #fff;
	border-color: #2d3652;
}

/* Prev and Next buttons */
.nav-links .prev.page-numbers,
.nav-links .next.page-numbers {
	display: flex;
	align-items: center;
	gap: 5px;
	background-color: #fff;
	color: #9b718c;
	border: 1px solid #9b718c;
	font-weight: 500;
	padding: 10px 14px;
}

.nav-links .prev.page-numbers:hover,
.nav-links .next.page-numbers:hover {
	background-color: #2d3652;
	color: #fff;
	border-color: #2d3652;
}

/* SVG arrow icons */
.nav-links svg.svg-icon {
  fill: currentColor;
  vertical-align: middle;
  transition: transform 0.2s ease;
}

/* Optional: animate arrows slightly on hover */
.nav-links .prev.page-numbers:hover svg

