publication-item {
    display: table;
    min-height: 29.375rem;
    position: relative;
    width: 100%;
    box-sizing: border-box;
}

publication-item figure {
    background-size: cover !important;
    background-position: center !important;
    display: block;
    margin: 0;
}

publication-item text-content {
    display: block;
}

publication-item h3 {
    font-size: 1.75rem;
    line-height: 2.313rem;
}

publication-item h3 a {
    color: #231E20;
    transition: color 350ms ease;
}

publication-item h3 + span {
    display: block;
    font-size: 1.375rem;
}

publication-item p {
    line-height: 190%;
}

publication-item p:first-of-type {
    margin: 0 !important;
}

publication-item a.btn {
    opacity: 0.3;
    transition: opacity 350ms ease;
}

publication-item h3 a:hover {
    color: #01A7B8;
}

publication-item a.btn:hover {
    opacity: 1;
}

@media (min-width: 1621px) {
    .publications.list.small grid-row:first-of-type {
        margin-bottom: 5.625rem;
    }

    .publications.list .items grid-column:nth-child(2n) ~ grid-column {
        margin-top: 5.5rem;
    }
}

@media (min-width: 1421px) {
    .publications.list.small .items grid-column {
        width: 43.33333333333%;
    }

    .publications.list.small .items grid-column:nth-child(odd) {
        margin-left: 6.66666666667%;
    }

    publication-item {
        padding-right: 1.188rem;
    }

    .publications.list .items grid-column:nth-child(2n) ~ grid-column {
        margin-top: 4.125rem;
    }

    publication-item text-content {
        padding-bottom: 7.25rem;
    }
}

@media (min-width: 1221px) and (max-width: 1420px) {
    publication-item text-content {
        padding-bottom: 6.25rem;
    }
}

@media (min-width: 1221px) {
    publication-item img {
        position: absolute;
        top: 0;
        left: 0;
        width: 40% !important;
    }

    publication-item text-content {
        margin-left: calc(40% + 2.376rem);
    }

    publication-item h3 + span {
        margin: 2.125rem 0 2.75rem 0;
    }

    publication-item a.btn {
        bottom: 4.063rem;
        position: absolute;
    }
}

@media (max-width: 1220px) {
    publication-item img {
        display: block;
        position: relative;
        width: 100%;
    }

    publication-item text-content {
        width: 100%;
    }

    publication-item h3 {
        margin-top: 1.5rem;
    }

    publication-item h3 + span {
        font-size: 1.375rem;
        margin: 0.625rem 0 1.5rem 0;
    }

    publication-item p {
        font-size: 0.938rem;
    }

    publication-item a.btn {
        margin-top: 1.5rem;
    }
}

@media (min-width: 401px) and (max-width: 900px) {
    publication-item {
        height: auto !important;
        min-height: 0 !important;
    }

    publication-item img {
        position: absolute;
        top: 0;
        left: 0;
        width: 40%;
    }

    publication-item text-content {
        margin-left: calc(40% + 2.376rem);
        width: calc(100% - 40% - 2.376rem);
    }

    publication-item h3 + span {
        margin: 2.125rem 0 2.75rem 0;
    }

    publication-item h3 {
        margin-top: 0 !important;
    }
}

@media (min-width: 901px) and (max-width: 1420px) {
    .publications.list.small .items grid-column {
        width: 50%;
    }

    .publications.list .items grid-column:nth-child(2n) ~ grid-column {
        margin-top: 4.125rem;
    }
}

@media (max-width: 900px) {
    .publications.list.small .items grid-column {
        width: 100%;
    }

    .publications.list .items grid-column ~ grid-column {
        margin-top: 4.125rem;
    }
}

@media (min-width: 469px) and (max-width: 768px) {
    .publications.list.small grid-row:first-of-type {
        margin-bottom: 3.5rem;
    }

    .publications.list .items grid-column:nth-child(2n) ~ grid-column {
        margin-top: 3.25rem;
    }
}

@media (min-width: 769px) and (max-width: 1620px) {
    .publications.list.small grid-row:first-of-type {
        margin-bottom: 4.25rem;
    }
}

@media (max-width: 768px) {
    .publications.list.small h3 {
        font-size: 1.625rem;
    }
}

@media (min-width: 469px) and (max-width: 768px) {
    .publications.list.small grid-row:first-of-type {
        margin-bottom: 3.5rem;
    }

    .publications.list .items grid-column ~ grid-column {
        margin-top: 3.25rem;
    }
}

@media (max-width: 468px) {
    .publications.list.small grid-row:first-of-type {
        margin-bottom: 2.5rem;
    }

    .publications.list .items grid-column ~ grid-column {
        margin-top: 2.25rem;
    }
}