#intro {
    background-color: rgba(188, 181, 185, 0.1);
    background-color: var(--warm-gray-10pc);
}

#demo {
    width: 100%;

    display: -webkit-flex;
    -webkit-flex-direction: column;
    -webkit-justify-content: space-between;
    -webkit-align-items: center;

    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
}

#tagline {
    width: 100%;
    padding: 60px 0;
    position: relative;

    background-image: url(../img/bgPath.svg),
                      url(../img/bgPath.svg),
                      url(../img/bgPath.svg),
                      url(../img/bgPath.svg),
                      url(../img/bgPath.svg);
    background-position: top 43px right calc(18.75vw + 50px),
                         top 43px right calc(18.75vw + 1256px),
                         top 43px right calc(18.75vw + 2462px),
                         top 43px right calc(18.75vw + 3668px),
                         top 43px right calc(18.75vw + 4874px);
    background-repeat: no-repeat;
}

h1 {
    position: relative;
    z-index: 1;
    margin-bottom: 12px;
    text-align: center;
    font-size: 30px;
    line-height: 39px;
    font-weight: 500;
    color: #574751;
    color: var(--maroon);
}

h2 {
    padding: 0 20px;
    text-align: center;
    font-weight: normal;
    font-size: 18px;
    line-height: 24px;
    color: #574751;
    color: var(--maroon);
}

#zeplin {
    position: absolute;
    right: calc(18.75vw + 18px);
    top: 54px;
}

#sneakPeek {
    /*width: 62.5vw;
    height: calc(62.5vw / 900 * 425);*/
    width: 850px;
    height: 425px;
    position: relative;

    background-color: #fff;
    border-radius: 4px;
    box-shadow: 0 4px 12px 0 rgba(87, 71, 81, 0.2);
    box-shadow: 0 4px 12px 0 var(--maroon-20pc);
}

#sneakPeek > img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
    border-radius: 5px;
}

#sneakPeek #cursor {
    width: 3.5%;
    height: 7%;
    top: 78%;
    left: 62%;
    z-index: 5;
    transition: all 750ms ease 400ms;
}

#sneakPeek.all img.all,
#sneakPeek.toTypeface img.all,
#sneakPeek.typeface img.typeface,
#sneakPeek.toAsset img.typeface,
#sneakPeek.asset img.asset,
#sneakPeek.toNote img.asset,
#sneakPeek.note img.note,
#sneakPeek.toGuideline img.note,
#sneakPeek.guideline img.guideline,
#sneakPeek.toDashboard img.guideline,
#sneakPeek.dashboard img.all,
#sneakPeek.toAll img.all {
    z-index: 1;
}

#sneakPeek.toAll #cursor,
#sneakPeek.all #cursor {
    top: 78%;
    left: 62%;
}

#sneakPeek.toTypeface #cursor,
#sneakPeek.typeface #cursor {
    top: 43%;
    left: 41%;
}

#sneakPeek.toAsset #cursor,
#sneakPeek.asset #cursor {
    top: 67%;
    left: 56%;
}

#sneakPeek.toNote #cursor,
#sneakPeek.note #cursor {
    top: 33.5%;
    left: 48.5%;
}

#sneakPeek.toGuideline #cursor,
#sneakPeek.guideline #cursor {
    top: 5%;
    left: 53%;
}

#sneakPeek.toDashboard #cursor,
#sneakPeek.dashboard #cursor {
    top: 5%;
    left: 45%;
}

#watchDemoButton {
    position: absolute;
    bottom: -36px;
    left: calc(50% - 36px);
    width: 72px;
    height: 72px;
    border-radius: 50%;
    background-color: #fff;
    z-index: 10;
}

#watchDemoButton:active {
    background-color: #fff;
}

#watchDemoButton::after {
    content: "";
    display: block;
    position: absolute;
    left: 30px;
    top: calc(50% - 13px);
    width: 20px;
    height: 26px;
    background-image: url(../img/icPlay.svg);
    background-size: contain;
    background-repeat: no-repeat;
}

#sketch {
    color: #ee6723;
    color: var(--peach);
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    align-items: center;
}

#photoshop {
    color: #48befd;
    color: var(--photoshop);
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    align-items: center;
}

#sketch img,
#photoshop img {
    width: 24px;
    height: 24px;
    position: relative;
    margin-left: 2px;
}

#photoshop img {
    top: 1px;
}

#videoOverlay {
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 1000;

    display: -webkit-flex;
    -webkit-justify-content: center;
    -webkit-align-items: center;

    display: flex;
    justify-content: center;
    align-items: center;

    background-color: rgba(87, 71, 81, 0.95);
    background-color: var(--maroon-95pc);
}

#videoOverlay.hidden {
    display: none;
}

#youtubePlayer {
    max-width: 800px;
    width: 800px;
    max-height: 530px;
    height: 530px;
}

#featureSummary {
    max-width: 630px;
    width: 100%;
    margin: 72px auto 24px;
    padding: 0 20px;
    text-align: center;
    line-height: 24px;
    font-size: 18px;
    color: #574751;
    color: var(--maroon);
}

button,
a.button {
    width: 240px;
    line-height: 40px;
    background-color: #ee6723;
    background-color: var(--peach);
    color: #fff;
}

button:active,
a.button:active {
    background-color: #ee6723;
    background-color: var(--peach);
}

#getStartedButtonContainer {
    position: relative;
}

#getStartedButtonContainer a {
    display: block;
    margin: 0 auto;
}

#getStartedButtonContainer a:hover + #buttonHoverEffect {
    opacity: 1;
}

#buttonHoverEffect {
    position: absolute;
    top: -33px;
    left: calc(50% - 153px);
    z-index: -1;

    /* prevent font flickering, remove when Safari hw accel. properly */
    -webkit-transform: translate3d(0, 0, 0);

    will-change: opacity;
    opacity: 0;
    transition: opacity 200ms ease-out;
}

#availability {
    padding: 0 20px;
    text-align: center;
    margin-top: 12px;
    line-height: 18px;
    font-size: 12px;
    color: #bcb5b9;
    color: var(--warm-gray);
}

#zeplinLove {
    display: -webkit-flex;
    -webkit-flex-direction: column;
    -webkit-align-items: center;

    display: flex;
    flex-direction: column;
    align-items: center;

    margin: 84px 0;
    text-align: center;
}

#zeplinLove blockquote {
    max-width: 1000px;
    padding: 0 20px;
    line-height: 34px;
    font-size: 26px;
    font-style: italic;
    color: #574751;
    color: var(--maroon);
}

#zeplinLove .author {
    display: -webkit-flex;
    -webkit-align-items: center;

    display: flex;
    align-items: center;

    margin-top: 12px;
}

.author img {
    width: 48px;
    height: 48px;
    border-radius: 50%;
}

.author .authorInfo {
    margin-left: 16px;
    text-align: left;
}

.author .authorNameTitle {
    line-height: 19px;
    font-size: 14px;
    color: #bcb5b9;
    color: var(--warm-gray);
}

.author .authorCompany {
    height: 18px;
    margin-top: 2px;
    line-height: 19px;
    font-size: 14px;
    color: #ff3a6b;
}

.author .authorCompany a {
    color: #ff3a6b;
}

#loveCollection {
    position: relative;
    width: 450px;
    margin-top: 36px;
    padding: 0 20px;
    line-height: 24px;
    font-size: 18px;
    color: #c8cf2d;
    color: var(--light-green);
}

#loveCollection:active {
    background-color: transparent;
}

#tll {
    white-space: nowrap;
}

#loveCollection .love {
    fill: #c8cf2d;
    fill: var(--light-green);
}

#loveCollection .love:first-of-type {
    -webkit-transform: translate(8px, 4px) scale(1.5) rotate(-14deg) ;
    transform: translate(8px, 4px) scale(1.5) rotate(-14deg);
}

#loveCollection .love:last-of-type {
    -webkit-transform: translate(22px, -6px) scale(2) rotate(26deg);
    transform: translate(22px, -6px) scale(2) rotate(26deg);
}

#companies {
    position: relative;
    margin-bottom: 72px;
    text-align: center;
}

#companies > a {
    display: none;
    -webkit-align-items: center;
    -webkit-justify-content: center;

    align-items: center;
    justify-content: center;

    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 30px 0;

    background-color: #c8cf2d;
    background-color: var(--light-green);

    text-align: center;
    line-height: 32px;
    font-size: 24px;
    font-style: italic;
    color: #fff;
}

#companies:hover > a {
    display: -webkit-flex;
    display: flex;
}

#companies img {
    margin-bottom: 24px;
}

#companies p {
    padding: 0 20px;
    line-height: 19px;
    font-size: 14px;
    color: #bcb5b9;
    color: var(--warm-gray);
}

#companies .logos {
    max-width: 900px;
    width: 100%;
}

#benefits {
    display: -webkit-flex;
    display: flex;
    width: 100%;
    position: relative;
}

#benefits .love {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    z-index: 10;
}

#designer,
#developer {
    -webkit-flex: 1;
    flex: 1;
    height: 120px;
    padding: 0 24px;

    display: -webkit-flex;
    -webkit-align-items: center;

    display: flex;
    align-items: center;
    cursor: pointer;
}

#developer .dds {
    min-width: 20px;
    -webkit-flex: 0 1 92px;
    flex: 0 1 92px;
}

#designer .dds {
    min-width: 24px;
    -webkit-flex: 0 1 96px;
    flex: 0 1 96px;
}

.hns {
    position: relative;
    top: 4px;
}

.hns h3 {
    margin-bottom: 6px;
    font-size: 24px;
    line-height: 32px;
    font-weight: 500;
    color: #fff;
}

.hns h3::after {
    display: block;
    font-size: 18px;
    line-height: 24px;
    font-weight: 500;
    color: #fff;
}

#developer .hns h3::after {
    content: "Show me how Zeplin makes my job easier";
}

#designer .hns h3::after {
    content: "Show me how Zeplin can save my time";
}

.hns,
#benefits img {
    z-index: 1;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

#designer {
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    text-align: left;
    background-color: #fecf33;
    background-color: var(--yellow);
}

#designer:active {
    background-color: #fecf33;
    background-color: var(--yellow);
}

#developer {
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    text-align: right;
    background-color: #fdbd39;
    background-color: var(--light-orange);
}

#developer:active {
    background-color: #fdbd39;
    background-color: var(--light-orange);
}

#share {
    display: -webkit-flex;
    -webkit-flex-direction: column;
    -webkit-align-items: center;

    display: flex;
    flex-direction: column;
    align-items: center;

    margin: 60px 0;
}

#share h2 {
    text-align: center;
    font-weight: normal;
    line-height: 19px;
    font-size: 14px;
    color: #574751;
    color: var(--maroon);
}

#share .love {
    width: 13px;
}

#social {
    display: -webkit-flex;
    -webkit-justify-content: space-between;
    -webkit-align-items: center;

    display: flex;
    justify-content: space-between;
    align-items: center;

    width: 75px;
    margin-top: 12px;
}

#shareZeplinOnTwitter {
    height: 26px;
    cursor: pointer;
}

#twitterTrigger {
    width: 0;
    height: 0;
    display: none;
    visibility: hidden;
}

#shareZeplinOnFacebook {
    height: 30px;
    cursor: pointer;
}

footer .mixpanel {
    width: 114px;
    height: 36px;
}

@media screen and (max-width: 900px) {
    #tagline {
        padding: 36px 0 24px 0;
        background-image: none;
    }

    #zeplin {
        left: 50%;
        top: 0;
        width: 48px;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    }

    #buttonHoverEffect {
        display: none;
    }
}

@media screen and (max-width: 890px) {
    #sneakPeek {
        width: calc(100% - 40px);
        height: calc(50vw - 20px);
    }
}

@media screen and (max-width: 866px) {
    #zeplinLove blockquote {
        font-size: 24px;
        line-height: 32px;
    }

    #benefits {
        -webkit-flex-direction: column-reverse;
        flex-direction: column-reverse;
    }

    #benefits .love {
        width: 44px;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    }

    #designer,
    #developer {
        -webkit-flex-basis: 92px;
        flex-basis: 92px;

        -webkit-flex-direction: row-reverse;
        -webkit-justify-content: space-between;

        flex-direction: row-reverse;
        justify-content: space-between;

        padding: 0 20px;
    }

    #benefits img {
        align-self: flex-end;
    }

    #designer .dds,
    #developer .dds {
        -webkit-flex: 0 0 24px;
        flex: 0 0 24px;
    }

    #designer .hns,
    #developer .hns {
        margin: 0;
        flex: 1;
    }

    .hns h3 {
        margin-bottom: 0.6px;
        font-size: 18px;
        line-height: 24px;
    }

    .hns h3::after {
        font-size: 14px;
        line-height: 19px;
    }

    #share {
        margin: 36px 0 0 0;
    }
}

@media screen and (max-width: 840px) {
    h1 {
        padding: 0 20px;
    }

    #youtubePlayer {
        width: calc(100% - 40px);
        max-height: calc(100vh - 40px);
        height: calc((100vw - 40px) * 530 / 800);
    }
}

@media screen and (max-width: 825px) {
    footer .mixpanel {
        display: none;
    }
}

@media screen and (max-width: 600px) {
    h1 {
        line-height: 32px;
        font-size: 24px;
    }

    #sneakPeek {
        background-size: 10px auto, contain, contain;
    }

    #sneakPeek.firstFrame {
        background-size: 10px auto, contain, 0;
    }

    #sneakPeek.secondFrame {
        background-size: 10px auto, 0, contain;
    }

    #companies .logos {
        max-width: 296px;
    }
}

@media screen and (width: 568px) {
    #sneakPeek {
        width: 528px;
        height: 250px;
    }
}

@media screen and (max-width: 567px) {
    #sneakPeek {
        width: calc(100% - 40px);
        height: calc(100vw * 342 / 722 - 40px * 342 / 722);
    }
}

@media screen and (max-width: 520px) {
    #companies p {
        margin-top: 6px;
    }
}

@media screen and (max-width: 464px) {
    #watchDemoButton {
        bottom: -24px;
        left: calc(50% - 24px);
        width: 48px;
        height: 48px;
    }

    #watchDemoButton::after {
        left: 20px;
        top: calc(50% - 9px);
        width: 13px;
        height: 18px;
    }

    #featureSummary {
        line-height: 21px;
        font-size: 16px;
        margin-top: 36px;
    }

    #getStartedButtonContainer {
        padding: 0 20px;
    }

    button,
    a.button {
        width: 100%;
    }
}

@media screen and (max-width: 436px) {
    #zeplinLove {
        margin: 72px 0;
    }

    #loveCollection {
        width: auto;
        line-height: 21px;
        font-size: 16px;
    }

    #loveCollection .love:first-of-type {
        -webkit-transform: translate(0, 2px) scale(0.958) rotate(-14deg) ;
        transform: translate(0, 2px) scale(0.958) rotate(-14deg);
    }

    #loveCollection .love:last-of-type {
        -webkit-transform: translate(6px, -4px) scale(1.25) rotate(26deg);
        transform: translate(6px, -4px) scale(1.25) rotate(26deg);
    }

    #share h2 {
        line-height: 19px;
        font-size: 14px;
    }
}

@media screen and (max-width: 356px) {
    #developer .hns h3::after {
        content: "How Zeplin makes my job easier";
    }

    #designer .hns h3::after {
        content: "How Zeplin can save me time";
    }
}

@media screen and (width: 320px) {
    #sneakPeek {
        width: 280px;
        height: 133px;
    }
}
