/* Grid
-------------------------------------------------- */
.container {
    position: relative;
    width: 100%;
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 20px;
    box-sizing: border-box;
}

.col,
.cols {
    width: 100%;
    float: left;
    box-sizing: border-box;
}

/* For devices larger than 400px */
@media (min-width: 400px) {
    .container {
        width: 85%;
        padding: 0;
    }
}

/* For devices larger than 800px */
@media (min-width: 800px) {
    .container {
        width: 80%;
    }

    .col,
    .cols {
        margin-left: 4%;
    }

    .col:first-child,
    .cols:first-child {
        margin-left: 0;
    }

    .one.col,
    .one.cols {
        width: 4.66666666667%;
    }

    .two.cols {
        width: 13.3333333333%;
    }

    .three.cols {
        width: 22%;
    }

    .four.cols {
        width: 30.6666666667%;
    }

    .five.cols {
        width: 39.3333333333%;
    }

    .six.cols {
        width: 48%;
    }

    .seven.cols {
        width: 56.6666666667%;
    }

    .eight.cols {
        width: 65.3333333333%;
    }

    .nine.cols {
        width: 74.0%;
    }

    .ten.cols {
        width: 82.6666666667%;
    }

    .eleven.cols {
        width: 91.3333333333%;
    }

    .twelve.cols {
        width: 100%;
        margin-left: 0;
    }

    .one-third.col {
        width: 30.6666666667%;
    }

    .two-thirds.col {
        width: 65.3333333333%;
    }

    .one-half.col {
        width: 48%;
    }

    /* Offsets */
    .offset-by-one.col,
    .offset-by-one.cols {
        margin-left: 8.66666666667%;
    }

    .offset-by-two.col,
    .offset-by-two.cols {
        margin-left: 17.3333333333%;
    }

    .offset-by-three.col,
    .offset-by-three.cols {
        margin-left: 26%;
    }

    .offset-by-four.col,
    .offset-by-four.cols {
        margin-left: 34.6666666667%;
    }

    .offset-by-five.col,
    .offset-by-five.cols {
        margin-left: 43.3333333333%;
    }

    .offset-by-six.col,
    .offset-by-six.cols {
        margin-left: 52%;
    }

    .offset-by-seven.col,
    .offset-by-seven.cols {
        margin-left: 60.6666666667%;
    }

    .offset-by-eight.col,
    .offset-by-eight.cols {
        margin-left: 69.3333333333%;
    }

    .offset-by-nine.col,
    .offset-by-nine.cols {
        margin-left: 78.0%;
    }

    .offset-by-ten.col,
    .offset-by-ten.cols {
        margin-left: 86.6666666667%;
    }

    .offset-by-eleven.col,
    .offset-by-eleven.cols {
        margin-left: 95.3333333333%;
    }

    .offset-by-one-third.col,
    .offset-by-one-third.cols {
        margin-left: 34.6666666667%;
    }

    .offset-by-two-thirds.col,
    .offset-by-two-thirds.cols {
        margin-left: 69.3333333333%;
    }

    .offset-by-one-half.col,
    .offset-by-one-half.cols {
        margin-left: 52%;
    }
}

/* Base Styles
-------------------------------------------------- */
/* NOTE
html is set to 62.5% so that all the REM measurements throughout Skeleton
are based on 10px sizing. So basically 1.5rem = 15px :) */
html {
    font-size: 62.5%;
}

body {
    font-size: 1.8em; /* currently ems cause chrome bug misinterpreting rems on body element */
    line-height: 1.4;
    font-weight: 400;
    font-family: "futura-pt", sans-serif;
    color: #545454;
}

/* Larger than tablet (also point when grid becomes active) */
@media (min-width: 940px) {

    body {
        font-size: 2.4em; /* currently ems cause chrome bug misinterpreting rems on body element */
    }
}

/* Typography
-------------------------------------------------- */
h1, h2, h3, h4, h5, h6 {
    margin-top: 0;
    margin-bottom: 0;
    font-weight: 400;
    line-height: 1.2;
    color: #021730;
}

h1 {
    font-size: 4.0rem;
    letter-spacing: -.1rem;
}

h2 {
    font-size: 3.6rem;
    letter-spacing: -.1rem;
    font-weight: 500;
    margin-bottom: 20px;
}

h3 {
    font-size: 3.0rem;
    letter-spacing: -.1rem;
}

h4 {
    font-size: 2.4rem;
    letter-spacing: -.08rem;
}

h5 {
    font-size: 1.8rem;
    letter-spacing: -.05rem;
}

h6 {
    font-size: 1.5rem;
    letter-spacing: 0;
}

/* Larger than phablet */
@media (min-width: 550px) {
    h1 {
        font-size: 5.0rem;
    }

    h2 {
        font-size: 4.2rem;
    }

    h3 {
        font-size: 3.2rem;
    }

    h4 {
        font-size: 2.8rem;
    }

    h5 {
        font-size: 2.2rem;
    }

    h6 {
        font-size: 1.5rem;
    }
}

p {
    margin-top: 0;
}

b,
strong {
    font-weight: 500;
}

/* Links
-------------------------------------------------- */
a {
    color: #D90000;
    text-decoration: none;
}

a:hover {
    color: #D90000;
    text-decoration: underline;
}

/* Buttons
-------------------------------------------------- */
.button,
button,
input[type="submit"],
input[type="reset"],
input[type="button"] {
    display: inline-block;
    height: 44px;
    padding: 0 30px;
    color: #fff;
    font-size: 20px;
    text-align: center;
    font-weight: 400;
    line-height: 44px;
    text-decoration: none;
    white-space: nowrap;
    background-color: #021730;
    border: 1px solid #021730;
    border-radius: 100px;
    cursor: pointer;
    text-decoration: none;
    box-sizing: border-box;
    transition: all 0.4s ease;
}

/* Larger than tablet (also point when grid becomes active) */
@media (min-width: 940px) {

    .button,
    button,
    input[type="submit"],
    input[type="reset"],
    input[type="button"] {
        display: inline-block;
        height: 49px;
        padding: 0 30px;
        font-size: 20px;
        line-height: 49px;
    }
}

.white.button {
    border: 1px solid #fff;
    background: transparent;
}

.white.button:hover {
    background: #fff;
    border: 1px solid #fff;
    color: #021730;
}

.attn.button {
    background: #D90000;
    border: 1px solid #D90000;
}

.attn.button:hover {
    background: #FF0000;
    border: 1px solid #FF0000;
}

.button:hover,
button:hover,
input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="button"]:hover,
.button:focus,
button:focus,
input[type="submit"]:focus,
input[type="reset"]:focus,
input[type="button"]:focus {
    background: #D90000;
    border: 1px solid #D90000;
    color: #fff;
    text-decoration: none;
    outline: 0;
}

/* Forms
-------------------------------------------------- */
input[type="email"],
input[type="number"],
input[type="search"],
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="password"],
textarea,
select {
    height: 38px;
    padding: 6px 10px; /* The 6px vertically centers text on FF, ignored by Webkit */
    background-color: #fff;
    border: 2px solid #fff;
    border-radius: 4px;
    font-size: 20px;
    box-shadow: none;
    box-sizing: border-box;
}

/* Removes awkward default styles on some inputs for iOS */
input[type="email"],
input[type="number"],
input[type="search"],
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="password"],
textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

textarea {
    min-height: 65px;
    padding-top: 6px;
    padding-bottom: 6px;
}

input[type="email"]:focus,
input[type="number"]:focus,
input[type="search"]:focus,
input[type="text"]:focus,
input[type="tel"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
textarea:focus,
select:focus {
    border: 2px solid #C1BCB2;
    outline: 0;
}

input.disabled {
    border: 1px solid #C1BCB2;
    background-color: #C1BCB2;
}

input.required, textarea.required {
    border: 0px solid #001730;
}

input.validation-failed, textarea.validation-failed {
    border: 2px solid #D90000;
    color : #FF3300;
}

input.validation-passed, textarea.validation-passed {
    border: 0px solid #001730;

}

label,
legend {
    display: block;
    margin-bottom: .5rem;
    font-weight: 600;
}

fieldset {
    padding: 0;
    border-width: 0;
}

input[type="checkbox"],
input[type="radio"] {
    display: inline;
}

label > .label-body {
    display: inline-block;
    margin-left: .5rem;
    font-weight: normal;
}

/* Lists
-------------------------------------------------- */
ul {
    list-style: disc outside;
}

ol {
    list-style: decimal outside;
}

ol, ul {
    padding-left: 0;
    margin-top: 0;
}

ul ul,
ul ol,
ol ol,
ol ul {
    margin: 1.5rem 0 1.5rem 3rem;
    font-size: 90%;
}

li {
    margin-bottom: 1rem;
    margin-left: 30px;
}

ul li:not(#mobile-menu ul li) {
    margin-bottom: 1rem;
    margin-left: 0px;
    list-style: none;
    padding: 10px 0;
    border-bottom: 1px solid #C1BCB2;
}

#mobile-menu ul li {}

/* Code
-------------------------------------------------- */
code {
    padding: .2rem .5rem;
    margin: 0 .2rem;
    font-size: 90%;
    white-space: nowrap;
    background: #F1F1F1;
    border: 1px solid #E1E1E1;
    border-radius: 4px;
}

pre > code {
    display: block;
    padding: 1rem 1.5rem;
    white-space: pre;
}

/* Tables
-------------------------------------------------- */
th,
td {
    padding: 12px 15px;
    text-align: left;
    border-bottom: 1px solid #C1BCB2;
}

th:first-child,
td:first-child {
    padding-left: 0;
}

th:last-child,
td:last-child {
    padding-right: 0;
}

/* Table Styles */

.right-side table,
.main table {
    border: 1px solid #C1BCB2;
}

.right-side table td,
.main table td {
    padding: 10px;
    font-size: .8em;
    line-height: 1.2;
}

.right-side tr:nth-of-type(even) td,
.main table tr:nth-of-type(even) td {
    background: rgba(193, 188, 178, 0.3);
}

/* Spacing
-------------------------------------------------- */
button,
.button {
    margin-bottom: 1rem;
}

input,
textarea,
select,
fieldset {
    margin-bottom: 1.5rem;
}

pre,
blockquote,
dl,
figure,
table,
p,
ul,
ol,
form {
    margin-bottom: 2.5rem;
}

/* Utilities
-------------------------------------------------- */
.u-full-width {
    width: 100%;
    box-sizing: border-box;
}

.u-max-full-width {
    max-width: 100%;
    box-sizing: border-box;
}

.u-pull-right {
    float: right;
}

.u-pull-left {
    float: left;
}

/* Misc
-------------------------------------------------- */
hr {
    margin-top: 3rem;
    margin-bottom: 3.5rem;
    border-width: 0;
    border-top: 1px solid #C1BCB2;
}

/* Clearing
-------------------------------------------------- */

/* Self Clearing Goodness */
.container:after,
.row:after,
.u-cf {
    content: "";
    display: table;
    clear: both;
}

/* Media Queries
-------------------------------------------------- */


/* Larger than mobile */
@media (min-width: 400px) {}

/* Larger than phablet  */
@media (min-width: 550px) {}

/* Larger than tablet (also point when grid becomes active) */
@media (min-width: 800px) {}

/* Larger than desktop */
@media (min-width: 1000px) {}

/* Larger than Desktop HD */
@media (min-width: 1200px) {}


