/*
Project: URBAN - Responsive corporate/portfolio Template
Version: 1.0
Author : operce.com

==========

TABLE OF CONTENT

    - General Styles
    - Grid
    - Buttons
    - Loader
    - Header
    - Banner
    - Portfolio
    - Services
    - Clients
    - Footer
    - Breadcrumb
    - About
    - Services Page
    - Contact Page
    - Blog

================================================== */

/*------------------------------------*\
    1. General styles
\*------------------------------------*/

@import url('https://fonts.googleapis.com/css?family=Playfair+Display:400,700,900|Open+Sans:400,600,300|Montserrat:500,600,700');
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
font,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
    border: 0;
    font-family: 'Open Sans', sans-serif;
    font-size: 100%;
    font-style: inherit;
    font-weight: inherit;
    margin: 0;
    outline: 0;
    padding: 0;
    vertical-align: baseline;
    box-sizing: border-box;
    color: #22313f;
}
p {
    line-height: 1.2;
    color: #666;
    font-family: "Roboto", sans-serif;
    font-size: 15px;
    font-weight: 400;
    letter-spacing: 0.5px;
    line-height: 26px;
    margin: 0 0 15px;
}
strong {
    font-weight: bold;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section {
    display: block;
}
ul,
ol {
    margin: 0;
    padding: 0;
}
ul {
    list-style: outside none none;
    margin: 0;
    padding: 0;
}
audio,
canvas,
video {
    display: inline-block;
    max-width: 100%;
}
img {
    vertical-align: middle;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
}
html {
    overflow-y: scroll;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
}
a {
    transition: .3s ease;
}
a:focus {
    outline: thin dotted;
}
a,
a:link,
a:visited,
a:hover,
a:active {
    text-decoration: none;
    outline: 0;
}
i,
cite,
em,
var,
address,
dfn {
    font-style: italic;
}
h4 {
    font-size: 18px;
}
h5 {
    font-size: 14px;
}
blockquote {
    padding: 5px 20px;
    margin: 0 0 20px;
    font-size: 17.5px;
    border-left: 5px solid #eee;
    position: relative;
    font-size: 16px;
}
blockquote p {
    font-size: 16px;
}
.__mobile {
    display: none;
}
.disabled {
    cursor: not-allowed;
}
.highlight {
    color: #fb334f !important;
    font-family: inherit;
}
.highlight-grey {
    color: #676666 !important;
    font-family: inherit;
}
.white {
    color: #fff;
}
/* 1.1. Form elements */

input,
button,
textarea {
    outline: 0;
}
input[type=submit],
button {
    background-color: #f8f8f8;
    color: #666;
    border-color: #ddd;
    border-bottom-color: #ddd;
    display: inline-block;
    padding: 6px 12px;
    box-shadow: inset 0px -1px 0px 0px rgba(0, 0, 0, 0.09);
    border: 1px;
}
textarea {
    font-family: inherit;
}

/* ============= Grid =============== */

.container {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    padding: 0;
    margin:
}
.row {
    position: relative;
    margin: 0;
    padding: 0;
    display: block;
    both;
    width: 100%;
    overflow: hidden;
}
.row-fixed {
    position: relative;
    margin: 0 auto;
    padding: 0;
    display: block;
    both;
    width: 1170px;
    overflow: hidden;
}
.row-pd {
    padding: 0 15px;
}
.col {
    position: relative;
    float: left;
}
.col-2 {
    position: relative;
    width: 50%;
    float: left;
}
.col-4 {
    position: relative;
    width: 25%;
    float: left;
}
.col-5 {
    position: relative;
    width: 20%;
    float: left;
}
.col-3 {
    position: relative;
    width: 33.33%;
    float: left;
}
.col-70 {
    position: relative;
    width: 70%;
    float: left;
}
.col-60 {
    position: relative;
    width: 60%;
    float: left;
}
.col-80 {
    position: relative;
    width: 80%;
    float: left;
}
.col-90 {
    position: relative;
    width: 90%;
    float: left;
}
.col-30 {
    position: relative;
    width: 30%;
    float: left;
}
.col-40 {
    position: relative;
    width: 40%;
    float: left;
}
.col-10 {
    position: relative;
    width: 10%;
    float: left;
}
.clearfix:after,
.clearboth:after,
.row:after,
.row-fixed:after {
    content: " ";
    visibility: hidden;
    display: block;
    height: 0;
    clear: both;
}

/* =============== Buttons ================= */

.__btn {
    font-size: 0.9em;
    color: #f8f8f8;
    -moz-transition: all 0.1s;
    -o-transition: all 0.1s;
    -webkit-transition: all 0.1s;
    transition: all 0.1s;
    padding: 10px 20px;
    border: 1px solid;
    box-shadow: 0 3px 5px rgba(0, 0, 0, .15);
    display: inline-block;
    text-decoration: none;
}
.__btn-round {
    border-radius: 4px !important;
}
.__btn-grey {
    background-color: #eee;
    border-color: #eee;
    color: #777;
}
.__btn-grey:hover {
    background: #fb334f;
    border-color: #fb334f;
    color: #fff;
}
.__btn-dark {
    background-color: #333;
    border-color: #333;
    color: #fff;
}
.__btn-dark:hover {
    background: #ddd;
    border-color: #ddd;
    color: #333;
}
.__btn-red {
    background: #fb334f;
    border-color: #fb334f;
    color: #fff;
}
.__btn-red:hover {
    background: #e5253f;
    border-color: #e5253f;
}
.__btn-white {
    background-color: #fefefe;
    border-color: #e8e8e8;
    color: #d15543;
}
.__btn-white:hover {
    background-color: #e8e8e8;
    border-color: #ccc;
}
.__btn-blue {
    background-color: #3f51b5 !important;
    border-color: #3f51b5 !important;
    color: #fff;
}
.__btn-blue:hover {
    background-color: #2c3c91 !important;
}


/* ============== Sections ==================== */


.text-center {
    text-align: center;
}
.section-heading {
    margin: 30px 0;
}
.section-heading h3 {
    margin-bottom: 40px;
    position: relative;
    display: inline-block;
    font-size: 35px;
    text-transform: uppercase;
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
}
.section-heading h3:after {
    content: "";
    background: #fb334f;
    height: 2px;
    width: 90px;
    position: absolute;
    bottom: -25px;
    left: 0;
}
.section-title h2 {
    color: #444444;
    font-family: "Montserrat", serif;
    font-size: 32px;
    letter-spacing: 0;
    line-height: 36px;
    margin-bottom: 30px;
    text-transform: capitalize;
}
.section-title h3,
.section-title h4 {
    color: #444444;
    font-family: "Montserrat", serif;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.5;
    margin-bottom: 10px;
    text-transform: capitalize;
}
.section-body {
    margin-bottom: 40px;
}
.section-footer {
    text-align: center;
    display: block;
    margin: 0 0 30px 0;
}
.section-footer a {
    display: inline-block;
    border: #999 solid 1px;
    padding: 15px 40px;
    box-shadow: none;
    color: #999;
    transition: 200ms;
    text-transform: uppercase;
}
.section-footer a:hover {
    background: #222;
    color: #fff;
    border-color: #222;
}
/*-----------------------------------*\
      Loader Area
\*-----------------------------------*/

#preloader {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 99999999999;
    width: 100%;
    height: 100%;
    overflow: visible;
    background: #fff;
    display: table;
    text-align: center;
}
.loader {
    display: table-cell;
    vertical-align: middle;
    height: 100%;
    width: 100%;
    position: relative;
    width: 200px;
    height: 200px;
}
.loader1 {
    width: 56px;
    height: 56px;
    border: 4px solid #fb334f;
    border-right-color: transparent;
    border-radius: 50%;
    position: relative;
    animation: loader-rotate 1s linear infinite;
    margin: 0 auto;
}
@keyframes loader-rotate {
    0% {
        transform: rotate(0);
    }
    100% {
        transform: rotate(360deg);
    }
}
/*------------------------------------*\
    2. Header styles
\*------------------------------------*/

.header {
    padding:40px 0 30px 0;
    overflow: visible;
    transition: padding .15s ease-in-out,background-color .15s ease-in-out,box-shadow .15s ease;
    z-index: 6 !important;
}
.sticky {
    position: fixed;
    padding-top: 10px;
    padding-bottom: 10px;
    z-index:9999999999;
    background: #fff;
}

.header.sticky .menu a{color:#222;}

.header .row-fixed {
    overflow: visible;
}
.header .logo h1 {
    color: #444;
    font-family: "Dosis", serif;
    font-size: 30px;
    font-weight: 900;
    padding-top: 15px;
    padding-bottom: 15px;
}
.header .logo {
    padding: 8px 0;
}
.header .logo img {
    width: 120px;
}
.header .menu {
    float: right;
}
.header .menu ul {
    list-style: none;
    text-align: center;
    padding: 14px 0;
}
.menu li {
    display: inline-block;
    position: relative;
}
.menu li a {
    padding: 10px 14px;
    color: #fff;
    font-family: "Open Sans", sans-serif;
    text-decoration: none;
    display: inline-block;
    font-weight: 600;
    font-size: 14px;
}
.menu li a:hover {
    color: #222;
}
.menu li.active a {
    border-bottom: 1px solid #fb334f;
}
/* submneu start */

.sub-menu {
    background: #323232 none repeat scroll 0 0;
    left: 0;
    opacity: 0;
    position: absolute;
    transition: all 0.3s ease 0s;
    visibility: hidden;
    width: 210px;
    z-index: 9999;
    padding: 0 !important;
    margin-top: 1px;
}
.menu ul li:hover> ul.sub-menu {
    opacity: 1;
    visibility: visible;
}
.menu ul li ul.sub-menu li {
    position: relative;
    display: block;
    text-align: left;
    float: none;
}
.menu ul li ul.sub-menu li a {
    color: #ddd;
    font-size: 13px;
    padding-left: 15px;
    text-transform: capitalize;
    font-weight: normal;
    display: block;
    border-bottom: 1px solid #555;
}
.menu ul li ul.sub-menu li a i {
    float: right;
    margin-top: 7px;
}
.menu ul li ul.sub-menu li:hover > a {
    color: #fff;
    background: #2A2A2A;
    padding-left: 20px;
}
.menu ul li ul.sub-menu li ul {
    left: 100%;
    opacity: 0;
    top: 0;
    visibility: hidden;
}
/* submneu end */


/*------------------------------------*\
    3. Banner styles
\*------------------------------------*/

.banner.img-bg{background: url(../images/background/bg-1.jpg) no-repeat; background-size: cover;background-position: center;}
.banner .text {
    width:95%;
    padding-top: 150px !important;
    padding-bottom: 180px !important;
    z-index: 5 !important;
}
.banner .text h2.headline {
    font-family: "Montserrat", serif;
    font-size: 68px;
    color: #fff;
    -webkit-transition: opacity 0.24s ease-in-out;
    -moz-transition: opacity 0.24s ease-in-out;
    transition: opacity 0.24s ease-in-out;
    font-weight: 500;
    line-height: 78px;
}
.banner .text h2.headline span {
    color: #fff;
    font-family: "Montserrat", serif;
}
.banner .text h2.headline span.highlight {
    font-family: "Playfair display", serif;
    font-weight: 300;
}
.banner .text p {
    font-size: 17px;
    color: #fff;
    margin-bottom: 0;
    line-height: 2em;
    -webkit-transition: opacity 0.24s ease-in-out;
    -moz-transition: opacity 0.24s ease-in-out;
    transition: opacity 0.24s ease-in-out;
    letter-spacing: 2px;
}
.text-column {
    margin-bottom: 30px;
}
.link-column {
    display: inline-block;
    padding: 10px 0;
}
.banner .text a {
    text-align: center;
    padding: 10px 40px;
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: 3px;
}
.banner .overlay {
    background-color: rgba(9, 15, 41, 0.35) !important;
}
.overlay {
    z-index: 1;
}
.overlay {
    background-repeat: repeat;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 4;
}
.section {
    padding: 50px 0;
}
/*------------------------------------*\
    4. Portfolio styles
\*------------------------------------*/

.portfolio-menu {
    margin-bottom: 30px;
}
.portfolio-menu button {
    text-transform: capitalize;
    background: #fff;
    border: 0;
    box-shadow: none;
}
.portfolio-menu .active {
    background: #22313f;
    color: #fff;
}
.portfolio-item {
    overflow: hidden;
    padding: 0 15px;
    margin-bottom: 20px;
}
.no-space .portfolio-item {
    padding: 0;
    margin-bottom: 0;
}
.portfolio-item a {
    display: block;
}
.portfolio-content {
    background: rgba(251, 51, 79, 0.81);
    bottom: 0;
    color: #ffffff;
    left: 0;
    padding: 7px 0;
    position: absolute;
    transform: translateY(100%);
    transform-origin: center bottom 0;
    transition: all 0.3s ease 0s;
    width: 100%;
    height: 100%;
}
.content-align {
    width: 100%;
    height: 100%;
    display: table;
}
.content-align .inner {
    width: 100%;
    height: 100%;
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    color: #fff;
}
.content-align .inner h4:after {
    content: "";
    background: #fff;
    height: 2px;
    width: 90px;
    position: absolute;
    bottom: -5px;
    left: 0;
}
.portfolio-content h4 {
    text-transform: capitalize;
    color: #fff;
    text-align: center;
    font-family: 'Montserrat', sans-serif;
    font-size: 20px;
    font-weight: bold;
    position: relative;
    ;
    display: inline-block;
    margin-bottom: 10px;
}
.portfolio-content a {
    color: #fff;
}
.portfolio-content p {
    font-size: 14px;
    color: #fff;
    text-align: center;
    margin-bottom: 0;
}
.portfolio-item:hover .portfolio-content {
    transform: translateY(0);
}
.portfolio-img {
    top: 0;
    overflow: hidden;
    transition: .3s;
}
.portfolio-img img {
    width: 100%;
}
.portfolio-item:hover .portfolio-img {
    transform: scale(1.15);
}

/*------------------------------------*\
    7. Footer styles
\*------------------------------------*/

.footer {
    background: #fff;
}
.footer.section {
    padding: 30px;
}
.footer .text-column {
    border-bottom: #eee solid 1px;
    padding-bottom: 10px;
    width: 500px;
    margin: 0 auto;
    margin-bottom: 10px;
}
.footer p,
.footer i,
.footer ul {
    color: #555;
    text-align: center;
    margin-bottom: 0;
    margin-top: 2px;
}
.footer a:hover i {
    color: #fb334f;
}
.footer p {
    font-size: 12px;
    text-transform: uppercase;
    color: #555;
}
.footer li {
    display: inline-block;
    margin: 0 10px;
}
.footer li i {
    font-size: 18px;
}

/*------------------------------------*\
    9. About Page styles
\*------------------------------------*/

.about-area .col-2 {
    padding: 0 15px;
}
/* 9.1. Skills area */

.skill {
    margin-bottom: 30px;
}
.skill h5 {
    font-weight: 300;
    margin-bottom: 8px;
    text-transform: uppercase;
    font-size: 14px;
}
.skill h5 span {
    float: right;
}
.progress {
    background: #f2f2f2;
    width: 100%;
    height: 2px;
}
.progressbar {
    background: #333;
    height: 100%;
}

.project-counter {
    margin: 0 0 50px 0;
}
.project-counter .col-4 {
   padding: 0 15px;
}
.project-counter .number {
    font-size: 26px;
    font-weight: 600;
    margin-bottom: 10px;
}
.project-counter p {
    font-size: 16px;
    color: #888;
}
.project-counter .counter-wrapper {
    border: #f1f1f1 solid 1px;
    text-align: center;
    padding: 38px 0 34px 0;
    margin-bottom: 10px;
}

/* 9.2. Testimonials */

.testimonial{background: url(../images/background/bg-2.jpg) no-repeat; background-size: cover; background-position: center;padding:80px 0;}
.testimonial .overlay{background-color: rgba(9, 15, 41, 0.85) !important;z-index: 0;}

.testimonial h2{color:#fff;}
.single-testimonial{padding: 10px 0;}
.single-testimonial p {
    font-size: 16px;
    font-weight: 500;
    color:#fff;
}
.testimonial .col-80 {
    margin: 0 auto;
    float: none;
}
.single-testimonial h5 {
    color: #fff;
    font-weight: 600;
    font-family: 'Playfair Display', serif;
}
.owl-carousel .owl-item img {
    display: inline-block;
    width: inherit;
}

/* LATEST POSTS */

.latest-posts {
    background: #f8f8f8;
}
.latest-posts .col-3{padding: 0 15px;}
.single-post {
    margin-bottom: 25px;
}
.single-post .post-body {
    background: #242424;
    padding: 40px 20px;
}
.post-header img {
    width: 100%;
}
.post-body p,
.post-body a {
    font-size: 16px;
    color: #eee;
}
.post-body .date {
    color: #888;
    font-weight: 600;
}
.post-body i {
    margin-left: 15px;
}
.post-body h3 a {
    font-size: 20px;
    font-weight: 600;
}
.post-body .seperator {
    width: 40%;
    background: #555;
    height: 2px;
    margin: 10px 0;
}
/*------------------------------------*\
    10. Services Page styles
\*------------------------------------*/

.services-area .border-bottom {
    border-bottom: #f2f2f2 solid 2px;
}
.services-area .border-right {
    border-right: #f2f2f2 solid 2px;
}
.services-area .service-single {
    text-align: center;
    padding: 50px 20px;
    transition: .3s ease;
    background: #fff;
    border-radius: 3px;
}
.services-area .service-single:hover h4 {
    color: #fb334f;
}
.services-area .service-single .icon {
    color: #fff;
    text-shadow: -1px -1px 0 #323232, 1px -1px 0 #323232, -1px 1px 0 #323232, 1px 1px 0 #323232;
    font-size: 35px;
    transition: .3s ease;
    margin-bottom: 30px;
}
.services-area .service-single h4 {
    font-size: 22px;
    color: #22313f;
    text-transform: uppercase;
    transition: .3s ease;
    font-weight: 600;
}
.services-area .service-single p {
    font-size: 14px;
    color: #22313f;
}
.services-area .service-single a {
    font-weight: 600;
    font-size: 12px;
    text-transform: uppercase;
}
/*------------------------------------*\
    11. Contact Page styles
\*------------------------------------*/

.contact-area .col-2 {
    padding: 0 15px;
}
.contact-area .col-2:nth-child(2n) {
    padding: 0 15px 0 80px;
}
/* 11.1. Forms styles */

.field-wrapper {
    width: 100%;
    margin-bottom: 15px;
    position: relative;

    display: table;
}
.field-wrapper-half {
    width: 50%;
    float: left;
    margin-bottom: 15px;
    position: relative;
}
.field-wrapper input[type=text],
.field-wrapper input[type=email],
.field-wrapper input[type=url],
.field-wrapper input[type=password] {
    height: 40px;
    border: #ddd solid 1px;
    width: 100%;
    padding: 0 15px;
    box-sizing: border-box;
    font-size: 16px;
    font-weight: 500;
}
.field-wrapper textarea {
    width: 100%;
    height: 150px;
    padding: 10px 15px;
    box-sizing: border-box;
    font-size: 16px;
    border: #ddd solid 1px;
    font-weight: 500;
}
.field-wrapper label.hidden {
    display: none;
}
.field-wrapper label {
    margin-bottom: 8px;
    display: inline-block;
    color: #555;
}
label.error,
.error {
    font-weight: 600;
    color: #fb334f;
    display: block;
}
.contact-area .field-wrapper input[type=text],
.contact-area .field-wrapper input[type=email],
.contact-area .field-wrapper input[type=url],
.contact-area .field-wrapper input[type=password] {
    height: 50px;
}
.form input[type=submit],
.form button {
    width: 150px;
    height: 45px;
    background: #333;
    color: #fff;
    font-size: 16px;
    text-transform: uppercase;
}
#map {
    width: 100%;
    height: 400px;
    background-color: grey;
}
.alert-success {
    background: #22313f;
    color: #fff;
    border-color: #22313f;
}
.alert-danger {
    background: #e44c4c;
    color: #fff;
    border-color: #e44c4c;
}
.alert {
    padding: 15px;
    margin-bottom: 20px;
    border: 1px solid transparent;
    border-radius: 4px;
    font-size: 14px;
}