@charset "utf-8";
/* CSS Document */
:root
{
       --themecolor:#ebeadf;
       --fbcolor:#395498;
       --instacolor:#9a2ba6;
       --header_height:100px;
       --dark_green: #033f25;
       --light_green:#71a777;
       --golden_color:#f7b942;
       --item_height:360px;
       --title_height:30px;
       --txt_height : 120px;
}
body
{
       font-family: "Poppins", system-ui;
       padding: 0px;
       margin: 0px;
}
.header
{
	display: flex;
	width: 100%;
	max-width: 100%;
	align-items: center;
	justify-content: space-between;
	gap:30px;
	position: relative;
	padding: 15px 30px;
	height: var(--header_height);
	background: #fff;
	position: fixed;
	top: 0px;
       z-index: 1000;
}
.header_left
{
	width: auto;
	max-width: 300px;
}
.header_logo
{
	display: block;
	text-decoration: none;
	height:var(--header_height);
	padding: 15px;
	box-sizing: border-box;
	position: relative;
}
.header_logo img
{
	height:100%;
}
.header_right
{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap:30px;
	flex: 1;
}
.header_menu
{
	list-style: none;
	display: flex;
	align-items: center;
	gap:3vw;
	justify-content: center;
	flex: 1;
	margin: 0px;
	padding: 0px;
}
.header_li_link
{
	display: flex;
	text-decoration: none;
	color: #000;
	position: relative;
	transition: all .3s;
	font-weight: 500;
	outline: none;
}
.header_li_link:hover
{
	color: var(--light_green);
}
.active.header_li_link
{
	color: var(--light_green);
}
.active.header_li_link:after
{
	content: "";
	width: 100%;
	height: 1px;
	display: block;
	position: absolute;
	bottom: -5px;
	background: var(--dark_green);
}
.header_social_links
{
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0px 15px;
	height: 45px;
	gap:30px;
	transition: all .3s;
	text-decoration: none;
}
.social_link
{
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	color: #444;
	font-size: 1.4em;
	transition: all .3s;
}
.fb_menu:hover
{
	color: var(--fbcolor);
}
.insta_menu:hover
{
	color: var(--instacolor);
}


.footer
{
	display: block;
	width: 100%;
	max-width: 100%;
	overflow: hidden;
	height: auto;	
	background:var(--dark_green);
	color: #fff;
	margin-top: auto;
}
.footer_top
{
	display: block;
	width: 100%;
	height: auto;
	padding: 30px 30px 0px;
}
.footer_logo
{
	display: block;
	text-decoration: none;
	height: var(--header_height);
	padding: 15px;
	box-sizing: border-box;
	position: relative;
}
.footer_logo img
{
	height:100%;
}
.footer_title
{
	font-weight: 600;
	font-size: 1.2em;
	margin-bottom: 30px;
}
.footer_ul
{
	list-style: none;
	display: flex;
	align-items: center;
	column-gap: 7vw;
	row-gap:15px;
	margin: 0px;
	padding: 0px;
	flex-wrap: wrap;
	min-height: 60px;
}
.footer_li
{
	display: block;
	
}
.footer_link
{
	text-decoration: none;
	color: var(--light_green);
	transition: all .3s;
}
.footer_link:hover{
	color: #fff;
	opacity: 1;
}
.footer_social_links
{
	display: flex;
	gap:15px;
	min-height: 60px;
}
.footer_social_links .social_link
{
	color: var(--light_green);
}
.footer_social_links .social_link:hover
{
	color: #fff;
}
.footer_copyright
{
	display: flex;
	align-items: center;
	justify-content: center;
	background: #062518;
       background: rgba(0,0,0,0.05);
	min-height: 60px;
	font-size: .8em;
}
.footer_copyright p
{
	margin: 0px;
	opacity: .75;
}
.footer_copyright a
{
	color: #fff;
	padding-left: 10px;
	text-decoration: none;
	transition: all .3s;
}
.footer_copyright a:hover{
	
	color: var(--light_green);
}
.page
{
	position: relative;
	min-height: 100vh;
	padding-top: var(--header_height);
	display: flex;
	flex-direction: column;
}
.page_content
{
	min-height: 50vh;
}
.footer_contacts
{
	display: flex;
	flex-direction: column;
}
.footer_contact_content
{
	display: flex;
	align-items: center;
	gap:30px;
}
.footer_contact_icon
{
	font-size: 1.4em;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--light_green);
	border-radius: 50%;
	flex-shrink: 0;
	width: 50px;
	height: 50px;
}
.footer_contact_info
{
	display: flex;
	flex-direction: column;
	gap:3px;
	align-items: center;
}
.footer_contact_no
{
	font-weight: 500;
}
.footer_right
{
	display: flex;
	align-items: center;
	gap:30px;
	flex-wrap: wrap;
}
.footer_social_cover
{
	display: flex;
	flex-direction: column;
}
.header_burger_menu, .header_menu_bg
{
	display: none;
}
.page
{
	padding-top: var(--header_height);
}
.home_banner
{
	display: flex;
	width: 100%;
	max-width: 100%;
	min-height: calc(100vh  - var(--header_height));
	position: relative;
	align-items: center;
	/*margin-top: -90px;*/
	padding: var(--header_height) 10vw;
	box-sizing: border-box;
	justify-content: center;
}
.home_banner_img
{
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	z-index: 1;
	max-width: 100%;
	overflow: hidden;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	background-attachment: fixed;
}
.home_banner_img:before
{
	content: "";
	width: 100%;
	height: 100%;
	display: block;
	position: absolute;
	z-index: 10;
	background: rgba(0,0,0,0.1);
}

.home_banner_content
{
	width: 1200px;
	max-width: 80%;
	height: 80%;
	margin: auto;
	position: relative;
	z-index: 300;
	background: rgba(0,0,0,0.1);
	border-radius: 20px;
	border: 1px solid rgba(254,187,57,0.9);
	padding: 90px 5vw;
	box-shadow: 0px 40px 20px -10px rgba(0,0,0,.1);
	display: flex;
	gap:30px;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	justify-content: center;
	color: #fff;
	-webkit-backdrop-filter:blur(5px);
	backdrop-filter:blur(5px);
	z-index: 100;
	transition: all .3s;
}
.home_banner_content:hover{
	-webkit-backdrop-filter:blur(10px);
	backdrop-filter:blur(10px);
       background: rgba(0,0,0,0.3);
}
.home_banner_content:after{
	content: "";
	width: 100%;
	height: 100%;
	display: block;
	position: absolute;
	z-index: 10;
	border: 1px solid rgba(241,189,89,0.5);
	border-radius: inherit;
	left: -5px;
	top: -5px;
}

.home_banner_txt
{
	text-align: center;
	font-size: 1.2em;
	padding: 30px;
	box-sizing: border-box;
	word-break: break-word;
	 
}
.home_title
{
	font-weight: bold;
	font-size: clamp(2em, .5vw + 3em, 3.2em);
	text-align: center;
	bac kground:linear-gradient(to top, rgba(255,184,45,0.9), #fff);
	-w ebkit-background-clip: text;
  -webk it-text-fill-color: transparent;
	color: #fff;
}

.home_session
{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding: 3vw 5vw 0px;
	box-sizing: border-box;
	background: #d3f1f5;
	background: var(--themecolor);
}
.home_subtitle
{
	width: 900px;
	max-width: 90%;
	margin: auto;
	text-align: center;
}
.home_services_list
{
	display: flex;
	align-items: center;
	justify-content: center;
	gap:30px;
	padding: 60px 30px;
	box-sizing: border-box;
	flex-wrap: wrap;
}
.home_service_item
{
	display: flex;
	width: 30%;
	height: auto;
	aspect-ratio:2/1.2;
	justify-content: center;
	align-items: center;
	background: #fff;
	position: relative;	
	flex-shrink: 0;	 
	cursor: default;
}
.home_service_item:before{
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	z-index: 5;
	transition: all .3s;
	background: rgba(0,0,0,0.3);
}
.home_service_item > *
{
	position: relative;
	z-index: 10;
}
.home_service_img
{
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	z-index: 1;
	overflow: hidden;
}
.home_service_img img
{
	width:100%;
	height: 100%;
	object-fit: cover;
}
.home_service_name
{
	color: #fff;
	font-size: 1.4em;
	text-align: center;
	max-width: 90%;
    text-shadow: 0px 1px 2px rgba(0,0,0,0.2);
	font-weight: 500;	
	transition: all .3s;
}
.home_service_name:hover{
	text-decoration: none;
       color: var(--golden_color);
}
.home_service_item:hover:before{
	background: var(--light_green);
}
.home_gallery_links
{
	display: flex;
	padding: 5vw 0px;
	width: 100%;
	max-width: 100%;
	justify-content: center;
	align-items: center;
	gap:3vw;
	background-color:  #ebeadf;
	background-image: url(../images/home_bg.png);
	background-repeat: repeat-x;	
	background-position: left bottom;
       flex-wrap: wrap;
}
.gallery_link
{
	display: flex;
	align-items: center;
	text-decoration: none;
	background: rgba(255,255,255,01);
	padding: 0px 15px;
	border-radius: 5px;
	box-shadow: 0px 10px 30px -15px rgba(0,0,0,.2);
	height: 90px;
	width: 30%;
	-webkit-backdrop-filter:blur(5px);
	backdrop-filter:blur(5px);
}
.gallery_link > i
{
       flex-shrink: 0;
}
.gallery_link > i:first-child
{
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	background:var(--light_green);
	width: 60px;
	height: 60px;
	font-size: 2.4em;
}
.gallery_link span
{
	font-size: clamp(1.1em , .4vw + 1em , 1.8em);
	padding: 15px 30px;
	color: #000;
	transition: all .3s;
       line-height: 1.2;
}
.gallery_videos_link > i:first-child
{
	background:  #ff4027;
}
.gallery_link_txt
{
	display: flex;
	align-items: center;
	flex: 1;
	justify-content: space-between;
	gap:30px;
	
}
.gallery_link_txt i
{
	font-size: 1.4em;
	color: #444;
	margin-right: 15px;
	transition: all .3s;
}
.gallery_link:hover .gallery_link_txt i
{
	margin-right: 0px;
}
.gallery_link:hover span
{
	color: #e4bf3f;
}
.gallery_link:hover 
{
	background: #fff;
}


a
{
	color: var(--dark_green);
	transition: all .3s;
}
a:hover 
{
	color: var(--light_green);
}

.page_header
{
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	min-height: 90px;
}
.header_nav
{
	font-size: .8em;
}
.about_session
{
	display: block;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding: 3vw 5vw 0px;
	box-sizing: border-box;
	background: var(--themecolor);
}
.about_left
{
	background: #444751;
	padding: 60px;
	height: 100%;
	box-sizing: border-box;
	color: #fff;
}
.session_title
{
	font-size: clamp(2em , 4vw + 1em, 2.4em);
}
.session_subtitle
{
	font-size: 1.1em;
}

.about_us_content
{
	
       font-size: .9em;
  opacity: .75;
  font-weight: 300;
}
.about_right
{
	display: block;
	width: 100%;
	max-width: 100%;
	text-align: center;
	height: 100%;
	padding: 0px 40px;
	box-sizing: border-box;
	position: relative;
}
.about_us_img
{
	display: block;
	position: sticky;
	top: var(--header_height);
	max-width: 100%;
	height: auto;
}
.about_us_img img
{
	display: inline-block;
	max-width: 100%;
	object-fit: contain;
}
.gallery_services_link
{
	background: var(--golden_color);
}
.contact_session
{
	display: block;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding: 5vw 5vw;
	box-sizing: border-box;
	background: var(--themecolor);
}
.contact_left
{
	background: #444751;
	padding: 100px 60px;
	height: 100%;
	box-sizing: border-box;
	color: #fff;
}
.contact_address
{
	display: flex;
	gap:30px;
}
.contact_address_icon
{
	display: flex;
	width: 60px;
	height: 60px;
	align-items: center;
	justify-content: center;
	background: var(--light_green);
	font-size: 2em;
	flex-shrink: 0;
}
.contact_address_info
{
	display: flex;
	flex-direction: column;
	gap:10px;
}
.contact_phone
{
	display: flex;
	gap:30px;
}
.contact_phone_icon
{
	display: flex;
	width: 60px;
	height: 60px;
	align-items: center;
	justify-content: center;
	background: var(--light_green);
	font-size: 2em;
	flex-shrink: 0;
}
.contact_phone_info
{
	display: flex;
	flex-direction: column;
	gap:10px;
}
.contact_socials
{
	display: flex;
	flex-direction: column;
	gap:15px;
	padding-left: 90px;
}
.contact_social_links
{
	color: #fff;
	display: flex;
	align-items: center;
	gap:30px;
}
.contact_social_links .social_link
{
	color: #fff;
	font-size: 2.4em;
}
.contact_social_links .social_link:hover{
	color: var(--light_green);
}
.submit_btn
{
	background: var(--golden_color);
	box-shadow: 0px 10px 20px -10px rgba(0,0,0,.3);
	transition: all .3s;
	min-width: 180px;
}
.btn.submit_btn:hover{
	background: var(--light_green);
	color: #fff;
}
.contact_form .form-control
{
	border: none;
	border-bottom: 2px solid #444;
	border-radius: 0px;
	background-color: transparent;
}
.contact_form .form-control:is(:focus, :active) 
{
	outline: none;
	box-shadow: none;
	border-color: rgba(23,94,24,0.5);
}
.mandatory label:after
{
	 content: "*";
	padding-left: 5px;
	line-height:inherit;	
	color: #e83434;
	bottom: 12px;
	positi on: absolute;
}
.contact_msg_field
{
	min-height: calc(3.5rem + calc(var(--bs-border-width) * 2));
	max-height: 280px;
	min-height: 60px;
	height:150px;
	overflow: auto;
	overflow-y: auto;
	resize: none;
	
}
.contact_right
{
	padding: 15px 60px;
	box-sizing: border-box;
}
.contact_message_box
{
	display: none;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	padding: 90px 30px;
	flex-direction: column;
}
.message_icon
{
	display: block;
	max-width: 200px;
	height: auto;
}
.message_icon img
{
	max-width: 100%;
	text-align: center;
}
.message_title
{
	font-size: clamp(2em, 4vw + 2em, 2.4em);
	margin: 15px auto 0px;
}
.message_subtitle
{
	margin: 15px auto;text-align: center;
	opacity: .75;
}
.goback_btn
{
	transition: all .3s;
	border: none;
	background: #fff;
	border-radius: 40px;
	padding: 0px 15px;
	min-height: 36px;
	min-width: 120px;
}
.goback_btn:hover{
	background: var(--light_green);
	color: #fff;
}

.form_submited .contact_fillup
{
	display: none;
}
.form_submited .contact_message_box
{
	display: flex;
}
.form_error_msg
{
	display: block;
	color: #e83434;
	padding: 10px 0px;
}
.page_title
{
       font-size: 1.8em;
}
.faq_session
{
	display: block;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding: 3vw 5vw;
	box-sizing: border-box;
	background: var(--themecolor);
}
.faq_right
{
	background: #444751;
	padding: 60px;
	height: 100%;
	box-sizing: border-box;
	color: #fff;
}
.faq_question
{
       font-size: 1.4em;
}
.faq_answer
{
	opacity: .75;
       font-size: .9em;
}
.faq_left
{
	display: flex;
	flex-direction: column;
	gap:5vw;
	padding: 60px;
	box-sizing: border-box;
	position: relative;
	position: sticky;
	top: var(--header_height);
}
.sidebar_info
{
	display: flex;
	gap:30px;
	text-decoration: none;
	color: #000;
	transition: all .3s;
}
a.sidebar_info:hover{
	color: var(--light_green);
}
a.sidebar_info:hover .sibebar_info_icon
{
       color: #fff;
}
.sibebar_info_icon
{
	display: flex;
	width: 90px;
	height: 90px;
	align-items: center;
	justify-content: center;
	font-size: 2em;
       flex-shrink: 0;
	border: 2px solid #444;
	background: var(--light_green);
}
.sidebar_link
{
	display: flex;
	flex-direction: column;
	padding: 30px;
	border: 2px solid #444;
	width: 240px;
	max-width: 90%;
	aspect-ratio:1/1.05;
	gap:30px;
	text-decoration: none;
	color: #000;
	cursor: pointer;
	justify-content: space-around;
}
.sidebar_link_icon
{
	font-size: 2.4em;
}
.sidebar_link_txt
{
	display: flex;
	align-items: center;
	gap:30px;
	font-size: 1.4em;
	line-height: 1.2;
}
.sidebar_link:hover{
	background: #fff;
}
.sidebar_link_txt i 
{
	margin-right: 10px;
	transition: all .3s;
}
.sidebar_link:hover .sidebar_link_txt i 
{
	margin-right: 0px;
}

.service_session
{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding: 3vw 10vw;
	box-sizing: border-box;
	background: var(--themecolor);
	width: 100%;
	max-width: 100%;
}
.service_page_txt
{
	font-size: 1em;
	width: 1200px;
	line-height: 1.6;
	margin: 0px auto 90px;
	max-width: 96%;
	text-align: center;
	 
}
.service_item
{
	display: flex;
	flex-direction: column;
	width: 100%;
	min-height:var(--item_height);
	height: 100%;
	gap:15px;
	overflow: hidden;
	padding: 30px;
	box-sizing: border-box;
	background: #e4e2d2;
	transition: all .3s;
}
.service_item:hover{
	background: rgba(255,255,255,1);
	box-shadow: 0px 30px 20px -10px rgba(0,0,0,0.1);
}
.service_item:hover .service_title
{
	color: var(--light_green);
}
.service_title
{
	font-weight: bold;
	font-size: 1.6em;
	line-height: 1.4;
	word-break: break-word;
	min-height: var(--title_height);
}
.service_img
{
	display: block;
	width: 100%;
	height: auto;
	overflow: hidden;
	background: #fff;
	aspect-ratio :16/9;
}
.service_img img
{
	display: block;
	width: 100%;
	height: auto;
	max-height: 100%;
	object-fit: cover;
}
.service_content
{
	opacity: .8;
	font-size: 1em;
	flex: 1;
	display: inline-block;
	min-height: var(--txt_height);
	height: auto;
}
.service_price_range
{
	display: inline-flex;
	margin-top: auto;
	gap:7px;
}
.service_price_range p
{
	margin: 0px;
}
.service_price
{
	display: inline-flex;
	align-items: center;
	gap:3px;
	font-weight: 600;
}
.service_item:hover .service_price_range
{
	color: var(--light_green);
}
/*gallery*/
.gallery_session
{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;	
	box-sizing: border-box;
	background: var(--themecolor);
	width: 100%;
       height: auto;
	max-width: 100%;
       position: relative;
}
.gallery_session:after
{
       content: "";
       width: 100%;
       display: table;
       height: 0px;
}
.gallery_cover
{
	display: block;
	width: 100%;
	height: calc(100vh - var(--header_height));
	position: relative;
	height: auto;
	max-height: calc(100vh - var(--header_height));
       max-height: none;
	padding: 3vw 10vw 30px;
	overflow: hidden;
	justify-content: center;
}
.gallery_intro
{
	display: flex;
	gap:0px;
	width: 100%;
	height: calc(100vh - var(--header_height));
       height: auto;
	overflow: hidden;
	position: relative; 
       justify-content: center;
       padding: 5vw;
       background: rgba(0,0,0,.03);
}
.intro_col
{
	display: flex;
	flex-direction: column;
	width: calc(33% - 30px);
	height: auto;	 
	gap:0px;
     display: none;
	 position: relative;
}
.img_col
{
	width: 100%;
	height: auto;
	opacity: 0;	 
}
.img_col img
{
	display: block;
	width: 100%;
	height: auto;
	overflow: hidden;
}
.col1
{
	top:0%;
}
.col2
{
	top:-90%;
}
.col3
{
	top:-10%;
}
.col4
{
	top:-90%;
}
.gallery_choice_list
{
	display: flex;
	flex-direction: column;
	width: auto;
	max-width: 100%;
	position: relative;
	 
	z-index: 100;
	gap:15px;
	justify-content: center;
}
.gallery_choice
{
	/*font-size: clamp(2.4em, 4vw + 3em, 7em);*/
	font-weight: bold;
	transition: all .6s;
	cursor: pointer;
	user-select: none;	
}

.gallery_choice:hover .gallery_choice_icon{
	color: var(--golden_color);
	-webkit-text-stroke-width: 2px;
  -webkit-text-stroke-color: #fff;
	text-shadow: 0px 20px 10px rgba(0,0,0,.3), 0px 0px 0px #444;
}
.open_intro
{
	
}
.open_intro :is(.col1,.col3)
{
	animation: rollup 1s cubic-bezier(.57,.22,.1,.92) ;
}
.open_intro :is(.col2, .col4)
{
	animation: rolldown 1s cubic-bezier(.57,.22,.1,.92) ;
}

.close_intro :is(.col1,.col3)
{
	animation: rollup 1s cubic-bezier(.57,.22,.1,.92) reverse ;
}
.close_intro :is(.col2, .col4)
{
	animation: rolldown 1s cubic-bezier(.57,.22,.1,.92) reverse ;
}

@keyframes rollup
{
	0%
	{
		transform: translateY(0%);
	}
	100%
	{
		transform: translateY(-290%);
	}
}
@keyframes rolldown
{
	0%
	{
		transform: translateY(-100%);
	}
	100%
	{
		transform: translateY(90%);
	}
}
.open_intro .gallery_intro
{
	pointer-events: none;
	animation: fadeout .5s ease-out forwards;
}
.close_intro .gallery_intro
{
	pointer-events: all;
	animation: fadeout .5s ease-out forwards reverse;
}
@keyframes fadeout
{
	0%
	{
		opacity: 1;
	}
	100%
	{
		opacity: 0;
	}
}
@keyframes fadein
{
	0%
	{
		opacity: 0;
	}
	100%
	{
		opacity: 1;
	}
}
.img_grid
{
	width: 100%;
	height: auto;
	max-width: 1900px;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(300px , 1fr));
	gap:30px;
	padding: 30px 0px;
	margin: auto;
	transition: all .3s;
}
.img_item
{
	width: 100%;
	height: auto;
	overflow: hidden;
	margin-bottom: 30px;
}
.img_elm
{
	width: 100%;
	display: block;
	height: auto;
	overflow: hidden;
	max-width: 25vw;
	margin-bottom: 30px;
}
.img_elm img
{
	display: inline-block;
	width: 100%;
	max-width: 100%;
	height: auto;
}
.image_gallery_on
{
	max-height: none;
}
.image_gallery_on .gallery_intro
{
	display: none;
}
.image_gallery
{
	display: none;
	max-width: 100%;
	height: auto;
	overflow: hidden;
	text-align: center;
	opacity: 0;
	padding: 5vw 0px;
	transition: all .5s;
	position: relative;
}
.image_gallery_on .image_gallery
{
       display: block;
	opacity: 1;
       animation: fadein .5s ease-out forwards;
}
.gallery_title
{
	font-size: clamp(2em, 4vw + 2em, 2.2em);
	font-weight: bold;
}
.go_back_gallery
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap:10px;	
	z-index: 799;
	background: var(--light_green);
	width: auto;
	min-width: 180px;
       width: auto;
	height: 36px;
	border-radius: 40px;
	color: #fff;
       position: relative;
	font-size: 1em;
	font-weight: 500;
	gap:10px;       
       padding-right: 15px;
       /*left: 50%;
       transform: translateX(-50%);*/
	border: none;
	transition: all .3s;
       margin: 15px auto;
}
.go_back_gallery i
{
	width: 30px;
	left: 5px;
	transition: all .3s;
       position: relative;
}
.go_back_gallery:hover{
	background: var(--golden_color);
	box-shadow: 0px 10px 10px -5px rgba(0,0,0,.2);
}
.go_back_gallery:hover i
{
	left: 0px;
}
.fullscreen_cover
{
	display: none;
	position: fixed;
	background: rgba(0,0,0,0.9);
	inset:0;
	z-index: 1999;
	padding: 60px;
	padding: 60px 60px;	
	justify -content: center;
	align-items: center;
	-webkit-backdrop-filter:blur(3px);
	backdrop-filter:blur(3px);
	overflow: hidden;
}
.active.fullscreen_cover
{
	display: flex;
}
.image_slider_cover
{
	display: block;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0);
	position: relative;
	text-align: center;
	overflow: hidden;
}
.image_slider
{
	display: block;
	width: 100%;
	height: 100%;
}
.image_slider_item
{
	
	display: flex!important;
	align-items: center;
	justify-content: center;
	height: 100%;
}
.image_slider_item img
{
	display: block;
	max-width: 100%;
	height: auto;
	max-height: 100%;
	object-fit: contain;
	margin: auto;
}
.screen_close
{
	display: flex;
	position: absolute;
	right: 30px;
	top: 15px;
	border: none;
	background: none;
	color: #fff;
	font-size: 1.6em;
	opacity: .7;
	transition: all .3s;
}
.screen_close:hover{
	opacity: 1;
}
.image_slider .slick-list 
{
	height: 100%!important;
}
.image_slider .slick-track
{
	height: inherit;
}
.slider_arow
{
	position: absolute;
	z-index: 100;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 60px;
	height: 60px;
	left: 0px;
	color: #fff;
	top:50%;
	transition: all .3s;
	cursor: pointer;
	font-size: 1.6em;
	opacity: .5;
	transform: translateY(-50%);
}
.next_arow
{
	right: 0px;
	left: auto;
}
.slider_arow:hover{
	opacity: 1;
}
.slick-disabled.slider_arow
{
	opacity: .1;
	pointer-events: none;
}
.video_gallery
{
	display: none;
	max-width: 100%;
	height: auto;
	overflow: hidden;
	text-align: center;
	padding: 5vw 0px;
	transition: all .5s;
	opacity: 0;
	position: relative;
}
.video_gallery_on .video_gallery
{
	display: block;
	opacity: 1;
       animation: fadein .5s ease-out forwards;
}
.video_gallery_on
{
	max-height: none;
}
.video_gallery_on .gallery_intro
{
	display: none;
}
.video_grid
{
	width: 100%;
	height: auto;
	max-width: 1900px;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(300px , 1fr));
	gap:30px;
	padding: 30px 0px;
	margin: auto;
	transition: all .3s;
}
.video_item
{
	width: 100%;
	height: auto;
	min-height: 250px;
	overflow: hidden;
	margin-bottom: 30px;
	display: flex;
	flex-direction: column;
	background: #fff;	
	box-shadow: 0px 3px 10px -5px rgba(0,0,0,0.1);
	user-select: none;
	transition: all .3s;
	cursor: pointer;
	position: relative;
}
.video_item:hover{
	background: var(--light_green);
}
.video_play_icon
{
	display: flex;
	position: absolute;
	color: #fff;
	font-size: 3em;
	width: 60px;
	height: 60px;
	left: 50%;
	top: calc(50% - 15px);
	align-items: center;
	justify-content: center;
	transform: translate(-50%, -50%);
	opacity: .7;
}
.video_title
{
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.2em;
	font-weight: 500;
	min-height: 44px;
	white-space: nowrap;
	text-overflow: ellipsis;
	overflow: hidden;
	cursor: default;
}
.video_item:hover .video_title
{
	color: #fff;
}
.video_elm
{
	width: 100%;
	display: block;
	height: auto;
	overflow: hidden;
	max-width: 25vw;
	aspect-ratio:16/9;
       flex: 1;
	max-height: calc( 100% - 44px);
}
.video_elm video
{
	width: 100%;
	max-height: 100%;
	object-fit: cover;
}
.video_cover
{
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}
.video_player
{
	display: block;	
	max-width: 100%;
	max-height: 100%;
	align-self: center;
}
.video_player video
{
	width: 100%;
	max-height: calc(100vh - 120px);
}
.image_gallery_on .video_gallery
{
	display: none;
}
.video_gallery_on .image_gallery
{
	display: none;
}

/*gallery changes*/
.gallery_choice_list
{
	flex-direction: row;
	gap:7vw;
	align-items: center;
}
.gallery_choice 
{
	display: flex;
	align-items: center;
	flex-direction: column;
	width: 360px;
	max-width: 45%;
	background: #fff;
	font-size: 1em;	
	transition: all .3s;
	border-radius: 5px;
	box-shadow: 0px 10px 20px -5px rgba(0,0,0,0.3);
	overflow: hidden;
	outline: 1px solid transparent;
}
.gallery_choice_icon
{
	width: 100%;
	height: auto;
	font-size: 4em;
	justify-content: center;
	display: flex;
	align-items: center;
	padding: 30px;
	text-shadow: 0px 10px 10px rgba(0,0,0,.1);
	color: var(--light_green);
	-webkit-text-stroke-width: 2px;
  -webkit-text-stroke-color: #fff;
	transition: all .3s;
	
}
.gallery_choice_icon img
{
	display: inline-block;
	max-width: 100%;
	height: auto;
}
.gallery_choice_txt
{
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.2em;
	gap:15px;
	width: 100%;
	min-height: 50px;
	flex-shrink: 0;
	background: #444;
	position: relative;
	color: #fff;
	padding: 0 15px;
}
.gallery_choice_txt i
{
	display: block;	
	left: 0px;
	transition: all .3s;
	position: relative;
}

.gallery_choice:hover{
	background: var(--themecolor);
	background: var(--light_green);
	outline-color: #444;
}
.gallery_choice:hover .gallery_choice_txt
{
	background: var(--light_green);
}
.gallery_choice:hover .gallery_choice_txt i
{
	left: 10px;
}
.gallery_intro:before{
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	z-index: 10;
	bac kground: linear-gradient(to bottom, rgba(36,128,213,0.1) ,#bcd9c8);
}
/*gallery changes*/

/*gallery*/
.active.footer_link
{
	color: var(--golden_color);
}
.contact_img
{
       width: 100%;
       height: 100%;
}
.contact_img img
{
       width: 100%;
       height: 100%;
       object-fit: cover;
}
/* responsive design*/
@media screen and (max-width:1599px)
{
       .gallery_link span
       {
              font-size: 1.2em;
       }
}
@media screen and (max-width:1399px)
{
       .video_elm
       {
              max-width: 100%;
       }
       .video_item
       {
              min-height: none;
       }
}
@media screen and (max-width:1199px)
{
       .footer_ul
       {
              flex-direction: column;
              align-items: flex-start;
       }
       .img_elm
       {
              max-width: 100%;
       }
       .video_item
       {
              aspect-ratio:1/.6;
              min-height: none;
       }
       .contact_left
       {
              padding: 60px 30px;
       }
       .contact_grid
       {
              display: grid;
              grid-template-rows: 200px 360px;
              grid-template-columns: 50% 50%;
       }
       .col_grid1, .col_grid2, .col_grid3
       {
               width:100%; 
              height: auto;
       }
       .col_grid1
       {
              grid-area:1/1/2/2;
       }
       .col_grid2
       {
              grid-area:1/2/-1/-1;
       }
       .col_grid3
       {
              grid-area:2/1/-1/2;
       }

}
@media screen and (max-width:1099px)
{
       .gallery_link
       {
              width: 45%;
       }
       .header_burger_menu
{
	display: block;
	cursor: pointer;
	position: relative;
	width: 36px;
	transition: all .3s;
	height: 24px;
	border-top: 2px solid var(--dark_green);
	border-bottom: 2px solid var(--dark_green);
       order: 2;
}
.active.header_right .header_burger_menu, .header_burger_menu:hover{
	border-color: var(--light_green);
}
.header_burger_menu:after{
	content: "";
	width: 100%;
	height: 1px;
	display: block;
	position: absolute;
	top: 50%;
	border-top: 2px solid;
	border-color: inherit;
	transform: translateY(-50%);
}
      [data-aos^="fade"][data-aos^="fade"]
       {
              opacity: 1;
       }
       
.header_menu
{
	position: fixed;
	flex-direction: column;
	width: 300px;
	left: -110%;
	top: var(--header_height);
	background: var(--light_green);
	height: calc(100% - var(--header_height));
	max-height:  calc(100% - var(--header_height));
	overflow: hidden;
	overflow-y: auto;
	z-index: 1000;
	gap:15px;
	justify-content: flex-start;
	padding: 30px 30px;
       transition: all .3s;
       box-shadow: 20px 0px 20px -10px rgba(0,0,0,.1);
}
.active.header_right .header_menu
{
       left: 0px;
}
.active.header_right .header_menu_bg
{
	display: block;
	position: fixed;
	inset:0;
	background: rgba(0,0,0,0.5);
	z-index: 999;
	top: var(--header_height);
	-webkit-backdrop-filter:blur(5px);
	backdrop-filter:blur(5px);
}
.header_li_link, .header_li
{
	width:100%;
	text-align: center;
	color: #fff;
}
.header_li_link
{
	padding: 10px;
}
.header_li_link:hover{
	color: var(--dark_green);
	background: rgba(0,0,0,0.1);
	border-radius: 5px;
}
.active.header_li_link
{
	color: #fff;
	padding: 10px;
	background: rgba(0,0,0,0.3);
	border-radius: 5px;
}
.active.header_li_link::after
{
	display: none;
}
.header_social_links
{
	margin-left: auto;
}       
       
}
/*1099*/
@media screen and (max-width:991px)
{    
       .video_item
       {
              margin-bottom: 15px;
       }
       .home_service_name
       {
              font-size: 1.1em;
       }
}
@media screen and (max-width:899px)
{
       .contact_grid
       {
              display: flex;
              flex-direction: column;
              grid-template-rows: 200px 360px;
              grid-template-columns: 50% 50%;
       }
       .col_grid1, .col_grid2, .col_grid3
       {
               width:100%; 
              height: auto;
       }
       .col_grid1
       {
              grid-area:1/1/2/2;
       }
       .col_grid2
       {
              grid-area:1/2/-1/-1;
       }
       .col_grid3
       {
              grid-area:2/1/-1/2;
       }
       .home_service_item
       {
              width: 45%;
       }
}
@media screen and (max-width:767px)
{
       
          .home_gallery_links 
       {
              flex-direction: column;
              padding: 5vw 30px;
       }
       .gallery_link 
       {
              width: 100%;
       }
       .header_left
       {
              min-width: 0px;
       }
       .header_logo img
       {
              min-width: 60px;
              max-width: 100%;
              max-height: 100%;
              object-fit: contain;
       }
       .footer_left
       {
              min-width: 0px;
       }
       .footer_logo img
       {
              min-width: 60px;
              max-width: 100%;
              max-height: 100%;
              object-fit: contain;
       }
       .about_left
       {
              padding: 30px;
       }
       .fullscreen_cover
       {
              padding: 60px 15px;
       }
       .slider_arow
       {
              display: none;
       }
       .video_item
       {
              margin-bottom: 0px;
       }
       
           .home_banner
       {
              padding: 30px 30px;
       }
       .home_banner_content
       {
              max-width: 100%;
              padding: 40px 15px;
       }
       .home_title{
              font-size: clamp(2em, .5vw + .6em, 2.8em);
       }
       
}
/*767*/
@media screen and (max-width:699px)
{
       .gallery_choice_list
       {
              flex-direction: column;
              width: 100%;
       }
       .gallery_choice
       {
              max-width: 100%;
       }
       .home_service_item
       {
              width: 100%;
       }
}
@media screen and (max-width:575px)
{
       .header
       {
              padding: 15px;
       }
       .header_logo
       {
              padding-left: 0px;
       }
       .gallery_link span
       {
              padding: 15px;
              font-size: .95em;
       }
        .about_left
       {
              padding: 30px 15px;
       }
       .footer_title
       {
              margin-bottom: 15px;
              margin-top: 15px;
       }
       .service_page_txt
       {
              margin: 30px auto;
       }
       .video_grid
       {
              display: flex;
              flex-direction: column;
       }
       .gallery_title
       {
              font-size: 1.8em;
       }
       .video_elm
       {
              max-height: 240px;
       }
       .faq_right
       {
              padding: 60px 15px;
       }
       .faq_left
       {
              padding: 15px 15px;
       }
       .sidebar_info
       {
              flex-direction: column;
              margin-bottom: 15px;
       }
       .home_banner_txt       
       {
              font-size: 1em;
              padding: 0px 15px;
       }
       .home_service_name
       {
              text-decoration: none;
       }
       .gallery_link > i:first-child
       {
              width: 50px;
              height: 50px;
              font-size: 1.6em;
       }
   
}
/*575*/
@media screen and (max-width:499px)
{
       .service_session
       {
              padding: 3vw 5vw;
       }
       .service_item
       {
              padding: 15px;
       }
      .header, .header_right
       {
              gap:15px;
       }
       .header_burger_menu
       {
              margin-right: 15px;
       }
       .contact_left
       {
              padding: 40px 15px;
       }
       .contact_address , .contact_phone
       {
              gap:15px;
       }
       .footer_logo
       {
              padding: 0px;
       }
       
}
