

/*
 *  Owl Carousel - Animate Plugin
 */
.owl-carousel .animated {
    -webkit-animation-duration: 1000ms;
    animation-duration: 1000ms;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}
.owl-carousel .owl-animated-in {
    z-index: 0;
}
.owl-carousel .owl-animated-out {
    z-index: 1;
}
.owl-carousel .fadeOut {
    -webkit-animation-name: fadeOut;
    animation-name: fadeOut;
}

@-webkit-keyframes fadeOut {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}
@keyframes fadeOut {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

/*
 * 	Owl Carousel - Auto Height Plugin
 */
.owl-height {
    -webkit-transition: height 500ms ease-in-out;
    -moz-transition: height 500ms ease-in-out;
    -ms-transition: height 500ms ease-in-out;
    -o-transition: height 500ms ease-in-out;
    transition: height 500ms ease-in-out;
}

/*
 *  Core Owl Carousel CSS File
 */
.owl-carousel {
    display: none;
    width: 100%;
    -webkit-tap-highlight-color: transparent;
    /* position relative and z-index fix webkit rendering fonts issue */
    position: relative;
    z-index: 1;
}
.owl-carousel .owl-stage {
    position: relative;
    -ms-touch-action: pan-Y;
}
.owl-carousel .owl-stage:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0;
}
.owl-carousel .owl-stage-outer {
    position: relative;
    overflow: hidden;
    /* fix for flashing background */
    -webkit-transform: translate3d(0px, 0px, 0px);
}
.owl-carousel .owl-controls .owl-nav .owl-prev,
.owl-carousel .owl-controls .owl-nav .owl-next,
.owl-carousel .owl-controls .owl-dot {
    cursor: pointer;
    cursor: hand;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.owl-carousel.owl-loaded {
    display: block;
}
.owl-carousel.owl-loading {
    opacity: 0;
    display: block;
}
.owl-carousel.owl-hidden {
    opacity: 0;
}
.owl-carousel .owl-refresh .owl-item {
    display: none;
}
.owl-carousel .owl-item {
    position: relative;
    min-height: 1px;
    float: left;
    -webkit-backface-visibility: hidden;
    -webkit-tap-highlight-color: transparent;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.owl-carousel .owl-item img {
    display: block;
    width: 100%;
    -webkit-transform-style: preserve-3d;
}
.owl-carousel.owl-text-select-on .owl-item {
    -webkit-user-select: auto;
    -moz-user-select: auto;
    -ms-user-select: auto;
    user-select: auto;
}
.owl-carousel .owl-grab {
    cursor: move;
    cursor: -webkit-grab;
    cursor: -o-grab;
    cursor: -ms-grab;
    cursor: grab;
}
.owl-carousel.owl-rtl {
    direction: rtl;
}
.owl-carousel.owl-rtl .owl-item {
    float: right;
}

/* No Js */
.no-js .owl-carousel {
    display: block;
}

/*
 * 	Owl Carousel - Lazy Load Plugin
 */
.owl-carousel .owl-item .owl-lazy {
    opacity: 0;
    -webkit-transition: opacity 400ms ease;
    -moz-transition: opacity 400ms ease;
    -ms-transition: opacity 400ms ease;
    -o-transition: opacity 400ms ease;
    transition: opacity 400ms ease;
}
.owl-carousel .owl-item img {
    transform-style: preserve-3d;
}

/*
 * 	Owl Carousel - Video Plugin
 */
.owl-carousel .owl-video-wrapper {
    position: relative;
    height: 100%;
    background: #000;
}
.owl-carousel .owl-video-play-icon {
    position: absolute;
    height: 80px;
    width: 80px;
    left: 50%;
    top: 50%;
    margin-left: -40px;
    margin-top: -40px;
    background: no-repeat;
    cursor: pointer;
    z-index: 1;
    -webkit-backface-visibility: hidden;
    -webkit-transition: scale 100ms ease;
    -moz-transition: scale 100ms ease;
    -ms-transition: scale 100ms ease;
    -o-transition: scale 100ms ease;
    transition: scale 100ms ease;
}
.owl-carousel .owl-video-play-icon:hover {
    -webkit-transition: scale(1.3, 1.3);
    -moz-transition: scale(1.3, 1.3);
    -ms-transition: scale(1.3, 1.3);
    -o-transition: scale(1.3, 1.3);
    transition: scale(1.3, 1.3);
}
.owl-carousel .owl-video-playing .owl-video-tn,
.owl-carousel .owl-video-playing .owl-video-play-icon {
    display: none;
}
.owl-carousel .owl-video-tn {
    opacity: 0;
    height: 100%;
    background-position: center center;
    background-repeat: no-repeat;
    -webkit-background-size: contain;
    -moz-background-size: contain;
    -o-background-size: contain;
    background-size: contain;
    -webkit-transition: opacity 400ms ease;
    -moz-transition: opacity 400ms ease;
    -ms-transition: opacity 400ms ease;
    -o-transition: opacity 400ms ease;
    transition: opacity 400ms ease;
}
.owl-carousel .owl-video-frame {
    position: relative;
    z-index: 1;
}


/**
 * Lightcase - jQuery Plugin
 * The smart and flexible Lightbox Plugin.
 *
 * @author		Cornel Boppart <cornel@bopp-art.com>
 * @copyright	Author
 *
 * @version		2.3.6 (20/12/2016)
 */
/**
 * Lightcase settings
 *
 * Note: Override default settings for your project without touching this source code by simply
 * defining those variables within a SASS map called '$lightcase-custom'.
 *
 * // Example usage
 * $lightcase-custom: (
 *   'breakpoint': 768px
 * );
 */

/* line 12, ../scss/components/fonts/_font-lightcase.scss */
[class*='lightcase-icon-']:before {
    font-family: 'lightcase', sans-serif;
    font-style: normal;
    font-weight: normal;
    speak: none;
    display: inline-block;
    text-decoration: inherit;
    width: 1em;
    text-align: center;
    /* For safety - reset parent styles, that can break glyph codes*/
    font-variant: normal;
    text-transform: none;
    /* fix buttons height, for twitter bootstrap */
    line-height: 1em;
    /* Uncomment for 3D effect */
    /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */
}

/* Codes */
/* line 35, ../scss/components/fonts/_font-lightcase.scss */
.lightcase-icon-play:before {
    content: '\e800';
}

/* line 36, ../scss/components/fonts/_font-lightcase.scss */
.lightcase-icon-pause:before {
    content: '\e801';
}

/* line 37, ../scss/components/fonts/_font-lightcase.scss */
.lightcase-icon-close:before {
    content: '\e802';
}

/* line 38, ../scss/components/fonts/_font-lightcase.scss */
.lightcase-icon-prev:before {
    content: '\e803';
}

/* line 39, ../scss/components/fonts/_font-lightcase.scss */
.lightcase-icon-next:before {
    content: '\e804';
}

/* line 40, ../scss/components/fonts/_font-lightcase.scss */
.lightcase-icon-spin:before {
    content: '\e805';
}

/**
 * Mixin providing icon defaults to be used on top of font-lightcase.
 *
 * Example usage:
 * @include icon(#e9e9e9)
 */
/**
 * Mixin providing icon defaults including a hover status to be used
 * on top of font-lightcase.
 *
 * Example usage:
 * @include icon-hover(#e9e9e9, #fff)
 */
/**
 * Provides natural content overflow behavior and scrolling support
 * even so for touch devices.
 *
 * Example usage:
 * @include overflow()
 */
/**
 * Neutralizes/resets dimensions including width, height, position as well as margins,
 * paddings and styles. Used to enforce a neutral and unstyled look and behavoir!
 *
 * Example usage:
 * @include clear(true)
 *
 * @param boolean $important
 */
@-webkit-keyframes lightcase-spin {
    0% {
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(359deg);
        -moz-transform: rotate(359deg);
        -o-transform: rotate(359deg);
        transform: rotate(359deg);
    }
}
@-moz-keyframes lightcase-spin {
    0% {
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(359deg);
        -moz-transform: rotate(359deg);
        -o-transform: rotate(359deg);
        transform: rotate(359deg);
    }
}
@-o-keyframes lightcase-spin {
    0% {
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(359deg);
        -moz-transform: rotate(359deg);
        -o-transform: rotate(359deg);
        transform: rotate(359deg);
    }
}
@-ms-keyframes lightcase-spin {
    0% {
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(359deg);
        -moz-transform: rotate(359deg);
        -o-transform: rotate(359deg);
        transform: rotate(359deg);
    }
}
@keyframes lightcase-spin {
    0% {
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(359deg);
        -moz-transform: rotate(359deg);
        -o-transform: rotate(359deg);
        transform: rotate(359deg);
    }
}
/* line 1, ../scss/components/modules/_case.scss */
#lightcase-case {
    display: none;
    position: fixed;
    z-index: 2002;
    top: 50%;
    left: 50%;
    font-family: arial, sans-serif;
    font-size: 13px;
    line-height: 1.5;
    text-align: left;
    text-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
}
@media screen and (max-width: 640px) {
    /* line 16, ../scss/components/modules/_case.scss */
    #lightcase-case:not([data-lc-type=image]):not([data-lc-type=video]):not([data-lc-type=flash]):not([data-lc-type=error]) {
        position: relative !important;
        top: auto !important;
        left: auto !important;
        width: auto !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        border: none !important;
        background: none !important;
    }
}

@media screen and (min-width: 641px) {
    /* line 4, ../scss/components/modules/_content.scss */
    #lightcase-case:not([data-lc-type=error]) #lightcase-content {
        position: relative;
        z-index: 1;
        overflow: hidden;
        text-shadow: none;
        background-color: #fff;
        -webkit-box-shadow: 0 0 30px rgba(0, 0, 0, 0.5);
        -moz-box-shadow: 0 0 30px rgba(0, 0, 0, 0.5);
        -o-box-shadow: 0 0 30px rgba(0, 0, 0, 0.5);
        box-shadow: 0 0 30px rgba(0, 0, 0, 0.5);
        -webkit-backface-visibility: hidden;
    }
}
@media screen and (min-width: 641px) {
    /* line 24, ../scss/components/modules/_content.scss */
    #lightcase-case[data-lc-type=image] #lightcase-content, #lightcase-case[data-lc-type=video] #lightcase-content {
        background-color: #333;
    }
}
/* line 32, ../scss/components/modules/_content.scss */
#lightcase-case:not([data-lc-type=image]):not([data-lc-type=video]):not([data-lc-type=flash]):not([data-lc-type=error]) #lightcase-content {
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    -o-box-shadow: none;
    box-shadow: none;
}
@media screen and (max-width: 640px) {
    /* line 32, ../scss/components/modules/_content.scss */
    #lightcase-case:not([data-lc-type=image]):not([data-lc-type=video]):not([data-lc-type=flash]):not([data-lc-type=error]) #lightcase-content {
        position: relative !important;
        top: auto !important;
        left: auto !important;
        width: auto !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        border: none !important;
        background: none !important;
    }
}
/* line 42, ../scss/components/modules/_content.scss */
#lightcase-case:not([data-lc-type=image]):not([data-lc-type=video]):not([data-lc-type=flash]):not([data-lc-type=error]) #lightcase-content .lightcase-contentInner {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    box-sizing: border-box;
}
@media screen and (max-width: 640px) {
    /* line 42, ../scss/components/modules/_content.scss */
    #lightcase-case:not([data-lc-type=image]):not([data-lc-type=video]):not([data-lc-type=flash]):not([data-lc-type=error]) #lightcase-content .lightcase-contentInner {
        padding: 15px;
    }
    /* line 51, ../scss/components/modules/_content.scss */
    #lightcase-case:not([data-lc-type=image]):not([data-lc-type=video]):not([data-lc-type=flash]):not([data-lc-type=error]) #lightcase-content .lightcase-contentInner, #lightcase-case:not([data-lc-type=image]):not([data-lc-type=video]):not([data-lc-type=flash]):not([data-lc-type=error]) #lightcase-content .lightcase-contentInner > * {
        width: 100% !important;
        max-width: none !important;
    }
    /* line 58, ../scss/components/modules/_content.scss */
    #lightcase-case:not([data-lc-type=image]):not([data-lc-type=video]):not([data-lc-type=flash]):not([data-lc-type=error]) #lightcase-content .lightcase-contentInner > *:not(iframe) {
        height: auto !important;
        max-height: none !important;
    }
}
@media screen and (max-width: 640px) {
    /* line 69, ../scss/components/modules/_content.scss */
    .lightcase-isMobileDevice #lightcase-case[data-lc-type=iframe] #lightcase-content .lightcase-contentInner iframe {
        overflow: auto;
        -webkit-overflow-scrolling: touch;
    }
}
@media screen and (max-width: 640px) and (min-width: 641px) {
    /* line 73, ../scss/components/modules/_content.scss */
    [data-lc-type=image] #lightcase-content .lightcase-contentInner, [data-lc-type=video] #lightcase-content .lightcase-contentInner {
        line-height: 0.75;
    }
}

@media screen and (max-width: 640px) {
    /* line 85, ../scss/components/modules/_content.scss */
    #lightcase-case:not([data-lc-type=image]):not([data-lc-type=video]):not([data-lc-type=flash]):not([data-lc-type=error]) #lightcase-content .lightcase-contentInner .lightcase-inlineWrap {
        position: relative !important;
        top: auto !important;
        left: auto !important;
        width: auto !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        border: none !important;
        background: none !important;
    }
}
@media screen and (min-width: 641px) {
    /* line 92, ../scss/components/modules/_content.scss */
    #lightcase-case:not([data-lc-type=error]) #lightcase-content .lightcase-contentInner .lightcase-inlineWrap {
        padding: 30px;
        overflow: auto;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -o-box-sizing: border-box;
        box-sizing: border-box;
    }
}
@media screen and (max-width: 640px) {
    /* line 109, ../scss/components/modules/_content.scss */
    #lightcase-content h1, #lightcase-content h2, #lightcase-content h3, #lightcase-content h4, #lightcase-content h5, #lightcase-content h6, #lightcase-content p {
        color: #aaa;
    }
}
@media screen and (min-width: 641px) {
    /* line 109, ../scss/components/modules/_content.scss */
    #lightcase-content h1, #lightcase-content h2, #lightcase-content h3, #lightcase-content h4, #lightcase-content h5, #lightcase-content h6, #lightcase-content p {
        color: #333;
    }
}

/* line 3, ../scss/components/modules/_error.scss */
#lightcase-case p.lightcase-error {
    margin: 0;
    font-size: 17px;
    text-align: center;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    color: #aaa;
}
@media screen and (max-width: 640px) {
    /* line 3, ../scss/components/modules/_error.scss */
    #lightcase-case p.lightcase-error {
        padding: 30px 0;
    }
}
@media screen and (min-width: 641px) {
    /* line 3, ../scss/components/modules/_error.scss */
    #lightcase-case p.lightcase-error {
        padding: 0;
    }
}

/* line 6, ../scss/components/modules/_global.scss */
.lightcase-isMobileDevice .lightcase-open body {
    max-width: 100%;
    max-height: 100%;
    overflow: hidden;
}
@media screen and (max-width: 640px) {
    /* line 4, ../scss/components/modules/_global.scss */
    .lightcase-open body {
        padding: 55px 0 70px 0;
    }
    /* line 15, ../scss/components/modules/_global.scss */
    .lightcase-open body > *:not([id*='lightcase-']) {
        position: fixed !important;
        top: -9999px !important;
        width: 0 !important;
        height: 0 !important;
        overflow: hidden !important;
    }
}

/* line 1, ../scss/components/modules/_info.scss */
#lightcase-info {
    position: absolute;
    padding-top: 15px;
}
/* line 9, ../scss/components/modules/_info.scss */
#lightcase-info #lightcase-title,
#lightcase-info #lightcase-caption {
    margin: 0;
    padding: 0;
    line-height: 1.5;
    font-weight: normal;
    text-overflow: ellipsis;
}
/* line 19, ../scss/components/modules/_info.scss */
#lightcase-info #lightcase-title {
    font-size: 17px;
    color: #aaa;
}
@media screen and (max-width: 640px) {
    /* line 19, ../scss/components/modules/_info.scss */
    #lightcase-info #lightcase-title {
        position: fixed;
        top: 10px;
        left: 0;
        max-width: 87.5%;
        padding: 5px 15px;
        background: #333;
    }
}
/* line 33, ../scss/components/modules/_info.scss */
#lightcase-info #lightcase-caption {
    clear: both;
    font-size: 13px;
    color: #aaa;
}
/* line 39, ../scss/components/modules/_info.scss */
#lightcase-info #lightcase-sequenceInfo {
    font-size: 11px;
    color: #aaa;
}
@media screen and (max-width: 640px) {
    /* line 45, ../scss/components/modules/_info.scss */
    .lightcase-fullScreenMode #lightcase-info {
        padding-left: 15px;
        padding-right: 15px;
    }
    /* line 51, ../scss/components/modules/_info.scss */
    #lightcase-case:not([data-lc-type=image]):not([data-lc-type=video]):not([data-lc-type=flash]):not([data-lc-type=error]) #lightcase-info {
        position: static;
    }
}

/* line 1, ../scss/components/modules/_loading.scss */
#lightcase-loading {
    position: fixed;
    z-index: 9999;
    width: 1.123em;
    height: auto;
    font-size: 38px;
    line-height: 1;
    text-align: center;
    text-shadow: none;
    position: fixed;
    z-index: 2001;
    top: 50%;
    left: 50%;
    margin-top: -0.5em;
    margin-left: -0.5em;
    opacity: 1;
    font-size: 32px;
    text-shadow: 0 0 15px #fff;
    -moz-transform-origin: 50% 53%;
    -webkit-animation: lightcase-spin 0.5s infinite linear;
    -moz-animation: lightcase-spin 0.5s infinite linear;
    -o-animation: lightcase-spin 0.5s infinite linear;
    animation: lightcase-spin 0.5s infinite linear;
}
/* line 20, ../scss/components/mixins/_presets.scss */
#lightcase-loading, #lightcase-loading:focus {
    text-decoration: none;
    color: #fff;
    -webkit-tap-highlight-color: transparent;
    -webkit-transition: color, opacity, ease-in-out 0.25s;
    -moz-transition: color, opacity, ease-in-out 0.25s;
    -o-transition: color, opacity, ease-in-out 0.25s;
    transition: color, opacity, ease-in-out 0.25s;
}
/* line 32, ../scss/components/mixins/_presets.scss */
#lightcase-loading > span {
    display: inline-block;
    text-indent: -9999px;
}

/* line 4, ../scss/components/modules/_navigation.scss */
#lightcase-nav a[class*='lightcase-icon-'] {
    position: fixed;
    z-index: 9999;
    width: 1.123em;
    height: auto;
    font-size: 38px;
    line-height: 1;
    text-align: center;
    text-shadow: none;
    outline: none;
    cursor: pointer;
}
/* line 20, ../scss/components/mixins/_presets.scss */
#lightcase-nav a[class*='lightcase-icon-'], #lightcase-nav a[class*='lightcase-icon-']:focus {
    text-decoration: none;
    color: rgba(255, 255, 255, 0.6);
    -webkit-tap-highlight-color: transparent;
    -webkit-transition: color, opacity, ease-in-out 0.25s;
    -moz-transition: color, opacity, ease-in-out 0.25s;
    -o-transition: color, opacity, ease-in-out 0.25s;
    transition: color, opacity, ease-in-out 0.25s;
}
/* line 32, ../scss/components/mixins/_presets.scss */
#lightcase-nav a[class*='lightcase-icon-'] > span {
    display: inline-block;
    text-indent: -9999px;
}
/* line 49, ../scss/components/mixins/_presets.scss */
#lightcase-nav a[class*='lightcase-icon-']:hover {
    color: white;
    text-shadow: 0 0 15px white;
}
/* line 12, ../scss/components/modules/_navigation.scss */
.lightcase-isMobileDevice #lightcase-nav a[class*='lightcase-icon-']:hover {
    color: #aaa;
    text-shadow: none;
}
/* line 19, ../scss/components/modules/_navigation.scss */
#lightcase-nav a[class*='lightcase-icon-'].lightcase-icon-prev {
    left: 15px;
}
/* line 24, ../scss/components/modules/_navigation.scss */
#lightcase-nav a[class*='lightcase-icon-'].lightcase-icon-next {
    right: 15px;
}
/* line 29, ../scss/components/modules/_navigation.scss */
#lightcase-nav a[class*='lightcase-icon-'].lightcase-icon-pause, #lightcase-nav a[class*='lightcase-icon-'].lightcase-icon-play {
    left: 50%;
    margin-left: -0.5em;
}
@media screen and (min-width: 641px) {
    /* line 29, ../scss/components/modules/_navigation.scss */
    #lightcase-nav a[class*='lightcase-icon-'].lightcase-icon-pause, #lightcase-nav a[class*='lightcase-icon-'].lightcase-icon-play {
        opacity: 0;
    }
}
/* line 40, ../scss/components/modules/_navigation.scss */
#lightcase-nav a[class*='lightcase-icon-'].lightcase-icon-close {
    top: 15px;
    right: 15px;
    bottom: auto;
    margin: 0;
    opacity: 0;
    outline: none;
}
@media screen and (max-width: 640px) {
    /* line 40, ../scss/components/modules/_navigation.scss */
    #lightcase-nav a[class*='lightcase-icon-'].lightcase-icon-close {
        position: absolute;
    }
}
@media screen and (min-width: 641px) {
    /* line 40, ../scss/components/modules/_navigation.scss */
    #lightcase-nav a[class*='lightcase-icon-'].lightcase-icon-close {
        position: fixed;
    }
}
@media screen and (max-width: 640px) {
    /* line 4, ../scss/components/modules/_navigation.scss */
    #lightcase-nav a[class*='lightcase-icon-'] {
        bottom: 15px;
        font-size: 24px;
    }
}
@media screen and (min-width: 641px) {
    /* line 4, ../scss/components/modules/_navigation.scss */
    #lightcase-nav a[class*='lightcase-icon-'] {
        bottom: 50%;
        margin-bottom: -0.5em;
    }
    /* line 66, ../scss/components/modules/_navigation.scss */
    #lightcase-nav a[class*='lightcase-icon-']:hover, #lightcase-case:hover ~ #lightcase-nav a[class*='lightcase-icon-'] {
        opacity: 1;
    }
}

/* line 1, ../scss/components/modules/_overlay.scss */
#lightcase-overlay {
    display: none;
    width: 100%;
    min-height: 100%;
    position: fixed;
    z-index: 2000;
    top: -9999px;
    bottom: -9999px;
    left: 0;
    background: #333;
}
@media screen and (max-width: 640px) {
    /* line 1, ../scss/components/modules/_overlay.scss */
    #lightcase-overlay {
        opacity: 1 !important;
    }
}



/*=============================
*** Table of CSS Structure ***
1. Typography
2. Form
3. Global
4. Welcome
5. Navigation
6. introduction
7. Profile
8. Expertise
9. Work Strategy
10. What I Offer
11. Portfolio
12. Testimonials
13. Footer
14. Style Switcher
15. PreLoader
16. Keyframes Animation
=============================*/


/*

/*=========================
      1. Typography
==========================*/

body {
    font-family:'Montserrat', sans-serif;
    background: #040e14;
    font-weight: 300;
    font-size: 14px;
    line-height: 1.875;
    color: #040e14;
    overflow-x: hidden;
}

a {
    color: var(--t64-ink);
    text-decoration: none;
    transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -ms-transition: all 0.4s ease-in-out;
    -webkit-transition: all 0.4s ease-in-out;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: 'Philosopher', sans-serif;
    font-weight: 400;
    margin: 0;
}

h1 {
    font-size: 48px;
}

h2 {
    font-size: 40px;
}

h3 {
    font-size: 24px;
}

h4 {
    font-size: 20px;
}

h5 {
    font-size: 18px;
}

h6 {
    font-size: 16px;
}

p {
    margin: 0;
}


/*=========================
      2. Form
==========================*/

.form-group {
    margin-bottom: 15px;
}

.form-control:focus,
input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
select:focus,
textarea:focus {
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    -ms-box-shadow: none;
    box-shadow: none;
    border-color: inherit;
}

.form-control,
input[type="text"],
input[type="email"],
input[type="tel"],
select,
textarea {
    width: 100%;
    background: #040e14;
    min-height: 50px;
    font-weight: 400;
    -ms-border-radius: 0;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    border-radius: 0;
    color: #fff;
    border: 0;
    padding: 15px 20px;
    box-shadow: none;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    -ms-box-shadow: none;
}

textarea {
    resize: none;
    min-height: 180px;
}

.btn {
    display: inline-block;
    font-weight: 400;
    text-transform: uppercase;
    margin: 4px;
    padding: 15px 40px;
    text-decoration: none;
    border-radius: 0;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    -ms-border-radius: 0;
    transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -ms-transition: all 0.4s ease-in-out;
    -webkit-transition: all 0.4s ease-in-out;
    -webkit-text-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
    -moz-text-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
    -ms-text-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
    text-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
}

.btn-primary {
    box-shadow: 0 0 0 4px var(--t64-fill);
    -webkit-box-shadow: 0 0 0 4px var(--t64-fill);
    -moz-box-shadow: 0 0 0 4px var(--t64-fill);
    -ms-box-shadow: 0 0 0 4px var(--t64-fill);
    border: 1px solid #fff;
    background: var(--t64-fill);
    position: relative;
    overflow: hidden;
}

.btn-primary:hover,
.btn-primary:focus {
    background: #040e14;
    border-color: #fff;
    box-shadow: 0 0 0 4px #040e14;
    -webkit-box-shadow: 0 0 0 4px #040e14;
    -moz-box-shadow: 0 0 0 4px #040e14;
    -ms-box-shadow: 0 0 0 4px #040e14;
}


/*=========================
      3. Global
==========================*/

html,
body {
    height: 100%;
}

*:focus {
    outline: 0;
    text-decoration: none;
}

input:focus {
    box-shadow: none;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    -ms-box-shadow: none;
}

::-webkit-input-placeholder {
    color: #000 !important;
}

input::-moz-placeholder,
textarea::-moz-placeholder {
    color: #000 !important;
}

::-ms-input-placeholder {
    color: #000 !important;
}

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

.slope {
    bottom: 100%;
}

[class*="slope"] {
    position: absolute;
    width: 100%;
    height: 100px;
    left: 0;
    z-index: 5;
}

[class*=slope] svg {
    height: 101%;
}

svg:not(:root) {
    overflow: hidden;
}

[class*="slope-light"] {
    fill: #f9f9f9;
}

[class*="slope-dark"] {
    fill: #040e14;
}

.number {
    padding: 6px;
    text-align: center;
    margin: 4px 30px 4px 4px;
    width: 60px;
    height: 60px;
    background: var(--t64-fill);
    font-family: 'Philosopher', sans-serif;
    font-size: 40px;
    font-weight: 400;
    display: inline-block;
    vertical-align: middle;
    color: #fff;
    border: 1px solid #fff;
    box-shadow: 0 0 0 4px var(--t64-fill);
    -webkit-box-shadow: 0 0 0 4px var(--t64-fill);
    -moz-box-shadow: 0 0 0 4px var(--t64-fill);
    -ms-box-shadow: 0 0 0 4px #fff;
    -webkit-text-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
    -moz-text-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
    -ms-text-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
    text-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
}

.heading {
    margin-bottom: 60px;
    font-weight: 400;
}

section {
    padding-top: 100px;
    padding-bottom: 100px;
}

.container {
    width: auto !important;
    max-width: 1170px;
}


/*=========================
      4. Welcome
==========================*/

.welcome {
    width: 100%;
    height: 100%;
    background: no-repeat;
    position: relative;
    overflow: hidden;
    background-size: cover;
    background-attachment: fixed;
}

.welcome:after {
    width: 100%;
    max-width: 35%;
    height: 100%;
    content: "";
    position: absolute;
    top: 0;
    right: 10%;
    background: rgba(192, 39, 57, 0.8);
    transform: skewX(-30deg);
    -webkit-transform: skewX(-30deg);
    -moz-transform: skewX(-30deg);
    -ms-transform: skewX(-30deg);
}

.welcome .container {
    height: 100%;
    min-height: 100%;
}

.profile-image {
    position: absolute;
    left: 10%;
    top: 100px;
    bottom: 0
}

.profile-holder {
    float: right;
    font-family: 'Philosopher', sans-serif;
    max-width: 556px;
    height: 100%;
    display: table;
    position: relative;
    z-index: 1;
}

.profile-holder h1 {
    font-size: 40px;
}

.profile-holder-inner {
    display: table-cell;
    vertical-align: middle;
    height: 100%;
}

.profile-holder ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.welcome-holder {
    position: relative;
}

.profile-name-holder {
    overflow: hidden;
    font-size: 40px;
    line-height: 40px;
    padding: 30px;
    background: #fff;
    position: relative;
    z-index: 1;
    margin: 8px;
    border: 1px solid var(--t64-fill);
    box-shadow: 0 0 0 8px #fff;
    -webkit-box-shadow: 0 0 0 8px #fff;
    -moz-box-shadow: 0 0 0 8px #fff;
    -ms-box-shadow: 0 0 0 8px #fff;
}

.profile-name-holder .welcome-text {
    font-size: 24px;
    display: block;
}

.profile-name-holder .name {
    color: var(--t64-ink);
}

.rotate {
    display: none
}

.rotate-text {
    display: block;
    margin-top: 20px;
}

.rotate-text > span {
    display: inline-block;
    font-size: 28px;
    line-height: 28px;
    color: #fff;
    padding: 10px 20px;
    background: var(--t64-fill);
    border: 1px solid #fff;
    box-shadow: 0 0 0 4px var(--t64-fill);
    -webkit-box-shadow: 0 0 0 4px var(--t64-fill);
    -moz-box-shadow: 0 0 0 4px var(--t64-fill);
    -ms-box-shadow: 0 0 0 4px var(--t64-fill);
    -webkit-text-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
    -moz-text-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
    -ms-text-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
    text-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
}

.rotator-progress-bar {
    height: 1px;
    background: var(--t64-fill);
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    margin-top: 50px;
    z-index: -1;
}

.profile-skills {
    padding-left: 70px;
    padding-right: 70px;
}

.profile-skills ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.profile-skills ul li {
    background: #e23145;
    position: relative;
    padding: 15px 20px;
    color: #fff;
    font-size: 26px;
    line-height: 30px;
    margin-bottom: 4px;
    box-shadow: 0 0 20px 5px rgba(0, 0, 0, 0.4);
    -webkit-box-shadow: 0 0 20px 5px rgba(0, 0, 0, 0.4);
    -moz-box-shadow: 0 0 20px 5px rgba(0, 0, 0, 0.4);
    -ms-box-shadow: 0 0 20px 5px rgba(0, 0, 0, 0.4);
    -webkit-text-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
    -moz-text-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
    -ms-text-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
    text-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
}

.profile-skills ul li:last-child {
    margin-bottom: 0;
}

.scroll-down {
    font-size: 20px;
    font-family: 'Philosopher', sans-serif;
    color: #fff;
    position: absolute;
    bottom: 40px;
    z-index: 1;
    left: 0;
    right: 0;
    margin: 0 auto;
}

.scroll-down .mouse-icon {
    width: 34px;
    border: 1px solid #fff;
    height: 50px;
    cursor: pointer;
    left: 0;
    right: 0;
    margin: 0 auto 15px;
    position: relative;
    -webkit-border-radius: 34px;
    -moz-border-radius: 34px;
    -ms-border-radius: 34px;
    border-radius: 34px;
}

.scroll-down .icon-scroll {
    display: block;
    width: 8px;
    height: 8px;
    background: #fff;
    position: absolute;
    top: 8px;
    left: 12px;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    -ms-border-radius: 8px;
    border-radius: 8px;
    -webkit-animation-name: scroll;
    -webkit-animation-duration: 1.5s;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-timing-function: ease;
    animation-name: scroll;
    animation-duration: 1.5s;
    animation-iteration-count: infinite;
    animation-timing-function: ease;
}


/*=========================
      5. Navigation
==========================*/

.navbar {
    width: 100%;
    position: relative;
    z-index: 9999;
    background: var(--t64-fill);
    font-size: 15px;
    font-weight: 400;
    border: 0;
    margin: 0;
    box-shadow: 0 0 10px 5px rgba(0, 0, 0, 0.4);
    -webkit-box-shadow: 0 0 10px 5px rgba(0, 0, 0, 0.4);
    -moz-box-shadow: 0 0 10px 5px rgba(0, 0, 0, 0.4);
    -ms-box-shadow: 0 0 10px 5px rgba(0, 0, 0, 0.4);
    border-radius: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    -ms-border-radius: 0;
}

.navbar.affix {
    top: 0;
    position: fixed;
}

.navbar .navbar-brand {
    padding: 5px 0;
    height: auto;
    width: 72px;
    margin: 0 !important;
}

.navbar-collapse {
    padding-left: 0;
    padding-right: 0;
}

.navbar .navbar-nav {
    float: right;
}

.navbar .navbar-nav li a {
    display: block;
    padding: 31px 10px;
    color: #fff;
    text-transform: uppercase;
    -webkit-text-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
    -moz-text-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
    -ms-text-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
    text-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
}

.navbar .navbar-nav li a:focus,
.navbar .navbar-nav li.active > a,
.navbar .navbar-nav li a:hover {
    background: #040e14;
    color: #fff;
}

.navbar-toggle {
    margin: 0;
    padding: 25px 15px;
}

.navbar-toggle .icon-bar {
    background: #fff;
    height: 4px;
    width: 28px;
}

.navbar-toggle .icon-bar + .icon-bar {
    margin-top: 6px;
}


/*=========================
      6. Introduction
==========================*/

.introduction {
    width: 100%;
    overflow: hidden;
    background: #040e14;
    font-size: 18px;
    color: #fff;
    padding-bottom: 200px;
}

.introduction h2 {
    color: #fff;
}

.counter-box {
    border: 1px solid #2c2c2c;
    padding: 30px 15px;
    background: #040e14;
    margin-top: 30px;
    transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -ms-transition: all 0.4s ease-in-out;
    -webkit-transition: all 0.4s ease-in-out;
}

.counter-box h3 {
    color: #fff;
    transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -ms-transition: all 0.4s ease-in-out;
    -webkit-transition: all 0.4s ease-in-out;
}

.counter-box .counter {
    font-size: 80px;
    line-height: 80px;
    color: var(--t64-ink);
    font-family:'Montserrat', sans-serif;
    font-weight: 700;
    margin-bottom: 10px;
    transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -ms-transition: all 0.4s ease-in-out;
    -webkit-transition: all 0.4s ease-in-out;
}

.counter-box:hover {
    background: var(--t64-fill);
    color: #fff;
    transform: scale(1.1);
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -ms-transform: scale(1.1);
}

.counter-box:hover .counter {
    color: #fff;
}


/*=========================
      7. Profile
==========================*/

.profile {
    width: 100%;
    background: #f9f9f9;
    position: relative;
    padding-bottom: 200px;
}

.profile-timeline {
    position: relative;
    margin-top: -80px;
}

.profile-timeline .row {
    margin-bottom: 40px;
}

.profile-timeline .pull-left .year {
    float: right;
}

.profile-timeline .pull-left h4:after {
    right: -19px;
    left: auto;
}

.profile-timeline .pull-right .year span:after {
    border-right: 6px solid #040e14;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    left: -5px;
}

.profile-timeline .pull-left .year span:after {
    border-left: 6px solid #040e14;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    right: -5px;
}

.profile-timeline:after {
    background: var(--t64-fill);
    width: 2px;
    height: 100%;
    display: block;
    content: "";
    left: 50%;
    margin-left: -1px;
    top: 0;
    position: absolute;
}

.profile-timeline h3 {
    position: relative;
    z-index: 2;
    text-transform: uppercase;
    margin: 0 auto 50px;
    display: table;
    color: #fff;
    padding: 12px 20px;
    background: var(--t64-fill);
    border: 1px solid #fff;
    box-shadow: 0 0 0 4px var(--t64-fill);
    -webkit-box-shadow: 0 0 0 4px var(--t64-fill);
    -moz-box-shadow: 0 0 0 4px var(--t64-fill);
    -ms-box-shadow: 0 0 0 4px var(--t64-fill);
    -webkit-text-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
    -moz-text-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
    -ms-text-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
    text-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
}

.profile-timeline h3:last-child {
    margin-bottom: 0;
}

.profile-timeline h3:first-child:before,
.profile-timeline h3:last-child:after {
    display: none;
}

.profile-timeline h3 a {
    color: #fff;
    text-decoration: none;
}

.profile-timeline h3:before,
.profile-timeline h3:after {
    width: 10px;
    height: 10px;
    left: 50%;
    margin-left: -5px;
    background: var(--t64-fill);
    position: absolute;
    z-index: -1;
    display: block;
    content: "";
    border-radius: 8px;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    -ms-border-radius: 8px;
}

.profile-timeline h3:before {
    top: -8px;
}

.profile-timeline h3:after {
    bottom: -8px;
}

.profile-timeline h4 {
    font-size: 24px;
    color: var(--t64-ink);
    margin-bottom: 10px;
    font-family: 'Philosopher', sans-serif;
    position: relative;
}

.profile-timeline h4:after {
    width: 8px;
    height: 8px;
    left: -19px;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    background: var(--t64-fill);
    position: absolute;
    display: block;
    content: "";
    border-radius: 8px;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    -ms-border-radius: 8px;
}

.profile-timeline h5 {
    font-size: 14px;
    font-weight: 400;
    color: #040e14;
    font-family:'Montserrat', sans-serif;
    margin-bottom: 10px;
}

.year {
    display: inline-block;
    position: relative;
    margin-top: -4px;
}

.year span {
    background: #040e14;
    padding: 5px 15px;
    font-family: 'Philosopher', sans-serif;
    font-style: italic;
    color: #fff;
    position: relative;
    display: block;
}

.year span:after {
    position: absolute;
    top: 50%;
    content: "";
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}


/*=========================
      8. Expertise
==========================*/

.expertise {
    width: 100%;
    background: #040e14;
    font-size: 18px;
    color: #fff;
    position: relative;
    padding-bottom: 200px;
}

.expertise h2 {
    color: #fff;
}

.expertise h3 {
    color: #fff;
    margin-bottom: 20px;
}

.expertise h3 span {
    float: right;
    color: #fff;
    background: var(--t64-fill);
    padding: 5px;
    display: inline-block;
    font-family:'Montserrat', sans-serif;
    font-size: 14px;
}

.expertise .progress-bar-box {
    margin-top: 60px;
}

.expertise .progress {
    background: #000;
    height: 8px;
    overflow: visible;
}

.expertise .progress .progress-bar {
    background: var(--t64-fill);
    position: relative;
    float: none;
    overflow: visible !important;
}

.expertise .progress .progress-bar:after {
    display: block;
    content: "";
    z-index: 2;
    position: absolute;
    top: -4px;
    right: -2px;
    width: 15px;
    height: 15px;
    background: var(--t64-fill);
    border-radius: 15px;
    -webkit-border-radius: 15px;
    -moz-border-radius: 15px;
    -ms-border-radius: 15px;
}


/*=========================
      9. Work Strategy
==========================*/

.work-strategy {
    width: 100%;
    background: #f9f9f9;
    position: relative;
    padding-bottom: 200px;
}

.work-strategy-circle {
    margin-bottom: 30px;
    overflow: hidden;
    border-radius: 100%;
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    -ms-border-radius: 100%;
}


.work-strategy-circle img {
    border-radius: 100%;
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    -ms-border-radius: 100%;
}


.work-strategy-box {
    border: 1px solid #ccc;
    padding: 20px 15px;
    max-width: 196px;
    margin-bottom: 30px;
    transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -ms-transition: all 0.4s ease-in-out;
    -webkit-transition: all 0.4s ease-in-out;
}

.work-strategy-box h3 {
    color: var(--t64-ink);
    transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -ms-transition: all 0.4s ease-in-out;
    -webkit-transition: all 0.4s ease-in-out;
}

.work-strategy-box h3 span {
    color: #040e14;
    margin-right: 5px;
    transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -ms-transition: all 0.4s ease-in-out;
    -webkit-transition: all 0.4s ease-in-out;
}

.work-strategy-box .icon {
    margin-bottom: 15px
}

.work-strategy-box .icon i {
    font-size: 40px;
    color: var(--t64-ink);
    transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -ms-transition: all 0.4s ease-in-out;
    -webkit-transition: all 0.4s ease-in-out;
}

.work-strategy .sketch {
    margin-left: 68px;
}

.work-strategy .design {
    margin-left: 136px;
}

.work-strategy .develop {
    margin-left: 136px;
}

.work-strategy .test {
    margin-left: 68px;
}


/*=========================
      10. What I Offer
==========================*/

.services {
    width: 100%;
    background: #040e14;
    padding-bottom: 300px;
    position: relative;
}

.services h2 {
    color: #fff;
}

.services .row div[class*="col"]:nth-child(2n) {
    top: 94px;
}

.services-box {
    border: 1px solid #2c2c2c;
    padding: 30px 20px;
    background: #040e14;
    min-height: 200px;
    max-height: 200px;
    margin-bottom: 30px;
    transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -ms-transition: all 0.4s ease-in-out;
    -webkit-transition: all 0.4s ease-in-out;
}

.services-box .icon {
    margin-bottom: 30px;
    display: table;
    width: 100%;
}

.services-box .icon i {
    font-size: 40px;
    color: var(--t64-ink);
    margin-top: 20px;
}

.services-box h3 {
    color: #fff;
    font-size: 20px;
    transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -ms-transition: all 0.4s ease-in-out;
    -webkit-transition: all 0.4s ease-in-out;
}

.services-box:hover {
    background: #f9f9f9;
    transform: scale(1.1);
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -ms-transform: scale(1.1);
}

.services-box:hover h3 {
    color: var(--t64-ink);
}


/*=========================
      11. Portfolio
==========================*/

.portfolio {
    width: 100%;
    background: #f9f9f9;
    position: relative;
    padding-bottom: 200px;
}

.filters {
    font-size: 16px;
    line-height: 16px;
    margin-bottom: 30px;
}

.filters ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.filters ul li {
    display: inline-block;
    margin-right: 6px;
    margin-bottom: 12px;
}

.filters ul li:last-child {
    margin-right: 0;
}

.filters ul li a {
    display: block;
    padding: 10px 20px;
    border: 1px solid #040e14;
    color: #040e14;
    text-decoration: none;
}

.filters ul li a.active,
.filters ul li a:hover {
    color: #fff;
    background: var(--t64-fill);
    border-color: var(--t64-fill);
    text-decoration: none;
}

.grid .item {
    margin-top: 30px;
}

.grid .item img {
    width: 100%;
    display: block;
}

.grid .item:hover .overlay {
    opacity: 1;
}

.grid .overlay {
    position: absolute;
    top: 0;
    left: 15px;
    right: 15px;
    background: rgba(0, 0, 0, 0.6);
    height: 100%;
    color: #fff;
    padding: 15px 30px;
    opacity: 0;
    transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -ms-transition: all 0.4s ease-in-out;
    -webkit-transition: all 0.4s ease-in-out;
}

.grid .overlay h3 {
    color: #fff;
    margin-bottom: 10px;
}

.grid .overlay .overlay-text {
    top: 50%;
    left: 0;
    position: absolute;
    width: 100%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}

.grid .icon-zoom {
    position: absolute;
    right: 15px;
    bottom: 15px;
    z-index: 1;
}
.grid .icon-zoom img {
    width: auto;
    height: auto;
}


/*=========================
      12. Testimonials
==========================*/

.testimonials {
    width: 100%;
    background: #040e14;
    position: relative;
}

.testimonials h2 {
    color: #fff;
}

.testimonials ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.testimonial-content {
    padding: 50px 20px;
    position: relative;
    font-size: 16px;
    line-height: 32px;
    border: 1px solid #2c2c2c;
    color: #fff;
}

.testimonial-content:before,
.testimonial-content:after {
    display: block;
    position: absolute;
    font-size: 30px;
    color: #2c2c2c;
    font-family: 'fontAwesome', sans-serif;
}

.testimonial-content:before {
    content: "\f10d";
    left: 20px;
    top: 20px;
}

.testimonial-content:after {
    content: "\f10e";
    right: 20px;
    bottom: 20px;
}

.testimonial-author-info {
    text-align: left;
    padding-left: 110px;
    padding-top: 40px;
    position: relative;
}

.testimonial-author-info:before,
.testimonial-author-info:after {
    display: block;
    position: absolute;
    content: "";
    top: 0;
    left: 40px;
}

.testimonial-author-info:before {
    border-top: 15px solid #040e14;
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    z-index: 1;
    top: -1px;
}

.testimonial-author-info:after {
    border-top: 16px solid #2c2c2c;
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
}

.testimonial-author-info .author-pic {
    width: 68px;
    height: 68px;
    border: 1px solid #2c2c2c;
    border-radius: 68px;
    -webkit-border-radius: 68px;
    -moz-border-radius: 68px;
    -ms-border-radius: 68px;
    overflow: hidden;
    position: absolute;
    left: 20px;
    top: 35px;
}

.testimonial-author-info .author-pic img {
    border-radius: 68px;
    -webkit-border-radius: 68px;
    -moz-border-radius: 68px;
    -ms-border-radius: 68px;
    overflow: hidden;
}

.testimonial-author-info .name {
    font-size: 24px;
    line-height: 28px;
    color: var(--t64-ink);
    font-family: 'Philosopher', sans-serif;
}

.testimonial-author-info .name span {
    display: block;
    color: #fff;
    font-size: 18px;
}

.testimonials .owl-stage-outer {
    padding-bottom: 20px;
}

.testimonials .owl-controls .owl-dots {
    width: 100%;
    text-align: center;
    padding-top: 60px;
}

.testimonials .owl-controls .owl-dots .owl-dot {
    display: inline-block;
    margin: 0 3px;
}

.testimonials .owl-controls .owl-dots .owl-dot span {
    width: 15px;
    height: 15px;
    display: inline-block;
    background: none;
    border: 1px solid #fff;
    font-size: 0;
    cursor: pointer;
    -webkit-border-radius: 15px;
    -moz-border-radius: 15px;
    -ms-border-radius: 15px;
    border-radius: 15px;
    -webkit-transition: all 0.4s ease-in-out 0s;
    -moz-transition: all 0.4s ease-in-out 0s;
    -ms-transition: all 0.4s ease-in-out 0s;
    transition: all 0.4s ease-in-out 0s;
}

.testimonials .owl-controls .owl-dots .owl-dot span:hover,
.testimonials .owl-controls .owl-dots .active span {
    border-color: var(--t64-fill);
    background: var(--t64-fill);
}


/*=========================
      13. Footer
==========================*/

.page-footer {
    width: 100%;
}

.google-map {
    width: 100%;
    height: 436px;
}

.footer-main {
    width: 100%;
    background: #040e14;
    padding-top: 40px;
    padding-bottom: 0;
    position: relative;
}

.contact-form {
    overflow: hidden;
    position: relative;
    z-index: 8;
    background: #fff;
    padding: 30px;
    margin: -220px 10px 50px;
    border: 1px solid #000;
    box-shadow: 0 0 0 10px #fff, 0 0 15px 15px rgba(0, 0, 0, 0.2);
    -webkit-box-shadow: 0 0 0 10px #fff, 0 0 15px 15px rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0 0 0 10px #fff, 0 0 15px 15px rgba(0, 0, 0, 0.2);
    -ms-box-shadow: 0 0 0 10px #fff, 0 0 15px 15px rgba(0, 0, 0, 0.2);
}

.contact-form h2 {
    margin-bottom: 40px;
}

.contact-form .form-group {
    margin: 0;
}

.contact-form input[type="text"],
.contact-form input[type="email"],
.contact-form input[type="tel"],
.contact-form select,
.contact-form textarea {
    width: 100%;
    background: #fff;
    border: 0;
    border-bottom: 1px solid #040e14;
    padding: 15px 0;
    color: #000;
}

.contact-form textarea {
    height: 140px;
}

.contact-form input[type="submit"] {
    margin-top: 30px;
    font-size: 16px;
}

.contact-address,
.contact-phone,
.contact-email {
    font-size: 18px;
    color: #fff;
    margin-bottom: 40px;
    padding-left: 50px;
    position: relative;
}

.contact-phone a,
.contact-email a {
    color: #fff;
    text-decoration: none;
}

.contact-phone a:hover,
.contact-email a:hover {
    color: var(--t64-ink);
}

.contact-address i,
.contact-phone i,
.contact-email i {
    font-size: 32px;
    position: absolute;
    left: 0;
    top: 5px;
    width: 50px;
    text-align: center;
}

.contact-phone i {
    font-size: 40px;
    top: 0;
}

.contact-email i {
    font-size: 26px;
}

.social-media {
    padding-left: 50px;
    margin-bottom: 50px;
}

.social-media ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.social-media ul li {
    display: inline-block;
    margin-right: 8px;
}

.social-media ul li a {
    display: block;
    font-size: 22px;
    text-align: center;
    width: 40px;
    height: 40px;
    line-height: 38px;
    color: #fff;
    background: var(--t64-fill);
    border: 1px solid #fff;
    box-shadow: 0 0 0 2px var(--t64-fill);
    -webkit-box-shadow: 0 0 0 2px var(--t64-fill);
    -moz-box-shadow: 0 0 0 2px var(--t64-fill);
    -ms-box-shadow: 0 0 0 2px var(--t64-fill);
    -webkit-text-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
    -moz-text-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
    -ms-text-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
    text-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
}

.social-media ul li a:hover {
    background: #040e14;
    border-color: #fff;
}

.copyright {
    color: #fff;
    border-top: 1px solid #363839;
    padding-top: 15px;
    padding-bottom: 15px;
}


/*=========================
      14. Style Switcher
==========================*/

.switch-style {
    background: #ffffff;
    -webkit-backface-visibility: hidden;
    border-top-right-radius: 6px;
    border-bottom-right-radius: 6px;
    box-shadow: 0 0 15px 2px rgba(0, 0, 0, 0.2);
    -webkit-box-shadow: 0 0 15px 2px rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0 0 15px 2px rgba(0, 0, 0, 0.2);
    -ms-box-shadow: 0 0 15px 2px rgba(0, 0, 0, 0.2);
    padding: 20px;
    position: fixed;
    z-index: 9999;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    left: -240px;
    width: 240px;
    -webkit-transition: left 0.4s ease-in-out;
    -moz-transition: left 0.4s ease-in-out;
    -o-transition: left 0.4s ease-in-out;
    transition: left 0.4s ease-in-out;
}

.switch-style.active {
    left: 0;
}

.switch-style .switch-style-toggle {
    background: #ffffff;
    border-top-right-radius: 6px;
    border-bottom-right-radius: 6px;
    position: absolute;
    top: 30px;
    left: 240px;
    width: 40px;
    height: 40px;
}

.switch-style .switch-style-toggle:hover {
    cursor: pointer;
}

.switch-style .switch-style-toggle i {
    font-size: 28px;
    line-height: 40px;
    animation: spin 3s linear infinite;
}

.switch-style h4 {
    margin-bottom: 15px;
}

.switch-style ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.switch-style ul li {
    display: inline-block;
    margin-right: 5px;
}

.switch-style ul li a {
    display: block;
    width: 35px;
    height: 35px;
    border-radius: 35px;
    -webkit-border-radius: 35px;
    -moz-border-radius: 35px;
    -ms-border-radius: 35px;
}

.switch-style ul li a.red {
    background: #e74c3c;
}

.switch-style ul li a.pink {
    background: #e34da2;
}

.switch-style ul li a.orange {
    background: #e86e24;
}

.switch-style ul li a.blue {
    background: #3498db;
}

.switch-style ul li a.green {
    background: #27ae60;
}

.switch-style ul li a.gray {
    background: #637a91;
}

.switch-style ul li a.gold {
    background: #cea346;
}

.switch-style ul li a.purple {
    background: #c045b2;
}


/*=========================
      15. Pre-Loader
==========================*/

.preloader {
    background: #040e14;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 9999;
}

.preloader .loader {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
}

.ball-pulse .loader {
    width: 100px;
    height: 100px;
}

.ball-pulse .ball {
    margin: 25% 0 0 25%;
    width: 50%;
    height: 50%;
    background-color: #fff;
    border-radius: 50%;
    -webkit-animation: ballPulse 2s ease-in-out infinite;
    animation: ballPulse 2s ease-in-out infinite;
}


/*=========================
      16. Keyframes Animation
==========================*/

@keyframes spin {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

@-webkit-keyframes spin {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

@-moz-keyframes spin {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

@-ms-keyframes spin {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

@keyframes scroll {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(30px);
        transform: translateY(30px);
    }
}

@-webkit-keyframes scroll {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(30px);
        transform: translateY(30px);
    }
}

@-moz-keyframes scroll {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(30px);
        transform: translateY(30px);
    }
}

@-ms-keyframes scroll {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(30px);
        transform: translateY(30px);
    }
}

@keyframes scroll {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(30px);
        transform: translateY(30px);
    }
}

@-webkit-keyframes ballPulse {
    0% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 0;
    }
}

@-moz-keyframes ballPulse {
    0% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 0;
    }
}

@-ms-keyframes ballPulse {
    0% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 0;
    }
}

@keyframes ballPulse {
    0% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 0;
    }
}




@media (max-width: 1280px) {
    h1 {
        font-size: 40px;
    }
    h2 {
        font-size: 32px;
    }
    h3 {
        font-size: 20px;
    }
    h5 {
        font-size: 18px;
    }
    h4 {
        font-size: 16px;
    }
    h6 {
        font-size: 14px;
    }
    .number {
        font-size: 32px;
        width: 48px;
        height: 48px;
        margin-right: 20px;
    }
    .welcome:after {
        right: 0;
    }
    .profile-image {
        left: 5%;
        max-width: 540px;
    }
    .profile-holder {
        max-width: 480px;
    }
    .profile-holder h1 {
        font-size: 32px;
    }
    .profile-name-holder {
        font-size: 30px;
        padding: 20px;
    }
    .rotate-text {
        margin-top: 15px;
    }
    .rotate-text > span {
        font-size: 22px;
        line-height: 22px;
    }
    .profile-skills {
        padding-left: 40px;
        padding-right: 40px;
    }
    .profile-skills ul li {
        font-size: 20px;
        line-height: 24px;
    }
    .navbar {
        font-size: 14px;
    }
    .navbar .navbar-nav li a {
        padding-left: 8px;
        padding-right: 8px;
    }
    .introduction,
    .expertise {
        font-size: 16px;
    }
    .counter-box .counter {
        font-size: 60px;
    }
    .contact-form input[type="submit"] {
        font-size: inherit;
    }
    .contact-address,
    .contact-phone,
    .contact-email {
        font-size: 16px;
    }
}


/*===========================================
      2. Medium Screen Size (991px Max)
/*=========================================*/

@media (max-width: 991px) {
    h1 {
        font-size: 36px;
    }
    h2 {
        font-size: 28px;
    }
    .profile-image {
        left: 0;
    }
    .scroll-down {
        display: none;
    }
    .navbar .navbar-brand {
        width: 60px;
    }
    .navbar {
        font-size: 12px;
    }
    .navbar-collapse {
        margin: 0 -15px !important;
    }
    .navbar .navbar-nav {
        float: none;
        display: table;
        margin: 0 auto;
    }
    .navbar .navbar-nav li a  {
        padding: 25px 6px;
    }
    .profile-holder h1 {
        font-size: 28px;
    }
    .profile-timeline h4 {
        font-size: 20px;
    }
    .work-strategy-box {
        margin-left: 0 !important;
        max-width: 100%;
    }
    .expertise .progress-bar-box {
        margin-top: 30px;
    }
    .testimonial-content {
        font-size: inherit;
        line-height: inherit;
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .testimonial-content:before {
        top: 10px;
    }
    .testimonial-content:after {
        bottom: 10px;
    }
    .testimonial-author-info .name {
        font-size: 20px;
        line-height: 24px;
    }
    .testimonial-author-info .name span {
        font-size: 14px;
    }
}


/*===========================================
      3. Small Screen Size (767px Max)
/*=========================================*/

@media (max-width: 767px) {
    html,
    body {
        height: auto;
    }
    .number {
        font-size: 24px;
        width: 40px;
        height: 40px;
        margin-right: 20px;
    }
    .heading {
        margin-bottom: 30px;
    }
    .profile-holder {
        max-width: 480px;
        float: none;
        display: block;
        margin: 0 auto 30px;
    }
    .profile-holder-inner {
        display: block;
    }
    .profile-skills {
        text-align: center;
    }
    .welcome:after {
        display: none;
    }
    .profile-image {
        max-width: 480px;
        top: 50px;
        left: auto;
        margin: 0 auto;
        position: relative;
    }
    .navbar {
        position: fixed;
        top: 0;
    }
    .navbar .navbar-brand {
        width: 52px;
    }
    .navbar-toggle {
        padding: 15px 0;
    }
    .navbar-header {
        margin: 0 !important;
        width: 100%;
        position: relative;
        left: auto;
        transform: inherit;
        -webkit-transform: inherit;
        -moz-transform: inherit;
        -ms-transform: inherit;
    }
    .navbar .navbar-nav {
        display: block;
    }
    .navbar .navbar-nav li a {
        padding: 12px 20px;
    }
    .profile-timeline {
        margin-top: 0;
    }
    .work-strategy-box {
        max-width: 100%;
    }
    .introduction,
    .profile,
    .expertise,
    .work-strategy,
    .services,
    .portfolio {
        padding-bottom: 150px;
    }
    .services .row div[class*="col"]:nth-child(2n) {
        top: inherit;
    }
    .counter-box .counter {
        font-size: 48px;
    }
    .contact-form {
        margin-top: -100px;
        padding: 20px;
    }
    .contact-address,
    .contact-phone,
    .contact-email {
        padding-left: 40px;
    }
    .contact-address i,
    .contact-phone i,
    .contact-email i {
        text-align: left;
    }
    .copyright {
        margin: 0 -15px;
    }
}

/*===========================================
      4. Extra Small Screen Size (479px Max)
/*=========================================*/

@media (max-width: 479px) {
    h1 {
        font-size: 30px;
    }
    h2 {
        font-size: 24px;
    }
    section {
        padding-top: 40px;
        padding-bottom: 40px;
    }
    .profile-skills {
        padding-left: 15px;
        padding-right: 15px;
    }
    .profile-skills ul li {
        font-size: 16px;
        line-height: 22px;
        padding: 15px;
    }
}
