:root
{
    --font-family: "Segoe UI","-apple-system",BlinkMacSystemFont,Roboto,"Helvetica Neue",Helvetica,Ubuntu,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";
}

html
{
    margin: 0;
    padding: 0;
    overflow-x: hidden;
    overflow-y: scroll;
}

body
{
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    color: var(--color);
    background-color: var(--background-color);
    font-family: var(--font-family);
    font-size: 1rem;
}

img
{
    border: none;
}

div
{
    overflow: hidden;
}

a:link
{
    color: var(--link-color);
    text-decoration: none;
}

a:visited
{
    color: var(--link-color);
    text-decoration: none;
}

a:hover
{
    text-decoration: underline;
}

a:link.item-box, a:link.item-box-icon
{
    color: var(--color);
}

a:visited.item-box, a:visited.item-box-icon
{
    color: var(--color);
}

a:hover.item-box
{
    color: var(--color);
    text-decoration: none;
}

a:hover.item-box-icon
{
    color: var(--link-color);
    text-decoration: none;
}

header, footer, nav, section
{
    display: block;
}

/* Styles for basic forms */
fieldset
{
    border: 1px solid #ddd;
    padding: 0 1.4rem 1.4rem 1.4rem;
    margin: 0 0 1.5rem 0;
}

legend
{
    font-size: 1.1rem;
    font-weight: bold;
}

textarea
{
    min-height: 75px;
}

.form-label
{
    margin: 0.2rem 0 0 0;
    text-transform: uppercase;
}

.form-field
{
    margin: 0.2rem 0 0 0;
}

.editor-label
{
    margin: 0.2rem 0 0 0;
    text-transform: uppercase;
}

.editor-field
{
    margin: 0.2rem 0 0 0;
}

.button, .link-button
{
    cursor: pointer;
    text-transform: uppercase;
}

input[type="text"], input[type="password"]
{
    padding: 0.1rem 0.4rem;
}

label, select
{
    text-transform: uppercase;
}

select
{
    padding: 0.2rem 0.5rem;
}

/* Styles for validation helpers */
.field-validation-error
{
    color: #f9a8e1;
}

.field-validation-valid
{
    display: none;
}

.input-validation-error
{
    background-color: var(--validation-error-background-color);
}

.validation-summary-errors
{
    color: #f9a8e1;
}

.validation-summary-valid
{
    display: none;
}

/* Styles for peek-a-bar */
.peek-a-bar
{
    z-index: 9999;
}

/* Styles for colorbox */
#cboxTitle
{
    display: none !important;
}

#cboxLoadedContent
{
    margin-bottom: 0 !important;
}

/* Styles for fontawesome */
.fa-spin.fa-accessibility-override
{
    animation-name: fa-spin !important;
    animation-duration: var(--fa-animation-duration,2s) !important;
    animation-iteration-count: var(--fa-animation-iteration-count,infinite) !important;
    animation-timing-function: var(--fa-animation-timing,linear) !important;
}