/*
	Theme Name: Hello Elementor
	Theme URI: https://elementor.com/hello-theme/?utm_source=wp-themes&utm_campaign=theme-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.
	Author: Elementor Team
	Author URI: https://elementor.com/?utm_source=wp-themes&utm_campaign=author-uri&utm_medium=wp-dash
	Version: 3.4.9
	Stable tag: 3.4.9
	Requires at least: 6.0
	Tested up to: 6.8
	Requires PHP: 7.4
	License: GNU General Public License v3 or later.
	License URI: https://www.gnu.org/licenses/gpl-3.0.html
	Text Domain: hello-elementor
	Tags: accessibility-ready, flexible-header, custom-colors, custom-menu, custom-logo, featured-images, rtl-language-support, threaded-comments, translation-ready,
*/

/* =========================
   RAY'S HEADER
========================= */

.rays-site-header{
	position:sticky;
	top:0;
	z-index:9999;
	background:#fff;
	box-shadow:0 4px 30px rgba(0,0,0,.08);
}

.rays-header-inner{
	max-width:1400px;
	margin:0 auto;
	padding:18px 30px;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:40px;
}

/* =========================
   LOGO
========================= */

.rays-logo-wrap{
	flex-shrink:0;
}

.rays-logo-link{
	display:flex;
	align-items:center;
	text-decoration:none;
}

.rays-logo-link img{
	max-height:70px;
	width:auto;
	display:block;
}

.rays-logo-text{
	font-size:42px;
	font-weight:900;
	color:#82B541;
	line-height:1;
	letter-spacing:-1px;
}

.rays-logo-text strong{
	display:block;
	font-size:16px;
	color:#111;
	margin-top:4px;
	letter-spacing:1px;
}

/* =========================
   NAVIGATION
========================= */

.rays-nav{
	flex:1;
	display:flex;
	justify-content:center;
}

.rays-main-menu{
	display:flex;
	align-items:center;
	gap:34px;
	list-style:none;
	margin:0;
	padding:0;
}

.rays-main-menu li{
	position:relative;
	margin:0;
	padding:0;
}

.rays-main-menu > li > a{
	font-size:14px;
	font-weight:700;
	color:#111;
	text-decoration:none;
	text-transform:uppercase;
	letter-spacing:.5px;
	padding:10px 0;
	transition:.3s ease;
}

.rays-main-menu > li > a:hover{
	color:#82B541;
}

.rays-main-menu .current-menu-item > a,
.rays-main-menu .current_page_item > a{
	color:#82B541;
}

/* =========================
   DROPDOWNS
========================= */

.rays-main-menu .sub-menu{
	position:absolute;
	left:0;
	top:100%;
	background:#fff;
	min-width:260px;
	padding:12px 0;
	margin:0;
	list-style:none;
	border-radius:12px;
	box-shadow:0 15px 40px rgba(0,0,0,.15);
	opacity:0;
	visibility:hidden;
	transform:translateY(10px);
	transition:.25s ease;
	z-index:999;
}

.rays-main-menu li:hover > .sub-menu{
	opacity:1;
	visibility:visible;
	transform:translateY(0);
}

.rays-main-menu .sub-menu li{
	width:100%;
}

.rays-main-menu .sub-menu a{
	display:block;
	padding:12px 20px;
	color:#111;
	font-size:14px;
	font-weight:600;
	text-decoration:none;
}

.rays-main-menu .sub-menu a:hover{
	background:#f5f5f5;
	color:#82B541;
}

/* =========================
   PHONE AREA
========================= */

.rays-header-phone{
	display:flex;
	align-items:center;
	gap:12px;
	flex-shrink:0;
}

.rays-phone-circle{
	width:52px;
	height:52px;
	background:#82B541;
	color:#fff;
	border-radius:50%;
	display:flex;
	align-items:center;
	justify-content:center;
	font-size:20px;
	text-decoration:none;
	font-weight:700;
	transition:.3s ease;
}

.rays-phone-circle:hover{
	transform:scale(1.05);
	background:#6d9c38;
}

.rays-phone-text{
	display:flex;
	flex-direction:column;
}

.rays-phone-text a{
	font-size:22px;
	font-weight:800;
	color:#111;
	text-decoration:none;
	line-height:1.1;
}

.rays-phone-text span{
	font-size:12px;
	color:#777;
	text-transform:uppercase;
	letter-spacing:.5px;
	text-align:right;
	margin-top:2px;
}

/* =========================
   MOBILE TOGGLE
========================= */

.rays-mobile-toggle{
	display:none;
	background:none;
	border:none;
	cursor:pointer;
	padding:0;
	width:30px;
	height:24px;
	position:relative;
}

.rays-mobile-toggle span{
	display:block;
	height:3px;
	width:100%;
	background:#111;
	margin-bottom:5px;
	border-radius:3px;
	transition:.3s ease;
}

.rays-mobile-toggle.active span:nth-child(1){
	transform:rotate(45deg) translate(6px,6px);
}

.rays-mobile-toggle.active span:nth-child(2){
	opacity:0;
}

.rays-mobile-toggle.active span:nth-child(3){
	transform:rotate(-45deg) translate(5px,-5px);
}

/* =========================
   MOBILE MENU
========================= */

.rays-mobile-menu{
	display:none;
	background:#fff;
	border-top:1px solid #eee;
	padding:20px;
}

.rays-mobile-menu.active{
	display:block;
}

.rays-mobile-menu-list{
	list-style:none;
	margin:0;
	padding:0;
}

.rays-mobile-menu-list li{
	margin-bottom:12px;
}

.rays-mobile-menu-list a{
	display:block;
	color:#111;
	text-decoration:none;
	font-weight:700;
	padding:10px 0;
}

.rays-mobile-call{
	display:block;
	margin-top:20px;
	text-align:center;
	background:#82B541;
	color:#fff;
	padding:16px;
	border-radius:8px;
	text-decoration:none;
	font-weight:700;
}

/* =========================
   RESPONSIVE
========================= */

@media (max-width:1100px){

	.rays-nav{
		display:none;
	}

	.rays-header-phone{
		display:none;
	}

	.rays-mobile-toggle{
		display:block;
	}

	.rays-header-inner{
		padding:15px 20px;
	}

	.rays-logo-link img{
		max-height:55px;
	}
}

@media (max-width:767px){

	.rays-header-inner{
		gap:20px;
	}

	.rays-logo-link img{
		max-height:48px;
	}

	.rays-logo-text{
		font-size:30px;
	}

}

.rays-footer{
background:#111;
color:#fff;
}

.rays-footer-cta{
background:#82B541;
padding:35px 0;
}

.rays-footer-cta-inner{
max-width:1400px;
margin:0 auto;
padding:0 30px;
display:flex;
align-items:center;
justify-content:space-between;
gap:40px;
}

.rays-footer-cta-left{
display:flex;
align-items:center;
gap:20px;
}

.rays-footer-cta-left h2{
margin:0;
font-size:26px;
font-weight:800;
color:#fff;
}

.rays-footer-icon{
font-size:40px;
}

.rays-footer-cta-center{
display:flex;
gap:30px;
font-weight:600;
color:#fff;
}

.rays-footer-phone{
display:flex;
flex-direction:column;
text-align:right;
}

.rays-footer-phone span{
font-size:14px;
color:#fff;
}

.rays-footer-phone a{
font-size:26px;
font-weight:800;
color:#fff;
text-decoration:none;
}

.rays-footer-btn{
display:none;
}

.rays-footer-main{
padding:50px 0;
}

.rays-footer-inner{
max-width:1400px;
margin:0 auto;
padding:0 30px;
display:flex;
justify-content:space-between;
align-items:center;
}

.rays-footer-menu{
display:flex;
gap:30px;
list-style:none;
padding:0;
margin:0;
}

.rays-footer-menu a{
color:#fff;
text-decoration:none;
font-weight:600;
}

.rays-footer-hours{
text-align:right;
}

.rays-footer-hours a{
color:#82B541;
font-weight:700;
text-decoration:none;
	font-size:26px;
}

.rays-footer-bottom{
border-top:1px solid rgba(255,255,255,.1);
padding:20px 0;
}

.rays-footer-bottom-inner{
max-width:1400px;
margin:0 auto;
padding:0 30px;
display:flex;
justify-content:space-between;
align-items:center;
}

.rays-socials{
display:flex;
gap:12px;
}

.rays-socials a{
width:40px;
height:40px;
border-radius:50%;
background:#222;
display:flex;
align-items:center;
justify-content:center;
color:#82B541;
text-decoration:none;
}

@media(max-width:991px){

.rays-footer-cta-inner,
.rays-footer-inner,
.rays-footer-bottom-inner{
flex-direction:column;
text-align:center;
}

.rays-footer-phone{
text-align:center;
}

.rays-footer-menu{
flex-direction:column;
gap:15px;
}

.rays-footer-cta-left h2{
font-size:32px;
}

.rays-footer-phone a{
font-size:28px;
}

}