/* --------------------------------------
=========================================
   1. IMPORT FONTS
=========================================
-----------------------------------------*/

@font-face {
    font-family: 'sourcesans';
    src: url('../fonts/sourcesans-webfont.eot');
    src: url('../fonts/sourcesans-webfont.eot?#iefix') format('embedded-opentype'), url('../fonts/sourcesans-webfont.woff2') format('woff2'), url('../fonts/sourcesans-webfont.woff') format('woff'), url('../fonts/sourcesans-webfont.ttf') format('truetype'), url('../fonts/sourcesans-webfont.svg#source_sans_prolight') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'FontAwesome';
    src: url('../fonts/fontawesome-webfont.eot?v=3.2.1');
    src: url('../fonts/fontawesome-webfont.eot?#iefix&v=3.2.1') format('embedded-opentype'), url('../fonts/fontawesome-webfont.woff?v=3.2.1') format('woff'), url('../fonts/fontawesome-webfont.ttf?v=3.2.1') format('truetype'), url('../fonts/fontawesome-webfont.svg#fontawesomeregular?v=3.2.1') format('svg');
}


/* --------------------------------------
=========================================
   2. GLOBAL STYLES
=========================================
-----------------------------------------*/


/*========================================
   2.1 GENERAL STYLES
==========================================*/

*,
*:before,
*:after {
    padding: 0px;
    margin: 0px;
    transition: 0.3s;
}

html {
    font-size: 14px;
}

body {
    background: #ecf0f1;
    color: #7f8c8d;
    text-align: center;
    overflow-x: hidden;
}


/*========================================
   2.2 PRE LOADER
==========================================*/

.js .preloader {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 99999;
    width: 100%;
    height: 100%;
    overflow: visible;
    z-index: 9999;
    background: #fff;
}

.js .preloader:after {
    content: "";
    position: absolute;
    left: calc(50% - 25px);
    top: calc(50% - 25px);
    width: 50px;
    height: 50px;
    animation: preloader-animation 2s infinite;
}

@keyframes preloader-animation {
    0% {
        transform: scale(1);
    }
    20% {
        transform: scale(1.2);
    }
    40% {
        transform: scale(1);
    }
    60% {
        transform: scale(1.2);
    }
    80% {
        transform: scale(1) rotate(0deg);
    }
    100% {
        transform: scale(1) rotate(180deg);
    }
}


/*========================================
   2.3 ANCHOR AND BOLD TEXT
==========================================*/

a {
    text-decoration: none;
    display: inline-block;
}

a:hover {
    color: #2c3e50;
}

.dark-bg a:hover {
    color: #fff;
}


/*========================================
   2.4 MISC FIXES
==========================================*/

@-webkit-viewport {
    width: device-width;
}

@-moz-viewport {
    width: device-width;
}

@-ms-viewport {
    width: device-width;
}

@-o-viewport {
    width: device-width;
}

@viewport {
    width: device-width;
}

*,
*:before,
*:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

ul,
ol {
    list-style-type: none;
    padding: 10px 0;
}

::-webkit-input-placeholder {
    /* WebKit browsers */
    color: #2c3e50;
}

:-moz-placeholder {
    /* Mozilla Firefox 4 to 18 */
    color: #2c3e50;
    opacity: 1;
}

::-moz-placeholder {
    /* Mozilla Firefox 19+ */
    color: #2c3e50;
    opacity: 1;
}

:-ms-input-placeholder {
    /* Internet Explorer 10+ */
    color: #2c3e50;
}

.dark-bg ::-webkit-input-placeholder {
    /* WebKit browsers */
    color: #fff;
}

.dark-bg :-moz-placeholder {
    /* Mozilla Firefox 4 to 18 */
    color: #fff;
}

.dark-bg ::-moz-placeholder {
    /* Mozilla Firefox 19+ */
    color: #fff;
}

.dark-bg :-ms-input-placeholder {
    /* Internet Explorer 10+ */
    color: #fff;
}


/* --------------------------------------
=========================================
   3. COMPONENTS 
=========================================
-----------------------------------------*/


/*========================================
   3.1 TYPOGRAPHY
==========================================*/

* {
    font-family: "sourcesans", sans-serif;
}

.dark-bg {
    color: #fff;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    color: #2c3e50;
}

.dark-bg h1,
.dark-bg h2,
.dark-bg h3,
.dark-bg h4,
.dark-bg h5,
.dark-bg h6 {
    color: #fff;
}

h1 {
    font-size: 2.813rem;
    margin-bottom: 10px;
    text-transform: uppercase;
}

h2 {
    font-size: 2.188rem;
    margin-bottom: 10px;
    letter-spacing: 2px;
    text-transform: uppercase;
}

h3 {
    font-size: 1.5rem;
    margin-bottom: 10px;
}

h4 {
    font-size: 18px;
    margin-bottom: 8px;
}

h5 {
    font-size: 16px;
    margin-bottom: 7px;
}

h6 {
    font-size: 14px;
    margin-bottom: 5px;
}

.sub-heading {
    font-size: 2rem;
}

::-moz-selection {
    color: #fff;
}

::selection {
    color: #fff;
}


/*========================================
   3.2 DROP CAPS
==========================================*/

.drop-cap:first-letter {
    float: left;
    padding-top: 5px;
    padding-right: 15px;
    color: #34495E;
    font-size: 3em;
    line-height: 0.8em;
    text-transform: uppercase;
}

.dark-bg .drop-cap:first-letter {
    color: #fff;
}


/*========================================
   3.3 HIGHLIGHTS
==========================================*/

mark {
    padding-left: 3px;
    padding-right: 3px;
    color: #fff;
}

.label-default {
    color: inherit;
    background: rgba(0, 0, 0, 0.08);
}

.label-warning {
    color: inherit;
    background: #efd56b;
}

.label-info {
    color: inherit;
    background: #A1E4FE;
}

.label-success {
    color: inherit;
    background: #7CE1A7;
}

.label-inverse {
    background: #252525;
}


/*========================================
   3.4 LISTS
==========================================*/

.list,
.icon-list,
.styled-icon-list {
    padding-left: 40px;
    margin-bottom: 20px;
    font-size: 1rem;
    text-align: left;
}

.styled-icon-list {
    padding-left: 0px;
}

ol.list {
    list-style: decimal;
}

ol.list ol.list {
    margin-bottom: 0px;
}

ul.list li:before {
    content: "";
    display: inline-block;
    position: relative;
    left: -15px;
    top: -3px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
}

.icon-list i {
    margin-right: 10px;
}

.styled-icon-list li {
    margin-bottom: 10px;
}

.styled-icon-list .icon {
    float: left;
    margin-right: 10px;
}

.list-content {
    display: table-cell;
    height: 40px;
    text-align: left;
    vertical-align: middle;
}


/*========================================
   3.5 BLOCKQUOTE
==========================================*/

blockquote {
    margin-left: 50px;
    margin-bottom: 20px;
    padding-left: 15px;
}

.author {
    display: block;
    text-align: right;
}


/*========================================
   3.6 COLUMNS
==========================================*/

.col-3,
.col-4,
.col-6,
.col-8,
.col-9,
.col-12,
.col-9+.col-3 {
    display: inline-block;
    padding-left: 10px;
    padding-right: 10px;
    font-size: 1rem;
    vertical-align: top;
    width: 100%;
}

.col-3 img,
.col-4 img,
.col-6 img,
.col-8 img,
.col-9 img,
.col-12 img {
    max-width: 100%;
}

.col-3 p,
.col-4 p,
.col-6 p,
.col-8 p,
.col-9 p,
.col-12 p {
    margin-bottom: 20px;
}

.text-center,
.text-right,
.text-left {
    text-align: center;
}


/*========================================
   3.7 BREDCRUMBS
==========================================*/

.breadcrumbs {
    font-size: 1.3rem;
}

.breadcrumbs a {
    margin-right: 10px;
    margin-left: 10px;
}


/*========================================
   3.8 ICONS
==========================================*/

.icon {
    display: inline-block;
    border-radius: 50%;
    font-size: 1rem;
}

.icon i {
    display: table-cell;
    width: 40px;
    height: 40px;
    text-align: center;
    vertical-align: middle;
}

.dark-bg .icon i {
    color: #fff;
    border: solid 1px #fff;
}

a.icon:hover i {
    background: #fff;
    transition: 0.3s;
}


/*========================================
   3.9 MESSAGE BOXES
==========================================*/

.info-message,
.warning-message,
.success-message,
.error-message {
    position: relative;
    padding: 20px;
    padding-left: 100px;
    margin-bottom: 20px;
    font-size: 1.5rem;
    text-align: left;
}

.info-message:after,
.warning-message:after,
.success-message:after,
.error-message:after {
    content: "";
    position: absolute;
    left: 25px;
    top: 50%;
    width: 50px;
    height: 50px;
    margin-top: -25px;
    border-radius: 50%;
}

.info-message:before,
.warning-message:before,
.success-message:before,
.error-message:before {
    position: absolute;
    left: 25px;
    top: 50%;
    width: 50px;
    margin-top: -10px;
    font-family: FontAwesome;
    font-size: 20px;
    text-align: center;
}

.info-message {
    color: #2980b9;
    border: solid 1px #2980b9;
}

.info-message:after {
    border: solid 1px #2980b9;
}

.info-message:before {
    content: "\f129";
}

.warning-message {
    color: #f39c12;
    border: solid 1px #f39c12;
}

.warning-message:after {
    border: solid 1px #f39c12;
}

.warning-message:before {
    content: "\f071";
}

.success-message {
    color: #2ecc71;
    border: solid 1px #2ecc71;
}

.success-message:after {
    border: solid 1px #2ecc71;
}

.success-message:before {
    content: "\f00c";
}

.error-message {
    color: #e74c3c;
    border: solid 1px #e74c3c;
}

.error-message:after {
    border: solid 1px #e74c3c;
}

.error-message:before {
    content: "\f00d";
}


/*========================================
   3.10 TESTIMONIALS
==========================================*/

.testimonial-box {
    display: inline-block;
    max-width: 500px;
    margin: 20px;
    padding: 30px;
    background: #fff;
    font-size: 0px;
}

.testimonial-box img {
    display: block;
    width: 128px;
    height: 128px;
    margin: auto;
    border: 5px solid #fff;
    border-radius: 50%;
}

.testimonial-box:hover img {
    border: 0px solid #fff;
}

.testimonial {
    font-size: 1rem;
    text-align: center;
    vertical-align: top;
}

.testimonial span {
    display: block;
    margin-bottom: 5px;
    font-weight: 600;
}


/*========================================
   3.11 BUTTONS
==========================================*/

input[type=submit],
input[type=button],
input[type=reset],
button,
.btn {
    position: relative;
    z-index: 1;
    padding: 15px 30px;
    cursor: pointer;
    font-size: 1.2rem;
    text-transform: uppercase;
    background: transparent;
}

button:hover:before,
.btn:hover:before {
    width: 100%;
}

input[type=submit],
input[type=button],
input[type=reset],
button,
.standard-btn {
    color: #34495e;
    border: solid 1px #34495e;
}

input[type=submit]:hover,
input[type=button]:hover,
input[type=reset]:hover,
button:hover,
.standard-btn:hover {
    color: #fff;
}

button:before,
.standard-btn:before {
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
    width: 0px;
    height: 100%;
    z-index: -1;
    content: "";
    background: #34495e;
    transition: 0.3s;
}

input[type=submit]:hover,
input[type=button]:hover,
input[type=reset]:hover {
    background: #34495e;
}

.dark-bg input[type=submit],
.dark-bg input[type=button],
.dark-bg input[type=reset],
.dark-bg button,
.dark-bg .standard-btn {
    color: #fff;
    border: solid 1px #fff;
}

.dark-bg button:before,
.dark-bg .standard-btn:before {
    background: #fff;
}

.dark-bg input[type=submit]:hover,
.dark-bg input[type=button]:hover,
.dark-bg input[type=reset]:hover {
    background: #fff;
}

a.secondary-btn:hover {
    color: #fff;
}

a.secondary-btn:before {
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
    width: 0px;
    height: 100%;
    z-index: -1;
    content: "";
    transition: 0.3s;
}

.btn-container {
    display: inline-block;
    padding: 16px 0px;
    margin: 0px 16px;
    overflow: hidden;
}


/*========================================
   3.12 FORMS AND CONTROLS
==========================================*/

input[type=text],
input[type=email],
input[type=tel],
input[type=search],
input[type=password],
input[type=number],
input[type=date],
input[type=month],
input[type=week],
input[type=time],
input[type=datetime],
input[type=datetime-local],
input[type=color],
input[type=url],
input[type=file],
textarea,
select {
    display: block;
    height: 58px;
    width: 100%;
    margin-bottom: 20px;
    padding: 15px;
    background: transparent;
    border: 1px solid #2c3e50;
    outline: none;
    overflow: auto;
    font-family: "sourcesans", sans-serif;
    font-size: 20px;
}

.dark-bg input[type=text],
.dark-bg input[type=email],
.dark-bg input[type=tel],
.dark-bg input[type=search],
.dark-bg input[type=password],
.dark-bg input[type=number],
.dark-bg input[type=date],
.dark-bg input[type=month],
.dark-bg input[type=week],
.dark-bg input[type=time],
.dark-bg input[type=datetime],
.dark-bg input[type=datetime-local],
.dark-bg input[type=color],
.dark-bg input[type=url],
.dark-bg input[type=file],
.dark-bg textarea,
.dark-bg select {
    border: 1px solid #fff;
}

input,
textarea,
select {
    color: #2c3e50;
}

.dark-bg input,
.dark-bg textarea,
.dark-bg select {
    color: #fff;
}

input:focus,
textarea:focus,
select:focus {
    background: rgba(44, 62, 80, 0.08);
}

.dark-bg input:focus,
.dark-bg textarea:focus,
.dark-bg select:focus {
    background: rgba(255, 255, 255, 0.08);
}

form input[type=submit],
form input[type=button],
form input[type=reset],
form button {
    float: right;
}

input[type=submit]:active,
input[type=button]:active,
input[type=reset]:active,
button:active {
    top: 1px;
}

input[type=color],
input[type=range],
input[type=file],
input[type=radio],
input[type=checkbox],
select {
    cursor: pointer;
}

input[type=file] {
    height: auto;
    overflow: hidden;
}

.radio-button,
.checkbox,
.select-box,
.range-slider,
.file-input {
    display: block;
}

input[type=range] {
    -webkit-appearance: none;
    display: inline-block;
    width: 100%;
    height: 58px;
    width: calc(100% - 100px);
    margin: 0px;
    background: transparent;
    outline: none;
}

input[type=range]:focus {
    background: transparent;
}

input[type=range]::-webkit-slider-runnable-track {
    width: 100%;
    height: 15px;
    border: 1px solid #2c3e50;
}

.dark-bg input[type=range]::-webkit-slider-runnable-track {
    border: 1px solid #fff;
}

input[type=range]:focus::-webkit-slider-runnable-track {
    background: rgba(44, 62, 80, 0.08);
}

.dark-bg input[type=range]:focus::-webkit-slider-runnable-track {
    background: rgba(255, 255, 255, 0.08);
}

input[type=range]::-webkit-slider-thumb {
    -webkit-appearance: none;
    height: 58px;
    width: 30px;
    background: #2c3e50;
    margin-top: -20.85px;
}

.dark-bg input[type=range]::-webkit-slider-thumb {
    background: #fff;
}

input[type=range]::-moz-range-track {
    width: 100%;
    height: 15px;
    background: transparent;
    border: 1px solid #2c3e50;
}

.dark-bg input[type=range]::-moz-range-track {
    border: 1px solid #fff;
}

input[type=range]:focus::-moz-range-track {
    background: rgba(44, 62, 80, 0.08);
}

.dark-bg input[type=range]:focus::-moz-range-track {
    background: rgba(255, 255, 255, 0.08);
}

input[type=range]::-moz-range-thumb {
    border: none;
    height: 58px;
    width: 30px;
    border-radius: 0;
    background: #2c3e50;
}

.dark-bg input[type=range]::-moz-range-thumb {
    background: #fff;
}

input[type=range]::-ms-track {
    width: 100%;
    height: 20px;
    background: transparent;
    border: 1px solid #2c3e50;
    color: transparent;
}

.dark-bg input[type=range]::-ms-track {
    border: 1px solid #fff;
}

input[type=range]::-ms-fill-lower {
    background: transparent;
}

input[type=range]::-ms-fill-upper {
    background: transparent;
}

input[type=range]::-ms-thumb {
    border: none;
    height: 58px;
    width: 30px;
    background: #2c3e50;
}

.dark-bg input[type=range]::-ms-thumb {
    background: #fff;
}

input[type=range]:focus::-ms-fill-lower {
    background: rgba(44, 62, 80, 0.08);
}

.dark-bg input[type=range]:focus::-ms-fill-lower {
    background: rgba(255, 255, 255, 0.08);
}

input[type=range]:focus::-ms-fill-upper {
    background: rgba(44, 62, 80, 0.08);
}

.dark-bg input[type=range]:focus::-ms-fill-upper {
    background: rgba(255, 255, 255, 0.08);
}

.range-slider {
    position: relative;
    font-size: 0px;
}

.range-slider:after {
    content: "";
    position: absolute;
    top: 26px;
    right: 80px;
    height: 23px;
    width: 1px;
    background: #2c3e50;
}

.dark-bg .range-slider:after {
    background: #fff;
}

.range-slider:before {
    content: "";
    position: absolute;
    bottom: 0px;
    right: 80px;
    height: 23px;
    width: 1px;
    background: #2c3e50;
}

.dark-bg .range-slider:before {
    background: #fff;
}

.range-slider span {
    display: block;
    font-size: 1.25rem;
}

.range-value {
    display: inline-block;
    position: absolute;
    bottom: 0;
    right: 0;
    width: 80px;
    margin-top: 0;
    padding: 18px;
    color: #2c3e50;
    line-height: 20px;
    font-size: 1.2rem;
    text-align: center;
    border: 1px solid #2c3e50;
    border-left: none;
}

.dark-bg .range-value {
    color: #fff;
    border: 1px solid #fff;
    border-left: none;
}

.range-value:after {
    content: "";
    position: absolute;
    top: 50%;
    left: -6px;
    height: 10px;
    width: 10px;
    margin-top: -5px;
    border-left: 1px solid #2c3e50;
    border-bottom: 1px solid #2c3e50;
    transform: rotate(45deg);
}

.dark-bg .range-value:after {
    border-left: 1px solid #fff;
    border-bottom: 1px solid #fff;
}

.range-value:before {
    content: "";
    position: absolute;
    bottom: 19px;
    right: 98px;
    height: 17px;
    width: 1px;
    background: #2c3e50;
}

select {
    -webkit-appearance: none;
    -moz-appearance: none;
    -ms-appearance: none;
    appearance: none;
    width: 100%;
}

option {
    background: #2c3e50;
    color: #fff;
}

.optional-select-box-label {
    background: #bdc3c7;
}

.required-select-box-label {
    display: none;
}

.dark-bg option {
    background: #fff;
    color: #2c3e50;
}

.select-box:after {
    content: "\f04b";
    position: absolute;
    top: 5px;
    right: -3px;
    height: 50px;
    width: 58px;
    padding: 13px 22px;
    background: #2c3e50;
    color: #fff;
    font-family: FontAwesome;
    transform: rotate(90deg);
    pointer-events: none;
}

.dark-bg .select-box:after {
    color: #2c3e50;
    background: #fff;
}

textarea {
    height: 214px;
    resize: none;
}

label {
    display: none;
    font-size: 1.25rem;
    position: relative;
    margin-bottom: 5px;
    text-align: left;
}


/*========================================
   3.13 ICON BOXES
==========================================*/

.icon-boxes {
    position: relative;
    margin: auto;
    max-width: 785px;
}

.icon-boxes:after {
    display: none;
    content: "";
    position: absolute;
    top: 100px;
    left: calc(50% - 460px);
    width: 920px;
    margin: auto;
    z-index: -1;
}

.icon-box {
    display: inline-block;
    width: 200px;
    padding: 0px;
    margin-bottom: 50px;
    font-size: 1rem;
    vertical-align: top;
}

.icon-box:last-child {
    margin-bottom: 0px;
}

.icon-box i {
    display: table-cell;
    width: 200px;
    height: 200px;
    font-size: 100px;
    color: #fff;
    vertical-align: middle;
    transition: 0.3s;
}

.icon-box .fa:before {
    transition: 0.3s;
}

.icon-box:hover i {
    font-size: 120px;
}

.icon-box h3 {
    margin-top: 20px;
}


/*========================================
   3.14 NAVIGATION
==========================================*/

.navigation {
    position: absolute;
    z-index: 1000;
    width: 100%;
    height: 74px;
}

.navigation .wrapper {
    padding: 0px;
}

.navigation-logo {
    float: left;
    padding: 10px 0px 0px 0px;
}

.navigation-logo {
    font-size: 2.813rem;
    margin-bottom: 10px;
    text-transform: uppercase;
}

.navigation-logo img {
    max-height: 50px;
}

.navigation .btn-container {
    display: none;
    margin: 0px;
    padding: 9px 0;
}

.navigation .btn-container a {
    padding: 15px 30px;
}

.navigation .btn-container a:hover {
    background: transparent;
}


/* CUSTOMIZING FORMSTONE NAVIGATION PLUGIN */

.fs-navigation-toggle-handle.fs-navigation-enabled {
    height: 60px;
    box-shadow: 0px 2px 8px 0px rgba(50, 50, 50, 0.5);
    border: none;
}

.fs-navigation-handle.fs-navigation-enabled:after {
    height: 4px;
    width: 32px;
    right: 30px;
    background: #fff;
    box-shadow: 0px 10px 0px #fff, 0px -10px 0px #fff;
}

.fs-navigation-handle.fs-navigation-open:after {
    width: 15px;
    height: 15px;
    padding-right: 30px;
    background: transparent;
    box-shadow: none;
    color: #fff;
    font-size: 60px;
    line-height: 15px;
    font-weight: 900;
}

.fs-navigation-toggle-nav.fs-navigation-enabled {
    border: none;
    width: 100%;
    text-align: left;
    box-shadow: 0px 2px 8px 0px rgba(50, 50, 50, 0.5);
    max-height: calc(100vh - 60px);
    overflow: auto;
}


/* --------------------------------------
=========================================
   4. SECTIONS
=========================================
-----------------------------------------*/


/*========================================
   4.1 SECTIONS GLOBAL STYLING, WRAPPER, COLOR OVERLAY AND LINE
==========================================*/

section,
header {
    background: center fixed;
    background-size: cover;
}

.wrapper {
    position: relative;
    max-width: 1200px;
    margin: auto;
    padding-top: 75px;
    padding-bottom: 75px;
    padding-left: 20px;
    padding-right: 20px;
    font-size: 0px;
}

.color-overlay {
    background: rgba(0, 0, 0, 0.7);
}

.main-line {
    height: 2px;
    width: 75px;
    margin: auto;
    margin-bottom: 50px;
    margin-top: 25px;
}


/*========================================
   4.2 SECTION: HOME
==========================================*/

.home {
    position: relative;
    background-color: #ffffff;
}

.home .wrapper {
    padding-top: 420px;
    padding-bottom: 0px;
}

.home h1 {
    margin-bottom: 10px;
}

.home .sub-heading {
    margin-bottom: 35px;
}

.banner__btn {
    width: 200px;
    background-color: #3498db;
    color: white;
    padding: 20px 10px;
    margin: 10px;
    border-radius: 5px;
    font-size: 18px;
    font-weight: 600;
}

.banner__btn:hover {
    background-color: #30698f;
}


/*========================================
   4.3 SECTION: ABOUT
==========================================*/

.about {
    background: #fff;
}

.about .wrapper>.col-6 {
    width: 100%;
}


/*========================================
   4.4 SECTION: STATISTICS
==========================================*/

.statistics {
    background-image: url(../images/statistics.jpg);
    background-color: #2c3e50;
}

.statistics .statistic {
    margin-bottom: 100px;
    text-align: center;
}

.statistic:last-child {
    margin-bottom: 0px;
}

.statistic i {
    display: block;
    font-size: 40px;
}

.statistic span {
    display: block;
    font-size: 80px;
    font-weight: 900;
}


/*========================================
   4.5 SECTION: OUR CUSTOMERS
==========================================*/

.customers {
    background-image: url(../images/customers.jpg);
    background-color: #2c3e50;
}

.customers img {
    display: inline-block;
    max-height: 100px;
    max-width: calc(100% - 40px);
    margin: 20px 20px;
    opacity: 0.8;
    vertical-align: middle;
}

.customers img:hover {
    opacity: 1;
}


/*========================================
   4.6 SECTION: PORTFOLIO
==========================================*/

.portfolio-filters li {
    display: inline-block;
    margin: 20px;
    margin-top: 0px;
    font-size: 20px;
}

.portfolio-filters li {
    cursor: pointer;
}

.portfolio .wrapper {
    padding-left: 0px;
    padding-right: 0px;
}

.single-project {
    position: relative;
    display: inline-block;
    max-width: 100%;
    font-size: 0px;
}

.touch .single-project {
    border: 10px solid #ecf0f1;
}

.single-project.inactive {
    visibility: hidden;
    background: 000;
}

.single-project img,
.single-project .project {
    width: 300px;
    height: 300px;
    display: block;
    float: left;
}

.single-project:hover img,
.single-project:hover .project {
    opacity: 0;
}

.single-project img,
.single-project .project {
    opacity: 1;
    max-width: 100%;
    padding: 70px 20px;
}

.touch .single-project:hover img {
    opacity: 1;
}

.single-project a {
    display: block;
    position: absolute;
    top: 0;
    height: 100%;
    padding: 40px;
}

.touch .single-project a {
    display: inline;
    position: static;
    padding: 0;
}

.project-details-conainer {
    display: table;
    height: 100%;
    opacity: 0;
}

.touch .project-details-conainer {
    display: block;
    height: auto;
    opacity: 1;
}

.project-details {
    display: table-cell;
    vertical-align: middle;
    color: #fff;
}

.touch .project-details {
    display: block;
}

.single-project:hover .project-details-conainer {
    opacity: 1;
    transition: 1.6s;
}

.project-details-conainer:after {
    content: "";
    position: absolute;
    top: 20px;
    right: 20px;
    height: 0px;
    width: 1px;
    background: #fff;
    transition: 0.5s;
    -webkit-transition-delay: 0.5s;
    transition-delay: 0.5s;
}

.single-project:hover .project-details-conainer:after {
    height: calc(100% - 40px);
}

.project-details-conainer:before {
    content: "";
    position: absolute;
    bottom: 20px;
    left: 20px;
    height: 0px;
    width: 1px;
    background: #fff;
    transition: 0.5s;
    -webkit-transition-delay: 0.5s;
    transition-delay: 0.5s;
}

.single-project:hover .project-details-conainer:before {
    height: calc(100% - 40px);
}

.project-details:after {
    content: "";
    position: absolute;
    top: 20px;
    right: 20px;
    height: 1px;
    width: 0;
    background: #fff;
    transition: 0.5s;
    -webkit-transition-delay: 0.5s;
    transition-delay: 0.5s;
}

.single-project:hover .project-details:after {
    width: calc(100% - 40px);
}

.project-details:before {
    content: "";
    position: absolute;
    bottom: 20px;
    left: 20px;
    height: 1px;
    width: 0px;
    background: #fff;
    transition: 0.5s;
    -webkit-transition-delay: 0.5s;
    transition-delay: 0.5s;
}

.single-project:hover .project-details:before {
    width: calc(100% - 40px);
}

.touch .project-details-conainer:after,
.touch .project-details-conainer:before,
.touch .project-details:after,
.touch .project-details:before {
    content: normal;
}

.single-project h3 {
    text-transform: uppercase;
}

.touch .single-project h3 {
    padding-top: 20px;
}

.single-project p {
    font-size: 1.2rem;
    max-width: 100%;
}

.touch .single-project p {
    width: 300px;
    padding: 20px;
    padding-top: 0px;
}

.touch .single-project p:after {
    content: "\f08e";
    display: block;
    width: 50px;
    height: 50px;
    padding: 15px;
    margin: auto;
    margin-top: 15px;
    color: #fff;
    font-size: 20px;
    font-family: FontAwesome;
    border: solid 1px #fff;
    border-radius: 50%;
}


/*========================================
   4.7 SECTION: CALL TO ACTION
==========================================*/

.call-to-action {
    background-image: url(../images/call-to-action.jpg);
    background-color: #2c3e50;
}

.call-to-action p {
    margin-bottom: 50px;
    font-size: 25px;
}


/*========================================
   4.8 SECTION: PRICING
==========================================*/

.pricing {
    overflow-x: hidden;
}

.package {
    display: inline-block;
    position: relative;
    overflow: hidden;
    width: 100%;
    padding-bottom: 35px;
    margin-bottom: 75px;
    font-size: 1rem;
    overflow: hidden;
    background: #fff;
}

.package:last-child:not(#foo) {
    margin-bottom: 0px;
}

.circular-pricing-table {
    position: relative;
    min-height: 1225px;
}

.circular-pricing-table .package {
    position: absolute;
    left: 50%;
    width: 350px;
    height: 350px;
    margin-left: -175px;
    margin-bottom: 75px;
    border-radius: 50%;
}

.circular-pricing-table .main-package {
    width: 400px;
    height: 400px;
    margin-left: -200px;
    top: 425px;
}

.circular-pricing-table .package:last-child {
    top: 875px;
}

.package-header {
    position: relative;
    margin-top: -10px;
    margin-bottom: 20px;
    padding-top: 20px;
    padding-bottom: 10px;
    background: #34495e;
}

.package-header:after {
    display: block;
    position: absolute;
    left: calc(50% - 20px);
    bottom: -20px;
    content: "";
    width: 0px;
    height: 0px;
    border-left: 20px solid transparent;
    border-right: 20px solid transparent;
    border-top: 20px solid #34495e;
}

.package-header span {
    font-size: 2em;
}

.package-features li {
    padding: 12px;
}

.package .btn-container {
    margin-top: 25px;
}

.circular-pricing-table .package .btn-container {
    margin-top: 0px;
    padding-top: 5px;
}

.package .btn-container a {
    font-size: 1rem;
}

.main-package {
    z-index: 2;
}

.circular-pricing-table .main-package {}

.main-package .package-header {
    padding: 10px;
}

.package-header h3 {
    margin-top: 20px;
    margin-bottom: 0px;
}


/*========================================
   4.9 SECTION: SUBSCRIBE
==========================================*/

.subscribe {
    background-image: url(../images/subscribe.jpg);
    background-color: #2c3e50;
}

.subscribe input[type=email] {
    display: inline-block;
    width: 100%;
    margin-right: 0;
}

.subscribe button {
    float: none;
}


/*========================================
   4.10 SECTION: TEAM
==========================================*/

.team .wrapper {
    max-width: 600px;
}

.single-member {
    display: inline-block;
    position: relative;
    height: 440px;
    width: 250px;
    margin-left: 15px;
    margin-right: 15px;
    margin-bottom: 50px;
    vertical-align: top;
    padding-top: 20px;
}

.touch .single-member {
    height: auto;
}

.single-member:last-child {
    margin-bottom: 0px;
}

.single-member img,
.single-member p {
    position: absolute;
    left: 0;
    max-width: 100%;
    color: rgba(255, 255, 255, 0.88);
    height: auto;
    padding-left: 20px;
    padding-right: 20px;
}

.touch .single-member img:not(#foo) {
    position: static;
    opacity: 1;
}

.single-member:hover p {
    opacity: 0;
}

.member-info {
    position: absolute;
    bottom: 0px;
    padding: 20px;
    background: #fff;
    font-size: 1rem;
    width: 100%;
}

.touch .member-info {
    position: static;
}

.single-member ul {
    height: 0;
    overflow: hidden;
}

.touch .single-member p:not(#foo) {
    height: auto;
    margin-bottom: 15px;
}

.single-member:hover ul {
    height: 315px;
    transition: 0.3s;
}

.single-member span {
    display: block;
    margin-bottom: 15px;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.55);
    font-size: 1rem;
}

.single-member h5 {
    color: white;
}

.single-member .member-info span,
.single-member .member-info h5 {
    color: black;
}

.single-member p,
.single-member ul {
    font-size: 1rem;
}

.single-member a {
    font-size: 13px;
}

.single-member a:hover {
    color: red;
}


/*========================================
   4.11 SECTION: SKILLS
==========================================*/

.skills {
    background: #fff;
}

.skills .wrapper {
    max-width: 640px;
    padding-bottom: 0px;
}

.skill {
    display: inline-block;
    width: 200px;
    margin-right: 30px;
    margin-left: 30px;
    margin-bottom: 75px;
}

.progress-pie-chart {
    position: relative;
    width: 200px;
    height: 200px;
    background-color: #E5E5E5;
    border-radius: 50%;
}

.ppc-progress {
    content: "";
    position: absolute;
    border-radius: 50%;
    left: calc(50% - 100px);
    top: calc(50% - 100px);
    width: 200px;
    height: 200px;
    clip: rect(0, 200px, 200px, 100px);
}

.ppc-progress .ppc-progress-fill {
    content: "";
    position: absolute;
    border-radius: 50%;
    left: calc(50% - 100px);
    top: calc(50% - 100px);
    width: 200px;
    height: 200px;
    clip: rect(0, 100px, 200px, 0);
    transform: rotate(60deg);
}

.gt-50 .ppc-progress {
    clip: rect(0, 100px, 200px, 0);
}

.gt-50 .ppc-progress .ppc-progress-fill {
    clip: rect(0, 200px, 200px, 100px);
    background: #E5E5E5;
}

.ppc-percents {
    content: "";
    position: absolute;
    border-radius: 50%;
    left: calc(50% - 173.913px/2);
    top: calc(50% - 173.913px/2);
    width: 173.913px;
    height: 173.913px;
    background: #fff;
    text-align: center;
    display: table;
}

.ppc-percents span {
    display: block;
    font-size: 50px;
    font-weight: bold;
}

.pcc-percents-wrapper {
    display: table-cell;
    vertical-align: middle;
}

.skill h3 {
    margin-top: 30px;
    margin-bottom: 0px;
    vertical-align: top;
}


/*========================================
   4.12 SECTION: CONTACT
==========================================*/

.contact {
    background-image: url(../images/contact.jpg);
    background-color: #2c3e50;
}

.contact .wrapper {
    max-width: 900px;
}

.contact .styled-icon-list {
    display: inline-block;
    margin-bottom: 55px;
}

.contact .styled-icon-list li {
    margin-right: 0;
    margin-bottom: 40px;
}

.contact .styled-icon-list li:last-child {
    margin-bottom: 0;
}

.contact .styled-icon-list p {
    display: inline-block;
}

.contact .styled-icon-list span {
    display: table-cell;
    height: 40px;
    vertical-align: middle;
}

.contact form {
    font-size: 0px;
    text-align: left;
}

.contact form .col-6 {
    width: 100%;
}


/* --------------------------------------
=========================================
   5. PAGES SPECIFIC CSS
=========================================
-----------------------------------------*/


/*========================================
   5.1 SECTION: PAGE HEADER
==========================================*/

.page-header {
    background-image: url(../images/page-header.jpg);
    background-color: #2c3e50;
    background-position: top;
}

.page-header .wrapper {
    padding-top: 127px;
    padding-bottom: 50px;
}

.page-header .main-line {
    margin-bottom: 0px;
}


/*========================================
   5.2 SINGLE PORTFOLIO
==========================================*/

.informations-table {
    background: #fff;
    text-align: left;
    padding: 20px;
}

.informations-table div {
    margin-bottom: 15px;
}

.informations-table div:last-child {
    margin-bottom: 0px;
}

.informations-table span {
    display: inline-block;
    min-width: 50px;
}

.informations-table+.btn-container {
    margin-left: 0;
}


/*========================================
   5.3 404 AND SEND MAIL PAGES
==========================================*/

.not-found-header {
    background-image: url(../images/404.jpg);
    background-color: #2c3e50;
}

.send-mail-header {
    background-image: url(../images/page-header.jpg);
    background-color: #2c3e50;
}

.not-found-header .wrapper,
.send-mail-header .wrapper {
    display: table;
    height: 100vh;
    min-height: 550px;
    max-width: 650px;
    padding: 0 10px;
}

.not-found,
.send-mail {
    display: table-cell;
    vertical-align: middle;
}

.not-found h1 {
    font-size: 14rem;
}


/* --------------------------------------
=========================================
   6 FOOTER
=========================================
-----------------------------------------*/

footer {
    position: relative;
    padding: 60px;
    padding-top: 75px;
    background: #2c3e50;
}

.back-to-top {
    position: absolute;
    top: -40px;
    left: 50%;
    margin-left: -50px;
    background: #2c3e50;
    border: solid #2c3e50 10px;
}

footer .back-to-top i {
    width: 80px;
    height: 80px;
    font-size: 30px;
}

.social-navigation {
    margin-bottom: 20px;
}

.social-navigation li {
    display: inline-block;
    margin: 5px;
}

.banner img {
    width: 100%;
}

ul.fa_before .fa:before {
    font-size: 1.3em;
    margin-right: 10px;
}

ul.style1,
ul.style2 {
    margin: 0;
    padding: 0;
    list-style: none;
}

ul.style1 li {
    border-top: solid 1px rgb(0, 0, 0);
    border-bottom: 1px solid rgba(255, 255, 255, 0.07);
    padding: 0.80em 0;
}

ul.style1 li:first-child {
    border-top: 0;
    padding-top: 0;
}

ul.style1 li:last-child {
    border-bottom: 0;
}

ul.style1 li a,
ul.style1 li a {
    text-decoration: none;
}

ul.style1 li a:hover,
ul.style1 li a:hover {
    text-decoration: none;
}

ul.style1,
ul.style1 {
    text-align: left;
}

ul.style2 li {
    border-top: solid 1px #E5E5E5;
    padding: 0.80em 0;
}

ul.style2 li:first-child {
    border-top: 0;
    padding-top: 0;
}

ul.style2 li a,
ul.style1 li a {
    text-decoration: none;
}

ul.style2 li a:hover,
ul.style1 li a:hover {
    text-decoration: none;
}

ul.style1,
ul.style2 {
    text-align: left;
}

@media screen and (max-width: 991px) {
    h1 {
        font-size: 1.213rem;
    }
    .call-to-action p {
        margin-bottom: 25px;
        font-size: 16px;
        line-height: 22px;
    }
    .navigation-logo {
        padding: 25px;
    }
    h3 {
        font-size: 1.1rem;
    }
    ul.fa_before .fa::before {
        font-size: 0.8em;
    }
}