/*-----------------------------------------------------------------------------------
        Companyportfolio
        Built with Blocs
-----------------------------------------------------------------------------------*/

body {
    margin: 0;
    padding: 0;
    background: #FFF;
    overflow-x: hidden;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
a:hover {
    text-decoration: none;
    cursor: pointer;
}
a, button {
    outline: none!important;
}

/* Prevent ugly blue glow on chrome and safari */


/* Globals type styling */

h1, h2, h3, h4, h5, h6, p, label, .btn, a {
    font-family: Open Sans;
}

/* Site container width */

.container {
    max-width: 1170px;
}

/* = Blocs
-------------------------------------------------------------- */

.bloc {
    width: 100%;
    clear: both;
    background: 50% 50% no-repeat;
    padding: 0 50px;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    position: relative;
}
.fixed {
    position: fixed;
    z-index: 10;
}

/* Sizes */

.bloc-xl {
    padding: 150px 50px;
}
.bloc-lg {
    padding: 100px 50px;
}
.bloc-md {
    padding: 80px 50px;
}
.bloc-sm {
    padding: 20px 50px;
}

/* Dark theme */

.d-bloc {
    color: rgba(255, 255, 255, .7);
}
.d-bloc button:hover {
    color: rgba(255, 255, 255, .9);
}
.d-bloc h1, .d-bloc h2, .d-bloc h3, .d-bloc h4, .d-bloc h5, .d-bloc h6, .d-bloc .ico {
    color: rgba(255, 255, 255, .9);
}
.d-bloc .icon-round, .d-bloc .icon-square, .d-bloc .icon-rounded, .d-bloc .icon-semi-rounded-a, .d-bloc .icon-semi-rounded-b {
    border-color: rgba(255, 255, 255, .9);
}
.d-bloc .divider-h span {
    border-color: rgba(255, 255, 255, .2);
}
.d-bloc a {
    color: rgba(255, 255, 255, .6);
}
.d-bloc a:hover {
    color: rgba(255, 255, 255, 1);
}
.d-bloc .navbar-toggle .icon-bar {
    background: rgba(255, 255, 255, 1);
}
.d-bloc .btn-wire, .d-bloc .btn-wire:hover {
    color: rgba(255, 255, 255, 1);
    border-color: rgba(255, 255, 255, 1);
}
.d-bloc .panel {
    color: rgba(0, 0, 0, .5);
}
.d-bloc .panel button:hover {
    color: rgba(0, 0, 0, .7);
}
.d-bloc .panel h1, .d-bloc .panel h2, .d-bloc .panel h3, .d-bloc .panel h4, .d-bloc .panel h5, .d-bloc .panel h6, .d-bloc .ico {
    color: rgba(0, 0, 0, .7);
}
.d-bloc .panel icon {
    border-color: rgba(0, 0, 0, .7);
}
.d-bloc .panel .divider-h span {
    border-color: rgba(0, 0, 0, .1);
}
.d-bloc .panel a {
    color: rgba(0, 0, 0, .6);
}
.d-bloc .panel a:hover {
    color: rgba(0, 0, 0, 1);
}
.d-bloc .panel .btn-wire, .d-bloc .panel .btn-wire:hover {
    color: rgba(0, 0, 0, .7);
    border-color: rgba(0, 0, 0, .3);
}

/* Light theme */

.l-bloc {
    color: rgba(0, 0, 0, .5);
}
.l-bloc button:hover {
    color: rgba(0, 0, 0, .7);
}
.l-bloc h1, .l-bloc h2, .l-bloc h3, .l-bloc h4, .l-bloc h5, .l-bloc h6, .l-bloc .ico {
    color: rgba(0, 0, 0, .7);
}
.l-bloc .icon-round, .l-bloc .icon-square, .l-bloc .icon-rounded, .l-bloc .icon-semi-rounded-a, .l-bloc .icon-semi-rounded-b {
    border-color: rgba(0, 0, 0, .7);
}
.l-bloc .divider-h span {
    border-color: rgba(0, 0, 0, .1);
}
.l-bloc a {
    color: rgba(0, 0, 0, .6);
}
.l-bloc a:hover {
    color: rgba(0, 0, 0, 1);
}
.l-bloc .navbar-toggle .icon-bar {
    color: rgba(0, 0, 0, .6);
}
.l-bloc .btn-wire, .l-bloc .btn-wire:hover {
    color: rgba(0, 0, 0, .7);
    border-color: rgba(0, 0, 0, .3);
}

/* Row Margin Offsets */

.voffset {
    margin-top: 30px;
}
.voffset-lg {
    margin-top: 80px;
}

/* Bloc text custom styling */

#header h3, #aboutus h3, #services h3, #infrastructure h3, #contact h3 {
    text-align: center;
    line-height: 65px;
    z-index: 0;
    text-transform: uppercase;
    font-size: 55px;
    float: none;
    font-weight: 900;
    font-family: Open Sans;
}
#header p {
    font-weight: 400;
    font-family: Open Sans;
}
#porfolio h2 {
    font-weight: 400;
    font-family: Open Sans;
}
#team h2 {
    font-weight: 400;
    font-family: Open Sans;
}
#bloc-6 h3 {
    line-height: 50px;
}

/* = NavBar
-------------------------------------------------------------- */

.navbar {
    margin-bottom: 0;
    z-index: 1;
    min-height: 60px;
}
.navbar-brand {
    height: auto;
    font-size: 25px!important;
    font-weight: normal;
    font-weight: 600;
}
.navbar-brand img {
    max-height: 40px;
    margin: 0 5px 0 15px;
}
.navbar-brand {
    padding: 0;
}
.navbar .nav {
    margin-right: -16px;
    float: right;
    z-index: 1;
}
.nav > li {
    float: left;
    margin-top: 4px;
    font-size: 16px;
}
.nav a {
    color: #0B55A0;
}
.nav a:hover {
    color: #1D7096;
}
.navbar-nav .open .dropdown-menu > li > a {
    text-align: inherit;
}
.nav > li a:hover, .nav > li a:focus {
    background: transparent;
}
.navbar-toggle:hover {
    background-color: #0B55A0;
}
.navbar-toggle .icon-bar {
    background-color: rgba(0, 0, 0, .5);
    width: 26px;
}

/* Inverted navbar */

.nav-invert .navbar .nav {
    float: left;
}
.nav-invert .navbar-header, .nav-invert .navbar-brand {
    float: right;
}
@media (min-width: 768px) {
    .site-navigation {
        position: absolute;
        top: 50%;
        right: 20px;
        transform: translate(0, -50%);
        -webkit-transform: translateY(-50%);
    }
    .nav-invert .site-navigation {
        left: 20px;
        right: 0;
    }
    .nav-center {
        text-align: center;
    }
    .nav-center .navbar-header {
        width: 100%;
    }
    .nav-center .navbar-header, .nav-center .navbar-brand, .nav-center .nav > li {
        float: none;
        display: inline-block;
    }
    .nav-center .site-navigation {
        position: relative;
        width: 100%;
        margin-top: 20px;
    }
}
.nav > li > .dropdown a {
    background: none!important;
    display: block;
    padding: 14px 15px;
}
nav .caret {
    margin: 0 5px;
}

/* = Bric adjustment margins
-------------------------------------------------------------- */

.mg-md {
    margin-top: 10px;
    margin-bottom: 20px;
}
.mg-lg {
    margin-top: 10px;
    margin-bottom: 40px;
}

/* = Buttons
-------------------------------------------------------------- */

.btn {
    margin: 0 5px 5px 0;
}
.btn.pull-right {
    margin: 0 0 5px 5px;
}
.btn-d, .btn-d:hover, .btn-d:focus {
    color: #FFF!important;
    background: rgba(0, 0, 0, .3);
}

/* Prevent ugly blue glow on chrome and safari */

button {
    outline: none!important;
}
.btn-wire {
    background: transparent!important;
    border: 2px solid transparent;
}
.btn-wire:hover {
    background: transparent!important;
    border: 2px solid transparent;
}
.btn-visual {
    background-color: #0B55A0!important;
    border: 2px solid transparent;
}
.btn-visual:hover {
    background-color: #0B55A0!important;
    border: 2px solid transparent;
}
.btn-xl {
    padding: 16px 40px;
    font-size: 28px;
}
.dropdown a .caret {
    margin: 0 0 0 5px
}

/* = Icons
-------------------------------------------------------------- */

.icon-md {
    font-size: 30px!important;
}
.icon-xl {
    font-size: 100px!important;
}

/* Image Frame */

.img-frame, .img-frame-md, .img-frame-lg, .img-frame-rd, .img-frame-rd-md, .img-frame-rd-lg {
    background: #FFF;
    border: 1px solid rgba(0, 0, 0, 0.1);
    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.05);
    padding: 4px;
}
.img-frame {
    border-radius: 3px;
}
.img-frame-md, .img-frame-lg {
    border-radius: 6px;
}
.img-frame-md, .img-frame-rd-md {
    padding: 8px;
}
.img-frame-lg, .img-frame-rd-lg {
    padding: 14px;
}
.panel-sq, .panel-sq .panel-heading, .panel-sq .panel-footer {
    border-radius: 0;
}
.panel-rd {
    border-radius: 30px;
}
.panel-rd .panel-heading {
    border-radius: 29px 29px 0 0;
}
.panel-rd .panel-footer {
    border-radius: 0 0 29px 29px;
}

/* iFrame */

iframe {
    border: 0;
}

/* ScrollToTop button */

.scrollToTop {
    width: 40px;
    height: 40px;
    position: fixed;
    bottom: 20px;
    right: 20px;
    opacity: 0;
    z-index: 500;
    transition: all .3s ease-in-out;
}
.scrollToTop span {
    margin-top: 6px;
}
.showScrollTop {
    font-size: 14px;
    opacity: 1;
}

/* = Lightbox
-------------------------------------------------------------- */

a[data-lightbox] {
    position: relative;
    display: block;
    text-align: center;
}
a[data-lightbox]:hover::before {
    content: "+";
    font-family: "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial;
    font-size: 32px;
    width: 50px;
    height: 50px;
    margin-left: -25px;
    border-radius: 50%;
    background: rgba(0, 0, 0, .6);
    color: #FFF;
    font-weight: 100;
    z-index: 1;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
}
a[data-lightbox]:hover img {
    opacity: 0.6;
    -webkit-animation-fill-mode: none;
    animation-fill-mode: none;
}
#lightbox-modal .modal-dialog {
    width: 90%;
    max-width: 900px;
    margin: 30px auto 0;
}
#lightbox-modal .modal-dialog img {
    margin: 0 auto;
}
.lightbox-caption {
    padding: 20px;
    color: #FFF;
    background: rgba(0, 0, 0, .5);
    position: absolute;
    left: 15px;
    right: 15px;
    bottom: 5px;
}
.close-lightbox {
    display: none;
    font-size: 40px;
    position: absolute;
    top: 8px;
    right: 20px;
    z-index: 20;
}
.next-lightbox, .prev-lightbox {
    display: inline-block;
    width: 0;
    height: 0;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    transition: all .2s ease-in-out;
    position: absolute;
    top: 50%;
}
.next-lightbox {
    right: 25px;
    border-left: 20px solid rgba(255, 255, 255, .4);
}
.prev-lightbox {
    left: 25px;
    border-right: 20px solid rgba(255, 255, 255, .4);
}
.prev-lightbox:hover, .next-lightbox:hover {
    border-right-color: rgba(255, 255, 255, .9);
    border-left-color: rgba(255, 255, 255, .9);
}

/* = Custom Colour Styling
-------------------------------------------------------------- */


/* Background colour styles */

.bgc-visual {
    background-color: #0B55A0;
}
.bgc-visual-dark {
    background-color: #272727;
}
.bgc-outer-space {
    background-color: rgba(0, 0, 0, 0.3);
}
.bgc-white {
    background-color: #ffffff;
}
.bgc-platinum {
    background-color: #E5E5E5;
}

/* Text colour styles */

.tc-white {
    color: #ffffff!important;
}

/* Button colour styles */

.wire-btn-carmine-pink {
    color: #F35342!important;
    border-color: #F35342!important;
}
.wire-btn-white {
    color: #ffffff!important;
    border-color: #ffffff!important;
}
.btn-visual-light-blue {
    color: #0B55A0;
    border-color: #FFFFFF;
}

/* Icon colour styles */

.icon-carmine-pink {
    color: #F35342!important;
    border-color: #F35342!important;
}
.icon-outer-space {
    color: #47454B!important;
    border-color: #47454B!important;
}

/* Bloc image backgrounds */

.bg-visual {
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: -1;
    -webkit-filter: blur(8px);
    -moz-filter: blur(8px);
    -o-filter: blur(8px);
    -ms-filter: blur(8px);
    filter: blur(8px);
}
.quote {
    color: rgba(0, 0, 0, .1);
    text-align: center;
    margin-bottom: 30px;
}

/*-------------------------------*/


/*    Carousel Fade Transition   */


/*-------------------------------*/

#fade-quote-carousel.carousel {
    padding-bottom: 60px;
}
#fade-quote-carousel.carousel .carousel-inner .item {
    opacity: 0;
    -webkit-transition-property: opacity;
    -ms-transition-property: opacity;
    transition-property: opacity;
}
#fade-quote-carousel.carousel .carousel-inner .active {
    opacity: 1;
    -webkit-transition-property: opacity;
    -ms-transition-property: opacity;
    transition-property: opacity;
}
#fade-quote-carousel.carousel .carousel-indicators {
    bottom: 10px;
}
#fade-quote-carousel.carousel .carousel-indicators > li {
    background-color: #e84a64;
    border: none;
}
#fade-quote-carousel blockquote {
    text-align: center;
    border: none;
}
#fade-quote-carousel .profile-circle {
    width: 100px;
    height: 100px;
    margin: 0 auto;
    border-radius: 100px;
}
.bg-people {
    position: absolute;
    left: 0;
    background-image: url(img/gente1.jpg);
    opacity: 0.1;
    background-repeat: no-repeat;
    background-size: 120%;
    width: 100%;
    height: 100%;
}
/* = Mobile adjustments
-------------------------------------------------------------- */

@media (max-width: 1024px) {
    .bloc {
        padding-left: 20px;
        padding-right: 20px;
    }
}
@media (max-width: 768px) {
    .container {
        width: 100%;
    }
    .b-parallax {
        background-attachment: scroll;
    }
    .page-container, #hero-bloc {
        overflow-x: hidden;
        position: relative;
    }
    /* Prevent unwanted side scroll on mobile */
}
@media (max-width: 767px) {
    .page-container {
        overflow-x: hidden;
        position: relative;
    }
    h1, h2, h3, h4, h5, h6, p {
        padding-left: 10px!important;
        padding-right: 10px!important;
    }
    #hero-bloc h1 {
        font-size: 40px;
    }
    #hero-bloc h2 {
        font-size: 34px;
    }
    #hero-bloc h3 {
        font-size: 25px;
    }
    .bloc {
        padding-left: 0;
        padding-right: 0;
        -webkit-background-size: auto 200%;
        -moz-background-size: auto 200%;
        -o-background-size: auto 200%;
        background-size: auto 200%;
    }
    .b-parallax {
        background-attachment: scroll;
    }
    .navbar .nav {
        padding-top: 0;
        border-top: 1px solid rgba(0, 0, 0, .2);
        float: none!important;
    }
    .navbar.row {
        margin-left: 0;
        margin-right: 0;
        position: relative;
    }
    .site-navigation {
        position: inherit;
        transform: none;
        -webkit-transform: none;
        -ms-transform: none;
    }
    .nav > li {
        margin-top: 0;
        text-align: left;
        padding-left: 15px;
        width: 100%;
    }
    .nav > li:hover {
        background: rgba(0, 0, 0, .08);
    }
    #hero-bloc .navbar .nav {
        background: rgba(0, 0, 0, .8);
    }
    #hero-bloc .navbar .nav a {
        color: rgba(255, 255, 255, .6);
    }
    .hero {
        padding: 50px 0;
    }
    .hero-nav {
        left: -1px;
        right: -1px;
    }
    .navbar-collapse {
        padding: 0;
        overflow-x: hidden;
        -webkit-box-shadow: none;
        box-shadow: none;
    }
    .navbar-brand img {
        max-height: 40px;
        width: auto;
    }
    .nav-invert .navbar-header {
        float: none;
        width: 100%;
    }
    .nav-invert .navbar-toggle {
        float: left;
    }
    .btn.pull-left, .btn.pull-right {
        float: none!important;
    }
    .bloc-group .bloc {
        display: block;
        width: 100%;
    }
    .bloc-tile-2 .container, .bloc-tile-3 .container, .bloc-tile-4 .container {
        padding-left: 10px;
        padding-right: 10px;
    }
    .bloc-xxl, .bloc-xl, .bloc-lg {
        padding: 40px 0;
    }
    .bloc-sm, .bloc-md {
        padding-left: 0;
        padding-right: 0;
    }
    .a-block {
        padding: 0 10px;
    }
    .btn-dwn {
        display: none;
    }
    .voffset {
        margin-top: 5px;
    }
    .voffset-md {
        margin-top: 20px;
    }
    .voffset-lg {
        margin-top: 30px;
    }
    form {
        padding: 5px;
    }
    .close-lightbox {
        display: inline-block;
    }
    .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
        margin-top: 30px;
        margin-bottom: 30px;
    }
    .video-bg-contianer {
        display: none;
    }
    .bg-visual ul li img {
        width: 300%;
        height: 300%;
        transform: translateX(-26%);
    }
    #header h3 {
        text-align: center;
        line-height: 50px;
        z-index: 0;
        text-transform: uppercase;
        font-size: 40px;
        float: none;
        font-weight: 600;
        font-family: Open Sans;
    }
    .relative {
        position: relative;
    }
    .navbar-header .center-vertical {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        /* IE 9 */
        -webkit-transform: translateY(-50%);
        /* Safari */
    }
    .bg-people {
        position: absolute;
        left: 0;
        background-image: none;
        opacity: 0.1;
        background-repeat: no-repeat;
        background-size: cover;
        width: 100%;
        height: 100%;
    }
}
@media only screen and (min-width:768px) {
    .center-vertical {
        position: absolute !important;
        top: 50%;
        transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
    }
    .timeline-inverted .center-vertical {
        position: absolute !important;
        top: 50%;
        right: 0;
        transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
    }
}
.circle-md {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: 50%;
    border-radius: 50%;
    width: 200px;
    height: 200px;
    margin: auto;
}
.picture-md {
    background-repeat: no-repeat;
    background-position: 50%;
    width: 300px;
    height: 400px;
    margin: auto;
}
span.center {
    position: absolute;
    top: 50%;
    left: 50%;
    margin-right: -50%;
    transform: translate(-50%, -50%);
}
.t-md {
    font-size: 20px;
}
.t-lg {
    font-size: 40px;
}
.t-bold {
    font-weight: bold;
}
.table-striped > tbody > tr:nth-of-type(odd) {
    background-color: #0B55A0;
}
