*, *:before, *:after, body {
    /*cursor: grab;
    cursor: -moz-grab;
    cursor: -webkit-grab;
    cursor: url('images/cursor.cur'),auto;
    cursor: url('images/cursor.cur'), url('images/cursor.cur'), n-resize;
    cursor: url('images/cursor.cur'), n-resize\9; 
    *cursor: url('images/cursor.cur'), n-resize; */
}

* {
    margin: 0;
    padding: 0;
    border: 0;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
}

*:before, *:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.clear {
    clear: both;
}

.two-row {
    flex-basis: 62% !important;
}

.first-col-item {
    flex-grow: 1;
}

body {
    background-color: #05060b !important;
    color: #000;
    font-family: 'Roboto', sans-serif;
    margin: 0;
}

img {
    max-width: 100%;
    height: auto;
    width: auto;
}

/*header*/

header {
    width: 100%;
    background: url("../images/header.jpg");
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: center;
    padding: 28% 0;
    padding-top: 32% \9\0;
    padding-bottom: 32% \9\0;
    margin-top: -5%;
    user-select: none;
}

header.animate {
    background: url("../images/header-BW.jpg");
    background-repeat: no-repeat;
    background-size: 100%;
    margin-top: -15%;
    padding: 32% 0;
}

.quote {
    background: url("../images/quote.png");
    background-repeat: no-repeat;
    background-size: 100%;
    position: absolute;
    margin: -8.75% 32.5%;
    width: 35%;
    height: 35%;
    user-select: none;
}

.quote.animate {
    display: none;
}

/*footer*/

.logo {
    float: right;
    right: 4.5%;
    bottom: 4.5%;
    border: none;
    position: absolute;
    width: 80px;
    user-select: none;
}

.logo.animate {
    bottom: 4.5%;
}

.footer {
    background-color: #000;
    bottom: 0;
    z-index: 2;
    margin: 0 auto;
    width: 100%;
    position: fixed;
    padding-bottom: 10px;
}

.copyright {
    font-family: 'Bebas Neue';
    font-size: 95%;
    text-align: right;
    color: #fff;
    user-select: none;
    margin: auto;
    width: 1024px;
    padding-right: 10px;
}

@media(max-width: 768px) {
    .copyright {
        width: 100%;
    }
}

/*page*/

.page {
    z-index: 1;
    text-align: center;
    position: relative;
    width: 100%;
    overflow: hidden;
    margin: 0 auto;
}

.content {
    position: relative;
    z-index: 2;
}

@media(min-width: 768px) {
    .page {
        width: 1024px;
    }
}

/*main*/

article {
    float: left;
    width: 65%;
    margin: 0 auto;
    height: inherit;
}

aside {
    width: 35%;
    float: left;
    margin: 0 auto;
    height: auto;
}

footer {
    display: none;
}

.clear {
    clear: both;
    float: none;
    width: 100%;
}

/*base*/

.base {
	float: left;
    width: 100%;
    height: auto;
    background: #fff;
    text-align: left;
    overflow: hidden;
    display: block;
    position: relative;
    margin-top: -1%;
    margin-top: -13.5% \9\0;
    margin-bottom: 10% \9\0;
}

.base.animate {
    margin-top: -22%;
    margin-top: -25% \9\0;
    -webkit-transition: all 300ms ease-out;
    -moz-transition: all 300ms ease-out;
    -o-transition: all 300ms ease-out;
    transition: all 300ms ease-out;
}

/*line*/

.line {
    border-left: 5px solid #1f140f;
    margin-left: 25px;
    margin-right: 20px;
    padding: 20px 0 20px 20px;
    height: auto;
}

.line.animate {
    height: auto;
}

/*nav*/

nav {
    padding: 5.5% 1rem 4% 1rem;
}

.nav-box {
    width: 100%;
    background: #000;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top right;
    font-family: 'Bebas Neue';
    font-size: 2.4rem;
    padding: 6% 8%;
    transition: 0.3s ease-in-out;
    -webkit-transition:all 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
}

.nav-bg-work {
    background-image: url('../images/Button_Work_BW.jpg');
}

.nav-bg-work:hover {
    background-image: url('../images/Button_Work_RGB.jpg');
    text-decoration: underline;
    text-decoration-color: #fff;
}

.nav-bg-client {
    background-image: url('../images/Button_Clients_BW.jpg');
}

.nav-bg-client:hover {
    background-image: url('../images/Button_Clients_RGB.jpg');
    text-decoration: underline;
    text-decoration-color: #fff;
}

.nav-bg-contact {
    background-image: url('../images/Button_Contact_BW.jpg');
}

.nav-bg-contact:hover {
    background-image: url('../images/Button_Contact_RGB.jpg');
    text-decoration: underline;
    text-decoration-color: #fff;
}

/*menu*/

.hamburger {
    background: none;
    position: absolute;
    top: 0;
    left: 0;
    line-height: 45px;
    padding: 0.7% 0.35%;
    color: #999;
    border: 0;
    font-size: 1.4em;
    font-weight: bold;
    cursor: pointer;
    outline: none;
    z-index: 1000;
    display: none;
}

.cross {
    background: none;
    position: absolute;
    top: 0px;
    left: 0;
    padding: 0.5% 0.65%;
    color: #999;
    border: 0;
    font-size: 3em;
    line-height: 65px;
    font-weight: bold;
    cursor: pointer;
    outline: none;
    z-index: 1000;
    display: none;
}

.menu .tab-link {
    text-decoration: none;
    color: #222;
    background: transparent;
    font-family: 'Bebas Neue';
    font-size: 2.6rem;
    padding: 3px 0;
}

.tab-link a {
    text-decoration: none;
    color: inherit;
}

.break {
    border-bottom: 5px solid #000;
    width: 20%;
    user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
}

/*gallery*/

.gallery {
    display: flex;
    flex-wrap: wrap;
}

.grid {
    position: relative;
    flex: 0 0 30%;
    margin: 1%;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
}

.grid:last-of-type {
    margin-right: 0;
}

.gallery img {
    width: 100%;
    height: auto;
    position: relative;
    float: left;
}

.gallery a {
    display: block;
    border: none;
}

.gallery a img:last-child {
    display: none;
}

.gallery a:hover img:first-child {
    display: none;
}

.gallery a:hover img:last-child {
    display: inline-block;
}

.screen {
    background-color: rgba(0, 0, 0, 0.25);
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    position: absolute;
    opacity: 0;
    z-index: 1000;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}

.screen:hover {
    opacity: 1;
}

.details {
    color: #fff;
    position: absolute;
    bottom: 5%;
    left: 5%;
    right: 5%;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}

/*filter*/

.works-category ul {
    margin: 0;
    padding: 0;
    clear: both;
    text-align: left;
}

.works-category ul li {
    font-size: 2.4rem;
    list-style-type: none;
    display: inline-block;
    margin: 0.5% 0 0 0;
    margin: 0 \9\0;
    padding: 0 2%;
}

.works-category ul li a {
    color: #a6a8ab;
    text-decoration: none;
    font-size: 67%;
}

.works-category ul li a:hover {
    color: #000;
}

.works-category ul li a.selected {
    color: #000;
}

.grid a {
    text-decoration: none;
}

.filter-hide {
    display: none;
}

/*modal*/

.modal-backdrop {
    background-color: transparent;
}

.modal-open .modal {
    overflow-y: hidden !important;
}

.modal {
    position: absolute;
    outline: none;
    overflow: hidden;
    padding-right: 0 !important;
}

.modal-dialog {
    width: 100% !important;
    height: 100%;
    margin: 0 auto !important;
    padding: 0;
    overflow: auto;
}

.modal-content {
    border: 0;
    border-radius: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
    outline: 0;
    min-height: 100%;
    width: 100%;
    /* max-width: 1025px;
    max-width: 1050px \9\0; */
    margin: 0 auto;
    background: #05060b !important;
}

.modal-header {
    border-bottom: 0 !important;
    padding-top: 3%;
    padding-top: 1.5% \9\0;
    width: 41%;
    margin: auto;
}

@media(max-width: 1024px) {
    .modal-header {
        width: 80%;
        margin: auto;
    }
}

.modal-body {
    padding: 0;
}

.modal-footer {
    padding: 0;
    padding-bottom: 0%;
    border-top: 0 !important;
}

.modal-top {
    background: none;
    border-bottom: 2px solid #fff;
    width: 100%;
    height: auto;
    position: absolute;
    top: 17vh;
    user-select: none;
}

/*slider*/

.product-slider {
    max-width: 100%;
    margin-top: 9%;
    margin-left: 6%;
    margin-top: 15% \9\0;
    margin-left: 13.5% \9\0;
}

[id^=carousel-] {
    width: 85%;
    float: left;
    position: relative;
    margin-top: -8%;
    margin-left: 4.25%;
    margin-left: 0 \9\0;
}

#thumbcarousel {
    margin: 0;
    padding: 0;
    width: 35%;
    float: left;
    position: relative;
    padding-top: 18px;
    left: 30%;
    left: 0 \9\0;
}

.info {
    bottom: 0;
    position: relative;
    margin-top: 2.5%;
    margin-bottom: 2%;
    color: #fff;
}

#thumbcarousel h2 {
    color: #fff;
    font-family: 'Bebas Neue';
    font-size: 1.8rem;
    margin-top: 0;
    margin-bottom: 0;
}

.thumb {
    width: 5px;
    margin-right: 1%;
    margin-bottom: 1%;
    display: inline-block;
    vertical-align: middle;
    cursor: pointer;
    max-width: 98px;
    vertical-align: middle;
}

.item, .info {
    text-align: center;
}

.item img {
    width: 100%;
    height: auto;
}

.carousel-control {
    color: #d0d2d3;
    text-align: center;
    text-shadow: none;
    font-size: 30px;
    width: 30px;
    height: 30px;
    line-height: 20px;
    top: 23%;
}

.carousel-control:hover, .carousel-control:focus, .carousel-control:active {
    color: #d0d2d3;
}

.carousel-control.left {
    background: none !important;
    background-color: rgba(0, 0, 0, 0);
    top: 100%;
    margin-left: 18%;
    line-height: 54px;
    border: none;
    opacity: 1;
    text-shadow: none;
    margin-top: 16px;
}

.carousel-control.right {
    background: none !important;
    background-color: rgba(0, 0, 0, 0);
    top: 100%;
    margin-right: 18%;
    line-height: 54px;
    border: none;
    opacity: 1;
    text-shadow: none;
    margin-top: 16px;
}

.modal-header .close {
    margin-top: 1%;
}

.close {
    font-size: 2.2em;
    color: #fff !important;
    opacity: unset !important;
}

/*tabs*/

ul.tabs {
    margin: 0px;
    padding: 0px;
    list-style: none;
    cursor: pointer;
}

ul.tabs li {
    background: none;
    color: #fff;
    display: inline-block;
    width: 23.5%;
    margin-right: 3%;
}

.v-tabs {
    padding-top: 8%;
}

.v-tabs li {
    float: left;
    clear: left;
}

.tab-content {
    display: none;
    min-height: 50vh;
    min-height: 25vh \9\0;
}

.tab-content.animate {
    height: 60vh;
    height: 30vh \9\0;
}

.tab-content.current {
    display: inherit;
}

/*welcome*/

.welcome {
	text-align: justify;
    font-size: 1.4rem;
    height: auto;
    overflow: hidden;
    line-height: 2rem;
    margin: 6% 0 0 1rem;
    width: 75%;
}

.greet {
    color: #000;
    font-family: 'Bebas Neue';
    font-size: 5.4rem;
    line-height: 1em;
    text-align: left;
    margin-top: 2rem;
}

/*clients*/

.clients {
    margin: 0 8% 0 0;
    text-align: center;
    padding-top: 2%;
    padding-bottom: 10%;
}

.clients .columns-bottom img{
    margin-bottom: 18px;
}

.clients .row-two-columns img {
    width: 42%;
}

.clients .row-two-columns img:nth-child(1) {
    margin-right: 4%;
}

.clients .row-three-columns img {
    width: 28%;
}

.clients .row-three-columns img:nth-child(-n+2) {
    margin-right: 5%;
}

.clients .row-four-columns img {
    width: 24%;
}

.clients .row-four-columns img:nth-child(-n+3) {
    margin-right: 1%;
}

/*contact*/

.contact {
    margin-top: 6%;
    font-size: 90%;
}

table td {
    padding-bottom: 1%;
}

.contact h2 {
    font-size: 2.2rem;
    color: #000;
    font-family: 'Bebas Neue';
    margin: 0.5% 0 2.5% -5%;
}

.carousel-inner {
    margin: 0 auto;
}

@media (min-width: 1025px) {
    .carousel-inner {
        width: 50% !important;
    }
}

/*laptop*/

@media (min-width: 1025px) and (max-width: 3000px) and (orientation: portrait) {}

/*ie11*/

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    .logo.animate {
        bottom: 5%;
    }
    .line.animate {
        height: auto;
    }
    .product-slider {
        margin-top: 5.5%;
        margin-left: 10%;
    }
    .info {
        display: inline-block;
        position: fixed;
    }
}