html {
    overflow: hidden;
    height: 100%;
}

body {
    font-family: 'Roboto', sans-serif;
    font-size: 16px;
    width: 100%;
    height: 100%;
    background: #fff;
    margin: 0;
    padding: 0;
    bottom: 0;
    top: 0;
    overflow-y: auto;
}

h2 {
    color: #149cab;
    font-weight: 700;
    font-size: 50px;
    font-family: 'Montserrat', sans-serif;
    text-transform: lowercase;
}

h2:after {
    content: '';
    width: 50px;
    height: 3px;
    background: #40E0D0;
    display: block;
    margin: 15px auto;
    transition: all .2s ease-in-out;
    -webkit-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
}

h2:hover:after {
    width: 100px;
}

h3,
h4,
h5 {
    font-family: 'Montserrat', sans-serif;
}

[data-tooltip] {
    position: relative;
    z-index: 2;
    cursor: pointer;
}

/* Hide the tooltip content by default */
[data-tooltip]:before,
[data-tooltip]:after {
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
}

/* Position tooltip above the element */
[data-tooltip]:before {
    position: absolute;
    bottom: 150%;
    left: 50%;
    margin-bottom: 5px;
    margin-left: -80px;
    padding: 7px;
    width: 160px;
    border-radius: 3px;
    background-color: #40E0D0;
    color: #fff;
    content: attr(data-tooltip);
    text-align: center;
    font-size: 14px;
    line-height: 1.2;
}

/* Triangle hack to make tooltip look like a speech bubble */
[data-tooltip]:after {
    position: absolute;
    bottom: 150%;
    left: 50%;
    margin-left: -5px;
    width: 0;
    border-top: 5px solid #40E0D0;
    border-right: 5px solid transparent;
    border-left: 5px solid transparent;
    content: " ";
    font-size: 0;
    line-height: 0;
}

/* Show tooltip content on hover */
[data-tooltip]:hover:before,
[data-tooltip]:hover:after {
    visibility: visible;
    opacity: 1;
}

/* SCROLL TO TOP ARROW */

#return-to-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
    background: rgba(64, 224, 208, 0.8);
    width: 50px;
    height: 50px;
    display: block;
    text-decoration: none;
    border-radius: 35px;
    display: none;
    -webkit-transition: all 0.3s linear;
    transition: all 0.3s ease;
    z-index: 999;
}

#return-to-top span {
    color: #fff;
    margin: 0;
    position: relative;
    left: 16px;
    top: 13px;
    font-size: 19px;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

#return-to-top:hover {
    background: rgba(64, 224, 208, 1);
}

#return-to-top:hover span {
    color: #fff;
    top: 5px;
}

/* END SCROLL TO TOP ARROW */


/* START PRELOADER */

#preloader {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #149cab;
    z-index: 99;
    height: 100%;
}

#status {
    width: 188px;
    height: 188px;
    position: absolute;
    left: 50%;
    top: 50%;
    background-image: url(../img/preloader.gif);
    background-repeat: no-repeat;
    background-position: center;
    margin: -100px 0 0 -100px;
}

/* END PRELOADER */


/* start header */

.navbar-fixed-top {
    background-color: #149cab;
}

.navbar-brand {
    padding: 0px 15px;
    height: 56px;
    margin-left: 0;
}

.navbar {
    margin-bottom: 0px;
    border: none;
}

.navbar-inverse .navbar-toggle:focus,
.navbar-inverse .navbar-toggle:hover {
    background-color:#149cab;
}

.navbar-inverse .navbar-toggle:focus .icon-bar,
.navbar-inverse .navbar-toggle:hover .icon-bar {
    background-color: #40E0D0;
}

.navbar-inverse .navbar-toggle {
    border: none;
}

.navbar-inverse .navbar-collapse,
.navbar-inverse .navbar-form {
    border: none;
}

.navbar-toggle .icon-bar {
    width: 35px;
    height: 5px
}

#ResponsiveNav li a {
    font-size: 16px;
    color: #fff;
    font-weight: 700;
    display: inline-block;
    position: relative;
    text-decoration: none;
    overflow: hidden;
    -webkit-transition: all .40s ease-in-out;
    transition: all .40s ease-in-out;
    font-family: 'Roboto', sans-serif;
    text-transform: lowercase;
}

#ResponsiveNav li a:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 0;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    height: 3px;
    background: #40E0D0;
    -webkit-transition: .35s;
    transition: .35s;
}

#ResponsiveNav li a:hover {
    color: #40E0D0;
}

#ResponsiveNav ul li a:hover:after,
#ResponsiveNav ul li a:focus:after,
#ResponsiveNav ul li a:active:after {
    width: 70%;
}

button.navbar-toggle.collapsed {
    background-color: #149cab;
    border: none;
}

.navbar-default .navbar-toggle:focus,
.navbar-default .navbar-toggle:hover {
    background-color: #40E0D0;
    border: none;
}

.navbar-default .navbar-toggle .icon-bar {
    background-color: #fff;
}


/*/ start hamburger menu desktop overwrite bootstrap /*/

.navbar-header {
    float: none;
}

.navbar-toggle {
    display: block;
}

.navbar-collapse.collapse {
    display: none !important;
}

.navbar-nav {
    float: none !important;
}

.navbar-nav>li {
    float: none;
}

.navbar-collapse.collapse.in {
    display: block !important;
}


/*/ end hamburger menu desktop overwrite bootstrap /*/


/*/ start intro /*/

.intro {
    display: table;
    width: 100%;
    height: auto;
    text-align: center;
    color: white;
    background: url(https://upload.wikimedia.org/wikipedia/commons/thumb/1/19/L%C3%BCbeck%2C_Holstentor_--_2017_--_0305.jpg/3174px-Mapcarta.jpg) no-repeat center center;
    background-size: cover;
}

.intro .intro-body {
    display: table-cell;
    vertical-align: middle;
    padding: 13% 0px 0px 0px;
    background-color: #1a1b1c;
    mix-blend-mode: hard-light;
}

.brand-heading {
    font-size: 100px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    text-align: left;
    color: #40E0D0;
}

.intro .intro-body .intro-text {
    font-size: 25px;
    font-family: 'Montserrat', sans-serif;
    text-align: left;
}

span.city {
    background-color: #112caf;
    color: #fff;
    border-radius: 4px;
    padding: 2px 5px;
}

@media (min-width: 768px) {
    .intro {
        height: 100%;
        padding: 0;
    }

    .intro .intro-body .brand-heading {
        font-size: 130px;
    }

    .intro .intro-body .intro-text {
        font-size: 35px;
    }
}

.mouse-warp {
    margin: 40px auto;
    display: block;
    width: 28px;
    opacity: 0.5;
}

.mouse {
    width: 28px;
    height: 50px;
    border: 2px solid #fff;
    border-radius: 14px;
}

.scroll {
    width: 4px;
    height: 4px;
    border-radius: 2px;
    background: #fff;
    position: relative;
    left: 10px;
    animation: scrolls 1.3s ease-out infinite;
}

@keyframes scrolls {
    0% {
        top: 8px;
        opacity: 0;
        -webkit-transform: scaleY(1) scaleX(1);
    }

    5% {
        top: 8px;
        opacity: 0.8;
        -webkit-transform: scaleY(1.2) scaleX(1.2);
    }

    10% {
        top: 8px;
        opacity: 1;
        -webkit-transform: scaleY(1.6) scaleX(1.6);
    }

    15% {
        top: 8px;
        opacity: 1;
        -webkit-transform: scaleY(1.2) scaleX(1.2);
    }

    20% {
        top: 8px;
        opacity: 1;
        -webkit-transform: scaleY(1.2) scaleX(1.2);
    }

    30% {
        top: 15px;
        opacity: 1;
        -webkit-transform: scaleY(1.2) scaleX(1.2);
    }

    100% {
        top: 30px;
        opacity: 0;
        -webkit-transform: scaleY(1.2) scaleX(0.8);
    }
}


/* End Scroll Down Indicator */


/*/ end intro /*/


/*/ start about /*/

#about-me {
    margin-top: 20px;
}

#about-me h2 {
    font-weight: 700;
    margin-top: 22px;
    padding-bottom: 10px;
    text-align: center;
}

.about-intro-text p {
    float: right;
}

.about-intro-text span {
    color: #40E0D0;
    font-weight: 700;
}

.about-intro-text .fa-beer {
    color: #40E0D0;
    font-size: 20px;
}

.button-group {
    cursor: pointer;
    display: -ms-inline-flexbox;
    display: inline-flex;
    perspective: 200px;
    perspective-origin: calc(100% - 50px);
    margin-top: 2%;
}

.button-group .text {
    background: #149cab;
    color: #fff;
    font-size: 18px;
    height: 50px;
    padding: 0 25px;
    line-height: 50px;
}

.button-group .icon-cv {
    font-size: 30px;
    width: 50px;
    height: 50px;
    line-height: 40px;
    box-sizing: border-box;
    border: 4px solid #149cab;
    border-left: none;
    -webkit-transition: 600ms -webkit-transform ease-in-out;
    transition: 600ms -webkit-transform ease-in-out;
    transition: 600ms transform ease-in-out;
    transition: 600ms transform ease-in-out, 600ms -webkit-transform ease-in-out;
    -webkit-transform: rotateY(90deg);
    transform: rotateY(90deg);
    -webkit-transform-origin: left;
    transform-origin: left;
    color: #149cab;
    background: #fff;
    text-align: center;
}

.button-group a .fa-arrow-circle-down {
    color: #149cab;
}

.button-group:hover .icon-cv {
    -webkit-transform: rotateY(0deg);
    transform: rotateY(0deg);
}

.about-inner {
    position: relative;
    padding: 0;
    overflow: hidden;
    margin-bottom: 10px;
}

.about-inner>img {
    display: block;
    min-width: 100%;
    height: auto;
}

.about-ct .textbox-about {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
}

.about-ct:hover .textbox-about {
    -webkit-transform: scale(1);
    transform: scale(1);
}

.textbox-about {
    -webkit-transition: all 0.7s ease;
    transition: all 0.7s ease;
}

div.button-social {
    border: 2px solid #fff;
    padding: 12px 18px;
    -webkit-transition: all .35s;
    transition: all .35s;
    border-radius: 0;
    margin-top: 25px;
    font-size: 18px;
    color: #fff;
    margin: 5% 5%;
}

div.button-social a {
    color: #fff;
    font-size: 18px;
    margin: 15px;
}

div.button-social a:hover {
    color: #40E0D0;
}

.button-group:focus,
.icon-cv:focus,
.text:focus {
    outline: 0;
}


/*/ start count stats /*/

#counter-stats {
    margin-top: 40px;
    width: 100%;
    height: auto;
}

.stats {
    text-align: center;
    font-size: 35px;
    font-weight: 700;
    font-family: 'Montserrat', sans-serif;
    text-transform: lowercase;
}

.stats .fas {
    color:#149cab ;
    font-size: 60px;
}


/*/ end count stats /*/


/*/ end about /*/


/*/ start about work experience /*/

#experience {
    margin-top: 20px;
}

#experience h2 {
    font-weight: 700;
    margin-top: 22px;
    padding-bottom: 10px;
    text-align: center;
}

.timeline-label h4 {
    margin-top: 0;
    font-size: 30px;
    color: #40E0D0;
    padding: 16px 0px;
    font-weight: 700;
}

.timeline-label p {
    color: #696969;
    padding: 8px 0px;
    line-height: 27px;
}

.button-group-li {
    cursor: pointer;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
}

.timeline-label a {
    text-decoration: none;
}

.text-timeline {
    background: #40E0D0;
    color: #fff;
    font-size: 18px;
    height: 40px;
    padding: 0 25px;
    line-height: 40px;
}

.icon-li {
    font-size: 20px;
    width: 40px;
    height: 40px;
    line-height: 30px;
    box-sizing: border-box;
    border: 4px solid #40E0D0;
    border-left: none;
    -webkit-transition: 600ms -webkit-transform ease-in-out;
    transition: 600ms -webkit-transform ease-in-out;
    transition: 600ms transform ease-in-out;
    transition: 600ms transform ease-in-out, 600ms -webkit-transform ease-in-out;
    -webkit-transform: rotateY(90deg);
    transform: rotateY(90deg);
    -webkit-transform-origin: left;
    transform-origin: left;
    color: #40E0D0;
    background: #fff;
    text-align: center;
}

.button-group-li:hover .icon-li {
    -webkit-transform: rotateY(0deg);
    transform: rotateY(0deg);
}

.button-group-li {
    -webkit-perspective: 200px;
    perspective: 200px;
    -webkit-perspective-origin: calc(100% - 40px);
    perspective-origin: calc(100% - 40px);
}

.timeline-label {
    padding-left: 7%;
    margin-top: 2%;
}

.col-exp {
    margin-top: 2%;
}

.timeline .timeline-experience {
    position: relative;
    float: left;
    margin-left: 32px;
    padding-left: 64px;
    border-left: 2px solid #ccc;
}

.timeline .timeline-experience-info h5 {
    margin-top: 0;
    margin-bottom: 0.333em;
    font-size: 18px;
    color: #40E0D0;
    font-weight: 700;
}

.timeline .timeline-experience-info .timeline-role {
    font-size: 16px;
    color: #149cab;
    font-weight: 600;
}

.timeline .timeline-experience-info p {
    font-size: 12px;
    color: #333;
    line-height: 27px;
}

.timeline time {
    display: block;
    width: 65px;
    color: #ccc;
    text-align: center;
    font-weight: 700;
}

.timeline .timeline-experience-img,
.timeline .timeline-experience-info,
.timeline .timeline-experience-info h5,
.timeline .timeline-experience-info .role,
.timeline .timeline-experience-info p {
    clear: none;
}

.timeline .timeline-experience .timeline-circle {
    position: absolute;
    top: 16px;
    left: -11px;
    display: block;
    width: 20px;
    height: 20px;
    border: 3px solid #ccc;
    border-radius: 50%;
    background-color: #F5F5F5;
}

.timeline .timeline-experience-img {
    float: left;
    width: 64px;
    height: 64px;
}

.timeline .timeline-experience-img img {
    width: 100%;
}

.timeline .timeline-experience-info {
    margin-left: 87px;
}

.timeline-experience-info p {
    margin-top: 10px;
    margin-bottom: 20px;
}


/*/ end about work experience /*/


/*/ end about /*/


/*/ start work portfolio /*/

#portfolio {
    margin-top: 20px;
}

.portfolio-ct h2 {
    font-weight: 700;
    margin-top: 22px;
    padding-bottom: 10px;
    text-align: center;
}

.grid-portfolio {
    margin-top: 20px;
}

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

.thumbnail {
    max-width: 500px;
    border: none;
    position: relative;
    background: none;
    padding: 0;
    margin: 0 auto;
}

.portfolio-details h3 {
    color: #149cab;
    font-weight: 700;
    font-size: 25px;
    font-family: 'Montserrat', sans-serif;
}

.portfolio-details p {
    font-size: 14px;
    min-height: 80px;
}

.portfolio-details a {
    color: #40E0D0;
    font-weight: 700;
}

ul.portfolio-tags {
    padding: 10px 0 10px 0;
    text-align: center;
}

li.portfolio-tag {
    list-style-type: none;
    font-size: 9px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    color: #40E0D0;
    display: inline-block;
    margin-top: 5px;
    border: 2px solid #40E0D0;
    padding: 8px;
}

span.portfolio-link {
    font-size: 30px;
    border: 2px solid #fff;
    border-radius: 50px;
    padding: 20px;
    color: #fff;
    margin: 20% auto;
}

.portfolio-item-ct .textbox-portfolio {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
    background: #40e0d0;
    opacity: 0.9;
}

.portfolio-item-ct:hover .textbox-portfolio {
    -webkit-transform: scale(1);
    transform: scale(1);
}

.textbox-portfolio {
    -webkit-transition: all 0.7s ease;
    transition: all 0.7s ease;
}

div.button-weblink {
    -webkit-transition: all .35s;
    transition: all .35s;
    border-radius: 0;
    color: #fff;
    text-align: center;
}

.portfolio-tag:focus,
.portfolio-tags:focus {
    outline: 0;
}

/*/ end work portfolio /*/


/*/ start services /*/

#services {
    margin-top: 20px;
    width: 100%;
    height: auto;
    text-align: center;
    margin-bottom: 45px;
}

#services h2 {
    font-weight: 700;
    margin-top: 22px;
    padding-bottom: 10px;
    text-align: center;
}

.ct-services {
    margin-top: 20px;
}

#services h3 {
    color: #40E0D0;
    font-size: 22px;
    font-weight: bold;
    text-transform: lowercase;
}

#services .fas,
#services .fab {
    font-size: 60px;
    color: #149cab;
}

#services .rotate {
    -webkit-transition-duration: 0.8s;
    transition-duration: 0.8s;
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    overflow: hidden;
}

#services .rotate:hover {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
}

/*/ end services /*/

/*/ start appearances /*/

#appearances {
    margin-top: 20px;
}

.appearances-ct h2 {
    font-weight: 700;
    margin-top: 22px;
    padding-bottom: 10px;
    text-align: center;
}

.grid-appearances {
    margin-top: 20px;
}

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

.thumbnail {
    max-width: 500px;
    border: none;
    position: relative;
    background: none;
    padding: 0;
    margin: 0 auto;
}

.appearances-details h3 {
    color: #149cab;
    font-weight: 700;
    font-size: 25px;
    font-family: 'Montserrat', sans-serif;
}

.appearances-details p {
    font-size: 14px;
    margin: 0px;
}

.appearances-details a {
    color: #40E0D0;
    font-weight: 700;
}

span.appearances-link {
    font-size: 30px;
    border: 2px solid #fff;
    border-radius: 50px;
    padding: 20px;
    color: #fff;
    margin: 20% auto;
}

.appearances-item-ct .textbox-appearances {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
    background: #40e0d0;
    opacity: 0.9;
}

.appearances-item-ct .thumbnail:hover .textbox-appearances {
    -webkit-transform: scale(1);
    transform: scale(1);
}

.textbox-appearances {
    -webkit-transition: all 0.7s ease;
    transition: all 0.7s ease;
}

.lightbox {
    background-color: rgba(0, 0, 0, 0.8);
    position: fixed;
    z-index: 1;
    bottom: 0;
    right: 0;
    left: 0;
    top: 0;
}

.lightbox-container {
    position: relative;
    margin: -25px auto;
    display: block;
    width: 100%;
    height: auto;
    z-index: 10;
}

.lightbox-content {
    box-shadow: 0 1px 6px rgba(0, 0, 0, 0.7);
}

.lightbox-close {
    width: 30px;
    height: 30px;
    position: absolute;
    font-size: 30px;
    display: block;
    color: #40E0D0;
    top: -40px;
    right: 0px;
    cursor: pointer;
    outline: 0;
}

.video-container {
    padding-bottom: 56.25%;
    position: relative;
    padding-top: 30px;
    overflow: hidden;
    height: 0;
}

.video-container iframe,
.video-container object,
.video-container embed {
    position: absolute;
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
}

/*/ end appearances /*/


/*/ start testimionals /*/

#testimionals {
    margin-top: 20px;
    width: 100%;
    height: auto;
    text-align: center;
}

#testimionals h2 {
    font-weight: 700;
    color: #fff;
    margin-top: 22px;
    padding-bottom: 10px;
    text-align: center;
}

.testimionals-bg {
    width: 100%;
    height: auto;
    background: url(../img/mm_testimionals.jpg) no-repeat top center scroll;
    background-size: cover;
}

.testimionals-bg-opacity {
    width: 100%;
    height: auto;
    background: rgba(0, 0, 0, 0.5);
}

.quotes {
    color: #fff;
    font-size: 60px;
}

.client {
    font-size: 16px;
    font-style: italic;
}

.carousel-caption {
    position: static;
    /*/ this is to replace the images of bootstrap slider /*/
    font-size: 18px;
    color: #fff;
    min-height: 200px;
}

.carousel-control.left,
.carousel-control.right {
    background: none;
}


/*/ end testimionals /*/


/*/ start contact /*/

footer {
    text-align: center;
    font-size: 18px;
    margin-top: 20px;
}

#contact h2 {
    font-weight: 700;
    margin-top: 22px;
    padding-bottom: 10px;
    text-align: center;
}

footer p {
    margin-top: 50px;
}

footer p span,
footer p.success {
    color: #40E0D0;
}

footer p.error {
    color: red;
}

.social,
footer a {
    font-size: 30px;
    color: #24242a;
    margin: 10px;
}

footer a:hover,
footer a:after,
footer a:visited footer a:focus {
    color: #40E0D0;
}

#copyright {
    margin-top: 35px;
    font-size: 14px;
}


/*/ end contact /*/


/*/ start cookie notice /*/

.notice {
    background: #149cab;
    color: #fff;
    text-align: center;
    height: 40px;
    margin-top: 20px;
}

.notice p {
    padding-top: 10px;
    font-size: 11px;
}

.closeCookieNotice {
    background: #fff;
    color: #149cab;
    border: 0;
}

/*/ end cookie notice /*/


/*/ media queries /*/

@media only screen and (max-width: 480px) {
    .brand-heading {
        font-size: 85px;
        margin-top: 10%;
    }

    .col-exp {
        margin-top: 15%;
    }

    .timeline .timeline-experience {
        margin-left: 20px;
        padding-left: 20px;
    }

    .timeline time {
        width: 40px;
    }

    .services-item {
        margin-bottom: 15%;
    }
}