.welcome {
    display: grid;
    grid-template-columns: 1fr 600px;
    margin: 196 auto 48 auto;
    width: 1200;
    max-width: 100%;
    padding: 48;
    box-sizing: border-box;
    
}

@media screen and (max-width: 800px) {
    .welcome {
        margin: 128 auto 48 auto;
        display: block;
    }
}

.welcome .left {
    display: grid;
    grid-template-rows: 1fr auto auto auto auto auto auto auto 1fr;
}

.welcome .left h1 {
    font-size: 3.2rem;
    font-weight: 800;
    letter-spacing: 1px;
    margin: auto 0;
}

.welcome .left h2 {
    margin: 24 0 24 0;
    font-weight: 400;
    font-size: 1.6rem;
}


.welcome .left a {
    font-size: 1.1rem;
    margin: 8 0;
    display: grid;
    grid-template-columns: 36px auto;
}

.welcome .left a i {
    font-size: 1.4rem;
    color: var(--primary);
}

.welcome .left a span {
    text-decoration: underline;
}

.welcome .left img {
    width: 220;
    height: 220;
    margin: 36 0 0;
}

.welcome .right {
    width: 100%;
    display: contents;
}

.welcome .right .wrapper {
    margin: auto;
}

.welcome .right canvas {
    margin: auto;
    cursor: grab;
}

