@charset "utf-8";
/* CSS Document */
html{
	scroll-behavior:smooth;
	overflow-x: hidden;
}
*{
	padding: 0;
	margin: 0;
	box-sizing: border-box;
	list-style: none;
	text-decoration: none;
}
body{
	line-height: 1.5;
	font-size: 1vw;
	font-family: 'Raleway', sans-serif, "Gill Sans", "Gill Sans MT", "Myriad Pro", "DejaVu Sans Condensed", Helvetica, Arial, "sans-serif";
}

body.hidden-scrolling{
	overflow-y: hidden;
}

.header-container{
	max-width: 100%;
	margin:auto;
}

/*.......HOME.........*/
.home{
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	background-position: center center;
	background: url("../images/0000-overlay.png"), url("../images/000-forin-background-2700x1519.jpg"), no-repeat;
	background-size: cover;
}

/*.......SECTIONS.........*/

section{
	display: flex;
	position: relative;
	flex-direction: column;
	max-width: 100%;
	height: auto;
	text-align: center;
	background: url("../images/0000-overlay.png"), url("../images/000-forin-background-2700x1519.jpg"), no-repeat;
	background-size: cover;
}
section h3{
	font-size: 1.2vw;
	font-weight: 600;
	color: #000000;
	letter-spacing: 1px;
	line-height: 20px;
	padding: 5px 20px;
}
section h4{
	font-size: 1.1vw;
	font-weight: 600;
	color: #000000;
	padding: 5px 5px 5px;
}
section h5{
	font-size: 1.1vw;
	font-weight: 600;
	color: #000000;
	padding: 5px 5px 5px;
}
.section_title{
	margin: 0;
	max-width: 100%;
	height: auto;
}
.section_title h2{
	display: flex;
	position: relative;
	justify-content: center;
	width: 100%;
	text-align: center;
	background-color: rgba(163,32,102,1.00);
	font-size: 1.2vw;
	font-weight: 600;
	padding: 1% 1%; 
	color: white;
	transition: all .5s ease-in-out;
}
section article{
	font-size: 1.1vw;
	font-weight: 400;
	padding: 10px 20px;
	color: #000000;
	text-align:justify;
	}
section p{
	font-size: 1vw;
	font-weight: 600;
	padding: 10px 10px 10px;
	line-height: 20px;
	color: #000000;
	text-align:center justify;
	}
section img{
	width: 100%;
}

/*.....HEADER.....*/

/* CORE STYLES */
:root {
	--primary-color: rgba(255,255,255,0.00);
	--overlay-color: rgba(170,170,170,0.95);
	--menu-speed: 0.75s;
}

/* header */
.header {
	position: absolute;
	width: 100%;
	left:0;
	top:0;
	z-index: 99;
	padding: 20px;
}
.header-main{
	background-color: #ffffff;
	display: flex;
	justify-content: space-between;
	padding: 10px 0;
	border-radius: 4px;
}
.header-main .nav-logo img{
	width: 60%;
	padding: 0 20px;
}
.header .nav-menu{
	padding: 0 20px;
}
.header .menu > .menu-item {
	display: inline-block;
	margin-left: 30px;
	position: relative;
}
.header .menu > .menu-item > a{
	display: block;
	padding: 6px 0;
	font-size: 1.2vw;
	color: #000000;
	text-transform: capitalize;
	font-weight: 600;
	transition: all 0.3s ease;
}
.header .menu > .menu-item > a .plus{
	display: inline-block;
	height: 12px;
	width: 12px;
	position: relative;
	margin-left:5px; 
	pointer-events: none;
}
.header .menu > .menu-item > a .plus:before,
.header .menu > .menu-item > a .plus:after{
	content:'';
	position: absolute;
	box-sizing: border-box;
	left: 50%;
	top:50%;
	background-color: #000000;
	height: 2px;
	width: 100%;
	transform: translate(-50%,-50%);
	transition: all 0.3s ease;
}
.header .menu > .menu-item:hover > a .plus:before, 
.header .menu > .menu-item:hover > a .plus:after{
	background-color: rgba(163,32,102,1.00);
}
.header  .menu > .menu-item > a .plus:after{
	transform: translate(-50%,-50%) rotate(-90deg);	
}
.header  .menu > .menu-item > .sub-menu > .menu-item > a:hover,
.header  .menu > .menu-item:hover > a{
	color: rgba(163,32,102,1.00);
}
.header .menu > .menu-item > .sub-menu {
	box-shadow: 0 0 10px rgba(0,0,0,0.2);
	width: 150px;
	position: absolute;
	left:0;
	top:100%;
	background-color: #ffffff;
	padding: 6px 0;
	border-top: 3px solid rgba(163,32,102,1.00);
	transform: translateY(10px);
	transition: all 0.3s ease;
	opacity:0;
	visibility: hidden;
	border-radius: 4px;
	line-height: 1;
}
.header .menu > .menu-item:nth-last-child(1) > .sub-menu {
	width: 50px;
}

/*.......SECTION REFERENCES.........*/
#portfolio{
	top:140px;
}
.portfoliocontainer{
	display: flex;
	flex-wrap: wrap;
	height: auto;
	margin: 0px;
	justify-content: center;
}

/*----- References Section
--------------------------------------------------------------*/


/*----- Portfolio Section
--------------------------------------------------------------*/
.portfolio-tabs{
	margin: 20px 10px 0px;
	height: auto;
	background: white;
	border-radius: 4px;
	border: solid 1px lightgray;
	padding: 0px 0px;
}
.portfolio-tabs .tabs {
    display: flex;
    margin: auto;
    list-style: none;
}
.portfolio-tabs .tabs .tab {
	display: flex;
	font-size: 1.2vw;
	color: #000000;
	text-transform: capitalize;
	font-weight: 600;
	transition: all 0.3s ease;
    cursor: pointer;
    padding: 5px 10px;
    border-radius: 5px;
   
}
.portfolio-tabs .tabs .tab.active,
.portfolio-tabs .tabs .tab:hover {
    background-color: rgba(163,32,102,0.50);
    color: var(--dark-color);
}
.row {
    margin: 15px 20px 15px;
	max-width: 100%;
	height: auto;
	background: white;
	border-radius: 4px;
	border: solid 1px lightgray;
	padding: 5px 0px;
}
.row .tab-content {
    position: relative;
	justify-content: space-around;
	flex-wrap: wrap;
}
.row .tab-content .grid {
    flex-wrap: wrap;
}
.row [data-tab-content] {
    opacity: 0;
    visibility: hidden;
    height: 0;
	overflow: hidden;
}
.row .active[data-tab-content] {
    opacity: 1;
    visibility: visible;
    height: auto;
}
.row .tab-content a {  
    display: flex;
	flex-wrap: wrap;
	justify-content: center;
    width: 33%;
    margin: 0px;
    overflow: hidden;
}
.row .tab-content a img {
    object-fit: cover;
    transition: transform 0.3s ease-in-out;
}
.row .tab-content a:hover img {
    transform: scale(1.1);
}
.grid {
    display: flex;
    flex-wrap: wrap;
	justify-content: center;
	text-align: center;
	margin: 10px 10px; 
}
.portfoliocontainer img{
	display: inline-block;
	border: 0;
	width: 100%;
	height: auto;
	vertical-align: middle;
}
.portfoliocontainer h6{
	position: relative;
	font-size: 1.1vw;
	font-weight: 600;
	color: #000000;
	padding: 2px 2px;
}
.portfoliocontainer h7{
	position: relative;
	font-size: 1vw;
	font-weight: 300;
	color: #000000;
	padding: 2px 2px;
}

/*----------------------------------------------*/
/* 1.6 Image hover Effect */
/*----------------------------------------------*/
.image-hvr-effect {
    display: flex;
    overflow: hidden;
}
.image-hvr-effect img.post-image {
    transform: scale(1.1);
    will-change: transform;
    transition: transform 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    z-index: 0;
}
.image-hvr-effect:hover img.post-image {
    transform: scale(1);
}

/*.......SECTION clients.........*/
#clients{
top:140px;
}
.clientscontainer{
	display: flex;
	flex-wrap: wrap;
	height: auto;
	margin: 0px;
	justify-content: center;
}
.clientscontainer .row .clients-tab-content {
    position: relative;
	justify-content: space-around;
	flex-wrap: wrap;
}
.clientscontainer .row .clients-tab-content .grid {
    flex-wrap: wrap;
}
.clientscontainer .row [data-tab-content] {
    opacity: 0;
    visibility: hidden;
    height: 0;
	overflow: hidden;
}
.clientscontainer .row .active[data-tab-content] {
    opacity: 1;
    visibility: visible;
    height: auto;
}
.clientscontainer .row .clients-tab-content a {  
    display: flex;
	flex-wrap: wrap;
	justify-content: center;
    width: 20%;
	height: auto;
    margin: 5px;
    overflow: hidden;
}
.clientscontainer .row .clients-tab-content a img {
    object-fit: cover;
    transition: transform 0.3s ease-in-out;
}
.clientscontainer .row .clients-tab-content a:hover img {
    transform: scale(1.1);
}
.clients-tab-content .grid {
    display: flex;
    flex-wrap: wrap;
	justify-content: space-around;
	text-align: center;
	margin: 10px 10px;
	
}

#logo img{
	width: 100%;
	object-fit: contain;
	border: solid 1px lightgray;
	border-radius: 4px;
	padding: 5px;
}


/*.......FOOTER.........*/

footer .banner{
	display: flex;
	position: relative;
	flex-wrap: wrap;
	justify-content: space-around;
	align-items: center;
	top: 140px;
	width: 100%;
	height: auto;
	background-color:rgba(163,32,102,1.00);
	padding: 0 20px;
}
footer .banner .license p{
	font-size: 1vw;
	color: #fff;
}
footer .banner .icons i{
	margin: 5px;
	padding: 10px;
	border-radius: 10px;
	font-size: 1.2vw;
	cursor: pointer;
    color:#fff;
}
.banner .icons i.fa-facebook-f {
		width: 45px;
		text-align: center;
		background: rgba(30,48,80,1.00);
}
.banner .icons i.fa-square-x-twitter {
		width: 45px;
		text-align: center;
		background: rgba(30,48,80,1.00);
}
.banner .icons i.fa-linkedin-in {
		width: 45px;
		text-align: center;
		background: rgba(30,48,80,1.00);
}

@media(min-width: 992px){
.header .menu > .menu-item-has-children:hover > .sub-menu{
	transform: translateY(0);
	opacity: 1;
	visibility: visible;
}
.header .menu > .menu-item-has-children:hover > a .plus:after{
    transform: translate(-50%,-50%) rotate(0deg);		
}
.header .menu > .menu-item > .sub-menu > .menu-item{
	display: block;
}
}
.header .menu > .menu-item > .sub-menu > .menu-item > a{
	display: block;
	padding: 6px 15px;
	font-size: 1.2vw;
	font-weight: 600;
	color: #000000;
	transition: all 0.3s ease;
	text-transform: capitalize;
}
.header .menu > .menu-item > .sub-menu > .language a {
	display: block;
	padding: 6px 15px;
	font-size: 1.2vw;
	color: #000000;
	text-transform: capitalize;
	font-weight: 600;
	transition: all 0.3s ease;
}
/*Hamburger Menu*/
.header-main {
	align-items: center;
}
.header-main .toggler {
	display: none; 
  	position: absolute;
	right: 20px;
  	z-index: 250;
  	cursor: pointer;
  	width: 50px;
  	height: 50px;
  	opacity: 0;
}
.header-main .hamburger {
  	position: absolute;
	text-align: center;
  	right: 20px;
  	z-index: 249;
  	width: 60px;
  	height: 60px;
  	padding: 1rem;
  	background: var(--primary-color);
  	display: none;
  	align-items: center;
  	justify-content: center;
}
.header-main .hamburger div {
  	position: relative;
  	flex: none;
  	width: 100%;
  	height: 2px;
  	background: gray;
  	display: flex;
  	align-items: center;
  	justify-content: center;
  	transition: all 0.4s ease;
}
/* Hamburger Lines - Top & Bottom */
.header-main .hamburger div::before,
.header-main .hamburger div::after {
 	content: '';
  	position: absolute;
  	z-index: 1;
  	top: -10px;
  	width: 100%;
  	height: 2px;
  	background: inherit;
}
/* Moves Line Down */
.header-main .hamburger div::after {
  	top: 10px;
}
/* Toggler Animation */
.header-main .toggler:checked + .hamburger div {
  	transform: rotate(495deg);
	transition-duration: 0.5s;
}
/* Turns Lines Into X */
.header-main .toggler:checked + .hamburger div:before,
.header-main .toggler:checked + .hamburger div:after {
  	top: 0;
  	transform: rotate(90deg);
}
/* Rotate On Hover When Checked */
.header-main .toggler:checked:hover + .hamburger div {
  	transform: rotate(225deg);
}
/* Show Menu */
.header-main .toggler:checked ~ .nav-menu {
  	visibility: visible;
	right: 0;
}
.header-main .toggler:checked ~ .nav-menu > div {
  	transform: scale(1);
  	transition-duration: var(--menu-speed);
}
.header-main .toggler:checked ~ .nav-menu > div > div {
  	opacity: 1;
  	transition:  opacity 0.4s ease 0.4s;
}
.header .menu-overlay {
	position: fixed;
	z-index: 999;
	background-color: rgba(0,0,0,0.5);
	left:0;
	top:0;
	height: 100%;
	width: 100%;
	visibility: hidden;
	opacity:0;
	transition: all 0.3s ease;
}

/* responsive 1025px */

@media screen and (max-width:1025px){
.section_title h2{
	font-size: 1.6vw;
}
section h3{
	font-size: 1.6vw;
}
section h4{
	font-size: 1.4vw;
}
section h5{
	font-size: 1.4vw;
}
section article{
	font-size: 1.4vw;
}
footer .banner .license p{
	font-size: 1.4vw;
}
footer .banner .license p{
	font-size: 1.4vw;
}
footer .banner .icons i{
	font-size: 1.4vw;
}
}

/* responsive 991px */

@media screen and (max-width:991px){
	
.header {
	position: fixed;
	padding: 0px;
}
.header-main .nav-logo img{
	width: 35%;
	padding: 0 10px;
}
.header .nav-menu{
	padding: 0 10px ;
}
.header .menu-overlay.active{
	visibility: visible;
	opacity: 1;
}	
.header .nav-menu {
	position: fixed;
	right: -100%;
	visibility: hidden;
	width: 100%;
	height: auto;
	top: 60px;
	overflow-y: auto;
	background-color: #fff;
	z-index: 1000;
	padding: 15px 20px;
	transition: all 0.5s ease;
	border-radius: 4px;
}
.header .nav-menu.open{
	visibility: visible;
	right: 0px;
}

/* MENU STYLES */
	
.header .menu > .menu-item{
	display: block;
	text-align: center;
	margin:0;
}
.header .menu > .menu-item-has-children > a{
	display: flex;
	justify-content: center;
	align-items: center;
}
.header .menu > .menu-item > a{
	color: #000000;
	font-size: 1.8vw;
	padding: 12px 15px;
	border-bottom: 1px solid rgba(163,32,102,1.00);
}
.header .menu > .menu-item:first-child > a{
    border-top: 1px solid rgba(163,32,102,1.00);	
}
.header .menu > .menu-item > a .plus{
	margin-left:15px; 
}
.header .menu > .menu-item > a .plus:before, 
.header .menu > .menu-item > a .plus:after{
	background-color: #000000;
}
.header .menu > .menu-item-has-children.active > a .plus:after{
	transform: translate(-50%,-50%) rotate(0deg);
}
.header .menu > .menu-item > .sub-menu{
	width: 100%;
	position: relative;
	opacity: 1;
	visibility: visible;
	border:none;
	background-color: transparent;
	box-shadow: none;
	transform: translateY(0px);
	padding: 0px;
	left: auto;
	top:auto;
	max-height: 0;
	overflow: hidden;
	}
.header .menu > .menu-item > .sub-menu > .menu-item > a{
	padding: 12px 45px;
	color: #000000;
	border-bottom: 1px solid rgba(163,32,102,1.00);
	font-size: 1.8vw;
}
.header .menu > .menu-item:nth-last-child(1) > .sub-menu {
	width: 100%;
}
.header .menu > .menu-item > .sub-menu > .language > a{
	padding: 12px 45px;
	color: #000000;
	border-bottom: 1px solid rgba(163,32,102,1.00);
	font-size: 1.8vw;
}
.header-main .hamburger {
	display: flex;
}
.header-main .toggler {
	display: flex;
}
#portfolio{
	top:90px;		
}
#clients{
	top:90px;
}
footer .banner{
	top:90px;
}
.row .tab-content a {  
    width: 50%;
}
.section_title h2{
	font-size: 2vw;
}
section h3{
	font-size: 2vw;
}
section h4{
	font-size: 1.8vw;
}
section h5{
	font-size: 1.6vw;
}
section article{
	font-size: 1.5vw;
}
.portfoliocontainer h6{
	font-size: 1.6vw;
	font-weight: 600;
	color: #000000;
	padding: 2px 2px;
}
.portfoliocontainer h7{
	font-size: 1.4vw;
	font-weight: 300;
	color: #000000;
	padding: 2px 2px;
}
footer .banner .license p{
	font-size: 1.5vw;
}
footer .banner .license p{
	font-size: 1.5vw;
}
footer .banner .icons i{
	font-size: 1.5vw;
}
/*---.portfolio-tabs .tabs .tab {
	border: none;
    padding: 15px;
    margin-right: 0;
}
.portfolio-tabs .tabs .tab.active, .portfolio-tabs .tabs .tab:hover {
    background: none;
    color: var(--accent-color);
}
.clients-tabs .tabs .tab {
	border: none;
    padding: 15px;
    margin-right: 0;
}
.clients-tabs .tabs .tab.active, .clients-tabs .tabs .tab:hover {
    background: none;
    color: var(--accent-color);
}----*/
}

/* responsive 768px */

@media only screen and (max-width: 768px) {
.header .menu > .menu-item > a{
	font-size: 2.4vw;
}
.header .menu > .menu-item > .sub-menu > .menu-item > a{
	font-size: 2.4vw;
}
.header .menu > .menu-item > .sub-menu > .language > a{
	font-size: 2.4vw;
}
.portfolio-tabs h3{
	font-size: 1.8vw;
	padding: 5px 10px;
}

.row .tab-content a {  
    
}
.section_title h2{
	font-size: 2.8vw;
}
section h3{
	font-size: 2.8vw;
}
section h4{
	font-size: 2.6vw;
}
section h5{
	font-size: 2.4vw;
}
section article{
	font-size: 2.3vw;
}
.portfoliocontainer h6{
	font-size: 2vw;
	font-weight: 600;
	color: #000000;
	padding: 2px 2px;
}
.portfoliocontainer h7{
	font-size: 1.8vw;
	font-weight: 300;
	color: #000000;
	padding: 2px 2px;
}
footer .banner .license p{
	font-size: 2.3vw;
}
footer .banner .license p{
	font-size: 2.3vw;
}
footer .banner .icons i{
	font-size: 2.3vw;
}
.clientscontainer .row .clients-tab-content a {  
    width: 28%;
    margin: 5px;
}
}
/* responsive 590px */
@media only screen and (max-width: 590px) {
.header .menu > .menu-item > a{
	font-size: 2.8vw;
}
.header .menu > .menu-item > .sub-menu > .menu-item > a{
	font-size: 2.8vw;
}
.header .menu > .menu-item > .sub-menu > .language > a{
	font-size: 2.8vw;
}
.portfolio-tabs h3{
	font-size: 2.2vw;
	padding: 0px 5px;
	overflow-x: hidden;
}
.portfolio-tabs .tab-content img.tab-image {
	
}
.clientscontainer .row .clients-tab-content a {  
    width: 40%;
    margin: 5px;
}
}

/* responsive 456px */

@media screen and (max-width:456px){
.header .menu > .menu-item > a{
	font-size: 3.2vw;
}
.header .menu > .menu-item > .sub-menu > .menu-item > a{
	font-size: 3.2vw;
}
.header .menu > .menu-item > .sub-menu > .language > a{
	font-size: 3.2vw;
}
.row .tab-content a {  
    width: 100%;
}
	
.section_title h2{
	font-size: 3.8vw;
}
section h3{
	font-size: 3.8vw;
}
section h4{
	font-size: 3.6vw;
}
section h5{
	font-size: 3.4vw;
}
section article{
	font-size: 3.3vw;
}
.portfoliocontainer h6{
	font-size: 2.6vw;
	font-weight: 600;
	color: #000000;
	padding: 2px 2px;
}
.portfoliocontainer h7{
	font-size: 2.4vw;
	font-weight: 300;
	color: #000000;
	padding: 2px 2px;
}
footer .banner .license p{
	font-size: 3.3vw;
}
footer .banner .license p{
	font-size: 3.3vw;
}
footer .banner .icons i{
	font-size: 3.3vw;
}
.clientscontainer .row .clients-tab-content a {  
    width: 40%;
    margin: 5px;
}
}
@media only screen and (max-width: 390px) {
.header .menu > .menu-item > a{
	font-size: 3.4vw;
}
.header .menu > .menu-item > .sub-menu > .menu-item > a{
	font-size: 3.4vw;
}
.header .menu > .menu-item > .sub-menu > .language > a{
	font-size: 3.4vw;
}
.section_title h2{
	font-size: 3.4vw;
}
section h3{
	font-size: 3.4vw;
}
section h4{
	font-size: 3.2vw;
}
section h5{
	font-size: 2.8vw;
}
.portfolio-tabs .tabs .tab{
	padding: 2px 5px;		
}
.portfolio-tabs h3{
	font-size: 2.6vw;
}

.portfoliocontainer h6{
	font-size: 3.2vw;
	font-weight: 600;
	color: #000000;
	padding: 2px 2px;
}
.portfoliocontainer h7{
	font-size: 2.8vw;
	font-weight: 300;
	color: #000000;
	padding: 2px 2px;
}
footer .banner .license p{
	font-size: 3vw;
}
footer .banner .license p{
	font-size: 3vw;
}
footer .banner .icons i{
	font-size: 3.2vw;
}
.clientscontainer .row .clients-tab-content a {  
    width: 46%;
    margin: 5px;
}
}

