/*@import url(plugins.css);*/
@import url(http://fonts.googleapis.com/css?family=Poppins:300,400,500,700);
@import url(http://fonts.googleapis.com/css?family=Open+Sans:400,300,700);
div#app {
    display: block;
    width: 100%;
    max-width: 100%;
}
div#app .center-box {
    display: block;
}
.adjacent-center {
    width: 100%;
    max-width: 100%;
}
.adjacent-center>.brand-logo {
    display: none;
}
a:focus, a:hover {
    color: #23527c;
    text-decoration: none;
}
.before-after-line::after,.before-after-line::before
{
    background:rgba(50, 77, 160,.8);
    content:"";
    display:inline-block;
    height:1px;
    margin:0 15px;
    vertical-align:super;
    width:30px
}
.text-gray
{
    color:#292929
}
.text-light-gray
{
    color:#d6d6d6
}
.text-white
{
    color:#fff
}
.text-theme-color
{
    color:#19233e
}
.font-weight-300
{
    font-weight:300
}
.font-weight-500
{
    font-weight:500
}
.font-weight-700
{
    font-weight:700;
    letter-spacing:.03em
}
.text-small
{
    font-size:12px;
    line-height:18px
}
.align-left
{
    text-align:left
}
.align-center
{
    text-align:center
}
.align-right
{
    text-align:right
}
.text-uppercase
{
    text-transform:uppercase
}
.text-lowercase
{
    text-transform:lowercase
}
.opacity-0
{
    opacity:0
}
#loading
{
    width:100vw;
    height:100vh;
    background:#000;
    position:fixed;
    z-index:9999
}
#loading .circle,#loading .circle1
{
    background-color:rgba(0,0,0,0);
    opacity:.9;
    margin:0 auto
}
#loading #preloader
{
    position:relative;
    width:100%;
    height:100px;
    top:calc(50% - 50px);
    text-align:center;
    margin:0 auto
}
#loading .circle
{
    border:5px solid rgba(50, 77, 160,.9);
    border-right:5px solid transparent;
    border-left:5px solid transparent;
    border-radius:50px;
    box-shadow:0 0 35px #324da0;
    width:80px;
    height:80px;
    -moz-animation:spinPulse 2s infinite ease-in-out;
    -webkit-animation:spinPulse 2s infinite linear
}
#loading .circle1
{
    border:5px solid rgba(50, 77, 160,.9);
    border-left:5px solid transparent;
    border-right:5px solid transparent;
    border-radius:50px;
    box-shadow:0 0 15px #324da0;
    width:40px;
    height:40px;
    position:relative;
    top:-60px;
    -moz-animation:spinoffPulse 2s infinite linear;
    -webkit-animation:spinoffPulse 2s infinite linear
}
.loader-section
{
    position:fixed;
    top:0;
    left:0;
    right:0;
    width:100%;
    height:100%
}
.loaded #loading .loader-section
{
    -webkit-transform:translateX(-100%);
    -ms-transform:translateX(-100%);
    transform:translateX(-100%)
}
.loaded #preloader
{
    opacity:0;
    -webkit-transition:all .3s linear;
    transition:all .3s linear
}
.loaded #loading
{
    visibility:hidden;
    -webkit-transform:translateY(-100%);
    -ms-transform:translateY(-100%);
    transform:translateY(-100%);
    -webkit-transition:all .4s .6s ease-out;
    transition:all .4s .6s ease-out
}
@-moz-keyframes spinPulse
{
    0%
    {
        -moz-transform:rotate(160deg);
        opacity:0;
        box-shadow:0 0 1px #324da0
    }
    50%
    {
        -moz-transform:rotate(145deg);
        opacity:1
    }
    100%
    {
        -moz-transform:rotate(-320deg);
        opacity:0
    }

}
@-moz-keyframes spinoffPulse
{
    0%
    {
        -moz-transform:rotate(0)
    }
    100%
    {
        -moz-transform:rotate(360deg)
    }

}
@-webkit-keyframes spinPulse
{
    0%
    {
        -webkit-transform:rotate(160deg);
        opacity:0;
        box-shadow:0 0 1px #324da0
    }
    50%
    {
        -webkit-transform:rotate(145deg);
        opacity:1
    }
    100%
    {
        -webkit-transform:rotate(-320deg);
        opacity:0
    }

}
@-webkit-keyframes spinoffPulse
{
    0%
    {
        -webkit-transform:rotate(0)
    }
    100%
    {
        -webkit-transform:rotate(360deg)
    }

}
.revealer
{
    width:100vw;
    height:100vh;
    opacity:0;
    position:fixed;
    z-index:1000;
    pointer-events:none
}
.logo,.revealer__layer,section
{
    position:absolute
}
.revealer--bottom,.revealer--top
{
    left:0
}
.revealer--left,.revealer--right
{
    top:50%;
    left:50%
}
.revealer--top
{
    bottom:100%
}
.revealer--bottom
{
    top:100%
}
.revealer__layer
{
    width:100%;
    height:100%;
    top:0;
    left:0;
    background:#ddd
}
.open-effect .page:first-child
{
    background:#28282D
}
.open-effect .page:nth-child(2)
{
    background:#F15C5C
}
.page-inner aside,section
{
    background-position:center center;
    background-size:cover;
    overflow:hidden
}
.open-effect .animate-left .quote
{
    -webkit-animation:moveQuoteLeft 2.5s forwards;
    animation:moveQuoteLeft 2.5s forwards
}
@-webkit-keyframes moveQuoteLeft
{
    0%,65%
    {
        -webkit-transform:translate3d(-75px,0,0);
        transform:translate3d(-75px,0,0)
    }
    100%
    {
        -webkit-transform:translate3d(0,0,0);
        transform:translate3d(0,0,0)
    }

}
@keyframes moveQuoteLeft
{
    0%,65%
    {
        -webkit-transform:translate3d(-75px,0,0);
        transform:translate3d(-75px,0,0)
    }
    100%
    {
        -webkit-transform:translate3d(0,0,0);
        transform:translate3d(0,0,0)
    }

}
.open-effect .animate-right .quote
{
    -webkit-animation:moveQuoteRight 2.5s forwards;
    animation:moveQuoteRight 2.5s forwards
}
@-webkit-keyframes moveQuoteRight
{
    0%,65%
    {
        -webkit-transform:translate3d(75px,0,0);
        transform:translate3d(75px,0,0)
    }
    100%
    {
        -webkit-transform:translate3d(0,0,0);
        transform:translate3d(0,0,0)
    }

}
@keyframes moveQuoteRight
{
    0%,65%
    {
        -webkit-transform:translate3d(75px,0,0);
        transform:translate3d(75px,0,0)
    }
    100%
    {
        -webkit-transform:translate3d(0,0,0);
        transform:translate3d(0,0,0)
    }

}
.open-effect .revealer--animate .revealer__layer
{
    -webkit-animation:anim-effect-4-1 2.5s cubic-bezier(.55,.055,.675,.19) forwards;
    animation:anim-effect-4-1 2.5s cubic-bezier(.55,.055,.675,.19) forwards
}
.open-effect .revealer--animate .revealer__layer:nth-child(2)
{
    -webkit-animation-name:anim-effect-4-2;
    animation-name:anim-effect-4-2;
    -webkit-animation-timing-function:cubic-bezier(.895,.030,.685,.22);
    animation-timing-function:cubic-bezier(.895,.030,.685,.22)
}
.open-effect .revealer--animate .revealer__layer:nth-child(3)
{
    -webkit-animation-name:anim-effect-4-3;
    animation-name:anim-effect-4-3;
    -webkit-animation-timing-function:cubic-bezier(.755,.050,.855,.060);
    animation-timing-function:cubic-bezier(.755,.050,.855,.060)
}
@-webkit-keyframes anim-effect-4-1
{
    0%
    {
        -webkit-transform:translate3d(0,0,0);
        transform:translate3d(0,0,0)
    }
    35%,65%
    {
        -webkit-transform:translate3d(0,-100%,0);
        transform:translate3d(0,-100%,0);
        -webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);
        animation-timing-function:cubic-bezier(.215,.61,.355,1)
    }
    100%
    {
        -webkit-transform:translate3d(0,-200%,0);
        transform:translate3d(0,-200%,0)
    }

}
@keyframes anim-effect-4-1
{
    0%
    {
        -webkit-transform:translate3d(0,0,0);
        transform:translate3d(0,0,0)
    }
    35%,65%
    {
        -webkit-transform:translate3d(0,-100%,0);
        transform:translate3d(0,-100%,0);
        -webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);
        animation-timing-function:cubic-bezier(.215,.61,.355,1)
    }
    100%
    {
        -webkit-transform:translate3d(0,-200%,0);
        transform:translate3d(0,-200%,0)
    }

}
@-webkit-keyframes anim-effect-4-2
{
    0%
    {
        -webkit-transform:translate3d(0,0,0);
        transform:translate3d(0,0,0)
    }
    45%,55%
    {
        -webkit-transform:translate3d(0,-100%,0);
        transform:translate3d(0,-100%,0);
        -webkit-animation-timing-function:cubic-bezier(.165,.84,.44,1);
        animation-timing-function:cubic-bezier(.165,.84,.44,1)
    }
    100%
    {
        -webkit-transform:translate3d(0,-200%,0);
        transform:translate3d(0,-200%,0)
    }

}
@keyframes anim-effect-4-2
{
    0%
    {
        -webkit-transform:translate3d(0,0,0);
        transform:translate3d(0,0,0)
    }
    45%,55%
    {
        -webkit-transform:translate3d(0,-100%,0);
        transform:translate3d(0,-100%,0);
        -webkit-animation-timing-function:cubic-bezier(.165,.84,.44,1);
        animation-timing-function:cubic-bezier(.165,.84,.44,1)
    }
    100%
    {
        -webkit-transform:translate3d(0,-200%,0);
        transform:translate3d(0,-200%,0)
    }

}
@-webkit-keyframes anim-effect-4-3
{
    0%
    {
        -webkit-transform:translate3d(0,0,0);
        transform:translate3d(0,0,0)
    }
    45%,55%
    {
        -webkit-transform:translate3d(0,-100%,0);
        transform:translate3d(0,-100%,0);
        -webkit-animation-timing-function:cubic-bezier(.23,1,.32,1);
        animation-timing-function:cubic-bezier(.23,1,.32,1)
    }
    100%
    {
        -webkit-transform:translate3d(0,-200%,0);
        transform:translate3d(0,-200%,0)
    }

}
@keyframes anim-effect-4-3
{
    0%
    {
        -webkit-transform:translate3d(0,0,0);
        transform:translate3d(0,0,0)
    }
    45%,55%
    {
        -webkit-transform:translate3d(0,-100%,0);
        transform:translate3d(0,-100%,0);
        -webkit-animation-timing-function:cubic-bezier(.23,1,.32,1);
        animation-timing-function:cubic-bezier(.23,1,.32,1)
    }
    100%
    {
        -webkit-transform:translate3d(0,-200%,0);
        transform:translate3d(0,-200%,0)
    }

}
.logo
{
    left:1%;
    top:2%;
    max-width: 160px;
}
section
{
    height:90%;
    left:5%;
    top:0;
    width:90%;
    z-index:0;
    opacity:0;
    box-shadow:7px 0 15px rgba(0,0,0,.2),-7px 0 15px rgba(0,0,0,.2);
    transition:background-color 1.5s linear 0s,box-shadow 1.5s linear 1s;
    -webkit-animation:fadeOut 1s linear 1 forwards;
    -moz-animation:fadeOut 1s linear 1 forwards;
    -o-animation:fadeOut 1s linear 1 forwards;
    animation:fadeOut 1s linear 1 forwards
}
section.active
{
    height: 100%;
    opacity:1;
    z-index:1;
    -webkit-animation:fadeIn 1s linear 1 forwards;
    -moz-animation:fadeIn 1s linear 1 forwards;
    o-animation:fadeIn 1s linear 1 forwards;
    animation:fadeIn 1s linear 1 forwards
}
section#about
{
    background-color:#324da0
}
.link-background.left::before
{
    background-color:#324da0
}
section#contact
{
    background-color:#324da0
}
.link-background.right::before
{
    background-color:#324da0
}
.page-inner aside,.page-inner div.content
{
    float:left;
    height:100%;
    overflow:hidden;
    width:50%
}
.page-inner aside
{
    transition:right 1s ease 1s,opacity 1s ease 1s
}
.page-inner div.content
{
    opacity:1;
    position:relative;
    right:0;
    transition:right 1s ease 0s,opacity 1s ease 0s
}
.page-inner div.content>div
{
    background-color:#FCFCFC;
    box-sizing:border-box;
    height:100%;
    padding:60px;
    padding-bottom: 0;
    position:relative
}
.page-inner div.content,.page-inner div.content>p
{
    color:#4b3c48
}
.page-inner.in aside
{
    opacity:0
}
.page-inner.in div.content
{
    opacity:0;
    right:-500px
}
.page-inner.out div.content
{
    opacity:0;
    right:-500px;
    transition:right 1s ease 1s,opacity 1s ease 1s
}
.page-inner.out aside
{
    opacity:0;
    transition:right 1s ease 0s,opacity 1s ease 0s
}
.page-inner aside .btn-gray
{
    position:absolute;
    top:0
}
.home-overlay,.image-video
{
    position:relative;
    width:100%
}
.home-overlay
{
    height:100%;
    overflow:hidden;
    background:rgba(0,0,0,.75);
    -webkit-transition:all .5s cubic-bezier(.7,0,.3,1);
    -moz-transition:all .5s cubic-bezier(.7,0,.3,1);
    -ms-transition:all .5s cubic-bezier(.7,0,.3,1);
    -o-transition:all .5s cubic-bezier(.7,0,.3,1);
    transition:all .5s cubic-bezier(.7,0,.3,1);
    z-index:0
}
.btn-lg
{
    height:50px;
    line-height:46px;
    min-width:100%
}
.btn-filled
{
    background:#324da0
}
.image-video
{
    height:100vh;
    display:block
}
.video-container
{
    position:absolute;
    top:0;
    bottom:0;
    width:100%;
    height:100%;
    overflow:hidden
}
.video-container video
{
    min-width:100%;
    width:100%;
    height:auto;
    min-height:100%;
    object-fit:cover
}
.image-background
{
    position:relative;
    background-repeat:no-repeat;
    background-size:cover;
    background-position:center;
    height:100%;
    width:auto;
    overflow:hidden
}
.header-content
{
    text-align:center;
    position:absolute;
    top:50%;
    left:25%;
    z-index:1;
    transform:translateX(-50%) translateY(-50%);
    text-shadow:1px 1px 8px rgba(50, 77, 160,.8)
}
.header-content h2
{
    font-size:60px;
    line-height:70px;
    font-weight:700;
    letter-spacing:1px
}
#body-container h1{
    font-size: 60px;
}
h2.hero-text
{
    font-size:22px
}
.link,.link p
{
    font-size: 15px;
    letter-spacing: 2px;
    font-family: 'Montserrat';
    font-weight: 600;
}
.link
{
    position:fixed;
    width:40px;
    height:150px;
    top:calc(50vh - 75px);
    z-index:99;
    transition:all 2s
}
.link p:hover
{
    color:#fff
}
.link.left
{
    left:-200px
}
.link.right
{
    right:-200px
}
.link.left:hover+.link-background
{
    text-decoration: none;
    background-position:center center;
    transform:translate3d(100px,0,0);
    transition:all .8s cubic-bezier(.77,0,.175,1)
}
.link.left:hover,.link.left:hover .lmenu,.link.right:hover,.link.right:hover .rmenu
{
    transition:all .6s cubic-bezier(.77,0,.175,1);;
    text-decoration: none;
}
.link.left:hover .lmenu-line,.link.left:hover .lmenu:before,.link.right:hover .rmenu-line,.link.right:hover .rmenu:after,.link.right:hover+.link-background
{
    transition:all .8s cubic-bezier(.77,0,.175,1);
    text-decoration: none;
}
.link.left:hover .lmenu-line
{
    border-bottom:1px solid #b7b7b7;
    transform:translate3d(-200px,0,0);
}
.link.right:hover .rmenu-line
{
    border-bottom:1px solid #b7b7b7;
    transform:translate3d(200px,0,0)
}
.link.left:hover .lmenu:before
{
    transform:translate3d(-100px,0,0)
}
.link.right:hover .rmenu:after
{
    transform:translate3d(100px,0,0)
}
.link.right:hover+.link-background
{
    background-position:center center;
    transform:translate3d(-100px,0,0)
}
.link-background.left,.link-background.right
{
    transition:all 1.8s cubic-bezier(.77,0,.175,1)
}
.link-background
{
    position:fixed;
    width:60px;
    height:100vh;
    top:0;
    background-size:auto 100%;
    z-index:3
}
.link-background::before
{
    content:"";
    position:absolute;
    width:100%;
    height:100%;
    background-color:#dadada;
    opacity:.94
}
.link-background.left
{
    left:-100px;
    background-position:65% center
}
.link-background.right
{
    right:-100px;
    background-position:35% center
}
.link-box
{
    position:relative;
    -webkit-writing-mode:vertical-rl;
    -ms-writing-mode:tb-rl;
    writing-mode:vertical-rl;
    white-space:nowrap
}
.link-box-left,.link-box-right
{
    display:block;
    width:40px;
    height:150px;
    transform:translate3d(0,0,0);
    transition:all 2.5s
}
.lmenu::before,.rmenu::after
{
    content:"";
    width:15px;
    top:70px;
    position:absolute
}
.lmenu,.rmenu
{
    letter-spacing:5.5px;
    color:#000;
    transition:all 1.8s cubic-bezier(.77,0,.175,1)
}
.lmenu-line,.lmenu::before,.rmenu-line,.rmenu::after
{
    border-bottom:1px solid #000;
    transform:translate3d(0,0,0);
    transition:all .8s cubic-bezier(.77,0,.175,1)
}
.lmenu::before
{
    left:-1px
}
.rmenu
{
    padding-right:20px
}
.rmenu::after
{
    right:-1px
}
.lmenu-line-box,.rmenu-line-box
{
    position:absolute;
    width:110px;
    height:30px;
    z-index:-1;
    top:38%;
    pointer-events:none;
    left:0
}
.lmenu-line-mask,.rmenu-line-mask
{
    position:relative;
    width:60px;
    height:30px;
    overflow:hidden
}
.rmenu-line-box
{
    right:15px
}
.lmenu-line-mask
{
    right:-17px
}
.rmenu-line-mask
{
    right:50px
}
.lmenu-line,.rmenu-line
{
    position:absolute;
    width:200px;
    display:inline-block;
    margin-top:13px;
    right:-200px
}
.rmenu-line
{
    right:204px
}
.no-gutter
{
    margin-right:0;
    margin-left:0
}
.no-gutter>[class*=col-]
{
    padding-right:0;
    padding-left:0
}
.full-width
{
    margin-left:-40px;
    margin-right:-40px
}
#body-container .content
{
    left:50%;
    top:50%;
    opacity:1;
    padding:0 4%;
    position:absolute;
    transform:translateX(-50%) translateY(-50%);
    transition:all .3s cubic-bezier(0,0,.58,1) 0s;
    visibility:visible;
    width:100%
}
.service-img,.services
{
    display:flex;
    flex-direction:column;
    justify-content:center;
    background-color:#f5f5f5;
    position:relative
}
.service-img
{
    background-position:50% 0;
    background-repeat:no-repeat;
    background-size:cover;
    position:relative;
    z-index:0;
    height:50vh;
    overflow:hidden
}
.page-inner .service-header
{
    color:#4b3c48;
    font-size:14px;
    font-weight:700;
    line-height:1.8;
    padding:20px;
    position:relative;
    z-index:1;
    text-align:center
}
.page-inner .service-header strong
{
    display:block;
    font-size:48px;
    font-weight:700;
    line-height:1.4
}
.back-number
{
    color:#ccc;
    font-family:Poppins,Helvetica,Arial,sans-serif;
    font-size:160px;
    font-weight:700;
    left:0;
    line-height:1;
    opacity:.4;
    position:absolute;
    text-align:center;
    top:-40px;
    width:100%;
    z-index:0
}
.service-header h3
{
    font-size:1.66667rem;
    font-weight:700;
    margin:0 0 60px;
    position:relative;
    z-index:1
}
.service-header h3::after
{
    border-top:3px solid;
    bottom:0;
    content:" ";
    display:block;
    margin:auto;
    position:relative;
    top:10px;
    width:60px
}
.btn-close::after,.btn-close::before,.t-btn::before
{
    content:"";
    position:absolute
}
.icon
{
    display:inline-block;
    font-size:40px
}
.feature
{
    margin-top:20px
}
.gallery
{
    position:relative;
    z-index:2
}
.portfolio-grid
{
    margin:0;
    padding:0
}
.portfolio-grid li
{
    box-sizing:border-box;
    float:left;
    margin:0;
    width:50%;
    padding:2px;
    display:inline-table
}
.portfolio-grid figure
{
    -webkit-transition:opacity .2s;
    transition:opacity .2s;
    margin:0;
    position:relative
}
.portfolio-grid figcaption
{
    bottom:35px;
    opacity:0;
    position:absolute;
    z-index:1;
    text-align:center;
    width:100%;
    transition:all .3s ease;
    -webkit-transition:all .3s ease;
    -moz-transition:all .3s ease
}
.portfolio-grid figure img
{
    display:block;
    width:100%;
    height:auto;
    opacity:1;
    cursor:pointer
}
.portfolio-grid figcaption h4
{
    margin:0 0 4px;
    padding:0;
    font-size:16px;
    text-transform:uppercase;
    font-weight:400;
    color:#e3e3e3;
    letter-spacing:1px
}
.portfolio-grid figcaption p
{
    display:block;
    font-size:11px;
    text-transform:uppercase;
    text-decoration:none;
    color:#aeaeae;
    margin-bottom:0
}
.portfolio-grid figure:hover .gallery-img
{
    background-color:#000
}
.gallery-img
{
    opacity:1;
    transition:all .3s ease 0s;
    overflow:hidden
}
.grid-item a .gallery-img
{
    position:relative;
    z-index:0;
    display:block
}
.btn-close,.t-btn,.t-btn span
{
    display:inline-block
}
.portfolio-grid figure:hover img
{
    -ms-transform:scale(1.1,1.1);
    -webkit-transform:scale(1.1,1.1);
    transform:scale(1.1,1.1);
    transition:all .3s ease;
    -webkit-transition:all .3s ease;
    -moz-transition:all .3s ease;
    opacity:.15;
    cursor:url(../img/icon-zoom-white.png),pointer
}
.portfolio-grid figure:hover figcaption
{
    opacity:1;
    transition:all .3s ease;
    -webkit-transition:all .3s ease;
    -moz-transition:all .3s ease;
    cursor:url(../img/icon-zoom-white.png),pointer
}
#map
{
    height:300px;
    width:100%;
    color:#333!important
}
.fill-btn
{
    background-color:#0d0d0d;
    color:#fff
}
.fill-btn:hover
{
    background-color:#324da0;
    color:#fff!important
}
.btn-close,.empty-btn,.t-btn,.t-btn::before,.t-btn:hover
{
    color:#fff
}
.empty-btn
{
    border-color:#0d0d0d
}
a.empty-btn:hover
{
    border-color:#ea4452;
    background-color:#ea4452;
    color:#fff
}
.btn-close
{
    text-align:center;
    text-decoration:none;
    vertical-align:middle;
    background-color:#232323;
    position:absolute;
    height:40px;
    width:40px;
    left:calc(50% - 40px);
    z-index:3
}
.btn-close::after,.btn-close::before
{
    background-color:#f4f4f4;
    left:50%;
    width:1px;
    height:16px;
    margin-top:-8px;
    top:50%;
    transform-origin:center center 0;
    transition:transform .6s cubic-bezier(.175,.885,.32,1.275) .1s
}
.btn-close::before
{
    transform:rotate(45deg);
    transition:transform .6s cubic-bezier(.175,.885,.32,1.275) 0s
}
.btn-close::after
{
    transform:rotate(-45deg)
}
.btn-close:hover::before
{
    transform:rotate(135deg)
}
.btn-close:hover::after
{
    transform:rotate(45deg)
}
.t-btn
{
    position:relative;
    font-family:Poppins;
    letter-spacing:.15em;
    font-weight:300;
    font-size:12px;
    line-height:30px;
    text-transform:uppercase;
    text-align:center;
    margin:10px 0 0;
    padding:5px 25px;
    height:40px;
    background:#324da0;
    border:none;
    -webkit-transition:color .4s cubic-bezier(.4,0,.2,1);
    -moz-transition:color .4s cubic-bezier(.4,0,.2,1);
    -ms-transition:color .4s cubic-bezier(.4,0,.2,1);
    -o-transition:color .4s cubic-bezier(.4,0,.2,1);
    transition:color .4s cubic-bezier(.4,0,.2,1);
    cursor:pointer;
    outline:0
}
.t-btn:focus,
.t-btn:hover{
    outline: none;
    opacity: .9;
}
.t-btn::before
{
    top:0;
    left:0;
    bottom:0;
    right:0;
    background: rgba(50, 77, 160,.5);
    -webkit-transform-origin:right center;
    -moz-transform-origin:right center;
    -ms-transform-origin:right center;
    transform-origin:right center;
    -webkit-transform:scale(0,1);
    -moz-transform:scale(0,1);
    -ms-transform:scale(0,1);
    -o-transform:scale(0,1);
    transform:scale(0,1);
    -webkit-transition:-webkit-transform .4s cubic-bezier(.4,0,.2,1);
    -moz-transition:-moz-transform .4s cubic-bezier(.4,0,.2,1);
    -ms-transition:-ms-transform .4s cubic-bezier(.4,0,.2,1);
    -o-transition:-o-transform .4s cubic-bezier(.4,0,.2,1);
    transition:transform .4s cubic-bezier(.4,0,.2,1)
}
#contact-form .form-control,.social-icons i
{
    -webkit-transition:all .3s cubic-bezier(0,0,.58,1);
    -moz-transition:all .3s cubic-bezier(0,0,.58,1);
    -ms-transition:all .3s cubic-bezier(0,0,.58,1);
    -o-transition:all .3s cubic-bezier(0,0,.58,1)
}
.t-btn:hover::before,a:hover .t-btn::before
{
    -webkit-transform-origin:left center;
    -moz-transform-origin:left center;
    -ms-transform-origin:left center;
    transform-origin:left center;
    -webkit-transform:scale(1,1);
    -moz-transform:scale(1,1);
    -ms-transform:scale(1,1);
    -o-transform:scale(1,1);
    transform:scale(1,1)
}
.t-btn span
{
    position:relative;
    z-index:2
}
.copyright,.social-icons
{
    position:absolute;
    bottom:1%;
    z-index:9;
    overflow:hidden;
    white-space:nowrap
}
.t-btn.large
{
    width:200px
}
.info-contact .item-map
{
    padding:0
}
.info-contact .item-map:first-child
{
    padding-left:15px
}
.info-contact .item-map:last-child
{
    padding-right:15px
}
.info-contact .item-map .contact-item
{
    padding:15px 0;
    font-size:14px;
    text-align:center
}
.info-contact .item-map .contact-item i
{
    color:#324da0;
    font-size:2em
}
.info-contact .item-map .contact-item a
{
    font-weight:600;
    color:#757A86
}
.info-contact .item-map .contact-item a:hover
{
    color:#324da0
}
.contact-form
{
    margin-top:25px
}
#contact-form
{
    width: 600px;
    max-width: 90%;
    margin: 0 auto;
    position: relative;
    top: -30px;
}
.contact_content>.row {
    align-items: baseline;
}
#contact-form .form-control::-webkit-input-placeholder
{
    color:#747c83!important
}
#contact-form .form-control::-moz-placeholder
{
    color:#747c83!important
}
#contact-form .form-control:-moz-placeholder
{
    color:#747c83!important
}
#contact-form .form-control:-ms-input-placeholder
{
    color:#747c83!important
}
#block-reply,.error-message,.success-message
{
    color:#757A86
}
#contact-form textarea.form-control
{
    min-height:150px
}
#contact-form button#valid-form
{
    width:100%
}
.antispam
{
    display:none
}
#block-reply
{
    min-height:60px;
    margin-top:1em;
    text-align:center
}
#block-reply .icon
{
    font-size:18px
}
.error-message p,.success-message p
{
    color:#757A86!important
}
.error-message .ion-checkmark-round,.success-message .ion-checkmark-round
{
    color:#27AE60
}
.error-message .ion-close-round
{
    color:#FF1D4D
}
.social-icons
{
    right:1%;
    display:block;
    width:auto;
    -webkit-transition:all .7s cubic-bezier(.42,0,.58,1);
    -moz-transition:all .7s cubic-bezier(.42,0,.58,1);
    -ms-transition:all .7s cubic-bezier(.42,0,.58,1);
    -o-transition:all .7s cubic-bezier(.42,0,.58,1);
    transition:all .7s cubic-bezier(.42,0,.58,1)
}
.social-icons i
{
    color:#f2f2f2;
    transition:all .3s cubic-bezier(0,0,.58,1)
}
.social-icons a
{
    color:#fff;
    width:40px;
    height:22px;
    line-height:22px;
    letter-spacing:0;
    background:0 0;
    font-size:12px;
    font-weight:300;
    display:inline-block;
    text-align:center;
    float:left;
    margin-right:2px;
    border:none;
    -webkit-transition:all .3s cubic-bezier(0,0,.58,1);
    -moz-transition:all .3s cubic-bezier(0,0,.58,1);
    -ms-transition:all .3s cubic-bezier(0,0,.58,1);
    -o-transition:all .3s cubic-bezier(0,0,.58,1);
    transition:all .3s cubic-bezier(0,0,.58,1)
}
.social-icons a:hover
{
    color:#324da0;
    background:0 0
}
.social-icons a:hover i
{
    color:#324da0;
    -webkit-transform:scale(1.2);
    -moz-transform:scale(1.2);
    -ms-transform:scale(1.2);
    -o-transform:scale(1.2);
    transform:scale(1.2)
}
.copyright
{
    left:1%;
    display:block;
    width:auto;
    -webkit-transition:all .7s cubic-bezier(.42,0,.58,1);
    -moz-transition:all .7s cubic-bezier(.42,0,.58,1);
    -ms-transition:all .7s cubic-bezier(.42,0,.58,1);
    -o-transition:all .7s cubic-bezier(.42,0,.58,1);
    transition:all .7s cubic-bezier(.42,0,.58,1)
}
.copyright p
{
    font-size:11px;
    font-weight:100;
    letter-spacing:1px;
    color:#757A86;
    margin: 0;
}
.login-page .brand-logo {
    text-align: center;
    margin-bottom: 25px;
}
.logo .brand-logo span{
    color: #fff;
}
.login-page .panel {
    box-shadow: none;
    border-radius: 0;
    background: transparent;
    width: 350px;
    margin: 0 auto;
    max-width: 100%;
}
.login-page .panel h1{
    font-size: 16px;
    padding: 0;
    margin-bottom: 25px;
}
.login-page .panel .control-group input.control{
    width: 100%;
}
.login-page .panel .control-group a{
    font-size: 12px;
}
.login-page .panel .button-group {
    text-align: right;
    margin: 0;
}
.vertical-center{
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
}
.login-page .panel  .panel-content {
    padding: 20px;
    box-shadow: 0 2px 25px 0 rgb(0 0 0 / 15%);
}
.brand-logo span {
    font-family: Microgramma;
    font-weight: 600;
    color: #000;
    margin-top: 0;
    margin-bottom: 40px;
    display: block;
    font-size: 24px !important;
    /*transition: all 1.8s cubic-bezier(.77,0,.175,1);*/
}
p.rmenu.brand-logo span{
    font-size: 15px !important;
    color: #000;
    display: inline-block;
    margin: 0;
}
p.rmenu.brand-logo:hover span{
    /*color: #fff;*/
}
h2.text-white.brand-logo span{
    font-size: 60px !important;
}
.contact_content .contact-form h3,
.contact_content .contact-form p{
    display: block;
    width: 100%;
    margin: 0;
}
html:lang(ar) .link-box
{
    position:relative;
    -webkit-writing-mode:vertical-lr;
    -ms-writing-mode:tb-lr;
    writing-mode:vertical-lr;
    white-space:nowrap
}
html:lang(ar)  .link-background.right {
    right: -125px;
}
html:lang(ar) .link-background.left {
    left: -125px;
}
html:lang(ar) .link.right:hover+.link-background {
    background-position: center center;
    transform: translate3d(-50px,0,0);
}
html:lang(ar) .link.left:hover+.link-background {
    text-decoration: none;
    background-position: center center;
    transform: translate3d(175px,0,0);
    transition: all .8s cubic-bezier(.77,0,.175,1);
}
@media only screen and (max-width:1024px)
{
    h1.hero-text
    {
        font-size:46px;
        line-height:1.2
    }
    h2.hero-text
    {
        font-size:16px;
        line-height:20px
    }
    .overlay
    {
        left:0;
        width:100%;
        height:100%
    }
    .logo
    {
        left:50%;
        -webkit-transform:translateX(-50%);
        -moz-transform:translateX(-50%);
        -ms-transform:translateX(-50%);
        -o-transform:translateX(-50%);
        transform:translateX(-50%);
        margin:15px 0
    }

}
@media only screen and (max-width:768px)
{
    h1.hero-text
    {
        font-size:40px
    }
    .copyright
    {
        left:50%;
        transform:translateX(-50%);
        width: 245px;
    }
    .social-icons
    {
        right:50%;
        transform:translateX(50%);
        bottom: 60px;
    }
    .copyright p {
        white-space: break-spaces;
        text-align: center;
    }
}
@media only screen and (max-width:480px)
{
    h1.hero-text
    {
        font-size:30px
    }
    #body-container h1 {
        font-size: 30px;
    }
    h2.hero-text
    {
        font-size:14px
    }
    .social-icons a
    {
        width:25px
    }

}
@media screen and (max-device-width:667px) and (orientation:landscape)
{
    h1.hero-text
    {
        font-size:30px
    }
    h2.hero-text
    {
        font-size:16px
    }

}
@media (max-width:1000px)
{
    .opacity-0,section
    {
        opacity:1
    }
    #about aside.bg,#contact aside.bg,.btn-close,.link
    {
        display:none
    }
    #body-container
    {
        height:100%
    }
    .page-inner div.content>div
    {
        padding:30px;
        overflow:hidden
    }
    .full-width
    {
        margin-left:-15px;
        margin-right:-15px
    }
    section
    {
        position:relative;
        overflow:visible;
        height:auto;
        -webkit-animation:fadeIn 1s linear 1 forwards;
        -moz-animation:fadeIn 1s linear 1 forwards;
        o-animation:fadeIn 1s linear 1 forwards;
        animation:fadeIn 1s linear 1 forwards
    }
    .page-inner aside,.page-inner div.content
    {
        width:100%;
        overflow:visible
    }
    .page-inner.in div.content {
        opacity: 1;
        right: 0;
        margin-bottom: 39px;
    }
    section#contact,
    section#about{
        background-color: transparent;
        box-shadow: none
    }
    section#about
    {
        margin-top:50px
    }
    .service-img
    {
        background-attachment:fixed
    }
    .header-content
    {
        width:100%
    }
    .before-after-line::after,.before-after-line::before
    {
        margin:0 12px;
        width:12px
    }
    .hero-text.opacity-0
    {
        opacity:0
    }

}

