/*
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.4.5.1768943396
Updated: 2026-01-20 14:09:56

*/

body {

	strong {
		font-weight: bold;
	}

	.elementor-widget-text-editor ul, 
	.elementor-widget-text-editor ol {
		margin-bottom: 1em;
		margin-left: 1em;
		padding-left: 1em;
	}

	.elementor-widget-image-carousel .swiper-wrapper {
		align-items: center;
	}

}












/*************************************************/
body {

	.gform_wrapper {
		--gf-color-primary: #d52d2a !important;
		--gf-ctrl-border-color-focus: var(--gf-color-primary) !important;
		--gf-ctrl-outline-color-focus: var(--gf-color-primary) !important;

		.gform_heading {
			display: none;
		}

		.gform-body {

			label, legend {
				color: #000;
				font-weight: 600;
			}

			.gform-field-label.gform-field-label--type-sub {
				font-weight: normal;
			}

			input, textarea, select {
				max-width: 100%;
			}

			input, textarea {
				font-family: Arial, sans-serif;
				color: #333;
				line-height: 20px;
				padding: 2em 2em;
				border-color: #bbb;
				border-radius: 5px;

				&::placeholder {
					color: #777;
					opacity: 1;
				}
				
			}

			input[type="checkbox"] {
				padding: unset;
			}

			select {
				padding-left: 2em;
				padding-right: 2em;
				height: 4em;
				line-height: 3.8em;
				border-color: #bbb;
				border-radius: 5px;
			}

			.gfield--type-checkbox {

				.ginput_container {

					label, legend {
						font-weight: normal;
					}
					
				}
				
			}
			
		}

		input[type="submit"] {
			transition: all 200ms ease;
			font-size: 19px !important;
			font-weight: 600 !important;
			line-height: 20px !important;
			padding: 1em 1em !important;
			border-radius: 5px !important;

			&:hover {
				transform: scale(1.04);
			}

			&:focus {
				outline: none !important;
				box-shadow: unset !important;
				border: none !important;
			}
		}
		
	}

	.elementor-location-footer .gform_wrapper {
		
		.gform-body {

			label, legend {
				color: #ccc;
				font-weight: normal;
			}
			
		}
		
	}

}
/*************************************************/


/*************************************************/
body {

	.gform_wrapper.inline_wrapper {

		.gform-body {

			.gform_fields {
				align-items: center;
				row-gap: 20px;

				.gfield{
					display: flex;
					align-items: center;

					label, legend {
						display: inline;
						padding-right: 1em;
		
						span {
							padding-left: 1px;
						}
						
					}
					
				}
				
			}
			
		}

		.gform_footer {
			margin: 0;
		}
		
	}

}

@media screen and (max-width: 639px) {

	body {
	
		.gform_wrapper.inline_wrapper {
	
			.gform-body {
	
				.gform_fields {
	
					.gfield{
						flex-direction: column;
						align-items: center;
	
						input, textarea {
							width: 300px;
						}
						
					}
					
				}
				
			}
			
		}
	
	}
	
}

@media screen and (max-width: 370px) {

	body {
	
		.gform_wrapper.inline_wrapper {
	
			.gform-body {
	
				.gform_fields {
	
					.gfield{
	
						input, textarea {
							width: auto;
						}
						
					}
					
				}
				
			}
			
		}
	
	}
	
}
/*************************************************/


/*************************************************/
body {

	.gform_wrapper.subscribe_wrapper {

		.gform-body {

			label, 
			legend {
				font-size: 14px;
				line-height: 20px;
				font-weight: 500;
			}

			input, textarea {
				padding-top: 30px;
				padding-bottom: 30px;
			}

			.gfield--type-html {

				h2 {
					font-size: 20px;
					line-height: 20px;
					font-weight: 600;
					margin: 0;
				}
				
			}
			
		}
		
	}

}
/*************************************************/




















/*************************************************/
.elementor-widget-posts.elementor-posts--thumbnail-top {

	.elementor-posts.elementor-posts--skin-cards {
	
		.elementor-post {
	
			.elementor-post__card {
			    
			    > * {
			        order: 0;
			    }

				> .elementor-post__thumbnail__link {
					margin-bottom: 6px;
				}
			    
			    > .elementor-post__text {
			        order: 1;
			    }
			    
			    > .elementor-post__meta-data .elementor-post-date {
			        border-bottom: 3px solid #d52d2a;
					padding-bottom: 3px;
			    }
			    
			}
			
		}
		
	}
	
}

.elementor-widget-posts.elementor-posts--thumbnail-left, 
.elementor-widget-posts.elementor-posts--thumbnail-right {

	.elementor-posts.elementor-posts--skin-classic {
	
		.elementor-post {
		    align-items: center;
	
			&:last-child {
				border-bottom: 0;
			}
	
			.elementor-post__text {
			    display: flex;
			    flex-direction: column;
			    
			    > * {
			        order: 1;
			    }
			    
			    > .elementor-post__meta-data {
			        order: 0;
			    }
			    
			    > .elementor-post__title {
			        position: relative;
			        padding-bottom: 18px;
			        margin-bottom: 20px;
			    }
			    
			    > .elementor-post__title::after {
			        content: '';
			        display: block;
			        position: absolute;
			        left: 0;
			        bottom: 0;
			        width: 25%;
			        height: 4px;
			        background-color: #d52d2a;
			    }
			    
			}
			
		}
		
	}

	.elementor-pagination {
		font-size: 0 !important;

		> * {
			border: 1px solid #d6d6d6;
			margin: 0;
			padding: 5px 15px;
			font-size: 14px;

			&:not(:last-child) {
				border-right: 0;
			}

			&:first-child {
				border-top-left-radius: 5px;
				border-bottom-left-radius: 5px;
			}

			&:last-child {
				border-top-right-radius: 5px;
				border-bottom-right-radius: 5px;
			}

			&.current {
				background-color: #d52d2a;
				color: #fff;
				border-top-color: #d52d2a;
				border-bottom-color: #d52d2a;
			}
			
		}

		.prev, .next {
			color: #333;
		}
		
	}
	
}


@media screen and (max-width: 991px) {

	.elementor-widget-posts.elementor-posts--thumbnail-left, 
	.elementor-widget-posts.elementor-posts--thumbnail-right {

		.elementor-posts.elementor-posts--skin-classic {
	
			.elementor-post {
			    flex-direction: column;
				align-items: flex-start;
				row-gap: 20px;
				padding-bottom: 25px;
	
				.elementor-post__thumbnail__link {
					width: 100%;
					margin: 0;
				}
				
			}
			
		}

	}

	.elementor-widget-posts.elementor-posts--thumbnail-right {

		.elementor-posts.elementor-posts--skin-classic {
	
			.elementor-post {
			    flex-direction: column-reverse;
			}
			
		}

	}
	
}
/*************************************************/



















/*************************************************/
@media screen and (max-width: 991px) {
	
	#site-header {
		
		flex-direction: row;
		justify-content: space-between;
		column-gap: 20px;
		width: calc(100% - 20px);

		> div {
			width: fit-content;
			align-items: center;
		}

		> #menu {
			
			order: 99;
			max-width: 33px;
			max-height: 33px;

			.elementor-menu-toggle {
				padding-top: 0;
				margin-left: -6px;
			}

			.elementor-nav-menu--dropdown {
				position: absolute;
				right: 0;
				top: 34px;
				z-index: 2;
				max-width: 100%;
				min-width: 180px;
				box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.6);
			}
			
		}
		
	}
	
}

@media screen and (max-width: 642px) {
	
	#site-header {

		> #logo {
			max-width: 140px;
		}

		> #phone .elementor-button {
			font-size: 14px;
			padding: 5px 0;
		}
		
	}
	
}

@media screen and (max-width: 500px) {
	
	#site-header {

		> #logo {
			max-width: 90px;
		}

		> #phone .elementor-button {
			font-size: 12px;
			padding: 3px 0;
		}
		
	}
	
}

@media screen and (max-width: 420px) {
	
	#site-header {
		
		flex-direction: column;
		row-gap: 16px;

		> #logo {
			max-width: 180px;
		}

		> #menu {

			.elementor-nav-menu--dropdown {
				right: unset;
				transform: translateX( calc(-50% + 14px) );
			}
			
		}

		> #phone .elementor-button {
			font-size: 16px;
			padding: 5px 0;
		}
		
	}
	
}

@media screen and (max-width: 306px) {
	
	#site-header {

		> #phone .elementor-button {
			font-size: 14px;
		}
		
	}
	
}
/*************************************************/
