/* CSS Reset */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html,
body {
    height: 100%;
}

body {
    font-family: sans-serif, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    line-height: 1.6;
    color: #333;
    background-color: #e5e5e5;
}

a {
    color: inherit;
    text-decoration: none;
}

button {
    cursor: pointer;
    border: none;
    background: none;
    font: inherit;
}

input,
textarea,
select {
    font: inherit;
}
h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 400;
}
ul,
ol {
    list-style: none;
}

img,
video {
    max-width: 100%;
    height: unset;
    display: block;
}
.menu {
    position: sticky;
    top: 0;
    left: 0;
    width: 100%;
    height: 4rem;

    display: flex;
    flex-flow: column;
    justify-content: flex-end;
    padding: 0 2rem;
    background: transparent;
    z-index: 1000;
}
.menu::before {
    content: '';
    position: absolute;
    inset: 0;

    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);

    background: transparent;

    mask-image: linear-gradient(
        to bottom,
        black 0%,
        black 35%,
        transparent 100%
    );
    -webkit-mask-image: linear-gradient(
        to bottom,
        black 0%,
        black 35%,
        transparent 100%
    );

    pointer-events: none;
    z-index: 0;
}
.menu > * {
    position: relative;
    z-index: 1;
}

.menu__list {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 2rem;
}
.menu__link--brand {
    font-size: 2rem;
    line-height: 0;
    text-transform: uppercase;
}
.menu__sublist {
    display: flex;
    gap: 1rem;
    align-items: end;
}
.menu__sublink {
    font-size: 1.5rem;
}
.menu__sublink--active {
    text-decoration: underline;
    text-underline-offset: 5px;
}
/* content general */
.main {
    padding: 2rem;
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 2rem;
}
.article {
    height: calc(100vh - 6rem);
    padding: 1rem 0 2rem 0;
    width: 100%;
    display: flex;
    flex-flow: column;
    justify-content: space-between;
}
.article__title {
    font-size: 2rem;
    text-transform: uppercase;
}
.article__link:hover {
    color: #ff3900;
}
.article__image {
    object-fit: cover;
}
/* left */
.section__left .article__paragraph {
    max-width: 50ch;
    font-size: 2rem;
    line-height: 1;
}
.section__left .article__list-item {
    line-height: 2;
}
.article__image--about {
    aspect-ratio: 3 / 2;
    max-width: 50%;
}
.section__left .article__list {
    list-style-type: square;
}
.article__list--menu .article__link {
    font-size: 2rem;
    text-transform: uppercase;
}
/* right */
.section__right .article__list {
    position: sticky;
    top: 5rem;
    line-height: 1;
}
.section__right .article__paragraph {
    max-width: 50ch;
    font-size: 1.5rem;
    line-height: 1.3;
}
/* work */
.article--projects {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
}
.article__project {
    height: max-content;
}
.article__image--project,
.article__video--project {
    aspect-ratio: 1 / 1;
    object-fit: cover;
}
.section__right--work article {
    height: 100%;
}
.wrapper--project {
    display: flex;
    justify-content: space-between;
}
.article__image--fs,
.article__video--fs {
    max-height: 100%;
    object-fit: cover;
}
