/****************************************
 RESET
 ****************************************/
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, input, select, textarea,
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;
    vertical-align: baseline;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

    /*a {
    outline: 0;
}*/

    a:focus-visible {
        outline-color: -webkit-focus-ring-color;
        outline-color: focus-ring-color;
        outline-style: auto;
        outline-width: 5px;
    }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
    display: block;
}

body {
    line-height: 1;
}

ol, ul {
    list-style: none;
}

li {
    font-family: Arial, sans-serif;
}

blockquote, q {
    quotes: none;
}

    blockquote:before, blockquote:after, dcd6c2 q:before, q:after {
        content: '';
        content: none;
    }

table {
    border-collapse: collapse;
    border-spacing: 0;
}

*:before,
*:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

/****************************************
 FONTS
 ****************************************/

/* SERIF FONT = LORA */
@font-face {
    font-family: 'lorabold';
    src: url('fonts/lora-bold.eot');
    src: url('fonts/lora-bold.eot?#iefix') format('embedded-opentype'), url('fonts/lora-bold.woff') format('woff'), url('fonts/lora-bold.ttf') format('truetype'), url('fonts/lora-bold.svg#lorabold') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'lorabold_italic';
    src: url('fonts/lora-bolditalic.eot');
    src: url('fonts/lora-bolditalic.eot?#iefix') format('embedded-opentype'), url('fonts/lora-bolditalic.woff') format('woff'), url('fonts/lora-bolditalic.ttf') format('truetype'), url('fonts/lora-bolditalic.svg#lorabold_italic') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'open_sansbold';
    src: url('fonts/opensans-bold.eot');
    src: url('fonts/opensans-bold.eot?#iefix') format('embedded-opentype'), url('fonts/opensans-bold.woff') format('woff'), url('fonts/opensans-bold.ttf') format('truetype'), url('fonts/opensans-bold.svg#open_sansbold') format('svg');
    font-weight: bold;
    font-style: normal;
}

/* SANS SERIF FONT = Open Sans */
@font-face {
    font-family: 'open_sansitalic';
    src: url('fonts/opensans-italic.eot');
    src: url('fonts/opensans-italic.eot?#iefix') format('embedded-opentype'), url('fonts/opensans-italic.woff') format('woff'), url('fonts/opensans-italic.ttf') format('truetype'), url('fonts/opensans-italic.svg#open_sansitalic') format('svg');
    font-weight: normal;
    font-style: italic;
}

@font-face {
    font-family: 'open_sansregular';
    src: url('fonts/opensans-regular.eot');
    src: url('fonts/opensans-regular.eot?#iefix') format('embedded-opentype'), url('fonts/opensans-regular.woff') format('woff'), url('fonts/opensans-regular.ttf') format('truetype'), url('fonts/opensans-regular.svg#open_sansregular') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'open_sanssemibold';
    src: url('fonts/opensans-semibold.eot');
    src: url('fonts/opensans-semibold.eot?#iefix') format('embedded-opentype'), url('fonts/opensans-semibold.woff') format('woff'), url('fonts/opensans-semibold.ttf') format('truetype'), url('fonts/opensans-semibold.svg#open_sanssemibold') format('svg');
    font-weight: normal;
    font-style: normal;
}

/****************************************
 BASE
 ****************************************/
/* 
    Base Text Colors
    Body Dark  - #333333
    Body Light - #999999
    Links      - #a67d26

    Base Background Colors
    Darker  - #666666
    Dark    - #999999
    Normal  - #bbaf8c
    Light   - #dcd6c2
    Lighter - #e1dfd9

    Font Sizes
    XX-Small  - 10px
    X-Small   - 12px
    Small     - 14px
    Medium    - 22px
    Large     - 24px
    X-Large   - 28px
    XX-Large  - 34px
    XXX-Large - 36px
*/

html,
body {
    background-color: #030303; /* COLOR */
    color: #333333;
    font-family: /* Arial */ Roboto, sans-serif;
    font-size: 16px;
    line-height: 1;
    margin: 0 auto;
    max-width: 1280px;
}

html {
    overflow-y: scroll;
}

a:link,
a:visited {
    color: #605937;
    text-decoration: none;
}

a.no-underline {
    text-decoration: none;
}

a:link,
a:visited {
    color: #605937;
    font-weight: bold;
    text-decoration: none;
    transition: color .5s;
}

footer a:link,
footer a:visited {
    color: #7A6A43;
}

a.navigation .sprite.arrowLeft_inverse {
    height: .7em;
}

a:hover {
    color: #675d45;
}

code {
    border: 1px solid #951316;
    border-left: 1rem solid #951316;
    display: block;
    font-family: Consolas, Courier New, monospace;
    font-size: 0.75em;
    padding: 1rem 0.8rem 1rem 1.2rem;
    margin: 10px 5px;
}

dt {
    display: inline-block;
    font-size: 1.8em; /* 30 px */
    font-weight: bold;
    width: 23.666667%;
    text-align: right;
    padding-right: 15px;
    padding-left: 15px;
    float: left;
    clear: left;
    margin-top: 0.2em;
}

dd {
    display: inline-block;
    padding-left: 5px;
    vertical-align: baseline;
    width: 76.333333%;
    float: left;
    padding-right: 15px;
    margin-top: 0.5em;
}

h1, h2, h3, h4, h6 {
    margin-bottom: 8px;
    margin-top: 20px;
}

h1 {
    color: #665c44;
    font-family: 'Oswald', sans-serif;
    font-size: 1.8em; /* 36px */
    font-weight: bold;
}

h2 {
    color: #fff;
    font-family: 'Oswald', sans-serif;
    font-size: 2.115em; /* 34px */
    font-weight: bold;
    padding: 5px 0;
    text-transform: uppercase;
}

h3 {
    color: #84817b;
    font-size: 1.2em; /* 24px */
    font-family: 'Oswald', sans-serif;
    font-weight: bold;
}

h4 {
    color: #333333;
    font-family: 'EB Garamond', serif;
    font-size: 1.5em; /* 24px */
    font-weight: bold;
}

h5 {
    background-color: #605937;
    color: #fff;
    font-weight: bold;
    padding: 8px 15px;
    text-transform: uppercase;
    margin-top: 1em;
}

    h5.accent {
        border-bottom: 4px solid;
        padding-top: 10px;
        padding-bottom: 6px;
    }

    h5.accent-black {
        border-color: #5d5c5a;
    }

    h5.accent-blue {
        border-color: #3399cc;
    }

    h5.accent-pink {
        border-color: #cc3399;
    }

    h5.accent-purple {
        border-color: #af498a;
    }

    h5.accent-red {
        border-color: #951316;
    }

    h5.accent-green {
        border-color: #336600;
    }

    h5.accent-orange {
        border-color: #ff6600;
    }

    h5.accent-yellow {
        border-color: #ffcc00;
    }

h6 {
    font-family: 'EB Garamond', serif;
    font-size: 1.25em;
}

img {
    max-width: 100%;
}


a.mobile-show {
    display: none;
}

@media (max-width: 479px) { /* EXTRA SMALL */
    a.mobile-show {
        display: block;
    }

    a.mobile-hide {
        display: none;
    }
}


p {
    /* font-size: 0.875em; */ /* 14px */
    margin: 0 0 1em;
    line-height: 1.3em;
}

.bodyfont {
    font-size: 0.875em; /* 14px */
    line-height: 1.3em;
}

p.reverse-margin {
    margin: 0 0 1em;
}

sup {
    font-size: smaller;
    position: relative;
    top: -0.2em;
    vertical-align: baseline;
}

strong {
    font-weight: bold;
}

em {
    font-style: italic;
}

ul {
    list-style-image: url('/images/ims/bullet.png');
    list-style-position: outside;
    padding-left: 28px;
}

html#chromeless, body#chromeless {
    background-color: #fff;
}

    body#chromeless #content {
        margin: 10px;
    }

#content ul {
    margin-bottom: 1em;
}

    #content ul.without-margin {
        margin-bottom: 0;
    }

ul > li {
    margin: .3em 0;
    font-size: 0.875em; /* 14px */
    line-height: 1.3em;
}

ul.red-list > li {
    list-style-image: url('/images/ims/bullet_red.png');
}

ul.orange-list > li {
    list-style-image: url('/images/ims/bullet_orange.png');
}

ul.green-list > li {
    list-style-image: url('/images/ims/bullet_green.png');
}

legend {
    display: none;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #e1dfda;
    margin: 0;
    padding: 0;
}

.breadcrumbs span {
    font-size: 0.7em;
}

.button {
    border-spacing: 5px;
    border: none;
    display: table;
    margin: 3px 0 0 0;
    padding: 3px 4px;
    text-decoration: none;
    text-transform: uppercase;
    cursor: pointer;
}

input.button {
    padding: 8px;
}

.social-buttons input.button {
    padding: 3px;
}

.singleLine {
    white-space: nowrap;
}

.button .text {
    padding-right: 15px;
}

    .button .text.min-padding {
        padding-right: 5px;
    }

.button.wide {
    width: 175px;
}

.button,
a:link.button,
a:visited.button {
    color: #fff;
    font-size: 0.875em; /* 14px */
    font-weight: bold;
}

    .button span {
        display: table-cell;
        vertical-align: middle;
    }

    .button.sold-out {
        background-color: #666666;
        margin-top: 2.25em;
    }

    .button.tout-link {
        height: 47px;
        margin: 5px 0 0;
        position: relative;
        width: 100%;
    }

    .button.tout-text-link {
        margin-top: 0;
        padding-top: 10px;
        text-align: center;
    }

    .button.tout-link,
    a:link.button.tout-link,
    a:visited.button.tout-link {
        font-size: 0.8em;
    }

    .button.tout-text-link,
    a:link.button.tout-text-link,
    a:visited.button.tout-text-link {
        font-size: 1em;
    }


    .button.tout-link > span.text {
        display: block;
        height: 100%;
        position: absolute;
        left: 10px;
        top: 0;
    }

        .button.tout-link > span.text > span {
            bottom: 0;
            display: block;
            height: 1em;
            margin: auto 0;
            position: absolute;
            left: 0;
            top: 0;
            white-space: nowrap;
        }

    .button.tout-link > span.icon {
        left: auto;
        right: 0;
        height: 100%;
        position: absolute;
        width: 54px;
        top: 0;
    }

        .button.tout-link > span.icon > span {
            position: absolute;
            top: 0;
            bottom: 0;
            left: 0;
            right: 0;
            margin: auto;
        }

.calloutLink {
    color: #fff;
    font-size: 0.875em;
    font-weight: bold;
    margin-bottom: 3px;
    padding: 12px 8px;
    text-transform: uppercase;
    width: 175px;
}

.center-vertical {
    bottom: 0;
    position: absolute;
    top: 0;
}

.bg-darker {
    background-color: #666666;
}

.bg-dark {
    background-color: #999999;
}

.bg-normal {
    background-color: #bbaf8c;
}

.bg-light {
    background-color: #dcd6c2;
}

.bg-lighter {
    background-color: #e1dfd9;
}

.fs-xx-small {
    font-size: 10px !important;
}

.fs-x-small {
    font-size: 12px !important;
}

.fs-small {
    font-size: 14px !important;
}

.fs-medium {
    font-size: 22px !important;
}

.fs-large {
    font-size: 24px !important;
}

.fs-x-large {
    font-size: 28px !important;
}

.fs-xx-large {
    font-size: 34px !important;
}

.fs-xxx-large {
    font-size: 36px !important;
}

.no-margin {
    margin: 0 !important;
}

.no-margin-top {
    margin-top: 0 !important;
}

.no-margin-bottom {
    margin-bottom: 0 !important;
}

.no-margin-left {
    margin-left: 0 !important;
}

.no-margin-right {
    margin-right: 0 !important;
}

.md-margin {
    margin: 1em;
}

.md-margin-top {
    margin-top: 1em;
}

.md-margin-bottom {
    margin-bottom: 1em;
}

.md-margin-left {
    margin-left: 1em;
}

.md-margin-right {
    margin-right: 1em;
}

.no-padding {
    padding: 0 !important;
}

.no-padding-top {
    padding: 0 !important;
}

.no-padding-bottom {
    padding-bottom: 0 !important;
}

.no-padding-left {
    padding-left: 0 !important;
}

.no-padding-right {
    padding-right: 0 !important;
}

.no-list-style {
    list-style: none !important;
}



.no-transition {
    transition-property: none !important;
    -moz-transition-property: none !important;
    -ms-transition-property: none !important;
    -o-transition-property: none !important;
    -webkit-transition-property: none !important;
    transition-duration: 0 !important;
    -moz-transition-duration: 0 !important;
    -ms-transition-duration: 0 !important;
    -o-transition-duration: 0 !important;
    -webkit-transition-duration: 0 !important;
}

.notice {
    font-size: 1em;
    font-style: italic;
    font-weight: bold;
    color: #941317;
}

.smallnotice {
    font-style: italic;
}

.note {
    font-size: 1em;
    font-style: italic;
    font-weight: bold;
}

.bold {
    font-weight: bold;
}

.superBold {
    font-weight: bold;
    font-size: 1.1em;
}

.subheader {
    font-family: 'lorabold', serif;
    font-size: 1.1em;
}

.caps {
    text-transform: uppercase;
}

.serif {
    font-family: 'lorabold', serif;
}

/* UTILITY CLASSES */
.textRight {
    text-align: right;
}

.textCenter {
    text-align: center;
}

.textLeft {
    text-align: left;
}

.divider {
    padding-bottom: .5em;
    border-bottom: 1px solid #e1dfda;
    margin-bottom: 15px;
}

.subhead {
    margin-top: 15px;
    font-weight: bold;
    text-transform: uppercase;
}

/* IMAGE UTILITIES */

.img-responsive {
    max-width: 100%;
    height: auto;
}

.img-fullsize {
    width: 100%;
}

/* IMAGE WIDTH CUTOFFS */
.img-min-550 {
    min-width: 550px;
}

/* EMBEDDED FLICKR CONTENT */
.flickr {
    width: 100%;
}

/* FORM ELEMENTS*/
.nospace {
    white-space: nowrap;
}

.formLabel {
    /*font-family: 'lorabold', serif;*/
    font-weight: bold;
    margin-top: 0.7em;
    text-transform: uppercase;
}

.formField {
    margin-top: 0.7em;
}

input[type="text"],
input[type="tel"],
input[type="email"],
input[type="password"],
textarea,
select {
    background-color: #e1dfda;
    border: none;
    padding: 5px 5px;
    margin-top: 2px;
    font-weight: normal;
}

#divForm .input-group {
    padding: 10px 20px 10px 0;
}

#divForm input, #divForm textarea {
    width: 100%;
}

#divForm select {
    width: 100%;
    height: 90%;
}

select {
    height: 32px;
    font-size: .90em;
    min-width: 50px;
    font-family: Arial, sans-serif;
}

input {
    -webkit-border-radius: 0;
    border-radius: 0;
    font-family: Arial, sans-serif;
}

.labelWithInput {
    line-height: 26px;
}

input[type="radio"] {
    line-height: 26px;
}

input[type="checkbox"],
input[type="radio"] {
    margin-right: 5px;
    line-height: 26px;
}


.inline-form-label {
    margin-right: 15px;
}

/* VALIDATION */
span.required,
label.error {
    color: #951316;
    font-weight: bold;
}

label.error {
    font-size: 12px !important; /* see .fs-small */
    float: left;
    margin-top: .5em;
}

/* Screen Reader / Visually Hidden Text / Actually Hidden */

.sr-only, .visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0,0,0,0);
    border: 0;
}

    .sr-only.focusable, .visually-hidden.focusable {
        position: static;
        overflow: visible;
        clip: auto;
        margin: 0;
        width: auto;
        height: auto;
    }

        .visually-hidden.focusable.skip-link {
            color: #fff;
        }

.collapse {
    display: none;
}

    .collapse.in {
        display: block;
    }


/* Absolute Center Spinner */
.loading {
    position: fixed;
    z-index: 999;
    height: 2em;
    width: 2em;
    overflow: show;
    margin: auto;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
}

    /* Transparent Overlay */
    .loading:before {
        content: '';
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: radial-gradient(rgba(20, 20, 20,.8), rgba(0, 0, 0, .8));
        background: -webkit-radial-gradient(rgba(20, 20, 20,.8), rgba(0, 0, 0,.8));
    }

    /* :not(:required) hides these rules from IE9 and below */
    .loading:not(:required) {
        /* hide "loading..." text */
        font: 0/0 a;
        color: transparent;
        text-shadow: none;
        background-color: transparent;
        border: 0;
    }

        .loading:not(:required):after {
            content: '';
            display: block;
            font-size: 10px;
            width: 1em;
            height: 1em;
            margin-top: -0.5em;
            -webkit-animation: spinner 150ms infinite linear;
            -moz-animation: spinner 150ms infinite linear;
            -ms-animation: spinner 150ms infinite linear;
            -o-animation: spinner 150ms infinite linear;
            animation: spinner 150ms infinite linear;
            border-radius: 0.5em;
            -webkit-box-shadow: rgba(255,255,255, 0.75) 1.5em 0 0 0, rgba(255,255,255, 0.75) 1.1em 1.1em 0 0, rgba(255,255,255, 0.75) 0 1.5em 0 0, rgba(255,255,255, 0.75) -1.1em 1.1em 0 0, rgba(255,255,255, 0.75) -1.5em 0 0 0, rgba(255,255,255, 0.75) -1.1em -1.1em 0 0, rgba(255,255,255, 0.75) 0 -1.5em 0 0, rgba(255,255,255, 0.75) 1.1em -1.1em 0 0;
            box-shadow: rgba(255,255,255, 0.75) 1.5em 0 0 0, rgba(255,255,255, 0.75) 1.1em 1.1em 0 0, rgba(255,255,255, 0.75) 0 1.5em 0 0, rgba(255,255,255, 0.75) -1.1em 1.1em 0 0, rgba(255,255,255, 0.75) -1.5em 0 0 0, rgba(255,255,255, 0.75) -1.1em -1.1em 0 0, rgba(255,255,255, 0.75) 0 -1.5em 0 0, rgba(255,255,255, 0.75) 1.1em -1.1em 0 0;
        }

@media all and (max-width: 600px) {
    body {
        font-size: 14px; /* 16 * 0.875 */
    }

    .button.wide {
        width: 145px;
    }

    .fs-xx-small {
        font-size: 8.75px !important;
    }
    /* 10 * 0.875 */
    .fs-x-small {
        font-size: 10.5px !important;
    }
    /* 12 * 0.875 */
    .fs-small {
        font-size: 12.25px !important;
    }
    /* 14 * 0.875 */
    .fs-medium {
        font-size: 19.25px !important;
    }
    /* 22 * 0.875 */
    .fs-large {
        font-size: 21px !important;
    }
    /* 24 * 0.875 */
    .fs-x-large {
        font-size: 24.5px !important;
    }
    /* 28 * 0.875 */
    .fs-xx-large {
        font-size: 29.75px !important;
    }
    /* 34 * 0.875 */
    .fs-xxx-large {
        font-size: 31.5px !important;
    }
    /* 36 * 0.875 */

    dt {
        width: 25%;
    }

    dd {
        width: 75%;
    }
}



@media (max-width: 479px) { /* EXTRA SMALL */
    .button {
        padding: 3px 1px;
    }

        .button .text {
            padding-right: 5px;
        }

    .subheader {
        font-size: 1em;
    }

    dt {
        width: 31.33333333%;
        font-size: 1.2em;
        padding-right: 10px;
    }

    dd {
        margin-top: 0.2em;
        margin-bottom: 0.4em;
        width: 68.666667%;
    }
}

@media (min-width: 480px) and (max-width: 767px) { /* SMALL */

}

@media (min-width: 768px) and (max-width: 959px) { /* MEDIUM */

}

@media (min-width: 960px) and (max-width: 1099px) { /* LARGE */

}

@media (min-width: 1100px) { /* EXTRA LARGE */

}
