@font-face {
    font-family: 'opensans';
    src: url('../fonts/opensans.woff2') format('woff2'),
         url('../fonts/opensans.woff') format('woff');
}

@font-face {
    font-family: 'opensans-semibold';
    src: url('../fonts/opensans-semibold.woff2') format('woff2'),
         url('../fonts/opensans-semibold.woff') format('woff');
}

@font-face {
    font-family: 'opensans-bold';
    src: url('../fonts/opensans-bold.woff2') format('woff2'),
         url('../fonts/opensans-bold.woff') format('woff');
}

@font-face {
    font-family: 'opensans-light';
    src: url('../fonts/opensans-light.woff2') format('woff2'),
         url('../fonts/opensans-light.woff') format('woff');
}

@font-face {
    font-family: 'opensans-italic';
    src: url('../fonts/opensans-italic.woff2') format('woff2'),
         url('../fonts/opensans-italic.woff') format('woff');
}

* {
    box-sizing: border-box;
}

html,
body {
    -webkit-font-smoothing: antialiased;
    font: 400 14px/26px "opensans", sans-serif;
	margin: 0;
	padding: 0;
}

h1 {
    color: rgb(18, 91, 140);
    font: 400 34px/46px "opensans-bold", sans-serif;
    margin: -10px 0 0;
    padding: 0;
    position: relative;
}

h2 {
    color: rgb(18, 91, 140);
    font: 400 40px/35px "opensans-light", sans-serif;
    margin: 0 0 22px;
    padding: 0;
    position: relative;
}

h2::before {
    border-bottom: 1px solid rgb(187, 187, 187);
    bottom: 3px;
    content: "";
    height: 1px;
    left: 0;
    position: absolute;
    width: 100%;
}

h2 span {
    background: rgb(255, 255, 255);
    padding: 0 6px 0 0;
    position: relative;
    z-index: 1;
}

h4 {
    color: rgb(18, 91, 140);
    font: 400 24px/32px "opensans", sans-serif;
    margin: -4px 0 10px;
    padding: 0;
}

h5 {
    color: rgb(54, 55, 55);
    font: 400 16px/22px "opensans-bold", sans-serif;
    text-transform: uppercase;
    margin: 0 0 10px;
    padding: 0;
}

h6 {
    color: rgb(54, 55, 55);
    font: 400 16px/22px "opensans-semibold", sans-serif;
    margin: 0 0 10px;
    padding: 0;
}

p {
    color: rgb(20, 20, 20);
    font: 400 14px/26px "opensans", sans-serif;
    margin: 0;
}

a,
a:link,
a:focus,
a:visited,
a:active {
    text-decoration: none;
    transition: background-color .3s ease 0s, color .3s ease 0s;
}

a:hover {
    cursor: pointer;
    text-decoration: none;
}

button {
    transition: background-color .3s ease 0s, color .3s ease 0s;
}

button:hover {
    cursor: pointer;
    text-decoration: none;
}

input:focus,
select:focus,
button:focus {
    outline:0;
}

input::-webkit-input-placeholder {
    color: rgb(162, 162, 162);
    font: 400 16px/22px "opensans", sans-serif;
}

input:-moz-placeholder {
    color: rgb(162, 162, 162);
    font: 400 16px/40px "opensans", sans-serif;
    opacity: 1;
}

input::-moz-placeholder {
    color: rgb(162, 162, 162);
    font: 400 16px/40px "opensans", sans-serif;
    opacity: 1;
}

input:-ms-input-placeholder {
    color: rgb(162, 162, 162);
    font: 400 16px/22px "opensans", sans-serif;
}

section {
    background: rgb(255, 255, 255);
}

section table {
    border: 0;
    border-collapse:collapse;
    table-layout: fixed;
    width: 100%;
}

section table tr,
section table td {
    border: 0;
    border-collapse:collapse;
    margin: 0;
    padding: 0;
}

.table-striped {
    width: auto;
}

.table-striped tr:nth-of-type(odd) {
    background: rgb(208, 226, 238);
}

.table-striped tr:nth-of-type(even) {
    background: rgb(245, 246, 246);
}

.table-striped td {
    border-right: 2px solid rgb(255, 255, 255);
    padding: 8px 14px;
}
