.frontpage-intro {
    margin-top: 2.5rem;
    margin-bottom: 3rem;
}

.frontpage-intro__inner {
    padding: 1.25rem;
    border-radius: .5rem;
    box-shadow: 0 0 2px 1px #e5edf1;
    color: var(--color-primary-darker);
    background-color: #e5edf1;
}

.frontpage-intro__title {
    font-size: 1.75rem;
    font-weight: 800;
    line-height: 1.2;
}

.frontpage-intro__subtext {
    font-size: .875rem;
    font-weight: 300;
}

.frontpage-intro__inner p {
    max-width: 62.5rem;
    font-size: .875rem;
    font-weight: 300;
}


.frontpage-content {
    margin-bottom: 3rem;
}

.frontpage-content__category-list {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    column-gap: 1.5rem;
    row-gap: 1rem;
    margin-top: .75rem;
}

.frontpage-content__categories {
    /* width: fit-content; */
    /* padding: 1.25rem; */
    /* border-radius: .5rem; */
    /* box-shadow: 0 0 2px 2px #e5edf1; */
    /* color: var(--color-primary-darker); */
    /* background-color: var(--color-surface); */
}

.frontpage-content-categories__title {
    font-size: 1.5rem;
    font-weight: 700;
}

.frontpage-content__category {
    display: flex;
    flex-direction: column;
    flex-basis: 25rem;
    padding-top: .75rem;
    padding-bottom: .75rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    border-radius: .5rem;
    text-decoration: none;
    box-shadow: 0 0 2px 1px rgb(0, 0, 0, 0.1);
    /* color: var(--color-primary-darker); */
    /* background-color: #dae8ef; */
}

.frontpage-content__category:hover {
    box-shadow: 0 0 8px 2px rgb(0, 0, 0, 0.15);
}

.frontpage-content__category img {
    border-radius: .25rem;
    object-fit: cover;
}

.frontpage-content__category > span {
    display: block;
    margin-top: .5rem;
    font-size: 1.25rem;
    font-weight: 800;
}

.frontpage-content__category p {
    font-size: .875rem;
    font-weight: 300;
    margin-bottom: .5rem;
}

.frontpage-content__category a {
    padding-left: 1rem;
    padding-right: 1rem;
    width: fit-content;
    margin-top: auto;
    /* margin-left: auto; */
}

.frontpage-content__top {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-end;
    column-gap: 5rem;
    margin-top: 4rem;
    margin-bottom: .5rem;
}

.frontpage-content__title {
    font-size: 1.5rem;
    font-weight: 700;
}

.frontpage-content__link {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    column-gap: .5rem;
    row-gap: .25rem;
    align-items: center;
    text-decoration: none;
}