@import url(https://fonts.googleapis.com/css?family=Open+Sans:300,400,600,700);
@import url(https://fonts.googleapis.com/css?family=Montserrat:100,400,600,700);

*, *:after, *:before {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

body {
    color: #333;
    font-family: 'Open Sans', sans-serif !important;
    font-size: 14px;
    font-weight: 400;
    line-height: 26px;
    background-color: #ffffff;
}
/* Global Typography */

/* Heading Typo */
.white, .white h1, .white h2, .white h3, .white h4, .white p {
    color: #fff !important
}

    .white a {
        color: #fff;
        transition: all 0.4s ease-in-out;
    }

        .white a:hover {
            color: #0a1520;
            transition: all 0.4s ease-in-out;
        }

.tm-content strong {
    margin: 0px 0px 15px 0px;
    display: inline-block
}

.fsize18 {
    font-size: 18px;
    line-height: 26px;
}

.fsize24 {
    font-size: 24px !important;
}

.fsize30 {
    font-size: 30px
}

.fsize50 {
    font-size: 50px
}

body h1, body h2, body h3, body h4, body h5, body h6 {
    font-style: normal;
    font-weight: 700;
    line-height: 1.5;
    margin: 0px 0px 10px 0px;
    font-family: 'Montserrat', sans-serif;
}

.pull-right {
    float: right;
}

h1 {
    font-size: 36px;
}

h2 {
    font-size: 28px;
    font-weight: 600
}

h3 {
    font-size: 16px
}

h4 {
    font-size: 20px;
    font-weight: 600 !important;
    font-family: 'Montserrat', sans-serif;
    margin-bottom: 12px !important;
}

h5 {
    font-size: 18px;
}

h6 {
    font-size: 16px;
}

    h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
        color: #000;
    }

p a {
    color: #000;
}
/* Peragraph Typo */
p {
    margin: 0 0 10px 0;
    line-height: 26px;
}

a {
    color: #000;
    text-decoration: none;
}

    a:hover, a:focus, a:active {
        outline: none;
        text-decoration: none;
    }

ul {
    margin-bottom: 0px;
}

figure {
    margin-bottom: 0px;
    position: relative;
}

.clear {
    clear: both;
    font-size: 0;
    line-height: 0;
}

img {
    max-width: 100%;
}


iframe {
    border: none;
    float: left;
    width: 100%;
}
/* Form Input Typo */
select {
    border: 1px solid #aaaaaa;
    color: #333;
    cursor: pointer;
    display: inline-block;
    font-size: 14px;
    font-weight: 300;
    height: 40px;
    padding: 8px 12px;
    width: 100%;
}

label {
    color: #000;
    display: block;
    font-weight: 400;
    margin-bottom: 10px;
}

button {
    border: none;
}

.form-control {
    border-radius: 0;
    padding: 4px 6px
}

.form-control {
    border: 1px solid #aaaaaa;
}

textarea, input[type="text"], input[type="password"], input[type="datetime"], input[type="datetime-local"], input[type="date"], input[type="month"], input[type="time"], input[type="week"], input[type="number"], input[type="email"], input[type="url"], input[type="search"], input[type="tel"], input[type="color"], .uneditable-input, textarea {
    box-shadow: none;
    border-radius: 0;
    border: 1px solid #aaaaaa;
    color: #3d3d3d;
    display: inline-block;
    font-size: 12px !important;
    font-weight: 400;
    height: 43px;
    line-height: 26px;
    outline: none;
    padding: 4px 6px;
    vertical-align: middle;
    resize: none
}

    textarea:focus, input:focus, .form-control:focus {
        transition: all 0.4s ease-in-out;
        border: 1px solid;
        box-shadow: none;
    }

textarea {
    height: 200px;
    resize: none
}

form p {
    float: left;
    position: relative;
    width: 100%;
}

    form p span i {
        color: #474747;
        left: 16px;
        position: absolute;
        top: 13px;
    }
/* ThemeUnit Style's */
li {
    line-height: 28px;
    list-style: disc outside none;
}

ul ul {
    margin-left: 20px;
}

ol {
    float: none;
    list-style: decimal;
    padding-left: 15px;
}

    ol ol {
        margin-left: 20px;
    }

    ol li {
        list-style: decimal;
        width: 100%;
    }

table {
    background-color: transparent;
    max-width: 100%;
    width: 100%;
}

th {
    text-align: left;
}

.dinline {
    display: inline-block !important;
}

table > thead > tr > th, table > tbody > tr > th, table > tfoot > tr > th, table > thead > tr > td, table > tbody > tr > td, table > tfoot > tr > td {
    border-top: 1px solid #d2d2d2;
    border: 1px solid #d2d2d2;
    line-height: 2.5;
    padding-left: 7px;
    vertical-align: top;
}

table thead tr th {
    border-top: 1px solid #d2d2d2;
}

.table > caption + thead > tr:first-child > th, .table > colgroup + thead > tr:first-child > th, .table > thead:first-child > tr:first-child > th, .table > caption + thead > tr:first-child > td, .table > colgroup + thead > tr:first-child > td, .table > thead:first-child > tr:first-child > td {
    border-top: 1px solid #d2d2d2;
}

table > thead > tr > th {
    border-bottom: 2px solid #d2d2d2;
    vertical-align: bottom;
}

table > caption + thead > tr:first-child > th, table > colgroup + thead > tr:first-child > th, table > thead:first-child > tr:first-child > th, table > caption + thead > tr:first-child > td, table > colgroup + thead > tr:first-child > td, table > thead:first-child > tr:first-child > td {
    border-bottom: 0;
}

table > tbody + tbody {
    border-top: 2px solid #d2d2d2;
}

.table > thead > tr > th, .table > tbody > tr > th, .table > tfoot > tr > th, .table > thead > tr > td, .table > tbody > tr > td, .table > tfoot > tr > td {
    padding: 12px 16px;
}

p ins {
    color: #999;
}

dl dd {
    margin-left: 20px;
}

address {
    font-style: italic;
}

.tabs-services h2 {
    font-size: 18px
}

:-webkit-input-placeholder {
    color: #666666;
}

:-moz-placeholder {
    color: #666666;
    opacity: 1;
}

::-moz-placeholder {
    color: #666666;
    opacity: 1;
}

:-ms-input-placeholder {
    color: #666666;
}


::selection {
    background: #0070c2;
    color: #ffffff;
}

::-webkit-selection {
    background: #0070c2;
    color: #ffffff;
}

::-moz-selection {
    background: #eb1a1a;
    color: #ffffff;
}

audio, video {
    width: 100%;
    float: left;
}


hr {
    background-color: #403f3f;
    width: 100%;
    float: left;
}

p {
    font-size: 14px
}

a {
    transition: all 0.8s ease-in-out;
}

    a:hover {
        transition: all 0.8s ease-in-out;
        cursor: pointer
    }

.red-anchor {
    display: block;
    padding-top: 15px
}

    .red-anchor:hover {
        color: #fff
    }

.white-text {
    color: #fff
}

.white a {
    color: #fff
}

.minus-margin15 {
    margin: 0 -15px
}

.padding70 {
    padding: 70px 15px
}

.padding70-68 {
    padding: 68px 0px 55px 0
}

.padding70even {
    padding: 70px 0;
}

.padding30 {
    padding: 30px 0
}

.image-hover img {
    transition: all 0.4s ease-in-out;
}
/*Border effect*/
.border-effect {
    position: relative;
}

    .border-effect:hover::before, .border-effect:hover::after {
        opacity: 1;
        transform: scale(1);
    }

    .border-effect::before {
        border-top: 2px solid;
        border-bottom: 2px solid;
        transform: scale(0, 1);
    }

    .border-effect::before, .border-effect::after {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        content: '';
        opacity: 0;
        transition: opacity 0.35s, transform 0.35s;
    }


    .border-effect:hover::before, .border-effect:hover::after {
        opacity: 1;
        transform: scale(1);
    }

    .border-effect::after {
        border-right: 2px solid;
        border-left: 2px solid;
        transform: scale(1, 0);
    }

    .border-effect::before, .border-effect::after {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        content: '';
        opacity: 0;
        transition: opacity 0.35s, transform 0.35s;
    }

.image-hover:hover img {
    opacity: 0.5;
    transition: all 0.4s ease-in-out;
    transform: scale(1);
    -moz-transform: scale(1);
    -webkit-transform: scale(1);
    -o-transform: scale(1);
    -ms-transform: scale(1); /* IE 9 */
}

.overlay {
    background: rgba(0,0,0,0.8);
    transition: all 0.4s ease-in-out;
}

    .overlay:hover {
        background: rgba(233,90,65,0.9);
        transition: all 0.4s ease-in-out;
    }

.overlay-bg {
    background: rgba(0,0,0,0.75);
    transition: all 0.4s ease-in-out;
    width: 100%;
    float: left
}

.light-overlay-bg {
    background: rgba(0,0,0,0.7);
    transition: all 0.4s ease-in-out;
    width: 100%;
    float: left
}

.readmore-btn {
    border: 1px solid #fff;
    padding: 8.5px 20px;
    display: inline-block;
    color: #fff
}

    .readmore-btn:hover {
        border: 1px solid #0a1520;
        padding: 8.5px 20px;
        display: inline-block;
        color: #fff !important;
    }

.image-hover figure {
    position: relative;
    overflow: hidden;
    outline: 1px solid white;
    outline-offset: -10px;
}

.sidebar-widget .image-hover figure {
    position: relative;
    overflow: hidden;
    outline: 1px solid white;
    outline-offset: 0px;
}

.image-hover figure::before {
    position: absolute;
    top: 0;
    left: -75%;
    z-index: 2;
    display: block;
    content: '';
    width: 50%;
    height: 100%;
    background: -webkit-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,.3) 100%);
    background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,.3) 100%);
    -webkit-transform: skewX(-25deg);
    transform: skewX(-25deg);
}

.image-hover figure:hover::before {
    -webkit-animation: shine .75s;
    animation: shine .75s;
}

.pagination > li > a, .pagination > li > span {
    color: #333
}

@-webkit-keyframes shine {
    100% {
        left: 125%;
    }
}

@keyframes shine {
    100% {
        left: 125%;
    }
}

.animateIn {
    -webkit-animation: accordionIn 0.45s normal ease-in-out both 1;
    animation: accordionIn 0.45s normal ease-in-out both 1;
}

.animateOut {
    -webkit-animation: accordionOut 0.45s alternate ease-in-out both 1;
    animation: accordionOut 0.45s alternate ease-in-out both 1;
}

@keyframes accordionIn {
    0% {
        opacity: 0;
        -webkit-transform: scale(0.9) rotateX(-60deg);
        transform: scale(0.9) rotateX(-60deg);
        -webkit-transform-origin: 50% 0;
        transform-origin: 50% 0;
    }

    100% {
        opacity: 1;
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@-webkit-keyframes accordionOut {
    0% {
        opacity: 1;
        -webkit-transform: scale(1);
        transform: scale(1);
    }

    100% {
        opacity: 0;
        -webkit-transform: scale(0.9) rotateX(-60deg);
        transform: scale(0.9) rotateX(-60deg);
    }
}

@keyframes accordionOut {
    0% {
        opacity: 1;
        -webkit-transform: scale(1);
        transform: scale(1);
    }

    100% {
        opacity: 0;
        -webkit-transform: scale(0.9) rotateX(-60deg);
        transform: scale(0.9) rotateX(-60deg);
    }
}

.overlay-popup {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(0, 0, 0, 0.9);
    transition: opacity 500ms;
    visibility: hidden;
    opacity: 0;
    z-index: 999999
}

    .overlay-popup:target {
        visibility: visible;
        opacity: 1;
    }

.popup {
    margin: 70px auto;
    padding: 10px;
    background: #fff;
    border-radius: 5px;
    width: 50%;
    position: relative;
    transition: all 5s ease-in-out;
}


    .popup .close {
        position: absolute;
        top: -14px;
        right: -15px;
        transition: all 200ms;
        font-size: 30px;
        font-weight: bold;
        text-decoration: none;
        color: #333;
        z-index: 9999;
        background: #fff;
        opacity: 1;
        border: 1px solid #000;
        border-radius: 50%;
        -moz-border-radius: 50%;
        -webkit-border-radius: 50%;
        width: 30px;
        height: 30px;
        text-align: center;
        font-size: 18px;
        ;
    }



    .popup .content {
        max-height: 30%;
        overflow: auto;
    }

/* skew image on hover */

.isotopeSelector img {
    -webkit-transition: all .4s ease;
    -moz-transition: all .4s ease;
    -ms-transition: all .4s ease;
    -o-transition: all .4s ease;
    transition: all .4s ease
}

.isotopeSelector:hover img {
    -moz-transform: scale(1.5) rotate(2deg);
    -webkit-transform: scale(1.5) rotate(2deg);
    -o-transform: scale(1.5) rotate(2deg);
    -ms-transform: scale(1.5) rotate(2deg);
    transform: scale(1.5) rotate(2deg);
    -webkit-transition: all .8s ease;
    -moz-transition: all .8s ease;
    -ms-transition: all .8s ease;
    -o-transition: all .8s ease;
    transition: all .8s ease
}

.isotopeSelector figure {
    overflow: hidden
}

.isotopeSelector figure {
    box-shadow: 0 0 2px rgba(0,0,0,0.2)
}

@-webkit-keyframes accordionIn {
    0% {
        opacity: 0;
        -webkit-transform: scale(0.9) rotateX(-60deg);
        transform: scale(0.9) rotateX(-60deg);
        -webkit-transform-origin: 50% 0;
        transform-origin: 50% 0;
    }

    100% {
        opacity: 1;
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}
