@import url("fontawesome-all.min.css");
@import url("https://fonts.googleapis.com/css?family=Roboto:100,300,100italic,300italic");

.landing-section {
    margin-bottom: 25px;
}

.landing-section header, .landing-section section {
    display: block;
}

.landing-section ol, .landing-section ul {
    list-style: none;
}

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

/* Basic */

.landing-section {
    color: rgba(255, 255, 255, 0.75);
    font-family: "Roboto", Helvetica, sans-serif;
    font-size: 15pt;
    font-weight: 100;
    line-height: 1.75em;
}

.landing-section p {
    margin: 0 0 2em 0;
}

.landing-section h1, .landing-section h2, .landing-section h3, .landing-section h4, .landing-section h5, .landing-section h6 {
    text-align: center;
    color: #ffffff;
    font-weight: 300;
    line-height: 1em;
    margin: 0 0 1em 0;
}

.landing-section h2 {
    text-align: center;
    font-size: 2em;
    line-height: 1.5em;
    letter-spacing: -0.025em;
}

.landing-section h3 {
    font-size: 1.35em;
    line-height: 1.5em;
}

.landing-section h4 {
    font-size: 1.1em;
    line-height: 1.5em;
}

.landing-section h5 {
    font-size: 0.9em;
    line-height: 1.5em;
}

.landing-section h6 {
    font-size: 0.7em;
    line-height: 1.5em;
}

.landing-section hr {
    border: 0;
    border-bottom: solid 1px rgba(255, 255, 255, 0.3);
    margin: 3em 0;
}

.landing-section hr.major {
    margin: 4em 0;
}

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

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

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

/* Section/Article */

.landing-section header p {
    color: #ffffff;
    position: relative;
    margin: 0 0 1.5em 0;
}

.landing-section header h2 + p {
    font-size: 1.25em;
    margin-top: -1em;
    line-height: 1.75em;
}

.landing-section header h3 + p {
    font-size: 1.1em;
    margin-top: -0.8em;
    line-height: 1.75em;
}

.landing-section header h4 + p,
.landing-section header h5 + p,
.landing-section header h6 + p {
    font-size: 0.9em;
    margin-top: -0.6em;
    line-height: 1.5em;
}

.landing-section header.major {
    margin: 0 0 4em 0;
    position: relative;
    text-align: center;
}

.landing-section header.major:after {
    background: #e44c65;
    content: '';
    display: inline-block;
    height: 0.2em;
    max-width: 20em;
    width: 75%;
}

/* Image */

.landing-section .image {
    border-radius: 4px;
    border: 0;
    display: inline-block;
    position: relative;
    overflow: hidden;
}

    .landing-section .image:before {
        content: '';
        display: block;
        position: absolute;
        left: 0;
        top: 0;
        background-image: url("../../../Images/Landed/overlay.png");
        width: 100%;
        height: 100%;
        z-index: 1;
    }

    .landing-section .image img {
        border-radius: 4px;
        display: block;
    }

    .landing-section .image.left {
        float: left;
        margin: 0 1.5em 1em 0;
        top: 0.25em;
    }

    .landing-section .image.right {
        float: right;
        margin: 0 0 1em 1.5em;
        top: 0.25em;
    }

    .landing-section .image.left, .image.right {
        max-width: 40%;
    }

        .landing-section .image.left img, 
        .landing-section .image.right img {
            width: 100%;
        }

    .landing-section .image.fit {
        display: block;
        margin: 0 0 2em 0;
        width: 100%;
    }

        .landing-section .image.fit img {
            width: 100%;
        }

/* List */

.landing-section ol {
    list-style: decimal;
    margin: 0 0 2em 0;
    padding-left: 1.25em;
}

.landing-section ol li {
    padding-left: 0.25em;
}

.landing-section ul {
    list-style: disc;
    margin: 0 0 2em 0;
    padding-left: 1em;
}

.landing-section ul li {
    padding-left: 0.5em;
}

.landing-section ul.alt {
    list-style: none;
    padding-left: 0;
}

.landing-section ul.alt li {
    border-top: solid 1px rgba(255, 255, 255, 0.3);
    padding: 0.5em 0;
}

.landing-section ul.alt li:first-child {
    border-top: 0;
    padding-top: 0;
}

dl {
    margin: 0 0 2em 0;
}

/* Actions */

.landing-section ul.actions {
    display: -moz-flex;
    display: -webkit-flex;
    display: -ms-flex;
    display: flex;
    cursor: default;
    list-style: none;
    margin-left: -1em;
    padding-left: 0;
}

.landing-section ul.actions li {
    padding: 0 0 0 1em;
    vertical-align: middle;
}

.landing-section ul.actions.special {
    -moz-justify-content: center;
    -webkit-justify-content: center;
    -ms-justify-content: center;
    justify-content: center;
    width: 100%;
    margin-left: 0;
}

.landing-section ul.actions.special li:first-child {
    padding-left: 0;
}

.landing-section ul.actions.stacked {
    -moz-flex-direction: column;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-left: 0;
}

.landing-section ul.actions.stacked li {
    padding: 1.3em 0 0 0;
}

.landing-section ul.actions.stacked li:first-child {
    padding-top: 0;
}

.landing-section ul.actions.fit {
    width: calc(100% + 1em);
}

.landing-section ul.actions.fit li {
    -moz-flex-grow: 1;
    -webkit-flex-grow: 1;
    -ms-flex-grow: 1;
    flex-grow: 1;
    -moz-flex-shrink: 1;
    -webkit-flex-shrink: 1;
    -ms-flex-shrink: 1;
    flex-shrink: 1;
    width: 100%;
}

.landing-section ul.actions.fit li > * {
    width: 100%;
}

.landing-section ul.actions.fit.stacked {
    width: 100%;
}

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

    .landing-section ul.actions:not(.fixed) {
        -moz-flex-direction: column;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        margin-left: 0;
        width: 100% !important;
    }

    .landing-section ul.actions:not(.fixed) li {
        -moz-flex-grow: 1;
        -webkit-flex-grow: 1;
        -ms-flex-grow: 1;
        flex-grow: 1;
        -moz-flex-shrink: 1;
        -webkit-flex-shrink: 1;
        -ms-flex-shrink: 1;
        flex-shrink: 1;
        padding: 1em 0 0 0;
        text-align: center;
        width: 100%;
    }

    .landing-section ul.actions:not(.fixed) li > * {
        width: 100%;
    }

    .landing-section ul.actions:not(.fixed) li:first-child {
        padding-top: 0;
    }
}

/* Goto Next */

.goto-next {
    border: 0;
    bottom: 0;
    display: block;
    height: 5em;
    left: 50%;
    margin: 0 0 0 -5em;
    overflow: hidden;
    position: absolute;
    text-indent: 10em;
    white-space: nowrap;
    width: 10em;
    z-index: 1;
}

    .goto-next:before {
        background-image: url("../../../Images/Landed/arrow.svg");
        background-position: center center;
        background-repeat: no-repeat;
        background-size: contain;
        content: '';
        display: block;
        height: 1.5em;
        left: 50%;
        margin: -0.75em 0 0 -1em;
        position: absolute;
        top: 50%;
        width: 2em;
        z-index: 1;
    }

/* Spotlight */

.spotlight {
    background-attachment: fixed;
    background-position: center center;
    background-size: cover;
    box-shadow: 0 0.25em 0.5em 0 rgba(0, 0, 0, 0.25);
    min-height: 100vh;
    overflow: hidden;
    position: relative;
}

    .spotlight:nth-last-of-type(1) {
        z-index: 1;
    }

    .spotlight:nth-last-of-type(2) {
        z-index: 2;
    }

    .spotlight:nth-last-of-type(3) {
        z-index: 3;
    }

    .spotlight:nth-last-of-type(4) {
        z-index: 4;
    }

    .spotlight:nth-last-of-type(5) {
        z-index: 5;
    }

    .spotlight:nth-last-of-type(6) {
        z-index: 6;
    }

    .spotlight:nth-last-of-type(7) {
        z-index: 7;
    }

    .spotlight:nth-last-of-type(8) {
        z-index: 8;
    }

    .spotlight:nth-last-of-type(9) {
        z-index: 9;
    }

    .spotlight:nth-last-of-type(10) {
        z-index: 10;
    }

    .spotlight:nth-last-of-type(11) {
        z-index: 11;
    }

    .spotlight:nth-last-of-type(12) {
        z-index: 12;
    }

    .spotlight:nth-last-of-type(13) {
        z-index: 13;
    }

    .spotlight:nth-last-of-type(14) {
        z-index: 14;
    }

    .spotlight:nth-last-of-type(15) {
        z-index: 15;
    }

    .spotlight:nth-last-of-type(16) {
        z-index: 16;
    }

    .spotlight:nth-last-of-type(17) {
        z-index: 17;
    }

    .spotlight:nth-last-of-type(18) {
        z-index: 18;
    }

    .spotlight:nth-last-of-type(19) {
        z-index: 19;
    }

    .spotlight:nth-last-of-type(20) {
        z-index: 20;
    }

    .spotlight:before {
        content: '';
        display: block;
        height: 100%;
        left: 0;
        top: 0;
        width: 100%;
    }

    .spotlight .image.main {
        display: none;
    }

        .spotlight .image.main img {
            position: relative;
        }

    .spotlight .content {
        -moz-transform: translate(0,0);
        -webkit-transform: translate(0,0);
        -ms-transform: translate(0,0);
        transform: translate(0,0);
        -moz-transition: -moz-transform 1s ease, opacity 1s ease;
        -webkit-transition: -webkit-transform 1s ease, opacity 1s ease;
        -ms-transition: -ms-transform 1s ease, opacity 1s ease;
        transition: transform 1s ease, opacity 1s ease;
        background: rgba(23, 24, 32, 0.95);
        border-style: solid;
        opacity: 1;
        position: absolute;
    }

    .spotlight .goto-next {
        -moz-transform: translate(0,0);
        -webkit-transform: translate(0,0);
        -ms-transform: translate(0,0);
        transform: translate(0,0);
        -moz-transition: -moz-transform 0.75s ease, opacity 1s ease-in;
        -webkit-transition: -webkit-transform 0.75s ease, opacity 1s ease-in;
        -ms-transition: -ms-transform 0.75s ease, opacity 1s ease-in;
        transition: transform 0.75s ease, opacity 1s ease-in;
        -moz-transition-delay: 0.5s;
        -webkit-transition-delay: 0.5s;
        -ms-transition-delay: 0.5s;
        transition-delay: 0.5s;
        opacity: 1;
    }

    .spotlight.top .content, .spotlight.bottom .content {
        left: 0;
        padding: 5.1em 0 3.1em 0;
        width: 100%;
    }

    .spotlight.top .content {
        border-bottom-width: 0.35em;
        top: 0;
    }

    .spotlight.bottom .content {
        border-top-width: 0.35em;
        bottom: 0;
    }

    .spotlight.left .content, .spotlight.right .content {
        height: 101%;
        padding: 6em 3em;
        top: 0;
        width: 28em;
    }

    .spotlight.left .content {
        border-right-width: 0.35em;
        left: 0;
    }

    .spotlight.right .content {
        border-left-width: 0.35em;
        right: 0;
    }

    .spotlight.style1 .content {
        border-color: #e44c65;
    }

    .spotlight.style2 .content {
        border-color: deeppink; /*#5480f1;*/
    }

    .spotlight.style3 .content {
        border-color: #588E87; /* #39c088; */
    }

    .spotlight.inactive .content {
        opacity: 0;
    }

    .spotlight.inactive .goto-next {
        -moz-transform: translate(0,1.5em);
        -webkit-transform: translate(0,1.5em);
        -ms-transform: translate(0,1.5em);
        transform: translate(0,1.5em);
        opacity: 0;
    }

    .spotlight.inactive.top .content {
        -moz-transform: translate(0,-5em);
        -webkit-transform: translate(0,-5em);
        -ms-transform: translate(0,-5em);
        transform: translate(0,-5em);
    }

    .spotlight.inactive.bottom .content {
        -moz-transform: translate(0,5em);
        -webkit-transform: translate(0,5em);
        -ms-transform: translate(0,5em);
        transform: translate(0,5em);
    }

    .spotlight.inactive.left .content {
        -moz-transform: translate(-5em,0);
        -webkit-transform: translate(-5em,0);
        -ms-transform: translate(-5em,0);
        transform: translate(-5em,0);
    }

    .spotlight.inactive.right .content {
        -moz-transform: translate(5em,0);
        -webkit-transform: translate(5em,0);
        -ms-transform: translate(5em,0);
        transform: translate(5em,0);
    }

    body.is-touch .spotlight {
        background-attachment: scroll;
    }

/* Dropotron */

.dropotron {
    background: rgba(39, 40, 51, 0.965);
    border-radius: 4px;
    box-shadow: 0 0.075em 0.35em 0 rgba(0, 0, 0, 0.125);
    list-style: none;
    margin-top: calc(-0.25em + 1px);
    min-width: 12em;
    padding: 0.25em 0;
}

    .dropotron > li {
        border-top: solid 1px rgba(255, 255, 255, 0.035);
        padding: 0;
    }

        .dropotron > li a, .dropotron > li span {
            border: 0;
            color: rgba(255, 255, 255, 0.75);
            display: block;
            padding: 0.1em 1em;
            text-decoration: none;
        }

        .dropotron > li:first-child {
            border-top: 0;
        }

        .dropotron > li.active > a, .dropotron > li.active > span {
            color: #e44c65;
        }

    .dropotron.level-0 {
        font-size: 0.8em;
        margin-top: 1em;
    }

        .dropotron.level-0:before {
            -moz-transform: rotate(45deg);
            -webkit-transform: rotate(45deg);
            -ms-transform: rotate(45deg);
            transform: rotate(45deg);
            background: #272833;
            content: '';
            display: block;
            height: 1em;
            position: absolute;
            right: 1.5em;
            top: -0.5em;
            width: 1em;
        }

/* Banner */

#banner {
    background-attachment: fixed;
    background-color: #272833;
    background-image: url("../../../Images/guitar-banner-full.jpg");
    background-position: center center;
    background-size: cover;
    box-shadow: 0 0.25em 0.5em 0 rgba(0, 0, 0, 0.25);
    min-height: 100vh;
    position: relative;
    text-align: center;
    z-index: 21;
}

    #banner:before {
        content: '';
        display: inline-block;
        height: 100vh;
        vertical-align: middle;
        width: 1%;
    }

    #banner:after {
        background-image: -moz-linear-gradient(top, rgba(23, 24, 32, 0.5), rgba(23, 24, 32, 0.35)), url("../../../Images/Landed/overlay.png");
        background-image: -webkit-linear-gradient(top, rgba(23, 24, 32, 0.5), rgba(23, 24, 32, 0.35)), url("../../../Images/Landed/overlay.png");
        background-image: -ms-linear-gradient(top, rgba(23, 24, 32, 0.5), rgba(23, 24, 32, 0.35)), url("../../../Images/Landed/overlay.png");
        background-image: linear-gradient(top, rgba(23, 24, 32, 0.5), rgba(23, 24, 32, 0.35)), url("../../../Images/Landed/overlay.png");
        content: '';
        display: block;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
    }

    #banner .content {
        display: inline-block;
        margin-right: 1%;
        max-width: 95%;
        padding: 6em;
        position: relative;
        text-align: right;
        vertical-align: middle;
        z-index: 1;
    }

        #banner .content header {
            display: inline-block;
            vertical-align: middle;
        }

        #banner .content .image {
            border-radius: 100%;
            display: inline-block;
            height: 18em;
            margin-left: 3em;
            vertical-align: middle;
            width: 18em;
        }

            #banner .content .image img {
                border-radius: 100%;
                display: block;
                width: 100%;
            }

body.is-touch #banner {
    background-attachment: scroll;
}

/* Large */

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

    /* Spotlight */

    .spotlight.top .content {
        padding: 3.825em 0 1.825em 0;
    }

    .spotlight.bottom .content {
        padding: 3.825em 0 2.95em 0;
    }

    .spotlight.left .content, .spotlight.right .content {
        padding: 4.5em 2.5em;
        width: 25em;
    }

    /* Dropotron */

    .dropotron.level-0 {
        font-size: 1em;
    }

    /* Banner */

    #banner .content {
        padding: 4.5em;
    }
}

/* Medium */

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

    /* Spotlight */

    .spotlight {
        background-attachment: scroll;
        height: auto;
    }

        .spotlight .image.main {
            display: block;
            margin: 0;
            max-height: 40vh;
            overflow: hidden;
        }

        .spotlight .content {
            background-color: #1c1d26;
            border-width: 0 !important;
            border-top-width: 0.35em !important;
            bottom: auto !important;
            left: auto !important;
            padding: 4.5em 2.5em 2.5em 2.5em !important;
            position: relative;
            right: auto !important;
            text-align: center;
            top: auto !important;
            width: 100% !important;
        }

            .spotlight .content ul li {
                text-align: left;
            }

        .spotlight .goto-next {
            display: none;
        }

    /* Banner */

    #banner {
        background-attachment: scroll;
    }

        #banner .goto-next {
            height: 7em;
        }

        #banner .content {
            padding: 9em 0;
            text-align: center;
        }

            #banner .content header {
                display: block;
                margin: 0 0 2em 0;
                text-align: center;
            }

            #banner .content .image {
                margin: 0;
            }
}

/* Small */

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

    /* Basic */

    html, body {
        overflow-x: hidden;
    }

    /* Goto Next */

    .goto-next:before {
        height: 0.8em;
        margin: -0.4em 0 0 -0.6em;
        width: 1.2em;
    }

    /* Spotlight */

    .spotlight {
        box-shadow: 0 0.125em 0.5em 0 rgba(0, 0, 0, 0.25);
    }

        .spotlight .image.main {
            max-height: 60vh;
        }

        .spotlight .content {
            border-top-width: 0.2em !important;
            padding: 3.25em 1.5em 1.25em 1.5em !important;
        }

    /* Banner */

    #banner {
        box-shadow: 0 0.125em 0.5em 0 rgba(0, 0, 0, 0.25);
        min-height: calc(100vh - 44px);
    }

        #banner:before {
            height: calc(100vh - 44px);
        }

        #banner .content {
            padding: 4.0625em 1.5em 4.875em 1.5em;
        }

            #banner .content header h2 {
                font-size: 1.5em;
            }

            #banner .content .image {
                height: 9em;
                width: 9em;
            }

    /* Nav */

    #page-wrapper {
        -moz-backface-visibility: hidden;
        -webkit-backface-visibility: hidden;
        -ms-backface-visibility: hidden;
        backface-visibility: hidden;
        -moz-transition: -moz-transform 0.5s ease;
        -webkit-transition: -webkit-transform 0.5s ease;
        -ms-transition: -ms-transform 0.5s ease;
        transition: transform 0.5s ease;
        padding-bottom: 1px;
        /*				padding-top: 44px !important;
*/
    }
}

/* XSmall */

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

    /* Basic */

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

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

    /* Spotlight */

    .spotlight .image.main {
        max-height: 50vh;
    }

    .spotlight .content {
        padding: 3em 1.25em 1em 1.25em !important;
    }

    /* Banner */

    #banner .content {
        padding: 3em 1.5625em 5.25em 1.5625em;
    }
}
