.post-banner{
    height:13.7vw;
    background-size:cover;
    background-position:center;
    border-radius:1vw;
    position:relative;
    overflow:hidden;
    margin: 0 0 1.5vw 0;
}

.post-banner-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(
        180deg,
        rgba(0,0,0,0.35) 0%,
        rgba(0,0,0,0.58) 100%
    );
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    text-align:center;
    color:#fff;
    padding:1vw;
}

.post-banner-brand{
    color:#D4AF37;
    font-size:0.7vw;
    letter-spacing:0.2vw;
    text-transform:uppercase;
    margin-bottom:0.5vw;
    font-weight:500;
    text-shadow:
        0 0.05vw 0.2vw rgba(0,0,0,0.4),
        0 0 0.3vw rgba(212,175,55,0.3);
}

.post-banner-title{
    font-size:2.3vw;
    font-weight:600;
    color:#f8f8f8;
    margin-bottom:0.5vw;
    font-family:"Playfair Display", serif;
    text-shadow:
        0 0.1vw 0.3vw rgba(0,0,0,0.35),
        0 0.2vw 0.9vw rgba(0,0,0,0.25);
}

.post-banner-title:after{
    content:"";
    display:block;
    width:3.1vw;
    height:0.1vw;
    background:#D4AF37;
    margin:0.8vw auto 0;
}

.post-banner-sub{
    font-size:0.9vw;
    color:#eaeaea;
    font-style:italic;
    max-width:36.5vw;
    line-height:1.6;
    text-shadow:0 0.05vw 0.2vw rgba(0,0,0,0.45);
    margin-bottom:0;
}

@media (max-width: 768px){
    .post-banner{
        height:42vw;
        border-radius: unset;
        margin:0 0 5vw 0;
    }

    .post-banner-overlay{
        padding:5vw;
    }

    .post-banner-brand{
        font-size:2.6vw;
        letter-spacing:0.8vw;
        margin-bottom:2vw;
    }

    .post-banner-title{
        font-size:7vw;
    }

    .post-banner-title:after{
        width:12vw;
        height:0.35vw;
        margin-top:3vw;
    }

    .post-banner-sub{
        font-size:3.4vw;
        max-width:90%;
        line-height:1.6;
    }
}

.blog .ast-row,
.archive .ast-row,
.search .ast-row{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:0.5vw;
    width: 90%;
    margin: 0 auto;
}

.blog .ast-article-inner,
.archive .ast-article-inner,
.search .ast-article-inner{ height: 75vh; }


.blog .ast-row:before,
.blog .ast-row:after,
.archive .ast-row:before,
.archive .ast-row:after,
.search .ast-row:before,
.search .ast-row:after{ display:none; }

.blog .ast-article-post,
.archive .ast-article-post,
.search .ast-article-post{
    width:100%;
    margin:0;
    padding:0;
    background:transparent;
}


.blog .ast-article-post .post-thumb,
.archive .ast-article-post .post-thumb,
.search .ast-article-post .post-thumb{
    border-radius:.8vw;
    overflow:hidden;
    background:#f5f2ed;
}

.blog .ast-article-post .post-thumb img,
.archive .ast-article-post .post-thumb img,
.search .ast-article-post .post-thumb img{
    width:100%;
    height:18vw;
    display:block;
    object-fit:cover;
    transition:.45s ease;
}

.blog .ast-article-post:hover .post-thumb img,
.archive .ast-article-post:hover .post-thumb img,
.search .ast-article-post:hover .post-thumb img{
    transform:scale(1.035);
}

.blog .ast-article-post .entry-header,
.archive .ast-article-post .entry-header,
.search .ast-article-post .entry-header,
.blog .ast-article-post .entry-content,
.archive .ast-article-post .entry-content,
.search .ast-article-post .entry-content{
    padding:0;
}

.blog .entry-meta,
.archive .entry-meta,
.search .entry-meta{
    font-size:.72vw;
    letter-spacing:.08vw;
    text-transform:uppercase;
    color:#9a8d75;
    margin-bottom:.55vw;
}

.blog .entry-meta a,
.archive .entry-meta a,
.search .entry-meta a{
    color:#9a8d75;
    text-decoration:none;
}

.blog .entry-title,
.archive .entry-title,
.search .entry-title{
    font-family:"Playfair Display", serif;
    font-size:1.45vw;
    line-height:1.28;
    font-weight:500;
    margin:0 0 .65vw;
}

.blog .entry-title a,
.archive .entry-title a,
.search .entry-title a{
    color:#1d1d1b;
    text-decoration:none;
    background-image:linear-gradient(#D4AF37,#D4AF37);
    background-size:0% 1px;
    background-position:0 100%;
    background-repeat:no-repeat;
    transition:.28s ease;
}

.blog .entry-title a:hover,
.archive .entry-title a:hover,
.search .entry-title a:hover{
    color:#1d1d1b;
    background-size:100% 1px;
}

.blog .entry-content p,
.archive .entry-content p,
.search .entry-content p{
    font-size:.92vw;
    line-height:1.75;
    color:#666;
    margin:0 0 .9vw;
}

.blog .read-more,
.archive .read-more,
.search .read-more{
    padding:0;
    border:0;
    background:none;
    color:#9b7622;
    font-size:.82vw;
    font-weight:500;
    text-decoration:none;
}

.blog .read-more:after,
.archive .read-more:after,
.search .read-more:after{
    content:" →";
    transition:.25s ease;
}

.blog .read-more:hover:after,
.archive .read-more:hover:after,
.search .read-more:hover:after{
    margin-left:.25vw;
}

@media (max-width:768px){
    .blog .ast-row,
    .archive .ast-row,
    .search .ast-row{
        grid-template-columns:1fr;
        gap:8vw;
    }

    .blog .ast-article-post .post-thumb,
    .archive .ast-article-post .post-thumb,
    .search .ast-article-post .post-thumb{
        margin-bottom:3.5vw;
        border-radius:3vw;
    }

    .blog .ast-article-post .post-thumb img,
    .archive .ast-article-post .post-thumb img,
    .search .ast-article-post .post-thumb img{
        height:62vw;
    }

    .blog .entry-meta,
    .archive .entry-meta,
    .search .entry-meta{
        font-size:2.8vw;
        letter-spacing:.35vw;
        margin-bottom:2vw;
    }

    .blog .entry-title,
    .archive .entry-title,
    .search .entry-title{
        font-size:6vw;
        line-height:1.25;
        margin-bottom:2.2vw;
    }

    .blog .entry-content p,
    .archive .entry-content p,
    .search .entry-content p{
        font-size:3.7vw;
        line-height:1.7;
        margin-bottom:3vw;
    }

    .blog .read-more,
    .archive .read-more,
    .search .read-more{
        font-size:3.4vw;
    }
}