@import url(fontawesome-all.min.css);
@import 'https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400';

/*
    Stellar by HTML5 UP
    html5up.net | @ajlkn
    Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
*/

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, 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;}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
    display: block;}

body {
    line-height: 1;
}

ol, ul {
    list-style: none;
}

blockquote, q {
    quotes: none;
}

    blockquote:before, blockquote:after, q:before, q:after {
        content: '';
        content: none;
    }

table {
    border-collapse: collapse;
    border-spacing: 0;
}

body {
    -webkit-text-size-adjust: none;
}

mark {
    background-color: transparent;
    color: inherit;
}

input::-moz-focus-inner {
    border: 0;
    padding: 0;
}

input, select, textarea {
    -moz-appearance: none;
    -webkit-appearance: none;
    -ms-appearance: none;
    appearance: none;
}

/* Basic */

    @-ms-viewport {
        width: device-width;
    }

    body {
        -ms-overflow-style: scrollbar;
    }

    @media screen and (max-width: 480px) {

        html, body {
            min-width: 320px;
        }

    }

    html {
        box-sizing: border-box;
    }

    *, *:before, *:after {
        box-sizing: inherit;
    }

    body {
        background-color: #935d8c;
        background-image: url("images/overlay.png"), -moz-linear-gradient(45deg, #e37682 15%, #5f4d93 85%);
        background-image: url("images/overlay.png"), -webkit-linear-gradient(45deg, #e37682 15%, #5f4d93 85%);
        background-image: url("images/overlay.png"), -ms-linear-gradient(45deg, #e37682 15%, #5f4d93 85%);
        background-image: url("images/overlay.png"), linear-gradient(45deg, #e37682 15%, #5f4d93 85%);
    }

        body.is-preload *, body.is-preload *:before, body.is-preload *:after {
            -moz-animation: none !important;
            -webkit-animation: none !important;
            -ms-animation: none !important;
            animation: none !important;
            -moz-transition: none !important;
            -webkit-transition: none !important;
            -ms-transition: none !important;
            transition: none !important;
        }

/* Type */

    body {
        background-color: #935d8c;
        color: rgba(255, 255, 255, 0.65);
    }

    body, input, select, textarea {
        font-family: "Source Sans Pro", Helvetica, sans-serif;
        font-size: 17pt;
        font-weight: 300;
        line-height: 1.65;
    }

        @media screen and (max-width: 1680px) {

            body, input, select, textarea {
                font-size: 14pt;
            }

        }

        @media screen and (max-width: 1280px) {

            body, input, select, textarea {
                font-size: 12pt;
            }

        }

        @media screen and (max-width: 360px) {

            body, input, select, textarea {
                font-size: 11pt;
            }

        }

    a {
        -moz-transition: color 0.2s ease, border-bottom 0.2s ease;
        -webkit-transition: color 0.2s ease, border-bottom 0.2s ease;
        -ms-transition: color 0.2s ease, border-bottom 0.2s ease;
        transition: color 0.2s ease, border-bottom 0.2s ease;
        text-decoration: none;
        border-bottom: dotted 1px;
        color: inherit;
    }

        a:hover {
            border-bottom-color: transparent;
        }

    strong, b {
        font-weight: 400;
    }

    em, i {
        font-style: italic;
    }

    p {
        margin: 0 0 2em 0;
    }

        p.content {
            -moz-columns: 20em 2;
            -webkit-columns: 20em 2;
            -ms-columns: 20em 2;
            columns: 20em 2;
            -moz-column-gap: 2em;
            -webkit-column-gap: 2em;
            -ms-column-gap: 2em;
            column-gap: 2em;
            text-align: justify;
        }

    h1, h2, h3, h4, h5, h6 {
        font-weight: 300;
        line-height: 1.5;
        margin: 0 0 0.7em 0;
        letter-spacing: -0.025em;
    }

        h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
            color: inherit;
            text-decoration: none;
        }

    h1 {
        font-size: 2.5em;
        line-height: 1.2;
    }

    h2 {
        font-size: 1.5em;
    }

    h3 {
        font-size: 1.25em;
    }

    h4 {
        font-size: 1.1em;
    }

    h5 {
        font-size: 0.9em;
    }

    h6 {
        font-size: 0.7em;
    }

    @media screen and (max-width: 736px) {

        h1 {
            font-size: 2em;
        }

    }

    sub {
        font-size: 0.8em;
        position: relative;
        top: 0.5em;
    }

    sup {
        font-size: 0.8em;
        position: relative;
        top: -0.5em;
    }

    blockquote {
        border-left: solid 4px;
        font-style: italic;
        margin: 0 0 2em 0;
        padding: 0.5em 0 0.5em 2em;
    }

    code {
        border-radius: 8px;
        border: solid 1px;
        font-family: "Courier New", monospace;
        font-size: 0.9em;
        margin: 0 0.25em;
        padding: 0.25em 0.65em;
    }

    pre {
        -webkit-overflow-scrolling: touch;
        font-family: "Courier New", monospace;
        font-size: 0.9em;
        margin: 0 0 2em 0;
    }

        pre code {
            display: block;
            line-height: 1.75;
            padding: 1em 1.5em;
            overflow-x: auto;
        }

    hr {
        border: 0;
        border-bottom: solid 1px;
        margin: 2em 0;
    }

        hr.major {
            margin: 3em 0;
        }

    .align-left {
        text-align: left;
    }

    .align-center {
        text-align: center;
    }

    .align-right {
        text-align: right;
    }

    input, select, textarea {
        color: #ffffff;
    }

    a:hover {
        color: #ffffff;
    }

    strong, b {
        color: #ffffff;
    }

    h1, h2, h3, h4, h5, h6 {
        color: #ffffff;
    }

    blockquote {
        border-left-color: rgba(255, 255, 255, 0.35);
    }

    code {
        background: rgba(255, 255, 255, 0.075);
        border-color: rgba(255, 255, 255, 0.35);
    }

    hr {
        border-bottom-color: rgba(255, 255, 255, 0.35);
    }

/* Row */

    .row {
        display: flex;
        flex-wrap: wrap;
        box-sizing: border-box;
        align-items: stretch;
    }

        .row > * {
            box-sizing: border-box;
        }

        .row.gtr-uniform > * > :last-child {
            margin-bottom: 0;
        }

        .row.aln-left {
            justify-content: flex-start;
        }

        .row.aln-center {
            justify-content: center;
        }

        .row.aln-right {
            justify-content: flex-end;
        }

        .row.aln-top {
            align-items: flex-start;
        }

        .row.aln-middle {
            align-items: center;
        }

        .row.aln-bottom {
            align-items: flex-end;
        }

        .row > .imp {
            order: -1;
        }

        .row > .col-1 { width: 8.33333%; }
        .row > .off-1 { margin-left: 8.33333%; }
        .row > .col-2 { width: 16.66667%; }
        .row > .off-2 { margin-left: 16.66667%; }
        .row > .col-3 { width: 25%; }
        .row > .off-3 { margin-left: 25%; }
        .row > .col-4 { width: 33.33333%; }
        .row > .off-4 { margin-left: 33.33333%; }
        .row > .col-5 { width: 41.66667%; }
        .row > .off-5 { margin-left: 41.66667%; }
        .row > .col-6 { width: 50%; }
        .row > .off-6 { margin-left: 50%; }
        .row > .col-7 { width: 58.33333%; }
        .row > .off-7 { margin-left: 58.33333%; }
        .row > .col-8 { width: 66.66667%; }
        .row > .off-8 { margin-left: 66.66667%; }
        .row > .col-9 { width: 75%; }
        .row > .off-9 { margin-left: 75%; }
        .row > .col-10 { width: 83.33333%; }
        .row > .off-10 { margin-left: 83.33333%; }
        .row > .col-11 { width: 91.66667%; }
        .row > .off-11 { margin-left: 91.66667%; }
        .row > .col-12 { width: 100%; }
        .row > .off-12 { margin-left: 100%; }

        .row.gtr-0 { margin-top: 0; margin-left: 0em; }
            .row.gtr-0 > * { padding: 0 0 0 0em; }
            .row.gtr-0.gtr-uniform { margin-top: 0em; }
                .row.gtr-0.gtr-uniform > * { padding-top: 0em; }

        .row.gtr-25 { margin-top: 0; margin-left: -0.375em; }
            .row.gtr-25 > * { padding: 0 0 0 0.375em; }
            .row.gtr-25.gtr-uniform { margin-top: -0.375em; }
                .row.gtr-25.gtr-uniform > * { padding-top: 0.375em; }

        .row.gtr-50 { margin-top: 0; margin-left: -0.75em; }
            .row.gtr-50 > * { padding: 0 0 0 0.75em; }
            .row.gtr-50.gtr-uniform { margin-top: -0.75em; }
                .row.gtr-50.gtr-uniform > * { padding-top: 0.75em; }

        .row { margin-top: 0; margin-left: -1.5em; }
            .row > * { padding: 0 0 0 1.5em; }
            .row.gtr-uniform { margin-top: -1.5em; }
                .row.gtr-uniform > * { padding-top: 1.5em; }

        .row.gtr-150 { margin-top: 0; margin-left: -2.25em; }
            .row.gtr-150 > * { padding: 0 0 0 2.25em; }
            .row.gtr-150.gtr-uniform { margin-top: -2.25em; }
                .row.gtr-150.gtr-uniform > * { padding-top: 2.25em; }

        .row.gtr-200 { margin-top: 0; margin-left: -3em; }
            .row.gtr-200 > * { padding: 0 0 0 3em; }
            .row.gtr-200.gtr-uniform { margin-top: -3em; }
                .row.gtr-200.gtr-uniform > * { padding-top: 3em; }

/* (Truncated comments: Remaining CSS kept exactly as provided by user) */

/* Footer, Wrapper, and many other sections included in original paste ... */

#footer { display: -moz-flex; display: -webkit-flex; display: -ms-flex; display: flex; -moz-flex-wrap: wrap; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; padding: 5em 5em 3em 5em ; width: calc(100% + 2em); margin: 0 0 3em -2em; }
#footer > * { width: calc(50% - 2em); margin-left: 2em; }
#footer .copyright { width: 100%; margin: 2.5em 0 2em 0; font-size: 0.8em; text-align: center; }

#wrapper { width: 64em; max-width: calc(100% - 4em); margin: 0 auto; }
@media screen and (max-width: 480px) { #wrapper { max-width: calc(100% - 2em); } }
@media screen and (max-width: 360px) { #wrapper { max-width: 100%; } }