:root {
    --pri-color: #2B3033;
    --sec-color: #284050;
    --accent-color: #e6e6e6;
}

body {
    font-size: 20px;
    font-family: monospace;
    margin: 0;
    padding: 0;
    color: var(--accent-color);
    background-image: linear-gradient(var(--sec-color), var(--pri-color));
    line-height: 1.5rem;
    text-wrap: balance;
}
main {
    justify-content: center;
    justify-items: stretch;
    text-align: center;
    align-items: center;
    align-content: center;
    padding: 1rem;
    margin: 1rem auto;
    max-width: 1050px;
}
.indexMain {
    display: grid;
    grid-template-columns: 1fr 1fr;
}
div {
    padding: 0 4px;
}
header {
    background-color: var(--pri-color);
}
footer {
    background-color: var(--sec-color);
    p, h2, div {
        padding: 2px 5px;
    }
}
.base {
    display: flex;
    padding: 1rem 2rem;
    margin: 0;
    justify-content: space-between;
    align-items: center;
    align-content: center;
    h2, h1 {
        margin: 0;
    }
}
a {
    text-decoration: none;
    color: inherit;
    padding: 10px;
    margin: 0;
}
a:hover {
    text-decoration: underline;
}
.proj {
    display: grid;
    grid-template-columns: 9.3fr 1fr;
    justify-content: space-between;
    text-align: left;
}
.rest {
    display: grid;
    grid-template-columns: 1fr;
    line-height: 1.7rem;
    text-align: left;
}
.split {
    display: grid;
    grid-template-columns: 1fr 1fr;
}
.boxes {
    border: 2px solid var(--accent-color);
    background-color: rgba(100, 100, 100, 0.1);
    margin: 1rem;
    padding: 5px 10px;
    border-radius: 10px;
    align-content: space-between;
}
.hobbies {
    align-content: normal;
}
.head {
    display: flex;
    align-content: space-between;
    align-items: center;
}
@media only screen and (max-width: 900px) {
    .base {
        flex-direction: column;
        line-height: 2rem;
    }
    .boxes {
        grid-column: span 2;
    }
    .title {
        grid-column: span 2;
    }
    .head {
        flex-direction: column;
    }
}
.large {
    grid-column: span 2;
}
.view {
    grid-row: span 2;
    text-align: end;
}
.right {
    text-align: right;
}
.right2 {
    float: right;
    margin: 0 0 0 10px;
}
ul {
    margin: 2px;
    padding: 0 5px;
    list-style-position: inside;
}
h3, h4, p {
    margin: .25rem;
}
img {
    object-fit: contain;
    width: auto;
    height: 100%;
    max-height: 250px;
    border-radius: 4px;
    margin: 4px 2px;
}
h1 {
    font-size: 1.9rem;
}
hr {
    width: 30%;
    border: none;
    border-top: 5px dashed var(--accent-color);
    margin: 1rem auto;
}
.face {
    border-radius: 100px;
    border: 2px solid var(--pri-color);
}