.container {
    width: 100%;
    max-width: 500px;
    margin: auto;
    height: 100%;
    display: flex;
    padding-top: 17px;
    padding-bottom: 17px;
    gap: 34px;
    flex-direction: column;
}

.hover {
    position: relative;
    display: inline-block;
    overflow: hidden;
}

.hover::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -100%;
    width: 100%;
    height: 100%;
    backdrop-filter: invert(1);
    -webkit-backdrop-filter: invert(1);
    transition: bottom 270ms ease;
    pointer-events: none;
}

/* 호버 시 */
.hover:hover::after {
    bottom: 0;
}

.titleBox {
    display: flex;
    flex-direction: column;
}

.titleBox .title {
    font-size: 1.77rem;
    color: #fff;
    font-weight: 500;
}

.titleBox .subtitle {
    font-size: 1.01rem;
    color: #888;
}

.links {
    display: flex;
    flex-direction: row;
    gap: 13px;
}

.links a {
    color: #fff;
    text-decoration: none;
}

.context {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.context span {
    font-size: 1.01rem;
    color: #aaa;
}

.context .white {
    color: #fff !important;
}

.projects {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.projectsTitle {
    font-size: 1.4rem;
    color: #fff;
    font-weight: 400;
    margin-bottom: 10px;
}

.project {
    padding: 5px 7px;
    border-bottom: #fff solid .5px;
    text-decoration: none;
    gap: 7px;
    display: flex;
    flex-direction: column;
}

.project .title {
    font-size: 1.35rem;
    color: #fff;
    font-weight: 500;
}

.project .graytext {
    font-size: .95rem;
    color: #888;
}

.project .properties {
    display: flex;
    flex-direction: row;
    gap: 7px;
}

.project .properties span {
    border: #000 solid 0px;
    border-radius: 7px;
    background-color: #2f2f2f;
    color: #888;
    font-size: .77rem;
    padding: 5px 7px;
}