/* ----------------------------------
#. HTML Body
---------------------------------- */

@import url(http://fonts.googleapis.com/css?family=Open+Sans:400,600,700);
* {
    -webkit-font-smoothing: antialiased;
}

img {
    border: none;
    max-width: 100%;
}

html,
body {
    margin: 0;
    padding: 0;
}

body {
    color: #888e95;
    font: 13px 'Open Sans', Helvetica, Arial, sans-serif;
}

.navbar {
    border-radius: 0;
    margin-bottom: 0;
}

.carousel {
    padding: 0;
}

strong {
    color: #66aef5;
}

hr {
    border: none;
    border-top: 1px solid #111;
}

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

.list li {
    background: url('../img/list.png') left center no-repeat;
    padding-left: 30px;
    margin-bottom: 10px;
}


/* ----------------------------------
#. General
---------------------------------- */

.clear {
    clear: both;
}


/* ----------------------------------
#. Typography
---------------------------------- */

.scroll-bar {
    width: 100%;
    height: 50px;
    overflow: scroll;
    background: #222222;
}

a {
    text-decoration: none;
    transition: color 0.3s ease;
    color: #66aef5;
}

p {
    line-height: 20px;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    color: #333;
    font-weight: 600;
}

i.fa {
    color: #941C1C;
}


/* ----------------------------------
#. Message
---------------------------------- */

.message {
    padding: 15px 25px;
    border: 1px solid transparent;
    border-radius: 3px;
    -moz-border-radius: 3px;
}

.message.error {
    color: #fff;
    border-color: #a4303d;
    box-shadow: inset 0 1px 1px #e47278;
    background-color: #e5435a;
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgb(229, 67, 90)), to(rgb(209, 66, 82)));
    background-image: -webkit-linear-gradient(top, rgb(229, 67, 90), rgb(209, 66, 82));
    background-image: -moz-linear-gradient(top, rgb(229, 67, 90), rgb(209, 66, 82));
    background-image: -o-linear-gradient(top, rgb(229, 67, 90), rgb(209, 66, 82));
    background-image: -ms-linear-gradient(top, rgb(229, 67, 90), rgb(209, 66, 82));
    background-image: linear-gradient(top, rgb(229, 67, 90), rgb(209, 66, 82));
    filter: progid: DXImageTransform.Microsoft.gradient(GradientType=0, StartColorStr='#e5435a', EndColorStr='#d14252');
}

.message.error ul {
    margin: 0;
    padding: 0;
}

.message.error ul li {
    padding: 2px 0;
    list-style: none;
}

.message.success {
    color: #fff;
    border-color: #466f29;
    box-shadow: inset 0 1px 1px #93ce86;
    background-color: #81cd62;
    background-image: -webkit-linear-gradient(top, rgb(129, 205, 98), rgb(120, 184, 73));
    background-image: -moz-linear-gradient(top, rgb(129, 205, 98), rgb(120, 184, 73));
    background-image: -o-linear-gradient(top, rgb(129, 205, 98), rgb(120, 184, 73));
    background-image: -ms-linear-gradient(top, rgb(129, 205, 98), rgb(120, 184, 73));
    background-image: linear-gradient(top, rgb(129, 205, 98), rgb(120, 184, 73));
    filter: progid: DXImageTransform.Microsoft.gradient(GradientType=0, StartColorStr='#81cd62', EndColorStr='#78b849');
}


/* ----------------------------------
#. Form
---------------------------------- */
.sidebar .g-recaptcha {
    transform: scale(0.7);
    transform-origin: left;
}
form label {
    display: block;
    margin: 5px 0 15px;
}

form input[type='text'],
form textarea {
    padding: 7px 10px;
    border: none;
    border: 1px solid #ccc;
}

form input[type='text']:focus,
form textarea:focus {
    border-color: #999;
}

form input[type='text'] {
    width: 200px;
    height: 34px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
}

form textarea {
    width: 100%;
    height: 100px;
    min-height: 100px;
    resize: vertical;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
}

form input[type='submit'] {
    margin-top: 15px;
    padding: 10px 15px;
    color: #fff;
    font-size: 13px;
    text-shadow: 0 1px 1px #2a063a;
    width: 202px;
    border-radius: 3px;
    -moz-border-radius: 3px;
    box-shadow: inset 0 1px 1px #F4A0A0;
    border: 1px solid #B10000;
    background: #F56666;
}

form input[type='submit']:hover {
    cursor: pointer;
}


/* ----------------------------------
#. Pattern Button
---------------------------------- */

.pattern-btn {
    margin-top: 15px;
    padding: 10px 15px;
    color: #fff;
    font-size: 13px;
    text-shadow: 0 1px 1px #2a063a;
    width: 246px;
    border-radius: 3px;
    -moz-border-radius: 3px;
    box-shadow: inset 0 1px 1px #F4A0A0;
    border: 1px solid #B10000;
    background: #F56666;
}

.pattern-btn a {
    padding: 0;
    margin: 0;
    color: #fff;
}


/* ----------------------------------
#. Container
---------------------------------- */

.bg {
    background: #f1f1f1;
}

.container.header {
    margin-bottom: 20px;
}

.box {
    padding: 10px;
}


/* ----------------------------------
#. Module
---------------------------------- */


/* ----------------------------------
#. Caption (top-header)
---------------------------------- */

.caption {
    padding: 0px;
    background: none;
    margin-bottom: 5px;
}

.caption form input[type='submit'] {
    width: 120px;
}

.caption form input[type='text'] {
    padding: 0 15px;
    height: 40px;
    width: 200px;
}

.caption form {
    float: right;
    margin-top: -9px;
}

.caption .social {
    float: left;
    margin-top: 7px;
}

.caption .social img {
    margin-right: 5px;
}


/* ----------------------------------
#. Header
---------------------------------- */

.header .contact {
    margin-top: 30px;
}

.header .contact h2 {
    color: #B53030;
    font-size: 30px;
    margin: 0;
}

.header .contact a {
    margin: 0;
    padding: 0;
    color: #B53030;
    font-size: 18px;
}

.header .contact a:hover {
    color: #000;
    text-decoration: none;
}


/* ----------------------------------
#. Navigation
---------------------------------- */

.navigation {
    background: #294890;
    box-shadow: inset 0 1px 1px #375aa9;
    border: 1px solid #1e3977;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
}

.navigation ul {
    margin: 0;
    padding: 0;
}

.navigation ul li {
    float: left;
    list-style: none;
}

.navigation ul li.first {
    border-left: none;
}

.navigation ul li.last {
    border-right: none;
}

.navigation ul li.has_children {
    position: relative;
}

.navigation ul li.has_children:hover ul {
    display: block;
}

.navigation ul li.has_children ul {
    display: none;
    position: absolute;
    top: 42px;
    left: -1px;
    z-index: 9999;
    background: #294890;
    border: 1px solid #1e3977;
    border-top: none;
    border-bottom-left-radius: 3px;
    border-bottom-right-radius: 3px;
    -moz-border-radius-bottomleft: 3px;
    -moz-border-radius-bottomright: 3px;
}

.navigation ul li.has_children ul li {
    border: none;
}

.navigation ul li.has_children ul li a {
    width: 120px;
}

.navigation ul li>a {
    display: block;
    padding: 12px 25px;
    font-weight: 600;
    color: #f1f1f1;
    transition: color 0.3s ease, background 0.3s ease;
}

.navigation ul li>a:hover,
.navigation ul li.current>a {
    color: #fff;
    background: #3059b5;
}


/* ----------------------------------
#. sidebar navigation
---------------------------------- */

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

.service-nav ul li a {
    padding: 10px 20px;
    display: block;
    font-weight: 600;
    color: #B10000;
}

.service-nav ul li a:hover,
.service-nav ul li.current>a {
    background: #FADADA;
}


/* ----------------------------------
#. Content
---------------------------------- */

.content .inner {
    margin-bottom: 20px;
    background: #fff;
}

.content .inner hr {
    border: 1px dotted #ccc;
}

.content .inner h1 {
    margin-top: 0;
    font-size: 24px;
}

.content .inner .inner-header {
    padding: 15px 30px;
    background: #DA0000;
    box-shadow: inset 0 1px 1px #F01818;
    border: 1px solid #941C1C;
    border-bottom: none;
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
    -moz-border-radius-topleft: 3px;
    -moz-border-radius-topright: 3px;
}

.content .inner .inner-header h1 {
    margin: 0;
    color: #fff;
    font-size: 18px;
}

.content .inner .inner-header h2 {
    margin: 0;
    color: #fff;
    font-size: 18px;
}

.content .inner .inner-header h3 {
    margin: 0;
    padding: 0;
    color: #fff;
    font-size: 15px;
}

.content .inner .inner-inner {
    padding: 20px 30px;
    border: 1px solid #e7e7e7;
    border-bottom-left-radius: 3px;
    border-bottom-right-radius: 3px;
    -moz-border-radius-bottomleft: 3px;
    -moz-border-radius-bottomright: 3px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}


/* ----------------------------------
#. Sidebar
---------------------------------- */

.content .sidebar .mod h2 {
    color: #fff;
    padding: 0;
    margin: 0;
}

.content .sidebar .mod .inner .inner-inner img {
    margin: 5px 2px;
}

.content .sidebar .mod .inner .inner-inner {
    padding: 5px 20px 10px;
}

.content .sidebar .mod .inner .inner-inners {
    padding: 0;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.content .sidebar .mod .inner {
    margin-top: 0;
    border-bottom-left-radius: 3px;
    border-bottom-right-radius: 3px;
    -moz-border-radius-bottomleft: 3px;
    -moz-border-radius-bottomright: 3px;
    margin-bottom: 20px;
}

.content .sidebar .mod .inner .inner-header {
    padding: 10px 20px;
    background: #DA0000;
    box-shadow: inset 0 1px 1px #F01818;
    border: 1px solid #941C1C;
    border-bottom: none;
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
    -moz-border-radius-topleft: 3px;
    -moz-border-radius-topright: 3px;
}

.content .sidebar .mod .inner .inner-header i {
    color: #fff;
}

.content .sidebar h2 {
    margin-top: 0;
}

.content .sidebar form input[type='text'],
.content .sidebar form textarea {
    width: 180px;
    border: none;
    border: 1px solid #ccc;
}

.content.full-width .inner {
    width: 880px;
}

.content.full-width .sidebar {
    display: none;
}

.col ul {
    list-style: none;
    padding: 0;
    margin: 0;
    margin-top: 20px;
}

.col ul li .inner .inner-inner {
    padding: 30px;
}


/* ----------------------------------
#. Services
---------------------------------- */

.services h2 {
    padding: 0;
    margin: 0;
    color: #fff;
}

.services ul {
    margin: 0;
    padding: 0;
}

.services ul li {
    list-style: none;
    float: left;
    width: 185px;
    height: 140px;
    margin-right: 15px;
    margin-bottom: 15px;
    background-size: 150%;
    background-position: center top;
    background-repeat: no-repeat;
    overflow: hidden;
    border-radius: 3px;
    -moz-border-radius: 3px;
}

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

.services ul li .overlay {
    display: none;
    width: 100%;
    height: 100%;
    padding: 23% 0;
    text-align: center;
    background: url('../img/overlay.png');
}

.services ul li .overlay a {
    display: inline-block;
    padding: 7px 10px;
    color: #fff;
    text-transform: uppercase;
    font-weight: 600;
    border: 2px solid #fff;
}


/* ----------------------------------
#. Gallery
---------------------------------- */

.gallery {
    margin: 0;
    padding: 0;
}

.gallery li {
    list-style: none;
    float: left;
    width: 138px;
    height: 140px;
    margin-right: 10px;
    margin-bottom: 10px;
    overflow: hidden;
}

.gallery li.last {
    margin-right: 0;
}

.gallery li img {
    max-width: 100%;
    min-height: 100%;
}


/* ----------------------------------
#. Extra
---------------------------------- */

.extra {
    display: none;
    text-align: center;
    background: #000;
}

.extra ul {
    margin: 0;
    padding: 0;
}

.extra ul li {
    display: inline-block;
    padding: 3px 5px;
}

.extra ul li a {
    color: #999;
    text-shadow: 0 1px 1px #000;
}


/* ----------------------------------
#. Footer
---------------------------------- */

.footer {
    color: #fff;
    position: relative;
    background: #222;
    padding: 30px 0;
}

.footer ul {
    padding: 0;
}

.footer ul li {
    margin-bottom: 10px;
}

.footer #toggle {
    padding: 7px 10px;
    position: absolute;
    width: 70px;
    left: 50%;
    top: -15px;
    margin-left: -46px;
    text-align: center;
    border: 1px solid #000;
    border-radius: 3px;
    -moz-border-radius: 3px;
    box-shadow: inset 0 1px 1px #555, 0 1px 3px #333;
    background-color: #383838;
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgb(56, 56, 56)), to(rgb(48, 48, 48)));
    background-image: -webkit-linear-gradient(top, rgb(56, 56, 56), rgb(48, 48, 48));
    background-image: -moz-linear-gradient(top, rgb(56, 56, 56), rgb(48, 48, 48));
    background-image: -o-linear-gradient(top, rgb(56, 56, 56), rgb(48, 48, 48));
    background-image: -ms-linear-gradient(top, rgb(56, 56, 56), rgb(48, 48, 48));
    background-image: linear-gradient(top, rgb(56, 56, 56), rgb(48, 48, 48));
    filter: progid: DXImageTransform.Microsoft.gradient(GradientType=0, StartColorStr='#383838', EndColorStr='#303030');
}

.footer #toggle:hover {
    cursor: pointer;
}

.footer .column {
    color: #aaa;
    float: left;
    width: 280px;
    margin-right: 20px;
}

.footer .column.last {
    margin-right: 0;
}

.footer .column h3 {
    color: #fff;
}

.footer .column ul {
    margin: 0;
    padding: 0;
}

.footer .column ul li {
    list-style: none;
}

.footer .column ul li.has_children ul {
    display: none;
}

.footer .column ul li a {
    display: block;
    padding: 2px 0;
    color: #aaa;
}

.footer h3 {
    color: #EFEFEF;
}

.footer a {
    color: #EFEFEF;
    text-decoration: none;
}

.footer ul li {
    list-style: none;
}

.ball {
    width: 70px;
    height: 26px;
    background: url('../img/edm-logo.png');
    display: inline-block;
    /* float: right; */
}

.ball:hover {
    background-position-y: 26px;
}

.call-top {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 15px;
}

.header .contact .call-top a {
    margin-left: 20px;
    display: block;
}

.header .contact i {
    margin-right: 10px;
}

.content.module {
    padding-top: 30px;
}


/* Smartphones (portrait and landscape) ----------- */

@media only screen and (max-width: 767px) {
    /* Styles */
    .container.header {
        margin-bottom: 0px;
    }
}