/* 
 _  ___ _         ___ _           _ _        
| |/ (_) |__  ___/ __| |_ _  _ __| (_)___ ___
| ' <| | '_ \/ _ \__ \  _| || / _` | / _ (_-<
|_|\_\_|_.__/\___/___/\__|\_,_\__,_|_\___/__/

KIBO STUDIOS ADVERTISING ® 2015
This file was originally created by Kibo Studios Team.
No public difusion allowed. Code rights reserved.
Contact us info@kibostudios.com
www.kibostudios.com

*/

/************************ FONTS ************************/

@font-face {
    font-family: 'lane';
    src: url('../fonts/kibo-lane.ttf');
}

/************************ ANIMATIONS ************************/

@-moz-keyframes pushdown { 0% { top: -5px; opacity: 0; } 50% { opacity: .7; } 100% { top: 5px; opacity: 1; } }
@-webkit-keyframes pushdown { 0% { top: -5px; opacity: 0; } 50% { opacity: .7; } 100% { top: 5px; opacity: 1; } }
@keyframes pushdown { 0% { top: -5px; opacity: 0; } 50% { opacity: .7; } 100% { top: 5px; opacity: 1; } }

@keyframes spin {
    from {
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    to {
        -webkit-transform: rotate(359deg);
        -moz-transform: rotate(359deg);
        -o-transform: rotate(359deg);
        -ms-transform: rotate(359deg);
        transform: rotate(359deg);
    }
}

@-moz-keyframes spin {
    from { -moz-transform: rotate(0deg); transform: rotate(0deg); }
    to { -moz-transform: rotate(359deg); transform: rotate(359deg); }
}

@-webkit-keyframes spin {
    from { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
    to { -webkit-transform: rotate(359deg); transform: rotate(359deg); }
}

@-ms-keyframes spin {
    from { -ms-transform: rotate(0deg);  transform: rotate(0deg); }
    to {  -ms-transform: rotate(359deg);  transform: rotate(359deg); }
}

@-o-keyframes spin {
    from { -o-transform: rotate(0deg); transform: rotate(0deg); }
    to { -o-transform: rotate(359deg); transform: rotate(359deg); }
}

.loading {
    -webkit-animation: spin 1s infinite linear;
    -moz-animation: spin 1s infinite linear;
    -ms-animation: spin 1s infinite linear;
    -o-animation: spin 1s infinite linear;
    animation: spin 1s infinite linear;
}

.div-explore img {
    -webkit-animation: pushdown 1.2s ease infinite;
    -moz-animation: pushdown 1.2s ease infinite;
    animation: pushdown 1.2s ease infinite;
}


/************************ TAGS ************************/

body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-family: 'Open Sans', sans-serif;
    font-size: 100%;
}

p {
    font-size: 1.15em;   
}

a {
    color: #484848;
}

a:hover, a:focus, a:active {
    color: #484848;
    text-decoration: none;
    outline: none;
}

.transition {
    -webkit-transition: all 0.4s ease;                  
    -moz-transition: all 0.4s ease;                 
    -o-transition: all 0.4s ease;   
    -ms-transition: all 0.4s ease;          
    transition: all 0.4s ease;   
}

h1, h2, h3, h4, h5 {
    margin: 0px 0px 1.5%;   
}

.btn {
    display: inline-block;
    padding: 15px 50px;
    margin: 0px 10px;
    border-radius: 30px;
    font-size: 16px;
}

.btn-border {
    border: 1px solid #fff;
    color: #fff;
}

.btn-border:hover {
    color: #fff;
    background: rgba(0,0,0,.1);
}

.btn-solid {
    background: #fff;
    color: #4a4a4a;
    opacity: .9;
}

.btn-solid:hover {
    color: #4a4a4a;
    opacity: 1;
}

.overlay {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
    background: rgba(0,0,0,.5);
}


/************************ HEADER ************************/

.header {
    background: #008ac8;
    color: #fff;
    padding: 30px 0px;
    position: relative;
}

.header p {
    margin-bottom: 0px;
}

.header.header-home {
    position: fixed;
    width: 100%;
    top: 0px;
    left: 0px;
    padding: 0px;
}

.div-explore {
    width: 100%;
    position: absolute;
    bottom: 25px;
    text-align: center;
}

.div-explore a {
    color: #fff;
    text-transform: uppercase;
    font-size: 12px;
    display: inline-block;
}

.div-explore img {
    width: 30px;
    display: block;
    margin: 0 auto;
    margin-bottom: 10px;
    position: relative;
}

.header-content {
    padding: 2% 0px;
}

.header-home .header-content {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%); 
    text-align: center;
    min-width: 60%;
}

.header-content h1 {
    font-size: 2.5em;
    margin-bottom: 1.5%;
}

.header-content p {
    font-size: 1.15em;
    line-height: 1.7em;
}

.header-home .header-content h1 {
    font-size: 3em;
    text-transform: uppercase;
    margin-bottom: 2.5%;
}

.header-home .header-content h2 {
    font-size: 1.4em;
    line-height: 1.5em;
}

.header-home .header-content .btn {
    margin-top: 2.5%;
    font-size: 1.2em;
}


/************************ VIDEO BACKGROUND ************************/

.box-video {
    border-right: none;
    border-left: none;
    position: relative;
}

.no-video .video-container video,
.touch .video-container video {
    display: none;
}

.no-video .video-container .poster,
.touch .video-container .poster {
    display: block !important;
}

.video-container {
    position: relative;
    bottom: 0%;
    left: 0%;
    height: 100%;
    width: 100%;
    overflow: hidden;
    background: #000;
}

.video-container .poster img {
    width: 100%;
    bottom: 0;
    position: absolute;
}

.video-container video {
    position: absolute;
    z-index: 0;
    bottom: 0;
}

.video-container video.fillWidth {
    width: 100%;
}

/************************ MENU ************************/

.navbar-default {
    background-color: transparent;
    border: none;
    border-color: transparent;   
    margin: 10px 0px;
}

.navbar-default .navbar-nav > li > a,
.navbar-default .navbar-nav > li > a:hover,
.navbar-default .navbar-nav > li > a:focus {
    color: #fff;
    font-size: 1.2em;
}

.navbar-default .navbar-nav > .active > a,
.navbar-default .navbar-nav > .active > a:hover,
.navbar-default .navbar-nav > .active > a:focus {
    color: #fff;
    background-color: transparent;
}

.div-menu {
    position: fixed;
    top: 0px;
    left: 0px;
    right: 0px;
    padding: 30px 0px;
    z-index: 60;
}

.div-menu .logo {
    width: 72px;
}

.div-menu.menu-fixed {
    background: #4A4A4A;
    padding: 15px 0px;
}

.div-menu.menu-fixed .logo {
    width: 50px;
}

.div-menu.menu-fixed .navbar-default {
    margin: 0px;
}

.menu-toggle {
    width: 30px;
    height: 45px;
    position: relative;
    float: right;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: .5s ease-in-out;
    -moz-transition: .5s ease-in-out;
    -o-transition: .5s ease-in-out;
    transition: .5s ease-in-out;
    cursor: pointer;
    display: none;
}

.menu-toggle span {
    display: block;
    position: absolute;
    height: 3px;
    width: 100%;
    background: #fff;
    border-radius: 9px;
    opacity: 1;
    left: 0;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: .25s ease-in-out;
    -moz-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    transition: .25s ease-in-out;
}

.menu-toggle span:nth-child(1) {
  top: 0px;
  -webkit-transform-origin: left center;
  -moz-transform-origin: left center;
  -o-transform-origin: left center;
  transform-origin: left center;
}

.menu-toggle span:nth-child(2) {
  top: 10px;
  -webkit-transform-origin: left center;
  -moz-transform-origin: left center;
  -o-transform-origin: left center;
  transform-origin: left center;
}

.menu-toggle span:nth-child(3) {
  top: 20px;
  -webkit-transform-origin: left center;
  -moz-transform-origin: left center;
  -o-transform-origin: left center;
  transform-origin: left center;
}

.menu-toggle.open span:nth-child(1) {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
  top: -1px;
  left: 0px;
}

.menu-toggle.open span:nth-child(2) {
  width: 0%;
  opacity: 0;
}

.menu-toggle.open span:nth-child(3) {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 20px;
  left: 0px;
}


/************************ CONTENT ************************/

.box-loader {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
    background: #4a4a4a;
    z-index: 100;
}

.box-loader .content {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%); 
    display: none;
}

.box-loader .loading {
    margin: 10% auto;
    border-bottom: 4px solid #fff;
    border-left: 4px solid #fff;
    border-right: 4px solid #222;
    border-top: 4px solid #222;
    border-radius: 100%;
    height: 50px;
    width: 50px;
}

.box-content {
    padding: 7.5% 0px;
}

.box-content h3 {
    font-size: 2em;
    line-height: 1.6em;
    font-weight: 600;
    margin-bottom: 1.5%;
}

.box-content p {
    margin-bottom: 1.8%;
    line-height: 1.7em;
}

.home-content {
    position: relative;
    z-index: 50;
    background: #fff;
}

/************************ FOOTER ************************/

.footer {
    background: #4a4a4a; 
    color: #fff;
    padding: 4% 0px;
}

.footer p {
    margin-bottom: 0px;
}

.footer a {
    color: #ddd;
}

/************************ RESPONSIVE ************************/

/* XX-Large desktop */
@media (min-width: 1600px) {
    
html {
    font-size: 16px;
}
    
}

/* X-Large desktop */
@media (max-width: 1599px) {
    
html {
    font-size: 15px;
}    
    
}

/* Large desktop */
@media (max-width: 1199px) {
    
html {
    font-size: 14px;
}    
    
}

/* Portrait tablet to landscape and desktop */
@media (max-width: 991px) {     
     
}

/* Landscape phone to portrait tablet */
@media (max-width: 767px) {
   
.box-loader, .div-explore, .box-video {
    display: none;
}   
    
.div-menu {
    position: absolute;
}
    
.menu-toggle {
    display: block;
    position: relative;
    z-index: 999;
}    
    
.navbar-default .navbar-collapse {
    position: fixed;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    border: none;
    text-align: center;
    background: rgba(20,20,20,.95);
    margin: 0px;
    overflow: hidden;
}
    
.navbar-nav {
    margin: 0px;
    padding: 100px 0px;
}
    
.navbar-default .navbar-nav > li > a,
.navbar-default .navbar-nav > li > a:hover,
.navbar-default .navbar-nav > li > a:focus {
    font-size: 1.7em;
    line-height: 1.5em;
}
    
.header {
    padding: 125px 0px 30px;   
    text-align: center;
}
    
.header.header-home {
    position: relative;
    padding: 150px 15px 50px;
}    
    
.header-home .header-content {
    position: relative;
    top: 0px;
    left: 0px;
    transform: none;
    -webkit-transform: none;
}
    
.footer {
    padding: 40px 0px;
    text-align: center;
}  
    
}

/* Landscape phones and down */
@media (max-width: 480px) {
 
.header-home .header-content .btn {
    margin-top: 20px;
}    
    
}