/*
Theme Name: Hello Elementor Child
Theme URI: https://elementor.com/hello-theme/?utm_source=wp-themes&utm_campaign=theme-uri&utm_medium=wp-dash
Template: hello-elementor
Author: Elementor Team
Author URI: https://elementor.com/?utm_source=wp-themes&utm_campaign=author-uri&utm_medium=wp-dash
Description: Hello Elementor is a lightweight and minimalist WordPress theme that was built specifically to work seamlessly with the Elementor site builder plugin. The theme is free, open-source, and designed for users who want a flexible, easy-to-use, and customizable website. The theme, which is optimized for performance, provides a solid foundation for users to build their own unique designs using the Elementor drag-and-drop site builder. Its simplicity and flexibility make it a great choice for both beginners and experienced Web Creators.
Tags: accessibility-ready,flexible-header,custom-colors,custom-menu,custom-logo,featured-images,rtl-language-support,threaded-comments,translation-ready
Version: 3.3.0.1740306233
Updated: 2025-02-23 10:23:53
*/

:root {
	--color-primary: #1F5FA8;
	--color-primary-dark: #1F5FA8;
	--color-secondary: #4B4F58;
	--color-secondary-dark: #4B4F58;
	--color-complimentary: #4F8F8A;
	--color-text: #4B4F58;
	--color-heading: #1F5FA8;
	--color-accessible-text: #3477AA;
	--color-backgound-light: #F3FCFE;
	--color-backgound-light-2: #e7b7a120;
	--section-padding: 50px;
	--content-width-narrow: 750px;
	--content-width-medium: 992px;
}
.moo-hide {
	visibility: hidden !important;
}
.top-cta .elementor-button {
    background-color: transparent !important;
    background-image: none !important;
    font-weight: 400 !important;
    border: solid 1px var(--color-primary) !important;
    color: var(--color-primary) !important;
}
.elementor-sticky--effects .top-cta .elementor-button path {
    fill: var(--color-primary);
}
.sub-menu.elementor-nav-menu--dropdown {
	filter: none !important;
}
div.elementor-menu-toggle svg {
	fill: var(--color-primary) !important;
}
h1, h2, h3, h4, h5, h6 {
	color: var(--color-text) !important;
}
.inner-page-heading-wrapper p {
	margin-bottom: 0;
}
.inner-page-heading-wrapper h1, 
.inner-page-heading-wrapper h2, 
.inner-page-heading-wrapper h3, 
.inner-page-heading-wrapper h4, 
.inner-page-heading-wrapper h5, 
.inner-page-heading-wrapper h6 {
	color: #fff !important;
}
.section-padding {
	padding-top: var(--section-padding) !important;
	padding-bottom: var(--section-padding) !important;
}
.section-padding-top {
	padding-top: var(--section-padding) !important;
	padding-bottom: 0 !important;
}
.section-padding-bottom {
	padding-top: 0 !important;
	padding-bottom: var(--section-padding) !important;
}
.section-padding-wide {
	padding-top: calc(var(--section-padding) * 2) !important;
	padding-bottom: calc(var(--section-padding) * 2) !important;
}
.section-padding-wide-top {
	padding-top: calc(var(--section-padding) * 2) !important;
	padding-bottom: 0 !important;
}
.section-padding-wide-bottom {
	padding-top: 0 !important;
	padding-bottom: calc(var(--section-padding) * 2) !important;
}
.section-narrow {
	max-width: var(--content-width-narrow) !important;
}
.section-medium {
	max-width: var(--content-width-medium) !important;
}
.section-inner h2, 
.section-inner h3, 
.section-inner h4 {
	margin-top: 40px !important;
}
.service-subheading h2 {
	font-size: 34px !important;
	font-weight: 300 !important;
	line-height: 2.5rem !important;
}
.service-subheading p {
	font-size: 19px !important;
	line-height: 1.5rem;
	font-weight: 300;
	letter-spacing: 0.75px;
}
.elementor-widget-icon-box {
	margin-bottom: 40px !important;
}
.elementor-widget-icon-box.elementor-position-top .elementor-icon-box-icon {
	margin-bottom: 0 !important;
}
h3.elementor-icon-box-title {
	font-size: 22px;
	font-weight: 400 !important;
	color: var(--color-text) !important;
	margin: 0;
}
.elementor-icon-box-description {
	font-size: 18px;
	font-weight: 400;
	color: var(--color-secondary-dark) !important;
}
.offset-section {
	padding-right: calc(50% - var(--container-max-width) / 2) !important;
	padding-left:  0 !important;
	margin: 0;
}
.offset-section > div,
.offset-section-alt > div {
	padding: 0;
}
.offset-section > div:first-child {
	padding: 0 var(--padding-left) 0 13% !important;
}
.offset-section-alt {
	padding-left: calc(50% - var(--container-max-width) / 2) !important;
	padding-right:  0 !important;
	margin: 0;
}
.offset-section-alt > div:last-child {
	/*padding: 0 0 0 13% !important;*/
	padding: 0 13% 0 var(--padding-left) !important;
}
.section-banner {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}
.section-banner > div:first-child {
    padding: 30px !important;
    border: solid 5px var(--color-primary);
    border-bottom: 0;
    border-radius: 30px;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
	position: relative;
	top: 5px;
}
.offset-section.section-map {
	padding-left: 0 !important;
}
.offset-section-alt.section-map {
	padding-right: 0 !important;
}
.colored-secion-light {
	background: var(--color-backgound-light);
	padding-top: var(--section-padding);
	padding-bottom: var(--section-padding);
}
.colored-section-dark {
	background: var(--color-primary-dark);
	padding-top: var(--section-padding);
	padding-bottom: var(--section-padding);
}
.colored-section-dark h1, 
.colored-section-dark h2, 
.colored-section-dark h3, 
.colored-section-dark h4, 
.colored-section-dark h5, 
.colored-section-dark h6 {
	color: #fff !important;
}
.btn-outline .elementor-button {
	border: 1px solid var(--color-text) !important;
	color: var(--color-text) !important;
	background: transparent !important;
}
.posts-feed .elementor-posts .elementor-post {
    display: flex;
    border-radius: 0px;
}
.posts-feed .elementor-post__thumbnail__link {
	margin-bottom: 0 !important;
}
.posts-feed .elementor-post__text {
	/*padding: 15px;*/
}
.posts-feed .elementor-post__read-more {
	float: left;
}
.elementor-widget-n-tabs .e-n-tabs-content {
	box-shadow: 2px -2px 4px 0px rgba(0,0,0,0.1);
}
.service-featured img {
	width: 175px;
	height: auto;
}
.text-page {
	margin-top: 30px !important;
	margin-bottom: 60px !important;
}
.text-page > .e-con-inner {
	max-width: 900px !important;
}
.text-page h1 {
	font-size: 3rem;
}
.text-page h2 {
	margin-top: 2.5rem;
	font-size: 2.5rem !important;
}
.text-page p {
	margin-bottom: 15xp;
}
.logo-slider .elementor-widget-container {
	max-width: 1000px;
	margin: 0 auto;
}
.contact-box {
	border: none;
	padding: 10px !important;
	/*border-radius: 12px;*/
}
.contact-box .elementor-icon-box-wrapper {
	gap: 5px !important;
}
.contact-box .elementor-icon-box-title {
	margin-bottom: 0px;
}
.contact-box .elementor-icon-box-description,
.contact-box .elementor-icon-box-description a {
	color: var(--color-secondary-dark) !important;	
}
.contact-box:hover {
	background: var(--color-secondary-dark);
	color: #fff !important;
}
.contact-box:hover p,
.contact-box:hover a,
.contact-box:hover h5 {
	color: #fff !important;
}
.contact-box:hover path {
	fill: #fff !important;
}

.wp-block-button__link.wp-element-button {
	background-color: transparent;
	font-size: 18px;
	font-weight: 700;
	color: #FFFFFF !important;
	background-image: linear-gradient(180deg, var( --e-global-color-9867944 ) 0%, var( --e-global-color-9867944 ) 100%);
	border-style: solid;
	border-width: 1px 1px 1px 1px;
	border-color: var( --e-global-color-9867944 );
	border-radius: 6px 6px 6px 6px;
	padding: 10px 30px 10px 30px;
	margin-bottom: 10px;
}

.icons-inline > div {
	/*gap: 50px;*/
	justify-content: space-between !important;
}
.icons-inline .elementor-icon-box-title {
	font-size: 19px !important;
}
.icons-inline .elementor-icon-box-description {
	font-size: 15px !important;
}
.icons-inline > div > div {
	width: calc(25% - 50px) !important;
}
.icons-inline-small > div > div {
	width: calc(20% - 30px) !important;
}
/* HTML: <div class="squircle"></div> */
.squircle {
	aspect-ratio: 1;
	border-radius: 50%;
	corner-shape: squircle;
	border: solid 1px var(--color-primary) !important;
	margin-bottom: 0 !important
}
.squircle path {
	fill: var(--color-primary) !important;
	stroke: var(--color-primary) !important;
}
.squircle-secondary {
	border: solid 1px var(--color-complimentary) !important;
}
.squircle-secondary path {
	fill: var(--color-complimentary) !important;
}
.squircle .elementor-icon-box-wrapper {
	height: 100%;
	justify-content: center;
}
.squircle .elementor-icon-box-content {
	flex-grow: 0 !important;
}
#footer, #footer a, #footer p, #footer div, #footer h3, #footer h4 {
	color: #fff !important;
}
#footer h4 {
	font-size: 24px;
}
#footer a {
	padding: 0 0 5px 0;
	font-size: 14px;
	font-weight: 400;
}
#copyrights p {
	margin: 0;
	font-size: 15px;
}

.e-contact-buttons-var-3 .e-contact-buttons__top-bar {
    padding: 0 0 20px 20px !important;
}
.elementor-1254 .elementor-element.elementor-element-25d8b5b0 .e-contact-buttons__cta-button {
    border-radius: 25px;
}

/**** Responsive ****/
@media (min-width: 768px) and (max-width: 1440px) {
	.section-banner {
		min-height: 480px !important;
	}
	.offset-section {
		padding-right: calc(50% - var(--container-max-width) / 2 + 60px) !important;
	}
}
@media (max-width: 1024px) {
	.section-banner {
		min-height: auto !important;
	}
	.icons-inline.icons-inline-small .e-con-inner {
		justify-content: center !important;
	}
	.icons-inline-small > div > div {
		width: calc(100% / 3 - 30px) !important;
	}
	.icons-inline > .e-con-inner > .elementor-element {
		flex-grow: 1;
	}
}
@media (max-width: 991px) {
	.header-socials {
		flex-grow: 1 !important;
	}
	.elementor-nav-menu--toggle {
		order: 1 !important;
	}
	.icons-inline > .e-con-inner > .elementor-element  {
		width: 25%;
	}
}
@media (max-width: 919px) {
	.icons-inline > .e-con-inner {
		max-width: 600px !important;
	}
	.icons-inline > .e-con-inner > .elementor-element {
		width: 50% !important;
		aspect-ratio: 1;
		flex-grow: 0;
	}
	.icons-inline .squircle {
		height: 100%;
	}
	.contact-options {
		flex-wrap: wrap !important;
	}
}
@media (max-width: 767px) {
	:root {
		--section-padding: 25px;
	}
	header .elementor-widget-button {
		display: none;
	}
	.offset-section:not(.section-banner) > div,
	.offset-section-alt:not(.section-banner) > div,
	.offset-section > div:first-child {
		padding: var(--section-padding) !important;
	}
	.section-banner {
		padding-bottom: 200px !important;
		justify-content: center !important;
	}
	.section-banner > div:first-child {
		padding: 20px !important;
		border: solid 2px var(--color-primary);
		border-bottom: solid 2px var(--color-primary);
		border-radius: 25px;
		border-bottom-left-radius: 25px;
		border-bottom-right-radius: 25px;
		top: 5px;
		margin: 15px auto;
		max-width: 90%;
		position: absolute; 
		bottom: -50px;
		z-index: 1;
	}
	.icons-inline > .e-con-inner > .elementor-element  {
		width: 50%;
	}
	.inner-page-heading-wrapper {
		/*background-image: none !important;*/
	}
	.inner-page-heading-wrapper .elementor-widget-heading,
	.inner-page-heading-wrapper .elementor-widget-text-editor {
		text-align: center !important;
		width: 100%;
	}
	.text-page {
		margin-top: 15px !important;
		margin-bottom: 30px !important;
	}
	.squircle .elementor-icon i, .squircle .elementor-icon svg {
		height: 0.5em;
	}
	.icons-inline .elementor-icon-box-title {
		font-size: 15px !important;
	}
}
@media (max-width: 360px) {
	.elementor-widget-theme-site-logo img {
		max-width: 210px !important;
	}
}

/***
 * 
 * Fix Menu breakpoints 
 * (because Elementor sucks balls)
 * 
 * ***/

.elementor-menu-toggle svg {
    width: 1.3em !important;
}

@media (max-width: 1239px) {
	body .elementor-nav-menu--dropdown-tablet {
		order: 10;
	}
	body .elementor-nav-menu--dropdown-tablet .elementor-nav-menu--dropdown {
		display: block;
	}
	body .elementor-nav-menu--dropdown-tablet .elementor-menu-toggle {
		display: flex;
	}
	.elementor-nav-menu .menu-item .elementor-item {
		filter: none !important;
	}
}

@media (min-width: 1240px) {
	.elementor-nav-menu--dropdown-tablet .elementor-nav-menu--dropdown, .elementor-nav-menu--dropdown-tablet .elementor-menu-toggle {
		display: none;
	}
}

@media (max-width: 1239px) {
	.elementor-nav-menu--dropdown-tablet .elementor-nav-menu--main {
		display: none;
	}
}