.contents-list:has(.search-contents-list-header) .publication-card {
    margin: 20px;
    display: inline-block;
    width: clamp(300px, 60%, 500px);
    vertical-align: top;
}

article.search-article.search-article-attachment.modern {
    width: clamp(150px, 30%, 250px);
    margin: 20px;
    display: inline-block;
    vertical-align: top;
    display: grid;
    grid-template-rows: 40px 1fr
}

.contents-list:has(.search-contents-list-header) .publication-card {
    margin: 20px;
    display: inline-block;
    width: clamp(300px, calc(100% - 40px) , 500px);
    vertical-align: top;
}

article.search-article.search-article-attachment.modern {
    width: clamp(250px, 100%, 300px);
    margin: 20px;
    display: inline-block;
    padding: 10px;
    vertical-align: top;
    padding: 30px 10px;
    height: 100%;
    overflow: visible;
    flex-grow: 1;
}

article.search-article.search-article-attachment.modern .search-article-attachment__content {
    padding: 10px !important;
    font-size: 1rem;
    height: 100%;
    position: relative;
}

body[data-subpage-style=modern] .search-article.search-article-attachment { position: relative }

body[data-subpage-style=modern] .search-article.search-article-attachment p {
    text-align: center;
    width: 100%;
    font-weight: 600;
    color: #173457;
}

body[data-subpage-style=modern] .search-article.search-article-attachment p:has(.attachment-extension) {
    position:absolute;
    bottom: -30px;
    width: 100%;
    margin-bottom: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 10px;
    color: #454545;
    font-weight: 300;
}

body[data-subpage-style=modern] .search-article.search-article-attachment .search-article-attachment__icon {
    position: absolute;
    top: -15px;
    height: 30px;
}

body[data-subpage-style=modern] .search-article.search-article-attachment .search-article-attachment__icon svg
 {
    border-radius: 4px;
    height: 30px;
    width: 30px;
}