@media (max-width: 900px){
    .content-wrapper{
        grid-template-columns: 1fr;
    }
    .primary-content,
    .sidebar{
        grid-column: 1;
    }
}

@media (max-width: 768px){
    .post-card{
        padding: 14px;
    }
    .post-card .post-title{
        font-size: 1.4rem;
        margin: 0 0 8px;
        text-align: left;
    }
    .post-card .excerpt{
        font-size: .95rem;
        line-height: 1.4;
    }
    .post-row{
        flex-direction: column;
        gap: 10px;
        width: 100%;
    }
    .post-thumbnail img{
        width: 100%;
        height: auto;
        margin-bottom: 10px;
    }
    .post-title{
        font-size: 1.5rem;
        margin: 0 0 10px;
    }
    .post-content{
        font-size: 1rem;
        line-height: 1.5;
    }
    footer,
    nav,
    header{
        width: 100%;
        padding: 10px;
        box-sizing: border-box;
    }
    .sidebar{
        margin-top: 20px;
    }
}

@media (max-width: 500px){
    .post-title{ font-size: 1.25rem; }
    .primary-content{ padding: 14px; }
    .sidebar{ padding: 14px; }
}
