.at-themes {
    margin: 1em auto;
}

.at-themes__article {
    position: relative;
    padding: 2em 1em;
    margin-bottom: 3em;
    border: 1px solid #b1b1b1;
    container-name: themes__article;
    container-type: inline-size;
}

.at-themes__article:before {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 15px;
    content: '';
    background: rgb(30,40,120);
    background: -webkit-gradient(linear, left top, right top, from(rgba(30,40,120,1)), to(rgba(200,100,50,1)));
    background: -o-linear-gradient(left, rgba(30,40,120,1) 0%, rgba(200,100,50,1) 100%);
    background: linear-gradient(90deg, rgba(30,40,120,1) 0%, rgba(200,100,50,1) 100%);
}

.at-themes__imageContainer {
    float: right;
    width: 48px;
    height: 48px;
    background: center top no-repeat;
    background-size: 100% auto;
}

/** Large image (photo) */
.at-themes__image {
    width: 100%;
    max-width: 410px;
    margin-bottom: .5rem;
}

.at-themes__articleTitle {
    margin: 0 0 .5em 0;
    padding-right: 2em;
    font-size: 1.2em;
}

.at-themes__articleText {
    padding-block-end: 1em;
}

.at-themes__readMore {
    position: absolute;
    right: 20px;
    bottom: -20px;
    padding: .5em 1em;
    font-weight: 600;
    border: 1px solid #b1b1b1;
    color: var(--secondaryColor500);
    background: #fff;
    transition: all ease-in-out .2s;
}

.at-themes__article:hover .at-themes__readMore {
    color: #fff;
    background: var(--secondaryColor500);
}

.at-themes__link {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

.main__contentContainer:has(.at-themes__articles) {
    container-name: themes__articles;
    container-type: inline-size;
}

@media screen and (min-width: 500px) {
    .at-themes__articleTitle {
        font-size: 1.5em;
    }
}

@media screen and (min-width: 900px) {
    .sidebar .at-themes__articles {
        display: flex;
        flex-wrap: wrap;
        gap: 0 2%;
        flex-direction: column;
    }
}

@container themes__article (max-width: 250px) {
    .at-themes__articleText {
        overflow-wrap: break-word;
        -webkit-hyphens: auto;
        -ms-hyphens: auto;
        hyphens: auto;
    }
}

@container themes__article (max-width: 290px) {
    .at-themes__articleTitle {
        overflow-wrap: break-word;
        -webkit-hyphens: auto;
        -ms-hyphens: auto;
        hyphens: auto;
    }
}

@container themes__articles (min-width: 900px) {
    .at-themes__articles {
        display: flex;
        flex-wrap: wrap;
        gap: 0 2%;
    }

    .at-themes .at-themes__article {
        flex: 0 0 32%;
        max-width: 32%;
        margin-bottom: 3em;
    }
}
