/******************** GENERAL ADJUSTMENTS ********************/ 
body, html {                                                                                                  
    overflow-x: hidden; 
    background-color: white; 
} 
  
* {                 
	margin: 0px auto;
	padding: 0px;
	box-sizing: border-box;
}

h1, h2, h3, h4, h5, h6, p, li, a { 
	font-family: 'Fira Sans Condensed', sans-serif;
}

/* link */ 
a, a:hover {
	text-decoration: none;
}

/* background image */
.background {
	background-size: cover;
	background-position: 50% 50%;
} 

/* fill-parent */ 
.fill-parent {
	width: 100%;
	height: 100%; 
}

/* cursor */
.typewritercursor { 
	font-family: 'Fira Sans Condensed', sans-serif;
	font-weight: 100 !important;
	animation: cursorblink 1s step-end infinite;
}

/* animate parallax */
.parallax-element.animate {
	transition: 3s; 
} 

 





  

/******************** DROPDOWN MENU *********************/
#DropDownMenu {                  
    display: none; 
    width: 300px; 
    height: 700px;
    position: fixed;
    top: 0px;
    left: -300px; 
    z-index: 999999999; 
    text-align: left; 
    background-color: rgb(245,245,245);  
} 
 
/* header */
#DropDownMenu #NavHeader {
	width: 300px; 
	height: 105px; 
	position: absolute; 
	top: 0px; 
	z-index: 100; 
	background-image: url("../../Assets/Images/navhead.jpg"); 
	border-bottom: 1px solid rgb(225,225,225);
}

/* close */ 
#HamClose {
   width: 55px; 
   height: 55px; 
   padding-top: 16.5px; 
   position: absolute; 
   top: 25px; 
   left: 25px; 
   cursor: pointer; 
   text-align: center; 
   background-color: #AB182D;  
   border-radius: 100%; 
} 
 
#HamClose h3 { 
   font-size: 20px;
   font-weight: 300;  
   color: white;
} 

/* inner */   
#DropDownMenu #NavInner {
	width: 300px; 
	height: 100%;
	padding-left: 25px;
	position: absolute;
	top: 0px;
	left: 0px;  
}
   
#DropDownMenu #NavInner #CenteredContainer {
	width: 100%;
	height: auto;
	padding-top: 160px;
	padding-bottom: 100px;
} 

/* menu options */
#DropDownMenu #NavLinks a {
    display: block;
	width: 280px;
    margin: 30px 0px 0px 0px;  
	line-height: 1;    
    font-size: 15px;  
	font-weight: bold; 
    color: black; 
}

#DropDownMenu #NavLinks a:nth-child(1) {
	margin-top: 0px;
}

#DropDownMenu #NavLinks a.ddel {  
    margin-top: 7px; 
    padding-left: 10px; 
    font-weight: 300; 
    font-style: italic; 
}  
 
/* footer */
#DropDownMenu #NavFooter {
	width: 100%;
	margin-top: 30px;
	padding-top: 7px;
	border-top: 1px solid rgb(225,225,225);
} 

#DropDownMenu #NavFooter a { 
	font-size: 10px; 
	font-weight: 300;
	color: rgb(200,200,200);
}

#DropDownMenu #NavFooter a strong {
	font-weight: 900;
}
       





 
              
/******************** PRIMARY CONTROLS ********************/  
  

/****** HAM ******/
#Hamburger {  
   width: 65px;
   height: 65px;
   padding-top: 22.5px; 
   position: fixed;
   top: 35px;
   left: 35px;  
   z-index: 99999999;   
   cursor: pointer;         
}

/* ham active */
#Hamburger.active { 
   top: calc(50% - 32.5px) !important;
   left: calc(50% - 32.5px) !important; 
   transform: rotate(405deg);            
}
 
/* inner */
#Hamburger .inner-el {
	opacity: 0;  
	transition: 1000ms; 
} 

#Hamburger .inner-el.first {
	opacity: 1;  
}

/* inner active */   
#Hamburger.active .inner-el {
	opacity: 1;  
}
 
#Hamburger.active .inner-el.first {
	opacity: 0 !important; 
}

/* bar */
#Hamburger .bar { 
   width: 25px;	
   height: 4px;
   margin-top: 4px;
   background-color: rgb(128,0,0);      
}

#Hamburger .bar:nth-child(1) {
   margin-top: 0px;
}

/* close */
#Hamburger #Close {
	width: 100%;
	position: absolute;
	top: 16px;
	text-align: center;
	font-weight: 300;
	font-size: 30px;
	color: white; 
}


/****** LOGO ******/ 
#NavLogo {
	display: block;
	width: 50px; 
	height: auto; 
	position: fixed; 
	top: 35px; 
	right: 35px; 
	z-index: 99999;        
}   


/****** TYPE ******/ 
#NavTypewriter {   
	position: fixed;
	top: 60px;  
	left: 135px;  
	z-index: 99999;      
	font-size: 13px;
	font-weight: 300;  
	color: black;s
}   


/****** FAB ******/
/* fab + els */
.primary-control {        
	width: 55px;  
	height: 55px; 
	position: fixed;     
	left: 40px;   
	z-index: 99999;  
	cursor: pointer;  
	background-color: black;    
	border-radius: 100%;  	
	transition: 1s;  
} 
 
.primary-control:not(.fab):hover {
	opacity: 0.5 !important;   
	transform: rotate(360deg) !important; 
}

/* fab */ 
#PrimaryFAB {              
    top: 135px;	  
}   
 
#PrimaryFAB.active {
	top: 285px;   
} 
     
/* fab-el */  
.primary-control.fab {    
	top: 285px;  
	z-index: 9999;       
	opacity: 0;    
	background-color: rgb(225,225,225) !important;
}

.primary-control.fab.active {
	opacity: 1;  
	transform: scale(0.5); 
}

.primary-control.fab:hover {
	opacity: 0.1;  
	transform: scale(0.6) !important; 
} 
  
#PrimaryOne.active {
	top: 230px;  
	left: 55px;   
}  

#PrimaryTwo.active {
	top: 260px; 
	left: 92px;  
}

#PrimaryThree.active {  
    top: 310px; 
	left: 92px; 
} 

#PrimaryFour.active {
	top: 340px;
	left: 55px;  
} 


/****** DOT ******/ 
#DotNavigation {   
	width: 16px;   
    height: 130px;
	position: fixed;
	bottom: 40px; 
	right: 45px;
	z-index: 99999;  
}

/* dot */
#DotNavigation .container {
	display: block;
	width: 16px;
	height: 16px;
	margin-top: 20px; 
	cursor: pointer;
	border: 1px solid rgb(225,225,225);  
	border-radius: 100%;
	transition: 300ms; 
} 
	
#DotNavigation .container:nth-child(1) {
	margin-top: 0px;
} 
 
/* inner */ 
#DotNavigation .container .inner {
	width: 6px;
	height: 6px;
	margin-top: 4px;
	background-color: rgb(225,225,225); 
	border-radius: 100%; 
	transform: scale(2.5);
	transition: 500ms;    
}  
 
/* active */ 
#DotNavigation .container.active {  
	border: 1px solid black;     
	border-radius: 0%;   
	transform: rotate(45deg);  
}
 
#DotNavigation .container.active .inner {
	background-color: black;   
	border-radius: 0%;  
	transform: scale(1);  
}

/* inactive hover */ 
#DotNavigation .container:not(.active):hover {
	opacity: 0.5;   
}     
 

 

 



/******************** CAROUSEL SECTION ********************/ 
.carouselsection {     
    position: relative;    
    overflow: hidden;  
}
 
/* secs */
.carouselsec {   
   display: none;
   width: 100%;
   height: 100%; 
   position: absolute;
   bottom: 0px;
   left: -100%;  
   z-index: 9;    
   overflow: hidden;    
} 

.carouselsec.first {
   display: block;
   left: 0px; 
}
 
/* img */  
.carouselsec .carimg {
   width: 100%;
   height: calc(100% + 100px);   
   position: absolute; 
   top: 0px; 
   left: 0px;
   z-index: 9;
   background-position-x: 50%; 
   background-position-y: 0%;   
   background-size: cover; 
}

/* video */ 
/*
.carouselsec video {
   min-width: 100%; 
   min-height: 100%; 
   width: auto; 
   height: auto; 
   position: absolute; 
   top: 50%; 
   left: 50%; 
   z-index: 9; 
   transform: translate(-50%, -50%); 
}
*/ 

/* overlay */
.carouseloverlay {
   position: absolute;
   bottom: 0px;
   left: 0px; 
   z-index: 99;  
   background-color: rgba(255,255,255,0.7);  
}
 
/* controls */
.carouselcontrols {
   width: 100%;
   height: 20px;
   position: absolute;
   top: calc(50% - 10px);  
}

.carouselcontrols .inner {
   width: 150px;
   height: 20px;
}

.carouselcontrols .controls {
   display: inline-block;
   height: 20px;   
   cursor: pointer;
   transition: 500ms;
}

.carouselcontrols .controls.right {
   float: right;
}

.carouselcontrols .controls.left {
   float: left;
}

.carouselcontrols .controls:hover {
   opacity: 0.5;
   transform: scale(1.1);
}     
  





  
                     
/******************** VERTICAL DIVIDER ********************/   
.vertical-divider {
	width: 100%;
	height: 100px;
}

.vertical-divider .divider {
	width: 2px;
	height: 50px;
	background-color: rgb(225,225,225);
}







           
/******************** BLOG SECTION ********************/  
#BlogSection {                   
	width: calc(100% - 60px);  
	height: auto;
}  

/* header */
#BlogSection #BlogHeader {
    padding: 100px 0px; 
    text-align: center;
    font-size: 50px;
    font-weight: bold; 
    color: rgb(128,0,0);
}

/* row */
#BlogSection #BlogRow {
	width: 100%;
	height: 500px;   
} 

/* outer */
#BlogSection .col {
	display: inline-block;
	width: 25%;
	height: 100%; 
	float: left;   
	border-right: 15px solid white;
	border-left: 15px solid white;
} 

#BlogSection .col.one {
    border-left: 0px solid white;
}

#BlogSection .col.four {
    border-right: 0px solid white;
} 

/* image */  
#BlogSection .col.one .image {
	background-image: url("../../Assets/Images/Blog/1.jpg");
}  
  
#BlogSection .col.two .image {
	background-image: url("../../Assets/Images/Blog/2.jpg");
}

#BlogSection .col.three .image {
	background-image: url("../../Assets/Images/Blog/3.jpg");
	background-position-x: 90%;  
} 

#BlogSection .col.four .image {
	background-image: url("../../Assets/Images/Blog/4.jpg");
} 
 
/* overlay */
#BlogSection .overlay { 
	position: relative;
	cursor: pointer;     	
    background-color: rgba(255,255,255,0.7);  
	transition: 500ms;
	text-align: center;
}
   
#BlogSection .overlay:hover {
    background-color: rgba(0,0,0,0.7);  
} 
 
#BlogSection .overlay p {     
    width: 150px; 
	position: absolute;
	top: 250px;   
	left: calc(50% - 75px); 
	font-size: 18px;    
	font-weight: 300;
	color: black;
	transition: 500ms;
}  

#BlogSection .overlay:hover p {
   color: white; 
}
  






        
/******************** FOOTER SECTION ********************/ 
#FooterSection {                             
	width: 100%;     
	height: auto; 
    position: relative;   	  
	overflow: hidden;      
}

/* header */ 
#FooterSection #FooterHeader {
    padding: 100px 0px; 
    text-align: center; 
}

#FooterSection #FooterHeader h1 { 
    font-size: 50px;
    font-weight: bold; 
    color: rgb(128,0,0);
}

#FooterSection #FooterHeader p {
    font-size: 20px;  
    font-weight: 300;
    color: black;
}

/* col */
#FooterSection .col {
	display: inline-block;
	width: 50%;
	height: 800px;
	position: relative;
	float: left;
	overflow: hidden; 
}      

/* test */
#FooterSection #TestCarousel { 
   text-align: center;
}

#FooterSection #TestCarousel p {
   width: 400px;
   position: absolute;  
   top: calc(50% - 280px);   
   left: calc(50% - 200px);   
   line-height: 1.4;
   font-size: 14px;
   font-weight: 300;    
   transition: 400ms;  
}

#FooterSection #TestCarousel p span {
   font-weight: bold; 
} 

/* controls */
#FooterSection #TestCarousel .carouselcontrols {
   height: 20px; 
   top: calc(50% - 10px); 
}

#FooterSection #TestCarousel .carouselcontrols .inner {
   width: 500px; 
   height: 20px; 
}

#FooterSection #TestCarousel .carouselcontrols .controls {
   height: 20px; 
}

/* contact */ 
#FooterSection #ContactSection { 
    border-bottom: 30px solid white;
    border-left: 30px solid white;
    border-right: 15px solid white; 
	background-image: url("../../Assets/Images/contact.jpg");   
	background-position-y: 0%;     
}
 
/* overlay */
#FooterSection #ContactSection #ContactOverlay {   
    background-color: rgba(255,255,255,0.1);   
}   
 
/* copyright */
#FooterSection #TestSection #Copyright {
	display: none;
    width: 100%;  
    padding: 0px 100px;
    position: absolute;
    bottom: 30px; 
    text-align: center; 
    font-size: 12px;
    font-weight: 400; 
    color: black;  
} 
 







/******************** FORM SECTION ********************/ 
#FormSection {
	display: none;
	width: 100%;
	height: 100vh;
	border: none;
}








/*******************************************************/   
/********************* MOBILE CODE *********************/   
/*******************************************************/   

 





 
/******************** DROPDOWN MENU *********************/
                                                                                                                                                     
/********* maxheight **********/
@media (max-height: 700px) {       
#DropDownMenu {
	height: 100vh;    
}
  
/* inner */
#DropDownMenu #NavInner {
    overflow-y: scroll;
}
} 







  
/******************** PRIMARY CONTROLS ********************/   
                                                              
/********* 900px *********/
@media (max-width: 900px) {  

/****** HAM ******/
#Hamburger {  
   width: 50px;
   height: 50px;
   padding-top: 17px; 
   top: 20px;
   left: 20px;      
   border: 1px solid black;
}

/* bar */
#Hamburger .bar { 
   width: 20px; 
   height: 3px;
   margin-top: 3px;
}


/****** LOGO ******/ 
#NavLogo {
    width: 40px; 
    top: 20px; 
    right: 20px; 
}


/****** TYPE ******/ 
#NavTypewriter {   
    display: none;
}


/****** FAB ******/
.primary-control {        
    width: 40px;  
    height: 40px; 
    left: 25px;   
} 

#PrimaryFAB {              
    top: 90px;   
}   
 
#PrimaryFAB.active {
    top: 130px;  
} 
     
.primary-control.fab {    
    top: 130px;  
}

#PrimaryTwo.active {
    top: 110px; 
    left: 70px;  
}

#PrimaryThree.active {  
    top: 150px; 
    left: 70px; 
} 


/****** DOT ******/
#DotNavigation {
    display: none;
} 
}
 






            
/******************** VERTICAL DIVIDER ********************/     
 
/********* 900px *********/
@media (max-width: 900px) { 
.vertical-divider {  
	height: 50px;  
}

.vertical-divider .divider { 
	height: 25px;  
}   
}
  
 





 
/******************** BLOG SECTION ********************/  
   
/********* 1100px *********/
@media (max-width: 1100px) {      
/* overlay */ 
#BlogSection .overlay p {     
	font-size: 16px; 
}   
} 

/********* 1000px *********/
@media (max-width: 1000px) {      
/* header */
#BlogSection #BlogHeader {
    padding: 50px 0px; 
    font-size: 35px; 
}

/* row */
#BlogSection #BlogRow {
	width: 100%;
	height: 1690px;   
} 

/* col */
#BlogSection .col {
	display: inline-block;
	width: 100%;
	height: 400px;   
	margin-top: 30px;
	float: left;   
	border-right: 0px solid white;
	border-left: 0px solid white;
} 

#BlogSection .col.one {
    margin-top: 0px !important; 
}

/* overlay */ 
#BlogSection .overlay p {       
	top: 200px;    
	font-size: 14px; 
}   
} 

/********* 900px *********/
@media (max-width: 900px) {     
#BlogSection {                
	width: calc(100% - 40px); 
}   

/* row */
#BlogSection #BlogRow {
	height: 1660px;   
} 

/* col */
#BlogSection .col { 
	margin-top: 20px; 
} 
} 
     


  


 
            
/******************** CONTACT SECTION ********************/ 
    
/********* 1100px *********/ 
@media (max-width: 1100px) { 
/* test */
#FooterSection #TestCarousel p {
   width: 350px;
   top: calc(50% - 270px);   
   left: calc(50% - 175px);    
   line-height: 1.3;
   font-size: 13px;  
}

/* controls */
#FooterSection #TestCarousel .carouselcontrols .inner {
   width: 450px; 
}
}

/********* 900px *********/ 
@media (max-width: 900px) {
/* header */
#FooterSection #FooterHeader {
    padding: 50px 0px; 
}

#FooterSection #FooterHeader h1 { 
    font-size: 35px; 
}

#FooterSection #FooterHeader p {
    font-size: 12px; 
}
 
/* col */
#FooterSection .col {
    display: block;
    width: 100%;
    height: 400px; 
    float: none;
}  

#FooterSection #TestSection {
    height: 700px;
}

/* contact */
#FooterSection #ContactSection {
    border-top: 0px solid white; 
    border-bottom: 20px solid white;
    border-right: 20px solid white;
    border-left: 20px solid white;
} 

/* test */
#FooterSection #TestCarousel p {
   width: 280px;
   left: calc(50% - 140px);    
   line-height: 1.2;
   font-size: 12px;    
}

/* controls */
#FooterSection #TestCarousel .carouselcontrols .inner {
   width: 350px; 
}

/* copyright */
#FooterSection #TestSection #Copyright {  
    padding: 0px 10px;
    bottom: 10px;    
    font-size: 9px;
}   
}    








/******************************************************/   
/********************* ANIMATIONS *********************/   
/******************************************************/   
 
 






/********************* CURSOR *********************/
@keyframes cursorblink {
  from, to { 
     color: transparent; 
  }
  50% { 
     color: black;
  }
}

@-webkit-keyframes cursorblink {
  from, to { 
     color: transparent; 
  }
  50% { 
     color: black;
  }
}
 






 
/********************* ANIMATION ELEMENT *********************/ 
/* animation-element */ 
.animation-element { 
	width: 100%; 
	height: 2px; 
	margin-top: -1px; 
	position: absolute; 
	top: 50%; 
} 

/* animation-element up */ 
.animation-element.up-trigger { 
	top: 25% !important; 
} 

/* transition */
.ae-zoom, .ae-up, .ae-fadein, .ae-fadeout {
	position: relative; 
	-moz-transition: all 500ms ease-out; 
	-webkit-transition: all 500ms ease-out;
	-o-transition: all 500ms ease-out; 
	transition: all 500ms ease-out;
}

/* zoom */
.ae-zoom {
	-moz-transform: scale(1.2);
	-webkit-transform: scale(1.2);
	-o-transform: scale(1.2);
	transform: scale(1.2);
}      
                                                                                       
.ae-zoom.in-view {
	-moz-transform: scale(1);
	-webkit-transform: scale(1);
	-o-transform: scale(1);
    transform: scale(1);
} 

/* up */ 
.ae-up { 
    -moz-transform: translate3d(0px, 50px, 0px);   
    -webkit-transform: translate3d(0px, 50px, 0px);
    -o-transform: translate(0px, 50px);
    -ms-transform: translate(0px, 50px);
    transform: translate3d(0px, 50px, 0px); 
}

.ae-up.in-view {
    -moz-transform: translate3d(0px, 0px, 0px);
    -webkit-transform: translate3d(0px, 0px, 0px);
    -o-transform: translate(0px, 0px);
    -ms-transform: translate(0px, 0px);
    transform: translate3d(0px, 0px, 0px); 
} 

/* fade */
.ae-fadein, .ae-fadeout.in-view {      
	opacity: 0;
}

.ae-fadeout, .ae-fadein.in-view {
	opacity: 1;
} 







