.post-layout{
    display: flex;
    gap: 40px;
    max-width: 1200px;
    margin: 0 auto 50px;
    padding: 20px 10px 0;
    box-sizing: border-box;
}
.post-layout article{
    max-width: 70%;
}
.post-meta{
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 20px;
}
.post-meta img{
    width: 40px !important;
    height: 40px;
    border-radius: 50% !important;
    display: block;
    flex: 0 0 40px;
    margin: 0 !important;
}
.post-single {
    padding: 0;
    box-sizing: border-box;
}
.post-single h1{
    font-size: 46px;
    font-weight: 600;
    margin: 0 0 30px;
}
.post-single h2{
    font-size: 36px;
    font-weight: 600;
    margin: 30px 0 20px;
}
.post-single h3{
    font-size: 24px;
    font-weight: 500;
    margin: 40px 0 20px;
}
.post-single h4{
    font-size: 20px;
    font-weight: 400;
    margin: 25px 0 15px;
}
.post-single img{
    width: 100%;
    display: block;
    margin: 0 auto 10px;
    border-radius: 15px;
}
.post-single p{
    margin: 0 0 20px;
}

.post-tags{
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 0 20px;
}
.post-tags a{
    font-size: 11px;
    background: black;
    color: white;
    font-size: 11px;
    padding: 4px 8px;
    border-radius: 5px;
    transition: 200ms ease-in-out;
}
.post-tags a:hover{
    text-decoration: underline;
}

.post-sidebar{
    width: 28%;
}
.post-sidebar .sidebar-post{
    display: block;
    margin: 0 0 20px;
    color: black;
}
.post-sidebar .sidebar-post img{
    width: 100%;
    aspect-ratio: 16 / 9;
    display: block;
    margin: 0 0 8px;
    border-radius: 15px;
}
.post-sidebar .sidebar-post span{
    font-size: 16px;
    font-weight: 400;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.post-sidebar .sidebar-post:hover span{
    text-decoration: underline;
}
.post-sidebar .product{
    width: 48%;
    margin: 0 1%;
}
.post-sidebar .product h4 {
    font-size: 14px;
}
.post-sidebar .product .box-cart{
    flex-direction: column;
}
.post-sidebar .product .box-price .sale-price, .post-sidebar .product .box-price .regular-price {
    font-size: 18px;
}
.post-sidebar .product .box-price .sale-price + span, .post-sidebar .product .currency {
    font-size: 12px;
}

.recent-posts-slider{
    padding: 0 40px;
    box-sizing: border-box;
    margin: 0 0 50px;
}
.recent-posts-slider > div{
    max-width: 1600px;
    margin: 0 auto;
}
.recent-posts-slider .post {
    width: 300px;
    margin: 0 10px 20px 10px;
    box-sizing: border-box;
    box-shadow: 7px 7px 10px #00000022;
    flex-shrink: 0;
    border-radius: 10px;
    overflow: hidden;
}

.recent-posts-slider .recent-post-card a{
    color: black;
    display: block;
}
.recent-post-card > a .img-container {
    max-width: 100%;
    aspect-ratio: 1 / 1;
    width: auto;
    height: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    overflow: hidden;
}
.recent-posts-slider .recent-post-card .img-container img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    margin: 0;
}
.recent-posts-slider .recent-post-card-content{
    padding: 32px;
}
.recent-posts-slider .recent-post-card h4{
    font-size: 20px;
    font-weight: 700;
    min-height: 40px;
    margin: 0 0 16px;
    line-height: 1;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.recent-posts-slider .recent-post-card p{
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin: 0 0 16px;
    opacity: 0.8;
}
.read-more {
    display: flex;
    align-items: center;
    gap: 6px;
    font-weight: 700;
}
.read-more:hover, .read-more:hover svg path {
    color: #00C853;
    stroke: #00C853;
}

.wp-block-button__link{
    background: #00C853 !important;
    border-radius: 5px !important;
}

/* ==================== BLOG GRID ==================== */
.blog-section{
    padding: 40px 20px;
    box-sizing: border-box;
    max-width: 1600px;
    margin: 0 auto;
}
.blog-grid{
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

/* --- Közös blog-item --- */
.blog-item{
    box-sizing: border-box;
    overflow: hidden;
    box-shadow: 4px 4px 12px #00000015;
    border-radius: 10px;
}
.blog-item a.blog-item-link{
    display: flex;
    color: black;
    text-decoration: none;
    height: 100%;
}
.blog-item-img{
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    flex-shrink: 0;
    border-radius: 10px;
}
.blog-item-img img{
    display: block;
    margin: 0;
}
.blog-item-content{
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 24px;
}
.blog-item-content h4{
    font-size: 24px;
    font-weight: 700;
    margin: 0 0 16px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.blog-item-content p{
    font-size: 16px;
    margin: 0 0 16px;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.blog-read-more{
    display: flex;
    align-items: center;
    gap: 6px;
    font-weight: 700;
    font-size: 14px;
}
.blog-read-more img{
    width: 8px;
}

/* --- 100% széles (1. cikk) --- */
.blog-item-full{
    width: 100%;
}
.blog-item-full .blog-item-link{
    flex-direction: row-reverse;
}
.blog-item-full .blog-item-img{
    width: 60%;
    aspect-ratio: 2.35/1;
}
.blog-item-full .blog-item-img img{
    width: 100%;
}
.blog-item-full .blog-item-content{
    width: 40%;
    padding: 32px 40px;
}
.blog-item-full .blog-item-content h4{
    font-size: 30px;
    -webkit-line-clamp: 2;
}
.blog-item-full .blog-item-content p{
    -webkit-line-clamp: 4;
}

/* --- 50% széles (2-3, 8-9 cikk) --- */
.blog-item-half{
    width: calc(50% - 10px);
}
.blog-item-half .blog-item-link{
    flex-direction: row;
}
.blog-item-half .blog-item-img{
    width: 35%;
    aspect-ratio: 1 / 1;
}
.blog-item-half .blog-item-img img {
    height: 100%;
}
.blog-item-half .blog-item-content{
    width: 65%;
    padding: 20px 24px;
}
.blog-item-half .blog-item-content h4{
    font-size: 22px;
    -webkit-line-clamp: 2;
}

/* --- 25% széles (4-7, 10-13 cikk) — kártya, kép felül, szöveg alul --- */
.blog-item-quarter{
    width: calc(25% - 20px);
}
.blog-item-quarter .blog-item-link{
    flex-direction: column;
}
.blog-item-quarter .blog-item-img{
    width: 100%;
    aspect-ratio: 2.25 / 1;
}
.blog-item-quarter .blog-item-img img{
    width: 100%;
}
.blog-item-quarter .blog-item-content{
    padding: 20px;
}
.blog-item-quarter .blog-item-content h4{
    font-size: 20px;
}
.blog-item-quarter .blog-item-content p{
    -webkit-line-clamp: 2;
}

/* --- Pagination --- */
.blog-pagination{
    margin: 40px 0 0;
    text-align: center;
}
.blog-pagination .nav-links{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
}
.blog-pagination .page-numbers{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border: 1px solid #ddd;
    color: black;
    text-decoration: none;
    font-weight: 500;
    transition: 200ms;
}
.blog-pagination .page-numbers.current{
    background: black;
    color: white;
    border-color: black;
}
.blog-pagination .page-numbers:hover:not(.current){
    background: #f0f0f0;
}

/* ==================== BLOG GRID RESPONSIVE ==================== */
@media (max-width: 1200px){
    .blog-item-quarter{
        width: calc(50% - 10px);
    }
}
@media (max-width: 768px){
    .blog-section{
        padding: 80px 10px 30px;
    }
    .blog-grid{
        gap: 16px;
    }
    .blog-item-full,
    .blog-item-half,
    .blog-item-quarter{
        width: 100%;
    }
    .blog-item-full .blog-item-link,
    .blog-item-half .blog-item-link{
        flex-direction: column;
    }
    .blog-item-full .blog-item-img,
    .blog-item-half .blog-item-img{
        width: 100%;
        aspect-ratio: 16 / 9;
    }
    .blog-item-full .blog-item-content,
    .blog-item-half .blog-item-content{
        width: 100%;
        padding: 20px;
    }
    .blog-item-full .blog-item-content h2,
    .blog-item-half .blog-item-content h2{
        font-size: 20px;
    }
    .blog-item-full .blog-item-content p,
    .blog-item-half .blog-item-content p{
        font-size: 14px;
    }
}

@media (max-width: 1023px){
    .post-layout{
        flex-direction: column;
        gap: 30px;
    }
    .post-sidebar{
        width: 100%;
        max-width: 700px;
        margin: 0 auto;
    }
    .post-sidebar .sidebar-post{
        display: flex;
        align-items: center;
        gap: 12px;
    }
    .post-sidebar .sidebar-post img{
        width: 40%;
        margin: 0;
    }
    .post-layout article{
        max-width: 100%;
    }
    .post-single h1 {
        font-size: 38px;
    }
    .post-single h2 {
        font-size: 30px;
    }
    .recent-posts-slider{
        padding: 0 10px;
    }
    .recent-posts-slider .recent-post-card{
        width: 220px !important;
    }
    .recent-posts-slider .recent-post-card-content {
        padding: 20px;
    }
    .recent-posts-slider .recent-post-card h4 {
        font-size: 16px;
        min-height: 32px;
        margin: 0 0 8px;
    }
    .recent-posts-slider .recent-post-card p {
        font-size: 11px;
    }
}