html{
background-color:#f4f4f4;
}

html * {
box-sizing:border-box;
}

body{
    width:100%;
}

p{
  margin:0;
  color:#7d7d7d;
}

#wrapper{
display:none;
width:100%;
}

#loading{
position:absolute;
top:0;
left:0;
display:flex;
width:100%;
height:100%;
align-items:center;
justify-content:center;
background-color:#1f1f1f;
}

.loading-content{
display:inline-block;
}

.loading-text{
    display:inline-flex;
    margin: 0 auto;
    margin-top:3rem;
    margin-bottom:0;
    flex-direction: column;
   }
   
   .loading-text p{
     color:#fff;
     font-size:1rem;
     font-weight:600;
     margin-bottom:0;
   }

   .loading-text h4{
    color:#FDC92A;
    font-size:2.5rem;
    font-weight:600;
    margin-top:0.5rem;
    margin-bottom:0;
  }
   
   .loading-spinner {
     margin: 0 auto;
     width: 5rem;
     height: 5rem;
     position: relative;
     text-align: center;
     -webkit-animation: sk-rotate 2.0s infinite linear;
     animation: sk-rotate 2.0s infinite linear;
   }
   
   .dot1, .dot2 {
     width: 60%;
     height: 60%;
     display: inline-block;
     position: absolute;
     top: 0;
     background-color: #FDC92A;
     border-radius: 100%;
     
     -webkit-animation: sk-bounce 2.0s infinite ease-in-out;
     animation: sk-bounce 2.0s infinite ease-in-out;
   }
   
   .dot2 {
     top: auto;
     bottom: 0;
     -webkit-animation-delay: -1.0s;
     animation-delay: -1.0s;
   }
   
   @-webkit-keyframes sk-rotate { 100% { -webkit-transform: rotate(360deg) }}
   @keyframes sk-rotate { 100% { transform: rotate(360deg); -webkit-transform: rotate(360deg) }}
   
   @-webkit-keyframes sk-bounce {
     0%, 100% { -webkit-transform: scale(0.0) }
     50% { -webkit-transform: scale(1.0) }
   }
   
   @keyframes sk-bounce {
     0%, 100% { 
       transform: scale(0.0);
       -webkit-transform: scale(0.0);
     } 50% { 
       transform: scale(1.0);
       -webkit-transform: scale(1.0);
     }
   }


   #page-container{

  }


  .page-header{
    background: url(../../assets/img/header-bg.jpg) no-repeat;
    height: 100vh;
    min-height: 500px;
    position: relative;
    background-size: cover;
    background-position:center;
  }


  .page-header-inner{
    position:relative;
    display:flex;
    justify-content: center;
    align-items: center;
    padding: 10rem 0;
    width:100%;
    height:100%;
    background-color: rgba(0,0,0,0.4);
  }

  .page-header-content{
    display:inline-block;
    text-align: center;
    color:#fff;
    font-weight:600;
    padding-top: 5rem;
    padding-left:2rem;
    padding-right:2rem;
  }

  .page-header-title{
    letter-spacing: 3px;
    font-size: 3.5rem;
    font-weight: 600;
    margin:0;
    text-align: center;
    text-transform:uppercase;
  }


  .page-header-content ul{
    display:inline-block;
    text-align: left;
    list-style:none;
    margin-bottom: 2rem;
    margin-top: 3rem;
    font-size:1.7rem;
  }

  .page-header-content ul li i{
    color:#FDC92A;
    margin-right:0.8rem;
  }

  .page-header-content ul li span{
    letter-spacing:2px;
  }

.link-white, .link-white:visited, .link-white:active{
color:#fff;
text-decoration: none;
}

.link-white:hover, .link-white:focus{
  color:#FDC92A;
  text-decoration:none;
}

  .navbar{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000;
    background-color: rgba(0, 0, 0, 0.8);
  }

  .navbar-inner{
    display:flex;
    position: relative;
    width:100%;
    justify-content: space-between;
    align-items: center;
    padding:2rem;
  }


  .callIcon, .callIcon:active, .callIcon:visited{
    background-color:#1f1f1f;
    width:5rem;
    height:5rem;
    display:inline-flex;
    justify-content: center;
    align-items: center;
    color:#FDC92A;
    border:3px solid #fff;
    border-radius:2.5rem;
    text-decoration: none !important;
  }



  .callIcon:hover, .callIcon:focus i{
    background-color:#FDC92A;
    color:#1f1f1f;
  }

  .callIcon i{
    font-size:2rem;
  }

  nav ul {
    list-style: none;
    margin:0;
    margin:0 -1rem;
  }

  nav ul li {
    margin:0 1rem;
    display:inline-block;
  }

   nav a {
    position:relative;
    padding: 1rem 0;
    font-size:1.2rem;
    text-decoration: none;
    color:#fff;
    text-transform:uppercase;
    text-shadow: none;
    -webkit-transition: color 0.3s;
    -moz-transition: color 0.3s;
    transition: color 0.3s;
  }
  
  nav a::before,
  nav a::after {
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    background: #FDC92A;
    content: '';
    opacity: 0;
    -webkit-transition: opacity 0.3s, -webkit-transform 0.3s;
    -moz-transition: opacity 0.3s, -moz-transform 0.3s;
    transition: opacity 0.3s, transform 0.3s;
    -webkit-transform: translateY(-10px);
    -moz-transform: translateY(-10px);
    transform: translateY(-10px);
  }
  
  nav a::before {
    top: 0;
    -webkit-transform: translateY(-10px);
    -moz-transform: translateY(-10px);
    transform: translateY(-10px);
  }
  
  nav a::after {
    bottom: 0;
    -webkit-transform: translateY(10px);
    -moz-transform: translateY(10px);
    transform: translateY(10px);
  }
  
  nav a:hover,
  nav a:focus {
    color:#FDC92A;
  }
  
  nav a:hover::before,
  nav a:focus::before,
  nav a:hover::after,
  nav a:focus::after {
    opacity: 1;
    -webkit-transform: translateY(0px);
    -moz-transform: translateY(0px);
    transform: translateY(0px);
  }
  

  .logo, .logo:visited, .logo:active {
   display: inline-flex;
   text-decoration: none !important;
   font-size: 1rem;
  }

  .logo-small{
    font-size:0.8rem !important;
  }

  .logo-inner{
    display:inline-flex;
    align-items: center;
  }

  .logo-icon{
  display:inline-flex;
  background-color:#FDC92A;
  width:6em;
  height:6em;
  position: relative;
  align-items: center;
  justify-content: center;
  padding: 0.5em;
  border-radius:3px;
  }

  .logo-icon img{
    width:100%;
  }

  .logo-text{
    display:inline-flex;
    flex-direction: column;
    font-weight: 600;
    color:#fff;
    margin-left:1em;
  }

  .logo-title{
   font-size:2em;
   line-height: normal;
  }

  .logo-subtext{
   font-size:0.95em;
   line-height: normal;
  }

  .logo-text span{
    color:#fff; 
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-image: linear-gradient( to right, #FDC92A, #FDC92A 50%, #fff 50%);
    background-size: 200% 100%;
    background-position: 100%;
}

.logo:hover .logo-text span, .logo:focus .logo-text span{
    transition: all 0.3s cubic-bezier(0.0, 0.2, 0.5,0.1);
    background-position: 0%;
}


#toTop{
  display:flex;
  align-items: center;
  justify-content: center;
  background-color:#FDC92A;
  border: 3px solid #1f1f1f;
  border-radius:2rem;
  position:fixed;
  bottom:1rem;
  right:1rem;
  width:4rem;
  height:4rem;
  visibility: hidden;
  cursor:pointer;
  transition: opacity 0.7s ease-out;
  opacity: 0;
}



#toTop i{
  font-size:2rem;
}


.show{
  opacity: 0.5 !important;
  visibility: visible !important;
}

#toTop:hover{
  opacity: 1 !important;
}

.page-color{
  padding:4rem 2rem;
  background-color:#1f1f1f;
}

.page-color-content{
  display:inline-block;
  padding:2rem 0;
}


.page-color .page-header-title{
  color:#FDC92A !important;
}
.page-color .page-header-description, .page-color p{
  color:#e6e6e6;
}


.page{
padding:4rem 2rem;
}

.page .page-header-title, .page-color .page-header-title{
  margin-bottom:1rem;
  line-height: 1.3em;
  font-size:3rem;
  color:#1f1f1f;
}

.page h4{
  font-size:2rem;
  font-weight:600;
  color: #4f4f4f;
  line-height: 1em;
}

.page-header-description{
  text-align:center;
  margin-bottom:1rem;
}

.text-white{
  color:#fff;
}

.text-color{
  color:#FDC92A !important;
}

.text-dark{
  color:#4f4f4f;
}


.text-center{
  text-align:center;
}

.text-bold{
  font-weight:600;
}


.page-footer .footer-links{
  padding: 2rem;
  background-color:#555;
}

.page-footer .footer-links a{
  font-weight: 600;
}

.page-footer .footer-links a:hover, .page-footer .footer-links a:focus{
  color:#FDC92A;
  text-decoration: none;
}
  
.page-footer{
display:block;
background-color:#1f1f1f;
position:relative;
}

.footer-padding{
  padding: 4rem 2rem;
}

.page-footer p{
color:#fff;
}

.page-footer .text-color{
  font-size:1.6rem;
}

.page-footer a{
color:#ffffff;
text-decoration:none;
font-weight: 400;
}

.page-footer i{
  display: inline-flex;
  width: 1em;
  justify-content: center;
  margin-right: 0.2rem;
}

.page-footer a:active, .page-footer a:focus, .page-footer a:hover{
  color:#FDC92A;
}


.page-footer .copyright{
padding:1rem 2rem;
color:#c1c1c1;
text-align:center;
}

.page-footer .copyright span{
  font-size: 1.2rem;
}

.flex-center{
  display:flex;
  width:100%;
  height:100%;
  justify-content: center;
  align-items: center;
}

.img{
  -webkit-box-shadow: 0px 1px 7px 1px rgba(147, 147, 147, 0.9);
  -moz-box-shadow: 0px 1px 7px 1px rgba(147, 147, 147, 0.9);
  box-shadow: 0px 1px 7px 1px rgba(147, 147, 147, 0.9);
    width:100%;
    border-radius:3px;
}

.content{
  width:100%;
}

.flex-img{
  min-height:200px;
  -webkit-box-shadow: 0px 1px 7px 1px rgba(147, 147, 147, 0.9);
  -moz-box-shadow: 0px 1px 7px 1px rgba(147, 147, 147, 0.9);
  box-shadow: 0px 1px 7px 1px rgba(147, 147, 147, 0.9);
  border-radius:3px;
}

.company-image{
width:100%;
height:100%;
background-image: url("../../assets/img/company.jpg");
background-repeat: no-repeat;
background-size: cover;
background-position: bottom right;
}

.spacer{
  width:100%;
  height:100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.spacer > div{
  display:inline-block;
  width:1px;
  height:100%;
  background-color: #000;
}

.btn-block{
  width:100%;
}

.btn{
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-height: 44px;
  min-width:200px;
  text-align: center;
  padding:1rem 4rem;
  border-radius:2em;
  border-width: 2px;
  border-style:solid;
  cursor:pointer;
  text-transform:uppercase;
  text-decoration: none !important;
  outline:none;
  font-weight:600;
  font-size: 1.7rem !important;
  letter-spacing: 1px;
}

.btn-primary, .btn-primary:visited, .btn-primary:active{
  border-color:#FDC92A;
  color:#fff; 
  background-image: linear-gradient( to right, #FDC92A, #FDC92A 50%, transparent 50%);
  background-size: 250% 100%;
  background-position: 100%;
}

  
  .btn-primary:hover, .btn-primary:focus{
    transition: all 0.3s cubic-bezier(0.0, 0.2, 0.5,0.1);
    background-position: 0%;
    color:#000;
  }

.btn-secondary, .btn-secondary:visited, .btn-secondary:active{
border-color:#1f1f1f;
color:#fff; 
background-image: linear-gradient( to right, #FDC92A, #FDC92A 50%, #1f1f1f 50%);
background-size: 250% 100%;
background-position: 100%;
}

.btn-secondary:hover, .btn-secondary:focus{
  transition: all 0.3s cubic-bezier(0.0, 0.2, 0.5,0.1);
  background-position: 0%;
  color:#1f1f1f;
}

.page-header-btn{
  margin-top:3rem;
  font-size:1.7rem;
}

.flex-row{
  width: calc(100% + 2rem);
  margin-left: -1rem;
  display:flex;
  flex-flow: row wrap;
  margin-top: -1rem;
  margin-bottom: -1rem;
}

.flex-row > div {
  display:inline-flex;
  flex: 0 1 calc(100% - 2rem);
  margin:1rem;
  position:relative;
  flex-direction:column;
}

.text-center{
  text-align:center;
}

.inline-block{
  display:inline-block;
}

.margin-right{
  margin-right:2rem;
}

.margin-left{
  margin-left:2rem;
}

.margin-v{
  margin-top:2rem;
  margin-bottom:2rem;
}

.margin-top{
  margin-top:2rem !important;
}

.margin-top-1{
  margin-top:1rem !important;
}

.margin-bottom-1{
  margin-bottom:1rem !important;
}

.margin-bottom{
  margin-bottom:2rem !important;
}

.page-color .thumbnail{
  background-color:#1f1f1f;
  color:#fff;
  border: 1px solid #353535;
}

.page .thumbnail{
  background-color:#fff;
  color:#1f1f1f;
  border: 1px solid #dbdbdb;
}

.page-color .thumbnail .thumbnail-content .icon{
  background-color:#1f1f1f;
  border:3px solid #FDC92A;
  color:#fff;
}

.page .thumbnail .thumbnail-content .icon{
  background-color:#f4f4f4;
  border:3px solid #1f1f1f;
  color:#1f1f1f;
}

.page .thumbnail .thumbnail-content h4{
  color:#1f1f1f;
}

.page .thumbnail .thumbnail-content p{
  color:#7d7d7d;
}

.page .thumbnail:hover, .thumbnail:focus{
  -webkit-box-shadow: 2px 5.66px 20px 0px rgba(136, 136, 136, 0.2);
  box-shadow: 2px 5.66px 20px 0px rgba(136, 136, 136, 0.2);
}




.page-color .thumbnail:hover, .thumbnail:focus{
  -webkit-box-shadow: 2px 5.66px 20px 0px rgba(136, 136, 136, 0.2);
  box-shadow: 2px 5.66px 20px 0px rgba(136, 136, 136, 0.2);
}

.page-color .thumbnail:hover .thumbnail-content .icon, .thumbnail:focus .thumbnail-content .icon {
  color: #FDC92A;
}




.thumbnail{
  
  margin-top:6rem !important;
  border-radius: 4px;
  -webkit-transition: border .2s ease-in-out;
  -o-transition: border .2s ease-in-out;
  transition: border .2s ease-in-out;
  transition: all 0.2s cubic-bezier(0.0, 0.2, 0.5,0.1);
  position:relative;
}


.thumbnail .thumbnail-content{
text-align:center;
padding:2rem;
padding-top:0;
}

.thumbnail .thumbnail-content .icon{
display:inline-flex;
justify-content: center;
align-items: center;
width:10rem;
height:10rem;
border-radius:5rem;
margin-top: -5rem;
font-size:2rem;
transition: all 0.2s cubic-bezier(0.0, 0.2, 0.5,0.1);
}

.thumbnail .thumbnail-content .icon i{
font-size:3rem;
}

.thumbnail .thumbnail-content h4{
  font-size:2rem;
  font-weight:600;
  color: #FDC92A;
  letter-spacing: 0.5px;
  margin:2rem 0;
  transition: all 0.2s cubic-bezier(0.0, 0.2, 0.5,0.1);
}

.thumbnail .thumbnail-content p{
  color:#e6e6e6;
}



.content-s{
  margin:0 auto;
}

#contactform label{
  font-size:1.5rem;
  color:#585858;
}

#contactform label .label-body{
  color:#7d7d7d;;
}

#contactform input,#contactform textarea,#contactform select{
  width:100%;
  font-size:1.5rem;
}

#contactform input[type="checkbox"]{
  width:auto;
}

#contactform textarea{
  resize: none;
  height:auto;
}

#contactform .contact-single-line{
  padding: 1rem 0;
}

#contactform .required-color{
color:#ff0000;
}

.ctw-link, .ctw-link:visited{
  display:inline-flex;
  align-items: center;
  color:#fff;
}


.ctw-link:hover, .ctw-link:focus{
 opacity:0.9;
 outline:none;
 color:#fff !important;
}
