/* Base CSS */

@font-face {
    font-family: 'BMWGroup-Bold';
    src: url('../fonts/BMWGroup-Bold.eot?#iefix') format('embedded-opentype'), url('../fonts/BMWGroup-Bold.woff') format('woff'), url('../fonts/BMWGroup-Bold.ttf') format('truetype'), url('../fonts/BMWGroup-Bold.svg#BMWGroup-Bold') format('svg');
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: 'BMWGroupLight-Regular';
    src: url('../fonts/BMWGroupLight-Regular.eot?#iefix') format('embedded-opentype'), url('../fonts/BMWGroupLight-Regular.woff') format('woff'), url('../fonts/BMWGroupLight-Regular.ttf') format('truetype'), url('../fonts/BMWGroupLight-Regular.svg#BMWGroupLight-Regular') format('svg');
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: 'BMWGroup-Regular';
    src: url('../fonts/BMWGroup-Regular.eot?#iefix') format('embedded-opentype'), url('../fonts/BMWGroup-Regular.woff') format('woff'), url('../fonts/BMWGroup-Regular.ttf') format('truetype'), url('../fonts/BMWGroup-Regular.svg#BMWGroup-Regular') format('svg');
    font-weight: 400;
    font-style: normal;
}

a:focus {
    outline: 0 solid
}

img {
    max-width: 100%;
    height: auto;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0 0 15px;
    font-weight: 700;
    font-family: BMWGroup-Bold, sans-serif;
}

body {
    font-family: BMWGroup-Regular, sans-serif;
    font-size: 15px
}

.section-title h4 {
    font-family: 'BMWGroupLight-Regular';
    font-size: 20px;
    font-weight: 300;
}

.section-title h4 strong {
    font-family: 'BMWGroup-Bold';
    font-weight: 700;
}

.section-title h4.bold {
    font-family: 'BMWGroup-Bold';
    font-weight: 700;
}

a:hover {
    text-decoration: none
}

.main-header {
    background-image: url(../img/header.jpg);
}

.main-header {
    height: 700px;
    background-position: center bottom;
    background-size: cover;
}

.main-header h1 {
    text-transform: uppercase;
    color: #fff;
    margin-top: 30px;
    font-size: 45px;
}

header.main-header img {
    width: 110px;
    margin-top: 10px;
}

section.section-padding {
    padding: 50px 0;
}

input[type=text],
input[type=date],
input[type=datetime],
input[type=number],
input[type=search],
input[type=time],
input[type=url],
input[type=tel],
input[type=email],
textarea,
select {
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    border: 1px solid #BEBEBE;
    padding: 7px;
    margin: 0px;
    -webkit-transition: all 0.30s ease-in-out;
    -moz-transition: all 0.30s ease-in-out;
    -ms-transition: all 0.30s ease-in-out;
    -o-transition: all 0.30s ease-in-out;
    outline: none;
}

input[type=text]:focus,
input[type=date]:focus,
input[type=datetime]:focus,
input[type=number]:focus,
input[type=search]:focus,
input[type=time]:focus,
input[type=url]:focus,
input[type=tel]:focus,
input[type=email]:focus,
textarea:focus,
select:focus {
    -moz-box-shadow: 0 0 8px #88D5E9;
    -webkit-box-shadow: 0 0 8px #88D5E9;
    box-shadow: 0 0 8px #88D5E9;
    border: 1px solid #88D5E9;
}

.required {
    color: red;
}

.quote-form input,
.quote-form select {
    width: 100%;
    padding: 9px 10px 3px 10px;
}

.quote-form input[type="radio"] {
    width: auto;
    margin-right: 5px;
}

.quote-form input[type="submit"] {
    cursor: pointer;
    transition: 0.3s;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -ms-transition: 0.3s;
    -o-transition: 0.3s;
}

.quote-form input[type="submit"]:hover {
    background: #06af9f;
}

.quote-form .row {
    margin-top: 10px;
}

.quote-form label {
    width: auto;
    padding-top: 9px;
    padding-bottom: 7px;
    margin-bottom: 0;
    margin-right: 5px;
}

p.note {
    margin-top: 5px;
    margin-bottom: 0;
}

.quote-form {
    padding-bottom: 36px;
    border-bottom: 1px solid #EEEEEE;
}

.quote-form input[type="submit"] {
    background: #1C69D4;
    border: none;
    color: #fff;
    padding-top: 14px;
    padding-bottom: 10px;
}

.legal-note h3 {
    padding-top: 30px;
    padding-bottom: 20px;
    font-size: 20px;
}

.err {
    color: red;
    margin: 0;
    margin-top: 5px;
}

.errinput {
    border-color: red !important;
}

.status {
    margin: 10px 0;
    padding: 10px 20px;
    background: #ddd;
    font-weight: 600;
    font-size: 16px;
}

.status.green {
    background: #D8FFC0;
    color: #2e6502;
    border-left: 10px solid #6aec02;
}

.status.red {
    background: #FFE8E8;
    color: #FF0000;
    border-left: 10px solid #FF0000;
}

.main-footer {
    background: #8E8E8E;
    padding-top: 20px;
    padding-bottom: 15px;
    color: #fff;
}