/* ---------------------------- HTML5 tags reset -------------------------- */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, main {
    display: block;
}

/* ---------------------------- Default values ---------------------------- */
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, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li,
fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,  figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
}
* {
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
}
body {
    font-family: 'Open Sans', sans-serif;
    font-weight: 300;
    font-size: 1.125em;
    line-height: 1.5;
    color: #333;
}
header {
    padding: 25px 0;
}
footer {
    padding: 10px 0;
}
header,
footer {
    text-align: center;
}
footer {
    background-color: #0c4056;
}
header {
    background: #0c4056 url('../img/header-background.png')  no-repeat center right;
}
h1 {
    font-size: 2em;
    margin: 20px 0 0;
    text-align: center;
}
h2 {
    font-size: 1.4em;
}

p {
    text-align: justify;
    margin-bottom: 1em;
}
a {
    color: #333;
    text-decoration: none;
}
a:hover, a:focus {
    color: #999;
    text-decoration: none;
}
a:active, a:visited, a:focus {
    outline: none;
}
.banner {
    text-align: center;
    border-bottom: 1px solid #ccc;
}
.banner img {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 0 auto;
}
.contact,
.map {
    width: 50%;
    float: right;
}
main:after {
    content: " ";
    display: block;
    width: 0;
    height: 0;
    clear: both;
}
.contact {
    padding: 10px 0 30px 20px;
}
.contact,
.contact h1 {
    text-align: left;
    padding: 10px 0 30px 20px;
}
.contact span {
    display: block;
    margin: 10px 15px;
}
.company {
    font-weight: 600;
    color: #2a90ba;
}
.phone:before,
.fax:before,
.mail:before,
.address:before {
    font-family: FontAwesome;
    color: #2a90ba;
    margin-right: 8px;
    font-size: 1.7em;
    display: inline-block;
    width: 40px;
    text-align: center;
}
.phone:before {
    content: "\f095";
}
.fax:before {
    content: "\f1ac";
}
.mail:before {
    content: "\f0e0";
}
.address:before {
    content: "\f041";
}
.map iframe {
    max-width: 100%;
    display: block;
    margin: 0 auto;
}
.copyright {
    color: #fff;
    font-size: 0.7em;
}

/* Responsive */
@media screen and (max-width: 1000px) {
    .contact,
    .map {
        float: none;
        width: 100%;
    }
    .contact,
    .contact h1 {
        text-align: center;
        padding: 10px;
    }
    header {
        background-image: none;
    }
}