html
{
    font-size: 16px;
}

body {
    font-family: 'Open Sans', 'Helvetica Neue', 'Arial';
    font-weight: normal;
    font-size: 1rem;
    line-height: 1.8rem;
    color: #223B45;
}


/*=== FONTS ===*/
@font-face {
    font-family: 'Open Sans';
    src: url('../../fonts/OpenSans-Light-webfont.woff') format('woff');
    font-weight: 300;
}

@font-face {
    font-family: 'Open Sans';
    src: url('../../fonts/OpenSans-Regular-webfont.woff') format('woff');
    font-weight: normal;
}

@font-face {
    font-family: 'Open Sans';
    src: url('../../fonts/OpenSans-Semibold-webfont.woff') format('woff');
    font-weight: 600;
}

@font-face {
    font-family: 'Open Sans';
    src: url('../../fonts/OpenSans-Bold-webfont.woff') format('woff');
    font-weight: 700;
}

@font-face {
    font-family: 'Open Sans';
    src: url('../../fonts/OpenSans-ExtraBold-webfont.woff') format('woff');
    font-weight: 800;
}

.ss-text--light { font-weight: 300 !important; }
.ss-text--regular { font-weight: normal !important; }
.ss-text--semibold { font-weight: 600 !important; }
strong, b, .ss-text--bold { font-weight: 700 !important; }
.ss-text--extrabold { font-weight: 800 !important; }

/*=== UTILITY ===*/
.ss-text--center { text-align: center !important; }
.ss-text--left { text-align: left !important; }
.ss-text--right { text-align: right !important; }
.ss-text--lowercase { text-transform: lowercase !important; }
.ss-text--uppercase { text-transform: uppercase !important; }
.ss-text--capitalize { text-transform: capitalize !important; }
.ss-text--wordbreak { word-break:break-all !important; }
.ss-text--italic { font-style: italic !important; }
.ss-text--strike { text-decoration: line-through !important; }
.ss-text--underline { text-decoration: underline !important; }

/*=== SIZES ===*/
.ss-text--xx-small { font-size: 0.625rem; line-height: 0.75rem;}
.ss-text--x-small { font-size: 0.75rem; line-height: 0.875rem; }
.ss-text--small { font-size: 0.875rem; line-height: 1rem;}
.ss-text--medium { font-size: 1rem; line-height: 1.125rem;}
.ss-text--large { font-size: 1.125rem; line-height: 1.5rem;}
.ss-text--x-large { font-size: 1.5rem; line-height: 2.25rem;}
.ss-text--xx-large { font-size: 2.25rem; line-height: 2.5rem;}


/*=== HIERARCHY ===*/
h1, .ss-text--h1
{
    margin: 0.8rem 0px;
    font-size: 2.5rem;
    line-height: 2.8rem;
    font-weight: 600;
}

h2, .ss-text--h2
{
    margin: 0.8rem 0px;
    font-size: 1.75rem;
    line-height: 2.25rem;
    font-weight: normal;
}

h3, .ss-text--h3
{
    margin: 0.8rem 0px;
    font-size: 1.3rem;
    line-height: 1.8rem;
    font-weight: normal;
    color: #323c47;
}

h4, .ss-text--h4
{
    margin: 0.8rem 0px;
    font-size: 1.1rem;
    line-height: 1.5rem;
    font-weight: normal;
    color: #595d66;
}

h5, .ss-text--h5
{
    margin: 0.8rem 0px;
    font-size: 0.8rem;
    line-height: 1.5rem;
    font-weight: normal;
}

p, .ss-paragraph
{
    margin: 0.8rem 0px;
    font-weight: normal;
    font-size: 1rem;
    line-height: 1.8rem;
    color: #223B45;
}

.ss-paragraph--large
{
    font-size: 1.1rem;
    line-height: 2.1rem;
    font-weight: normal;
    color: #223B45;
}


/*=== DEFAULTS ===*/
a
{
    color: #00AEEF;
    text-decoration: none;
}

a:hover { cursor: pointer; }

/*=== CODE ===*/
code
{
    font-size: 0.8rem;
}

code[inline], .ss-text--code
{
    font-family: monospace;
    background-color: #E0E7ED;
    display: inline-block;
    padding: 0px 8px;
    font-size: 0.8rem;
    color: #FF0000;
}
