/*
 Theme Name: Divi Child
 Theme URI: https://www.elegantthemes.com/gallery/divi/
 Description: Divi Child Theme
 Author: Elegant Themes
 Author URI: https://www.elegantthemes.com
 Template: Divi
 Version: 1.0.0
*/
 
/* =Theme customization starts here
------------------------------------------------------- */

h1 {font-size: 64px;}
h2 {font-size: 53px;}
h3 {font-size: 44px;}
h4 {font-size: 37px;}
h5 {font-size: 31px;}
h6 {font-size: 18px;}

h1,h2,h3,h4,h5,h6 {color: #006a92;}

.single-post h5 {margin-bottom: 15px;}
.single-post h6 {margin-bottom: 15px;}
.single-post p {}

/** Header **/
.top-bar-left {
	display: flex;
	align-items: center;
	justify-content: left;
}
.top-bar-left .et_pb_menu__wrap .et_pb_menu__search-button {order: 1;}
.top-bar-left .et_pb_menu__wrap .et_pb_menu__menu {order: 2;}
.top-bar-right {
	display: flex;
	align-items: center;
	justify-content: right;
}
.nav-button {text-align: center;}
.main-nav .sub-menu {
	border-top: 0;
	top: 46px !important;
	left: 11px !important;
	padding: 0 !important;
}
.main-nav .sub-menu > li {
	width: 100%;
	padding: 0 !important;
}
.main-nav .sub-menu > li > a {
	width: 100%;
	padding-top: 12px;
	padding-bottom: 12px;
	padding-left: 25px;
	padding-right: 25px;
	line-height: 1
}
.main-nav .et-menu.nav > li {margin-top: 0;}
.main-nav .et-menu.nav > li > a {
	padding-top: 12px !important;
	padding-bottom: 12px !important;
}
.main-nav .et-menu.nav > li:hover > a::after {
	content: "";
	position: absolute;
	bottom: 0;
	top: initial !important;
	left: 0;
	width: 100%;
	height: 6px;
	background-color: #006A92;
}
.et-menu .menu-item-has-children > a:first-child::after {top: 12px !important;}
.et_pb_menu__icon.et_pb_menu__search-button {
	margin-left: 0;
	margin-right: 20px;
}
.et_pb_menu__search-button::after {
  	content: "";
	width: 24px;
	height: 24px;
	background-image: url("/wp-content/uploads/icon-magnifying-glass.svg");
}
/** End Header **/

/** Mobile Menu **/
.show-mobile-popup{
  display:block !Important;
}
.mobile-popup{
  -webkit-animation: scale-in-top 0.34s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
	        animation: scale-in-top 0.34s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
}
@-webkit-keyframes scale-in-top {
  0% {
	  /*
    -webkit-transform: scale(0);
            transform: scale(0);
    -webkit-transform-origin: 50% 0%;
            transform-origin: 50% 0%;
	  */
    opacity: 0;
  }
  100% {
	  /*
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-transform-origin: 50% 0%;
            transform-origin: 50% 0%;
	  */
    opacity: 1;
  }
}
@keyframes scale-in-top {
  0% {
	  /*
    -webkit-transform: scale(0) translateX(-50%);
            transform: scale(0) translateX(-50%);
    -webkit-transform-origin: 50% 0%;
            transform-origin: 50% 0%;
	  */
    opacity: 0;
  }
  100% {
	  /*
    -webkit-transform: scale(1) translateX(-50%);
            transform: scale(1) translateX(-50%);
    -webkit-transform-origin: 50% 0%;
            transform-origin: 50% 0%;
	  */
    opacity: 1;
  }
}

.mobile-search .et_pb_searchsubmit {
	width: 44px;
	background-image: url('/wp-content/uploads/icon-magnifying-glass.svg');
	background-repeat: no-repeat;
	background-size: 24px 24px;
	background-position: right 10px center;
}
.mobile-bottom-nav ul {
	display: flex;
	gap: 14px;
	list-style: none;
	padding: 0;
	margin: 0;
}
.mobile-bottom-nav ul li {
	border-right: 2px solid #016A92;
	padding-right: 14px;
	line-height: 14px;
}
.mobile-bottom-nav ul li:last-child {
	border-right: none;
	padding-right: 0;
}
.mobile-bottom-nav ul li a {
	font-family: 'Galano Grotesque Semi Bold',Helvetica,Arial,Lucida,sans-serif;
	color: #006A92;
	font-size: 14px;
}

.mobile-main-nav ul {
	list-style: none;
	padding: 0;
	margin: 0;
}
.mobile-main-nav ul li {
	position: relative;
	margin-bottom: 20px;
}

.mobile-main-nav ul li .open-sub {display: none;}
.mobile-main-nav ul li.menu-item-has-children.sub-menu-active .sub-menu {display: block;}
.mobile-main-nav ul > li.menu-item-has-children > .open-sub {
	display: block;
	position: absolute;
	top: 4px;
	right: 0;
	padding: 10px;
	width: 23px;
	height: 8px;
	background-image: url('https://resilia.stagingtestzone.com/wp-content/uploads/arrow-down.svg');
	background-size: 15px 8px;
	background-repeat: no-repeat;
	background-position: center center;
	cursor: pointer;
}
.mobile-main-nav ul > li.menu-item-has-children.sub-menu-active > .open-sub {
	transform: rotate(180deg);
}

.mobile-main-nav ul li .sub-menu {display: none;}
.mobile-main-nav ul li:last-child {margin-bottom: 0;}
.mobile-main-nav ul li a {
	font-family: 'Gazpacho Bold',Helvetica,Arial,Lucida,sans-serif;
	font-size: 16px;
	color: #006A92;
}
.mobile-main-nav ul li > .sub-menu {
	margin-top: 15px;
	padding-left: 37px;
}
.mobile-main-nav ul li > .sub-menu > li > a {
	font-family: 'Galano Grotesque Regular',Helvetica,Arial,Lucida,sans-serif;
	font-size: 16px;
}

.mobile-active {overflow: hidden;}
.mobile-main-nav ul li.current-menu-item.menu-item-has-children > .sub-menu,
.mobile-main-nav ul li.current-menu-ancestor.menu-item-has-children > .sub-menu {}
/** End Mobile Menu **/

/** Section Landing Page **/
.section-header {

}
.section-landing-link a {
	display: flex;
	gap: 15px;
	align-items: center;
}
.section-landing-link a::after {
	content: "";
	display: block !important;
	width: 21px;
	height: 15px;
	background-image: url("/wp-content/uploads/right-arrow.svg");
	background-size: 21px 15px;
	transition: all .3s ease-out;
	margin-left: 0;
}
.section-landing-link a:hover::after {margin-left: 8px;}

.apply-container {
  display: flex;
  align-items: center;
  gap: 84px;
}
.apply-button {
	display: flex !important;
	width: 280px;
	max-width: 280px;
	align-items: center;
	justify-content: space-between;
	text-wrap: nowrap;
}
.apply-button::after {
	content: "" !important;
	position: relative !important;
	width: 31px;
	height: 15px;
	background-size: 31px 15px;
	background-repeat: no-repeat;
	right: 5px;
	transition: all 1s ease-out;
}
.apply-button:hover::after {right: -5px;}
.apply-button.blue::after {background-image: url("/wp-content/uploads/right-arrow-blue.svg");}
.apply-button.white::after {background-image: url("/wp-content/uploads/right-arrow-white.svg");}
/** End Section Landing Page **/

/** Testimonial Slider **/
.testimonials-silder .et_pb_slide {padding: 0;}
.testimonials-silder .et_pb_bg_layout_dark .et_pb_slide_description {text-shadow: none;}
.testimonials-silder .et_pb_slide_description {
  display: flex;
  gap: 115px;
}

.testimonials-silder .et-pb-controllers {
	position: relative;
	margin: 75px 0 0 0;
	padding: 0;
	bottom: initial;
}
.testimonials-silder .et-pb-controllers a {
	width: 11px;
	height: 11px;
}
/** End Testimonial Slider **/

/** Blog Grid **/
.blog-grid .et_pb_post {
	display: flex;
	flex-direction: column;
	margin-bottom: 0;
	padding: 0;
}
.blog-grid .et_pb_post .et_pb_image_container {
	order: 1;
	margin: 0;
	margin-bottom: 30px;
}
.blog-grid .et_pb_post .et_pb_image_container .entry-featured-image-url {margin-bottom: 0;}
.blog-grid .et_pb_post .entry-title {
	order: 3;
	margin-bottom: 15px;
}
.blog-grid .et_pb_post .post-meta {
	order: 2;
	margin-bottom: 10px;
}
.blog-grid .et_pb_post .post-content {order: 4;}
.blog-grid .et_pb_post .post-content .post-content-inner {margin-bottom: 20px;}

.blog-grid .et_pb_salvattore_content[data-columns]::before {content: '4 .column.size-1of4' !important;}
.blog-grid .et_pb_salvattore_content .column {
	display: flex;
  	flex-direction: column;
  	gap: 25px;
}
.blog-grid .et_pb_salvattore_content {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	column-gap: 25px;
}
.blog-grid a.more-link {
	display: flex;
  	gap: 15px;
  	align-items: center;
}
.blog-grid a.more-link::after {
	content: "";
	display: block !important;
	width: 21px;
	height: 15px;
	background-image: url("/wp-content/uploads/right-arrow.svg");
	background-size: 21px 15px;
	transition: all .3s ease-out;
	margin-left: 0;
}
.blog-grid a.more-link:hover::after {margin-left: 8px;}

.blog-grid .auto-height {
	height: auto !important;
	margin-bottom: 50px;
}
.blog-grid .auto-margin {margin-top: 20px !important;}
.pagination {
	display: flex;
	justify-content: center;
	gap: 25px;
	align-items: center;
}
.pagination {margin-top: 68px;}
.pagination a {
	font-family: 'Gazpacho Bold',Helvetica,Arial,Lucida,sans-serif;
	font-size: 18px;
	padding-top: 5px;
	padding-bottom: 5px;
	padding-right: 24px;
  	padding-left: 24px;
	border: 2px solid #00714A;
	border-radius: 30px;
}

.blog .blog-grid .category-featured {display: none;}

.blog-featured .et_pb_post {
	display: flex;
	gap: 60px;
	margin-bottom: 0;
}

.blog-featured .et_pb_post .entry-featured-image-url {margin-bottom: 0;}
.blog-featured .et_pb_post .entry-featured-image-url img {border-radius: 30px;}
.blog-featured .et_pb_post .inner {
	display: flex;
	flex-direction: column;
}
.blog-featured .et_pb_post .inner .entry-title {
	order: 2;
	margin-bottom: 23px;
}
.blog-featured .et_pb_post .inner .post-meta {
	order: 1;
	margin-bottom: 17px;
}
.blog-featured .et_pb_post .inner .post-content {order: 3;}
.blog-featured .et_pb_post .inner .post-content-inner {margin-bottom: 32px;}
.blog-featured .et_pb_post .inner .more-link {
	display: flex;
  	gap: 15px;
  	align-items: center;
}
.blog-featured .et_pb_post .inner .more-link::after {
	content: "";
  	display: block !important;
  	width: 21px;
  	height: 15px;
  	background-image: url("/wp-content/uploads/right-arrow.svg");
  	background-size: 21px 15px;
	transition: all .3s ease-out;
	margin-left: 0;
}
.blog-featured .et_pb_post .inner .more-link:hover::after {margin-left: 8px;}
/** End Blog Grid **/

/** Post Page **/
.post-header-bg img {
	width: auto;
}
.post-image {position: relative;}
.post-image img {border-radius: 30px;}
.post-image::before {
  	background-image: linear-gradient(90deg,#e6f1f3 0%,#e6f3f9 100%) !important;
  	content: "";
  	margin: 0 auto;
  	position: absolute;
  	top: -190px;
  	right: 0;
  	width: 100%;
  	height: 100%;
  	z-index: -1;
} 
/** End Post Page **/

/** Contact Form **/
.ninja-forms-field {font-size: 18px;}
.service-inquiry-field select {
	font-size: 18px;
	-moz-appearance:none; /* Firefox */
    -webkit-appearance:none; /* Safari and Chrome */
    appearance:none;
	background-image: url('/wp-content/uploads/select-drop-down.svg');
	background-repeat: no-repeat;
	background-position: center right 23px;
	background-size: 18px 9px;
}
.nf-form-fields-required {margin-bottom: 10px;}

.frm_form_field select {
	border-radius: 25px;
	font-size: 18px;
	-moz-appearance:none; /* Firefox */
    -webkit-appearance:none; /* Safari and Chrome */
    appearance:none;
	background-image: url('/wp-content/uploads/select-drop-down.svg');
	background-repeat: no-repeat;
	background-position: center right 23px;
	background-size: 18px 9px;
}
.with_frm_style .frm_input_group .frm_inline_box:first-child {
	border-top-left-radius: 25px;
	border-bottom-left-radius: 25px;
}
.with_frm_style .frm_input_group input + .frm_inline_box {
	border-top-right-radius: 25px;
	border-bottom-right-radius: 25px;
}

/* Targets the Ninja Forms text/phone/email fields */
.nf-form-cont .nf-field-element input[type="text"],
.nf-form-cont .nf-field-element input[type="email"],
.nf-form-cont .nf-field-element input[type="tel"],
.nf-form-cont .nf-field-element input[type="url"],
.nf-form-cont .nf-field-element select,
.nf-form-cont .nf-field-element textarea {
    border-radius: 25px;      /* Adjust to your preferred roundness */
    height: 50px;             /* Fixed height (adjust as needed) */
    box-sizing: border-box;   /* Ensures consistent sizing */
    padding: 0 1em;           /* Some horizontal padding */
    border: 1px solid #ccc;   /* Adjust border style/color */
    width: 100%;              /* Usually best practice for responsiveness */
}

/* (Optional) Style the submit button to match */
.nf-form-cont .nf-field-element input[type="submit"],
.nf-form-cont .nf-form-submit button {
    border-radius: 100px;
    background-color: rgba(0,106,146,1); /* Change to match your brand colors */
    color: #fff;
    border: none;
    cursor: pointer;
	padding-top: 5px !important;
	padding-bottom: 5px !important;
    padding-right: 24px !important;
  	padding-left: 24px !important;
    font-size: 16px;
	font-family: 'Gazpacho Bold',Helvetica,Arial,Lucida,sans-serif;
	transition: all 300ms ease 0ms;
	border: 2px solid #006a92 !important;
}
.nf-form-cont .nf-field-element input[type="submit"]:hover,
.nf-form-cont .nf-form-submit button:hover {background-color: rgba(0,106,146,0.76);}

.nf-form-cont .nf-field-element input[type="text"] {line-height: 1.2; /* or whatever looks best */}
/** End Contact Form **/

/** Cards **/
.title-w-arrow .et_pb_text_inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.card-column .title-w-arrow h5 {
	margin-left: -5px;
	transition: all 300ms ease 0ms;
}
.card-column:hover .title-w-arrow h5  {margin-left: 0;}

.card-column .title-w-arrow p {
	flex: none;
	width: 50px;
	height: 26px;
	margin-right: -15px;
	transition: all 300ms ease 0ms;
}
.card-column:hover .title-w-arrow p {margin-right: 0;}

.card-column .card-description .et_pb_text_inner {
	margin-left: -10px;
	transition: all 300ms ease 0ms;
}
.card-column:hover .card-description .et_pb_text_inner {margin-left: 0;}
/** End Cards **/

/** Pop-up **/
/* Show/hide the popup overlay wrapper when "is-visible" class changes, apply the CSS to frontend only */
body:not(.et-fb) .wpb-popup-wrapper {
  position:fixed;
  z-index:9999999;
  top:0;
  right:0;
  bottom:0;
  left:0;
  transition: all .5s cubic-bezier(.14,.06,.41,1.39);
  opacity:0;
  visibility:hidden;
}
body:not(.et-fb) .wpb-popup-wrapper.popup-is-visible {
  opacity:1;
  visibility:visible;
}
/* Allow the content inside the popup wrapper to scroll */
.wpb-popup-inside {
  height:100%;
  overflow-y: scroll;
}
/* Prevent Body from Scrolling when Popup is visible */
body.wpb-noscroll {
  overflow: hidden;
}
/* Center Align Popup Content inside the Section */
.wpb-popup-content {
  display:none;
  flex-direction:column;
  justify-content: center;
}
body:not(.et-fb) .wpb-popup-wrapper.popup-is-visible .wpb-popup-content {display: flex;}
.wpb-popup-content .et_pb_row {
  margin-top:0;
  margin-bottom:0;
}
/* Adjust the position of the popup overlay for admin bar */
@media (min-width:600px) and (max-width:782px) {
  body:not(.et-fb).admin-bar .wpb-popup-wrapper {
    top:46px;
  }
}
@media (min-width:783px) {
  body:not(.et-fb).admin-bar .wpb-popup-wrapper {
    top:32px;
  }
}
/* Mave the popup on top of other elements */
.et_builder_inner_content.popup-is-visible {
  z-index:99999;
}
/* Add a hand cursor to the close trigger element */
.wpb-popup-close {
  cursor:pointer;
}
/* Add Row animation when popup is triggered */
.wpb-popup-wrapper.popup-is-visible .et_pb_row:not(.wpb-popup-close) {animation:scale-in .5s cubic-bezier(.14,.06,.41,1.39) both; animation-delay: .5s; }
@keyframes scale-in{0%{transform:scale(0.3);opacity:0}100%{transform:scale(1);opacity:1}}
/** End Pop-up **/

/** Footer **/
.footer-container {}
.footer-contact-container {
	display: flex;
	justify-content: right;
	gap: 45px;
}
/** End Footer **/

@media only screen and (max-width: 980px) {
	
	h1 {font-size: 32px;}
	h2 {font-size: 26px;}
	h3 {font-size: 23px;}
	h4 {font-size: 20px;}
	h5 {font-size: 18px;}
	h6 {font-size: 16px;}
	
	.top-bar-container .et_pb_menu__menu {display: flex;}
	.top-bar-container .et_mobile_nav_menu {display: none;}
	
	.main-nav-container {
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
	
	.apply-container {flex-direction: column;}
	
	.testimonials-silder .et_pb_slide_description {
  		display: flex;
		flex-direction: column;
  		gap: 21px;
	}
	
	.blog-grid .et_pb_salvattore_content {grid-template-columns: repeat(2, 1fr);}
	
	.blog-featured .featured-img-container {
		position: relative;
		padding-left: 30px;
		padding-right: 30px;
		padding-top: 20px;
	}
	.blog-featured .featured-img-container::before {
  		background-image: linear-gradient(90deg,#e6f1f3 0%,#e6f3f9 100%) !important;
  		content: "";
  		margin: 0 auto;
  		position: absolute;
  		top: -40px;
  		right: 0;
  		width: 100%;
  		height: 100%;
  		z-index: -1;
	}
	
	.blog-featured .inner {
		padding-left: 30px;
		padding-right: 30px;
	}
	.blog-featured .et_pb_post {
		display: flex;
		flex-direction: column;
		gap: 23px;
	}
	
	.post-image::before {top: -100px;} 
	
	.footer-contact-container {
		flex-direction: column;
		justify-content: flex-start;
	}
	.footer-container .et_pb_menu__menu {
		display: flex;
		width: 100%;
	}
	.footer-container .et_mobile_nav_menu {display: none;}
	.footer-container .et_pb_menu__wrap {justify-content: center !important;}
	.footer-container .et_pb_menu__wrap ul {
		flex-direction: column;
		justify-content: flex-start !important;
	}
	.footer-container .et_pb_menu__wrap ul li a {margin-bottom: 14px;}
}

@media only screen and (max-width: 768px) {
	.blog-grid .et_pb_salvattore_content {grid-template-columns: repeat(1, 1fr);}
	.nf-form-cont .nf-field-element input[type="text"] {height: 45px; /* slightly smaller for mobile */}
}