@import url('https://fonts.googleapis.com/css2?family=Nunito+Sans:wght@300;400;600&display=swap');


*
{	
	font-family: 'Nunito Sans', sans-serif;
	font-size:16px;
	color:#000;
	font-weight:400;
	
}
::-webkit-scrollbar {
  width: 8px;
  height: 16px;
}

::-webkit-scrollbar-thumb {
  cursor: pointer;
  background: #000;
}
html , body
{
	overflow-x:hidden;
	-webkit-overflow-scrolling: touch;

}
.transition
{
	transition:all 0.5s ease-in-out;
}
body
{
	
}
a {
	color:#000;
	text-decoration:none;
	transition:0.8s;
	-webkit-transition:0.8s;
	-moz-transition:0.8s;
	-o-transition:0.8s;
}
.displaynone
{
	display:none !important
}
.d-inline-block
{
	display:inline-block
}
.vError
{
	border:red 1px solid !important
}
.form-error
{
    color: red;
    font-size: 10px !important;
}
.h100{
	height:100%
}
.FormResult  , .FormResult1 , .FormResult *, .FormResult1 *
{
	color:green;

}
.dnone
{
	display:none
}
.d-block{
	display:block
}
.d-flex
{
	display:flex;
	flex-wrap: wrap;
}
.italic
{
	font-style:italic
}
.white
{
	color:#FFF
}
.font-light , .font-light *
{
	 font-weight: 300;
}
.font-semi , .font-semi *
{
	 font-weight: 600;
}
.font-12, .font-12 *
{
	font-size:0.75rem
}
.font-13, .font-13 *
{
	font-size:0.8125rem
}
.font-14, .font-14 *
{
	font-size:0.875rem
}
.font-15, .font-15 *
{
	font-size:0.9375rem
}
.font-16, .font-16 *
{
	font-size:1rem
}
.font-18 , .font-18 *
{
	font-size:1.125rem
}
.font-20, .font-20 *
{
	font-size:1.25rem
}
.font-22, .font-22 *
{
	font-size:1.375rem
}
.font-24, .font-24 *
{
	font-size:1.5rem
}
.font-26, .font-26 *
{
	font-size:1.625rem
}
.font-28, .font-28 *
{
	font-size:1.75rem
}
.font-30, .font-30 *
{
	font-size:1.875rem
}
.font-32, .font-32 *
{
	font-size:2rem;
	line-height:2rem
}
.font-35, .font-35 *
{
	font-size:2.1875rem
}
.font-36, .font-36 *
{
	font-size:2.25rem
}
.font-40, .font-40 *
{
	font-size:2.5rem
}
.font-42, .font-42 *
{
	font-size:2.625rem
}
.font-45, .font-45 *
{
	font-size:2.8125rem
}
.font-50, .font-50 *
{
	font-size:3.125rem;
	line-height: 3.125rem;
}
.font-52, .font-52 *
{
	font-size:3.25rem
}
.font-55, .font-55 *
{
	font-size:3.437rem
}
.font-60, .font-60 *
{
	font-size:3.75rem;
	line-height:3.75rem
}
.font-62, .font-62 *
{
	font-size:3.875rem
}
.font-70, .font-70 *
{
	font-size:4.375rem;
	line-height: 4.375rem;
}
.font-80, .font-80 *
{
	font-size:5rem
}
.font-90, .font-90 *
{
	font-size:4.375rem;
}
.font-120, .font-120 *
{
	font-size:7.5rem
}
.text-center
{
	text-align:center
}
.line-height13
{
	line-height:1.3rem
}
.line-height14
{
	line-height:1.4rem
}
.line-height15
{
	line-height:1.5rem
}
.line-height2
{
	line-height:2rem
}
.line-height3
{
	line-height:3rem
}
.line-height4
{
	line-height:4rem
}
.inline-block
{
	display:inline-block
}
.flex-row {
    display: flex !important;
    justify-content: center;
    flex-direction: row;
    align-content: center;
    align-items: center;
}
.flex-column {
    display: flex !important;
    justify-content: center;
    flex-direction: column;
    align-content: center;
    align-items: center;
}
.jc-fs
{
	    justify-content: flex-start !important;
}
.jc-sb
{
	    justify-content: space-between !important
}
.trigger{
	width: 35px;
	height: 25px;
	z-index: 999999999;


}

.trigger > div{
	position: relative;
}

.trigger > div > span{
	position: absolute;
	height: 4px;
	width:34px;
	margin:0;
	background: #FFF;
	top:0;
	border-radius:25px;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;

	transition:.7s;
	-moz-transition:.7s;
	-webkit-transition:.7s;
	left:0
}

.trigger > div > span:nth-child(2){
    top: 9px;
    width: 22px;
}

.trigger > div > span:nth-child(3){
	top:18px;
}

.trigger > div.close > span:nth-child(1){
	-ms-transform: rotate(45deg); /* IE 9 */
	-webkit-transform: rotate(45deg); /* Chrome, Safari, Opera */
	transform: rotate(45deg);
	top: 19px;
	background:#FFF
}

.trigger > div.close > span:nth-child(2){
	display: none;
}

.trigger > div.close > span:nth-child(3){
	-ms-transform: rotate(-45deg); /* IE 9 */
	-webkit-transform: rotate(-45deg); /* Chrome, Safari, Opera */
	transform: rotate(-45deg);
	top: 19px;background:#FFF
}

.trigger, .sitewrapper{
	transition:.7s;
	-moz-transition:.7s;
	-webkit-transition:.7s;
}
.txt-right
{
	text-align:right;
}
.white , .white *
{
	color:#FFF
}
.blur {
    
    background: transparent !important;
}
.z-100
{
	z-index:100
}
.relative
{
	position:relative;
}
b
{
	font-weight:700
}
.txt-justify
{
	text-align:justify
}
.py-75
{
	padding-top:4.6875rem;
	padding-bottom:4.6875rem
}
.py-100
{
	padding-top:6.25rem;
	padding-bottom:6.25rem
}
.pt-100
{
	padding-top:6.25rem;
}
.px-100
{
	padding-right: 6.25rem;
	padding-left: 6.25rem
}
.ai-fs
{
	align-items:flex-start
}
.line-20 , .line-20 *
{
	line-height:1.25rem
}
.line-22 , .line-22 *
{
	line-height:1.375rem
}
.line-25 , .line-25 *
{
	line-height:1.5625rem
}
.line-30 , .line-30 *
{
	line-height:1.875rem
}
.line-35 , .line-35 *
{
	line-height:2.1875rem
}
.line-40 , .line-40 *
{
	line-height:2.5rem
}
.line-50 , .line-50 *
{
	line-height:3.125rem
}
.line-60 , .line-60 *
{
	line-height:3.75rem
}
.line-70 , .line-70 *
{
	line-height:4.375rem
}

.ai-initial
{
	align-items:initial
}
.jc-c
{
	    justify-content: center;
}.jc-fe
{
	    justify-content: flex-end;
}
.ai-fe
{
	align-items:flex-end
}
.d-inline-block{
	display:inline-block
}
.open_left , .open_right , .area_layer_back 
{
	opacity:0
}
.open_right.aos-animate
{
	animation: 1s ease-in-out 0.75s window-fromleft both;
    /* -webkit-animation: 1.25s ease-in-out 0.75s window-fromright both; */
    opacity: 1;
}
.open_left.aos-animate
{
	animation: 1s ease-in-out 0.75s window-fromright both;
    /* -webkit-animation: 1.25s ease-in-out 0.75s window-fromright both; */
    opacity: 1;
}
.area_layer_back.aos-animate
{
	opacity: 1;
    animation: 1s ease-in-out 0.5s circle-fromcenter-over both;
    -webkit-animation: 1s ease-in-out 0.5s circle-fromcenter-over both;
}
.underline
{
	text-decoration:underline
}
.color1
{
	color:#9A9090
}
.color2
{
	color:#FFF
}
.bt-1
{
	border-top:1px solid #494949
}
.bg-black
{
	background:#000
}
.bg1
{
	background-repeat:no-repeat;
	background-size:cover;
	background-position:center center;
	background-image:url('../img/bg1.jpg');
}
/**************************************/
footer
{
	background:#000
}
.social ul
{
	display:flex;
}
.social li
{
	display:inline-block;
	margin-left:10px;
}

.footer_link li
{
	margin-right:30px;
}
.footer_link a
{
	color:#FFF
}
.footer_link a:hover
{
	font-size:1.35rem
}
.newsletter-signup-form input
{
	border:1px solid #FFF;color:#FFF;
	background-color:transparent
}
.newsletter-signup-form button
{
	position:absolute;
    top: 17px;
    right: 17px;
	z-index:50;
	cursor:pointer;
	background:none
}
.lets_box
{
	overflow:hidden;
	height:540px;
}
.projects_box
{
	overflow:hidden;
	height:510px;	
}
.lets_bg , .projects_bg
{
	
	background-repeat:no-repeat;
	background-size:cover;
	background-position:center center;
	transition:all 1s ease-in-out;
	width:100%;
	height:100%;	
}
.lets_bg:before
{
	
	position:absolute;
	top:0;
	left:0;
	z-index:50;
	width:100%;
	height:100%;transition:all 1s ease-in-out;	
	content:'';
	background-color: rgba(0,0,0,0.25);

}

.lets_box:hover .lets_bg , .projects_box:hover .projects_bg
{
	transform:scale(1.1);
}
.lets_box:hover .lets_bg:before
{
		opacity:0
}
.lets_box h2
{
	position:absolute;
	top:0;
	left:0;
	z-index:50;
	padding:60px;transition:all 1s ease-in-out;
}
.lets_box:hover  h2
{
	letter-spacing:2px;
}
.highlight_list .h-l 
{
	border-left:1px solid #D1D1D1;
}
.highlight_list .h-l  h3
{
	height:100px;
}
.projects_box .bg-black
{
	position:absolute;
	bottom:0;
	left:0;
	z-index:50
}
.projects_slick
{
	margin-bottom:0 !important
}
.projects_slick .slick-dots
{
	bottom:60px;
	padding-left:50px;
	text-align:left
}


.projects_slick  .slick-dots li
{
	width:40px;
	height:5px;
	border-radius:25px;
}
.projects_slick .slick-dots li 
{
	margin:0 2.5px;
}
 .projects_slick .slick-dots li button
{
	width:40px;
	height:5px;border-radius:25px;
	background:#000;transition: all 0.5s ease-in;
	padding:0
}
.projects_slick .slick-dots li button:before
{
	display:none
}
 .projects_slick .slick-dots li button:hover , .projects_slick .slick-dots li.slick-active button
{
	background:#FFF;
}



.banners {
    margin-bottom: -5px !important;
}
.main_bg {
    width: 100%;
    height: 100vh;
    overflow: hidden;
    position: relative;
}
.banners_bg {
    position: absolute;
    transition: all 1s ease-in;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-position: center center;background-repeat:no-repeat;background-size:cover
}
.banners_bg1:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
	background-image: url(../images/pattern.png);
    background-repeat: repeat;
    background-color: rgba(0,0,0,0.2);
    z-index: 50;
    content: '';
}.banners_text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 50;
    padding-top: 10vh;
}


.banners  .slick-dots li
{
	width:50px;
	height:5px;
	border-radius:25px;
}

.banners .slick-dots li 
{
	margin:0 2.5px;
}
 .banners .slick-dots li button
{
	width:50px;
	height:5px;border-radius:25px;
	background:#F2F2F2;transition: all 0.5s ease-in;
	padding:0
}
.banners .slick-dots li button:before
{
	display:none
}
 .banners .slick-dots li button:hover , .banners .slick-dots li.slick-active button
{
	background:#1868A8;
}
.banners .slick-dots {
    bottom: 10vh;
}

.scroll_down
{
	position:absolute;
	bottom:5vh;
	z-index:35;
	width:100%	
}
#my_svg_element
{
	width:50px;
	cursor:pointer;


}
svg polygon {
  fill: none;
  stroke: #FFF;
  stroke-width: 3;
  stroke-dasharray: 500;
  stroke-dashoffset: 500;
  -webkit-animation: dash 3s linear forwards infinite;
  animation: dash 3s linear forwards infinite;
}

svg rect {
  fill: none;
  stroke: #FFF;
  stroke-width: 3;
  stroke-dasharray: 500;
  stroke-dashoffset: 500;
  -webkit-animation: dash 3s linear forwards ;
  animation: dash 3s linear forwards ;
}


@-webkit-keyframes dash {
  to {
    stroke-dashoffset: 0;
  }
}
@keyframes dash {
  to {
    stroke-dashoffset: 0;
  }
}

header
{
	position:absolute;
	top:0;
	left:0;
	z-index:50;
	width:100%;
}.hamburger {
    float: right;
    transition: all 0.5s ease-in-out;
    cursor: pointer;
}


.menu.slided {
    transform: scaleY(1);
}
.menu {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 40;
    background-color: #000;
    box-shadow: 0 7px 10px 0 rgb(153 153 153 / 50%);
    transform: scaleY(0);
    transform-origin: top;
    transition: transform 0.5s ease;
    border-top: 1px solid #E50019;
    overflow: hidden;
}.menu ul {
    padding: 140px 0 50px 0;
}.menu ul li {
    display: inline-block;
    width: 100%;
    text-align: center;
    padding: 10px 0;
    margin: 0;
}
header nav li a{color:#FFF;position:relative}
header nav li a.active {
    font-weight: 600;
    position: relative;
}header nav li a.active:before {
    height: 14px;
    width: 75px;
    position: absolute;
    top: 27px;
    left: 0;
    content: '';
    background-color: rgba(224,32,32,0.44);
}
.z-50
{
	z-index:50
}
.categories_box
{


	position:relative
}
.categories_box img
{
	width:300px;position:relative
}

.categories_box h3{
	position:absolute;
	top:0;width:100%;background:rgba(0,0,0,0.2);height:100%;
	color:#FFF;
	left:0;
	text-align:center;
	z-index:50;    display: flex !important;
    justify-content: center;
    flex-direction: row;
    align-content: center;
    align-items: center;border-radius:50%;
}
.red_icon
{
	position:absolute;
	 top: -40px;
	left:50%;
	z-index:50;
	transform:translate(-50%,0)
}
.products_box
{
	position:absolute;
	z-index:50;
	width:170px;
}
.p1
{
    left: calc(50% - 85px);
    top: -210px;
}
.p2
{
    right: -170px;
    top: 180px;
}
.p3
{
    left: -170px;
    top: 180px;
}
.p4
{
    right: -130px;
    top: 180px;
}

.p5
{
    left: calc(50% - 65px);
    top: 290px;
}


.pp1
{
    left: -82px;
    top: -105px;
}
.pp2
{
    right: -82px;
    top: -105px;
}
.pp3
{
    left: -160px;
    top: 65px;
}
.pp4
{
    right: -160px;
    top: 65px;
}

.pp5
{
    left: -84px;
    top: 237px;
}
.pp6
{
    right: -80px;
    top: 237px;
}
.pp7
{
top: 295px;
    left: calc( 50% - 70px);
}
.products_box div
{
	position:relative;
}
.products_box div
{
	position:relative;
}

.products_box div:before
{
    position: absolute;
    width: 48px;
    height: 2px;

    background: #F1F1F1;
    z-index: 100;
}
.products_box.p1 div:before
{
    top: 62px;
    right: -48px;
}
.products_box.p2 div:before
{
    top: 62px;
    left: -48px;
}
.products_box.p3 div:before
{
    top: 35px;
    right: -44px;
}.products_box.p4 div:before
{
    top: 35px;
    left: -44px;
}

.products_box.p5 div:before
{
	width: 2px;
    height: 27px;
    top: -27px;
    left: 50%;
}


.products_box.pp1 div:before
{
    top: 81px;
    right: 4px;
    width: 2px;
    height: 72px;
}
.products_box.pp2 div:before
{
    top: 81px;
    left: 4px;
    width: 2px;
    height: 72px;
}


.products_box.pp3 div:before
{
    top: 57px;
    left: 119px;
    width: 40px;
}
.products_box.pp4 div:before
{
    top: 57px;
    right: 119px;
    width: 40px;
}

.products_box.pp5 div:before
{
top: -32px;
    right: 16px;
    width: 2px;
    height: 50px;
}

.products_box.pp6 div:before
{
top: -32px;
    left: 16px;
    width: 2px;
    height: 50px;
}
.products_box.pp7 div:before
{
    top: -32px;
    left: 64px;
    width: 2px;
    height: 34px;
}

.breadcrumbs li {
    padding: 0 5px;
    color: #FFF;
    display: inline-block;
}

.contact-form button {
    height: 50px;
    background-color: #000;
}
.contact-form button:hover {
    color: #FFF;
    background-color: #000;
}.bg_red {
    background: #EE2527;
}
.bg_black
{
	background:#000
}
.products_box img
{
	border-radius:50%;border: 1px solid #ececec;

}
.categories_box img
{
	border-radius:50%;
}
.partners_page .partners_page_bg:nth-child(2n+2)
{
	background:#f1f1f1;
}
.products_slick_gal
{
	margin-bottom:0 !important;text-align:center
}
.products_slick
{
	text-align:center
}
.products_slick img
{
	max-width:400px;
}
.products_slick_gal img
{
	max-width:150px;
}
.bb1
{
	border:1px solid #cecccc
}

.products_slick_gal .slick-slide  {
      margin: 0 10px;
  }

  /* the parent */
.products_slick_gal .slick-list  {
      margin: 0 -10px;
  }
  
 .bg_grey
 {
	 background:#F1F1F1
 } 
 .configuration_box img
 {
	 border-radius:50%;
	 max-width:300px;
	 display:inline-block
 }
 .configuration_popup img{

 }
 .bg_white
 {
	 background:#FFF
 }
 .configuration_popup .container
 {
	 max-width:1200px;
 }
 
 .popup_box
{
	background:#FFF;
	height:200px;width: 40%;
	overflow-x:hidden 
}
.fancybox-slide > *
{
	background:#FFF !important
}
.popup_box p{
	margin-bottom:0 !important
}
 @media all and (max-width: 1400px){
	.container{width:1200px}
}
 
@media all and (max-width: 960px){
	.logo img{width:200px;}
	.main_bg{height:400px;}
}
.products_slick_gal img{
	height:150px;
}
@media all and (max-width: 460px){
	*{font-size:12px;}
	.flex-row-m{flex-direction:column}
	.mt-25-m{margin-top:1.5625rem;}.categories_listing .colw-50:nth-child(2){margin-top: 3.125rem;;}
	.footer_info , .txt-cntr-m , .footer_link li{text-align:center}
	.footer_link li{margin-right:0;width:100%;}
	.lets_box{height:400px;}
	.products_box{position:relative;top:auto;right:auto;left:auto;width: 50%;padding: 10px;}
	.categories_box{    left: 50%;transform: translate(-50%, 0);}
	.p_mobile{width:100%;display:flex;flex-wrap:wrap}
	.products_box div:before{display:none}
}
.projects_slick  .slick-slide
{
	margin-bottom:-5px;
}