/* Search results: make product results behave like product cards, not blog posts. */
body.search-results .breadcrumb-area {
    min-height: 0 !important;
    padding-top: 42px !important;
    padding-bottom: 42px !important;
}

body.search-results .breadcrumb-content {
    padding-top: 42px !important;
    padding-bottom: 42px !important;
}

body.search-results .breadcrumb-content .title {
    margin: 0;
    font-size: clamp(42px, 4.6vw, 62px) !important;
    line-height: 1.08 !important;
}

body.search-results .blog-area {
    padding-top: 64px !important;
    padding-bottom: 84px !important;
}

body.search-results .postbox__wrapper {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 28px;
    align-items: start;
    width: 100%;
}

body.search-results article.blog--post--item.format-search.product {
    display: flex !important;
    flex-direction: column;
    align-self: start;
    width: 100% !important;
    max-width: none !important;
    min-width: 0;
    margin: 0 !important;
    padding: 22px;
    border: 1px solid #ececec;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 18px 48px rgba(23, 28, 35, .06);
}

body.search-results article.blog--post--item.format-search.product .blog--post--thumb {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 230px;
    margin: 0 0 18px;
    border-radius: 14px;
    background: linear-gradient(180deg, #fafafa 0%, #fff 100%);
    overflow: hidden;
}

body.search-results article.blog--post--item.format-search.product .blog--post--thumb img {
    display: block;
    width: auto !important;
    max-width: 92% !important;
    height: 220px !important;
    object-fit: contain;
}

body.search-results article.blog--post--item.format-search.product .blog--post--content {
    padding: 0 !important;
}

body.search-results article.blog--post--item.format-search.product .blog--post--title {
    margin: 0 0 12px !important;
    font-size: 21px !important;
    line-height: 1.22 !important;
}

body.search-results article.blog--post--item.format-search.product .blog--post--title a {
    color: #202327;
}

body.search-results article.blog--post--item.format-search.product .post-text p {
    margin: 0;
    color: #65717b;
    font-size: 15px;
    line-height: 1.62;
}

@media (max-width: 991px) {
    body.search-results .postbox__wrapper {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    body.search-results .breadcrumb-area {
        padding-top: 28px !important;
        padding-bottom: 28px !important;
    }

    body.search-results .breadcrumb-content {
        padding-top: 28px !important;
        padding-bottom: 28px !important;
    }

    body.search-results .breadcrumb-content .title {
        font-size: 34px !important;
    }

    body.search-results .blog-area {
        padding-top: 34px !important;
        padding-bottom: 56px !important;
    }

    body.search-results .postbox__wrapper {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    body.search-results article.blog--post--item.format-search.product {
        padding: 18px;
        border-radius: 16px;
    }

    body.search-results article.blog--post--item.format-search.product .blog--post--thumb {
        min-height: 190px;
    }

    body.search-results article.blog--post--item.format-search.product .blog--post--thumb img {
        height: 185px !important;
    }
}

/* Home product series: legacy photos need a larger editorial scale. */
body.home :is(.elementor-element-CC7k06f, .elementor-element-2TXQGPF, .elementor-element-kIilbBR, .elementor-element-iu7kY6H, .elementor-element-famNutr) {
    min-height: 0 !important;
    padding-top: 68px !important;
    padding-bottom: 68px !important;
}

body.home :is(.elementor-element-CC7k06f, .elementor-element-2TXQGPF, .elementor-element-kIilbBR, .elementor-element-iu7kY6H, .elementor-element-famNutr) > .elementor-container {
    align-items: center !important;
}

body.home :is(.elementor-element-CC7k06f, .elementor-element-2TXQGPF, .elementor-element-kIilbBR, .elementor-element-iu7kY6H, .elementor-element-famNutr) .elementor-column:has(img) .elementor-widget-wrap {
    justify-content: center !important;
    padding: 0 24px !important;
}

body.home :is(.elementor-element-CC7k06f, .elementor-element-2TXQGPF, .elementor-element-kIilbBR, .elementor-element-iu7kY6H, .elementor-element-famNutr) .elementor-column:has(img) img {
    display: block;
    width: min(43vw, 540px) !important;
    max-width: 540px !important;
    height: auto !important;
    border-radius: 18px;
    object-fit: cover;
    box-shadow: 0 26px 70px rgba(30, 20, 16, .12);
}

/* Home hero: keep the carousel crisp by capping height instead of stretching images. */
body.home .vinsic-hero-carousel,
body.home .vinsic-hero-carousel > .elementor-container,
body.home .vinsic-hero-carousel .elementor-column,
body.home .vinsic-hero-carousel .elementor-widget-wrap,
body.home .vinsic-hero-carousel .elementor-widget,
body.home .vinsic-hero-carousel .elementor-widget-container,
body.home .vinsic-hero-carousel .elementor-image-carousel-wrapper,
body.home .vinsic-hero-carousel .swiper,
body.home .vinsic-hero-carousel .swiper-wrapper,
body.home .vinsic-hero-carousel .swiper-slide,
body.home .vinsic-hero-carousel .swiper-slide-inner {
    height: min(56.25vw, 700px) !important;
    max-height: 700px !important;
    min-height: 0 !important;
}

body.home .vinsic-hero-carousel {
    overflow: hidden;
}

body.home .vinsic-hero-carousel .swiper-slide-image {
    display: block;
    width: 100% !important;
    height: 100% !important;
    max-height: 700px !important;
    object-fit: cover !important;
    object-position: center center;
}

/* Home mobile: remove Elementor's desktop-height whitespace and tighten content blocks. */
@media (max-width: 767px) {
    body.home .vinsic-hero-carousel {
        --vinsic-mobile-hero-height: clamp(155px, 46vw, 190px);
    }

    body.home .vinsic-hero-carousel,
    body.home .vinsic-hero-carousel > .elementor-container,
    body.home .vinsic-hero-carousel .elementor-column,
    body.home .vinsic-hero-carousel .elementor-widget-wrap,
    body.home .vinsic-hero-carousel .elementor-widget,
    body.home .vinsic-hero-carousel .elementor-widget-container,
    body.home .vinsic-hero-carousel .elementor-image-carousel-wrapper,
    body.home .vinsic-hero-carousel .swiper,
    body.home .vinsic-hero-carousel .swiper-wrapper,
    body.home .vinsic-hero-carousel .swiper-slide,
    body.home .vinsic-hero-carousel .swiper-slide-inner {
        height: var(--vinsic-mobile-hero-height) !important;
        max-height: 190px !important;
        min-height: 0 !important;
    }

    body.home .vinsic-hero-carousel {
        padding: 0 !important;
        overflow: hidden;
    }

    body.home .vinsic-hero-carousel .elementor-widget-wrap {
        padding: 0 !important;
    }

    body.home .vinsic-hero-carousel .swiper-slide-image {
        display: block;
        width: 100% !important;
        height: var(--vinsic-mobile-hero-height) !important;
        max-height: 190px !important;
        aspect-ratio: auto !important;
        object-fit: cover !important;
        object-position: center center;
    }

    body.home .vinsic-hero-carousel .elementor-swiper-button {
        top: 50% !important;
        transform: translateY(-50%) !important;
    }

    body.home .vinsic-hero-carousel .swiper-pagination {
        bottom: 10px !important;
    }

    body.home .elementor-element-4FAR8qO {
        height: auto !important;
        min-height: 0 !important;
        padding-top: 34px !important;
        padding-bottom: 36px !important;
    }

    body.home .elementor-element-4FAR8qO > .elementor-container,
    body.home .elementor-element-4FAR8qO .elementor-inner-section,
    body.home .elementor-element-4FAR8qO .elementor-inner-section > .elementor-container,
    body.home .elementor-element-4FAR8qO .elementor-column,
    body.home .elementor-element-4FAR8qO .elementor-widget-wrap {
        height: auto !important;
        min-height: 0 !important;
    }

    body.home .elementor-element-4FAR8qO .elementor-heading-title {
        line-height: 1.05 !important;
    }

    body.home :is(.elementor-element-CC7k06f, .elementor-element-2TXQGPF, .elementor-element-kIilbBR, .elementor-element-iu7kY6H, .elementor-element-famNutr) {
        height: auto !important;
        min-height: 0 !important;
        padding-top: 30px !important;
        padding-bottom: 34px !important;
    }

    body.home :is(.elementor-element-CC7k06f, .elementor-element-2TXQGPF, .elementor-element-kIilbBR, .elementor-element-iu7kY6H, .elementor-element-famNutr) > .elementor-container {
        display: flex !important;
        flex-direction: column !important;
        gap: 18px;
        height: auto !important;
        min-height: 0 !important;
    }

    body.home :is(.elementor-element-CC7k06f, .elementor-element-2TXQGPF, .elementor-element-kIilbBR, .elementor-element-iu7kY6H, .elementor-element-famNutr) .elementor-column {
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
    }

    body.home :is(.elementor-element-CC7k06f, .elementor-element-2TXQGPF, .elementor-element-kIilbBR, .elementor-element-iu7kY6H, .elementor-element-famNutr) .elementor-column:not(:has(img)) {
        order: 1;
    }

    body.home :is(.elementor-element-CC7k06f, .elementor-element-2TXQGPF, .elementor-element-kIilbBR, .elementor-element-iu7kY6H, .elementor-element-famNutr) .elementor-column:has(img) {
        order: 2;
    }

    body.home :is(.elementor-element-CC7k06f, .elementor-element-2TXQGPF, .elementor-element-kIilbBR, .elementor-element-iu7kY6H, .elementor-element-famNutr) .elementor-widget-wrap {
        align-content: center !important;
        align-items: center !important;
        height: auto !important;
        min-height: 0 !important;
        padding: 0 18px !important;
        text-align: center !important;
    }

    body.home :is(.elementor-element-CC7k06f, .elementor-element-2TXQGPF, .elementor-element-kIilbBR, .elementor-element-iu7kY6H, .elementor-element-famNutr) .elementor-widget,
    body.home :is(.elementor-element-CC7k06f, .elementor-element-2TXQGPF, .elementor-element-kIilbBR, .elementor-element-iu7kY6H, .elementor-element-famNutr) .elementor-widget-container,
    body.home :is(.elementor-element-CC7k06f, .elementor-element-2TXQGPF, .elementor-element-kIilbBR, .elementor-element-iu7kY6H, .elementor-element-famNutr) .elementor-heading-title,
    body.home :is(.elementor-element-CC7k06f, .elementor-element-2TXQGPF, .elementor-element-kIilbBR, .elementor-element-iu7kY6H, .elementor-element-famNutr) .elementor-widget-text-editor,
    body.home :is(.elementor-element-CC7k06f, .elementor-element-2TXQGPF, .elementor-element-kIilbBR, .elementor-element-iu7kY6H, .elementor-element-famNutr) .elementor-button-wrapper {
        width: 100% !important;
        text-align: center !important;
    }

    body.home :is(.elementor-element-CC7k06f, .elementor-element-2TXQGPF, .elementor-element-kIilbBR, .elementor-element-iu7kY6H, .elementor-element-famNutr) .elementor-widget-image {
        margin: 0 !important;
        text-align: center;
    }

    body.home :is(.elementor-element-CC7k06f, .elementor-element-2TXQGPF, .elementor-element-kIilbBR, .elementor-element-iu7kY6H, .elementor-element-famNutr) img,
    body.home :is(.elementor-element-CC7k06f, .elementor-element-2TXQGPF, .elementor-element-kIilbBR, .elementor-element-iu7kY6H, .elementor-element-famNutr) .elementor-column:has(img) img {
        display: block;
        width: min(92vw, 356px) !important;
        max-width: 356px !important;
        height: auto !important;
        margin: 0 auto !important;
        border-radius: 16px;
        object-fit: cover;
        box-shadow: 0 18px 48px rgba(30, 20, 16, .13);
    }

    body.home :is(.elementor-element-CC7k06f, .elementor-element-2TXQGPF, .elementor-element-kIilbBR, .elementor-element-iu7kY6H, .elementor-element-famNutr) .elementor-widget-image,
    body.home :is(.elementor-element-CC7k06f, .elementor-element-2TXQGPF, .elementor-element-kIilbBR, .elementor-element-iu7kY6H, .elementor-element-famNutr) .elementor-widget-image.wow,
    body.home :is(.elementor-element-CC7k06f, .elementor-element-2TXQGPF, .elementor-element-kIilbBR, .elementor-element-iu7kY6H, .elementor-element-famNutr) .elementor-widget-image.animated {
        animation: none !important;
        opacity: 1 !important;
        visibility: visible !important;
        transform: none !important;
        transition: none !important;
    }

    body.home :is(.elementor-element-CC7k06f, .elementor-element-2TXQGPF, .elementor-element-kIilbBR, .elementor-element-iu7kY6H, .elementor-element-famNutr) .elementor-heading-title {
        line-height: 1.08 !important;
    }

    body.home :is(.elementor-element-CC7k06f, .elementor-element-2TXQGPF, .elementor-element-kIilbBR, .elementor-element-iu7kY6H, .elementor-element-famNutr) .elementor-widget-text-editor {
        line-height: 1.55 !important;
    }

    body.home .elementor-element-4FAR8qO .elementor-inner-section > .elementor-container {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
        width: 100%;
        height: auto !important;
        min-height: 0 !important;
    }

    body.home .elementor-element-4FAR8qO .elementor-inner-column {
        width: auto !important;
        height: auto !important;
        min-height: 0 !important;
    }

    body.home .elementor-element-4FAR8qO .elementor-inner-column .elementor-widget-wrap {
        align-content: flex-start !important;
        padding: 16px 12px !important;
    }

    body.home .elementor-element-4FAR8qO .elementor-inner-column .elementor-widget-icon {
        margin-bottom: 8px !important;
    }

    body.home .elementor-element-4FAR8qO .elementor-inner-column .elementor-widget-heading {
        margin-bottom: 6px !important;
    }

    body.home .elementor-element-4FAR8qO .elementor-inner-column .elementor-widget-text-editor {
        margin-bottom: 0 !important;
    }

    body.home .elementor-element-4FAR8qO .elementor-inner-column .elementor-heading-title {
        font-size: 16px !important;
        line-height: 1.18 !important;
    }

    body.home .elementor-element-4FAR8qO .elementor-inner-column .elementor-widget-text-editor,
    body.home .elementor-element-4FAR8qO .elementor-inner-column .elementor-widget-text-editor p {
        font-size: 13.5px !important;
        line-height: 1.45 !important;
    }
}

body.search-results article.blog--post--item.format-search.product .post-text p {
    display: -webkit-box !important;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
}

/* Blog archive polish: consistent image ratio, card alignment, and readable badge colors. */
body.blog .postbox__wrapper article.blog--post--item,
body.archive.category .postbox__wrapper article.blog--post--item {
    border: 1px solid #ececec;
    border-radius: 10px;
    background: #fff;
    overflow: hidden;
    margin-bottom: 28px !important;
}

body.blog .postbox__wrapper .blog--post--thumb,
body.archive.category .postbox__wrapper .blog--post--thumb {
    margin: 0 !important;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #f5f5f5;
}

body.blog .postbox__wrapper .blog--post--thumb a,
body.archive.category .postbox__wrapper .blog--post--thumb a {
    display: block;
    width: 100%;
    height: 100%;
}

body.blog .postbox__wrapper .blog--post--thumb img,
body.archive.category .postbox__wrapper .blog--post--thumb img {
    display: block;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    object-position: center;
}

body.blog .postbox__wrapper .blog--post--content,
body.archive.category .postbox__wrapper .blog--post--content {
    padding: 24px 24px 20px !important;
}

body.blog .postbox__wrapper .blog--post--title,
body.archive.category .postbox__wrapper .blog--post--title {
    min-height: 2.6em;
    line-height: 1.3;
}

body.blog .postbox__wrapper .post-text p,
body.archive.category .postbox__wrapper .post-text p {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    min-height: 4.8em;
}

body.blog .postbox__wrapper .blog--tag a,
body.archive.category .postbox__wrapper .blog--tag a {
    background: #3f9454 !important;
    border-color: #3f9454 !important;
    color: #fff !important;
}

body.blog .postbox__wrapper .blog--post--bottom,
body.archive.category .postbox__wrapper .blog--post--bottom {
    margin-top: 14px;
    align-items: center;
}

/* Blog archive grid: compact multi-column cards instead of the default single-column stream. */
body.blog .blog-area,
body.archive.category .blog-area {
    padding-top: 70px !important;
    padding-bottom: 92px !important;
}

body.blog .blog-area .col-lg-12,
body.archive.category .blog-area .col-lg-12,
body.blog .blog-area .col-lg-8,
body.archive.category .blog-area .col-lg-8 {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
}

body.blog .postbox__wrapper,
body.archive.category .postbox__wrapper {
    display: block !important;
    column-count: 3;
    column-gap: 30px;
}

body.blog .postbox__wrapper nav,
body.archive.category .postbox__wrapper nav {
    display: block;
    column-span: all;
    margin-top: 18px;
}

body.blog .postbox__wrapper article.blog--post--item,
body.archive.category .postbox__wrapper article.blog--post--item {
    display: inline-flex !important;
    flex-direction: column;
    width: 100%;
    min-width: 0;
    height: auto;
    margin: 0 0 30px !important;
    break-inside: avoid;
    page-break-inside: avoid;
    box-shadow: 0 16px 40px rgba(30, 20, 16, .06);
}

body.blog .postbox__wrapper .blog--post--thumb,
body.archive.category .postbox__wrapper .blog--post--thumb {
    aspect-ratio: 4 / 3;
}

body.blog .postbox__wrapper .blog--post--content,
body.archive.category .postbox__wrapper .blog--post--content {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 20px 20px 18px !important;
}

body.blog .postbox__wrapper .blog--post--title,
body.archive.category .postbox__wrapper .blog--post--title {
    display: -webkit-box;
    overflow: hidden;
    min-height: 0;
    margin: 12px 0 12px !important;
    font-size: 24px !important;
    line-height: 1.24 !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

body.blog .postbox__wrapper .post-text,
body.archive.category .postbox__wrapper .post-text {
    margin-bottom: 18px;
}

body.blog .postbox__wrapper .post-text p,
body.archive.category .postbox__wrapper .post-text p {
    min-height: 0;
    margin-bottom: 0;
    font-size: 15px;
    line-height: 1.62;
    -webkit-line-clamp: 3;
}

body.blog .postbox__wrapper .blog--post--bottom,
body.archive.category .postbox__wrapper .blog--post--bottom {
    margin-top: auto;
}

body.blog .postbox__wrapper .blog--post--avatar,
body.archive.category .postbox__wrapper .blog--post--avatar,
body.single-post .blog--post--avatar {
    display: none !important;
}

body.blog .postbox__wrapper .blog--post--bottom,
body.archive.category .postbox__wrapper .blog--post--bottom {
    justify-content: flex-end;
}

body.blog .postbox__wrapper .blog--post--bottom a,
body.archive.category .postbox__wrapper .blog--post--bottom a {
    font-size: 14px;
}

body.blog .postbox__wrapper .blog-post-meta ul li:nth-child(n+2),
body.archive.category .postbox__wrapper .blog-post-meta ul li:nth-child(n+2),
body.blog .postbox__wrapper .blog-post-meta ul li:has(.fa-comments),
body.archive.category .postbox__wrapper .blog-post-meta ul li:has(.fa-comments) {
    display: none !important;
}

body.single-post .blog-details-content .blog-post-meta ul li:nth-child(n+2),
body.single-post .blog-details-content .blog-post-meta ul li:has(a[href*="author"]),
body.single-post .blog-details-content .blog-post-meta ul li:has(.fa-user),
body.single-post .blog-details-content .blog-post-meta ul li:has(.fa-comments) {
    display: none !important;
}

@media (max-width: 991px) {
    body.blog .postbox__wrapper,
    body.archive.category .postbox__wrapper {
        column-count: 2;
    }
}

@media (max-width: 640px) {
    body.blog .blog-area,
    body.archive.category .blog-area {
        padding-top: 42px !important;
        padding-bottom: 64px !important;
    }

    body.blog .postbox__wrapper,
    body.archive.category .postbox__wrapper {
        column-count: 1;
        column-gap: 0;
    }

    body.blog .postbox__wrapper article.blog--post--item,
    body.archive.category .postbox__wrapper article.blog--post--item {
        margin-bottom: 22px !important;
    }
}

/* Blog detail polish: keep editor paragraph spacing visible on the frontend. */
body.single-post .blog-area {
    padding-top: 78px !important;
    padding-bottom: 96px !important;
}

body.single-post .postbox__wrapper {
    max-width: 960px;
    margin: 0 auto;
}

body.single-post article.blog--post--item {
    margin-bottom: 0 !important;
}

body.single-post article.blog--post--item > .blog--post--thumb {
    display: none !important;
}

body.single-post .blog-details-content {
    padding: 34px 42px 40px !important;
    border: 1px solid #ececec;
    border-radius: 10px;
    background: #fff;
}

body.single-post .blog-details-content .blog--tag a {
    background: #3f9454 !important;
    border-color: #3f9454 !important;
    color: #fff !important;
}

body.single-post .blog-details-content > .title {
    margin: 14px 0 16px !important;
    color: #b51d23 !important;
    font-size: 34px !important;
    line-height: 1.2 !important;
}

body.single-post .blog-details-content .post-text {
    color: #2f3337;
    font-size: 17px;
    line-height: 1.8;
}

body.single-post .blog-details-content .post-text p {
    margin: 0 0 24px !important;
    color: inherit;
    font-size: inherit;
    line-height: inherit;
}

body.single-post .blog-details-content .post-text p:empty {
    display: block;
    min-height: 18px;
}

body.single-post .blog-details-content .post-text strong,
body.single-post .blog-details-content .post-text b {
    display: inline-block;
    margin: 14px 0 2px;
    color: #1f2328;
    font-weight: 800;
}

body.single-post .blog-details-content .post-text img {
    display: block;
    width: auto !important;
    max-width: min(100%, 760px) !important;
    height: auto !important;
    margin: 30px auto 34px !important;
    border-radius: 6px;
}

body.single-post .comment-respond {
    max-width: 960px;
    margin-right: auto;
    margin-left: auto;
}

@media (max-width: 767px) {
    body.single-post .blog-area {
        padding-top: 42px !important;
        padding-bottom: 64px !important;
    }

    body.single-post .blog-details-content {
        padding: 24px 18px 28px !important;
    }

    body.single-post .blog-details-content > .title {
        font-size: 26px !important;
    }

    body.single-post .blog-details-content .post-text {
        font-size: 16px;
        line-height: 1.72;
    }
}

/* Blog archive equal-height cards override */
body.blog .blog-area,
body.archive.category .blog-area {
    padding-top: 64px !important;
    padding-bottom: 88px !important;
}

body.blog .blog-area .col-lg-12,
body.archive.category .blog-area .col-lg-12,
body.blog .blog-area .col-lg-8,
body.archive.category .blog-area .col-lg-8 {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
}

body.blog .postbox__wrapper,
body.archive.category .postbox__wrapper {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 28px !important;
    column-count: auto !important;
    column-gap: normal !important;
    align-items: stretch !important;
}

body.blog .postbox__wrapper > header,
body.archive.category .postbox__wrapper > header,
body.blog .postbox__wrapper > .page-header,
body.archive.category .postbox__wrapper > .page-header {
    display: none !important;
}

body.blog .postbox__wrapper nav,
body.archive.category .postbox__wrapper nav {
    grid-column: 1 / -1 !important;
    column-span: none !important;
}

body.blog .postbox__wrapper article.blog--post--item,
body.archive.category .postbox__wrapper article.blog--post--item {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    height: 500px !important;
    min-width: 0 !important;
    margin: 0 !important;
    break-inside: auto !important;
    page-break-inside: auto !important;
    border: 1px solid #ececec !important;
    border-radius: 8px !important;
    background: #fff !important;
    overflow: hidden !important;
    box-shadow: 0 14px 34px rgba(30, 20, 16, .06) !important;
}

body.blog .postbox__wrapper .blog--post--thumb,
body.archive.category .postbox__wrapper .blog--post--thumb {
    flex: 0 0 170px !important;
    width: 100% !important;
    height: 170px !important;
    margin: 0 !important;
    aspect-ratio: auto !important;
    overflow: hidden !important;
    background: #f5f5f5 !important;
}

body.blog .postbox__wrapper .blog--post--thumb a,
body.archive.category .postbox__wrapper .blog--post--thumb a,
body.blog .postbox__wrapper .blog--post--thumb img,
body.archive.category .postbox__wrapper .blog--post--thumb img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
}

body.blog .postbox__wrapper .blog--post--thumb img,
body.archive.category .postbox__wrapper .blog--post--thumb img {
    object-fit: cover !important;
    object-position: center !important;
}

body.blog .postbox__wrapper .blog--post--content,
body.archive.category .postbox__wrapper .blog--post--content {
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    min-height: 0 !important;
    padding: 18px 20px 16px !important;
}

body.blog .postbox__wrapper .blog--tag,
body.archive.category .postbox__wrapper .blog--tag {
    margin-bottom: 14px !important;
}

body.blog .postbox__wrapper .blog--tag a,
body.archive.category .postbox__wrapper .blog--tag a {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 34px !important;
    padding: 0 18px !important;
    border-radius: 5px !important;
    background: #3f9454 !important;
    color: #fff !important;
    font-size: 14px !important;
    line-height: 1 !important;
}

body.blog .postbox__wrapper .blog--post--title,
body.archive.category .postbox__wrapper .blog--post--title {
    display: block !important;
    height: 58px !important;
    min-height: 58px !important;
    max-height: 58px !important;
    margin: 0 0 10px !important;
    overflow: hidden !important;
    font-size: 23px !important;
    line-height: 29px !important;
}

body.blog .postbox__wrapper .blog--post--title a,
body.archive.category .postbox__wrapper .blog--post--title a {
    display: -webkit-box !important;
    overflow: hidden !important;
    color: #b51d23 !important;
    line-height: 29px !important;
    text-overflow: ellipsis !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
}

body.blog .postbox__wrapper .blog--post--title a:hover,
body.archive.category .postbox__wrapper .blog--post--title a:hover {
    color: #8f161b !important;
}

body.blog .postbox__wrapper .blog--post--meta,
body.archive.category .postbox__wrapper .blog--post--meta {
    margin-bottom: 14px !important;
}

body.blog .postbox__wrapper .blog--post--meta ul,
body.archive.category .postbox__wrapper .blog--post--meta ul {
    display: flex !important;
    gap: 0 !important;
    margin: 0 !important;
}

body.blog .postbox__wrapper .blog--post--meta ul li,
body.archive.category .postbox__wrapper .blog--post--meta ul li {
    margin: 0 !important;
    font-size: 14px !important;
    line-height: 1.3 !important;
}

body.blog .postbox__wrapper .blog--post--meta ul li:not(:first-child),
body.archive.category .postbox__wrapper .blog--post--meta ul li:not(:first-child) {
    display: none !important;
}

body.blog .postbox__wrapper .post-text,
body.archive.category .postbox__wrapper .post-text {
    margin: 0 0 14px !important;
}

body.blog .postbox__wrapper .post-text p,
body.archive.category .postbox__wrapper .post-text p {
    display: -webkit-box !important;
    overflow: hidden !important;
    min-height: 0 !important;
    max-height: 72px !important;
    margin: 0 !important;
    color: #66707a !important;
    font-size: 15px !important;
    line-height: 24px !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 3 !important;
}

body.blog .postbox__wrapper .blog--post--avatar,
body.archive.category .postbox__wrapper .blog--post--avatar {
    display: none !important;
}

body.blog .postbox__wrapper .blog--post--bottom,
body.archive.category .postbox__wrapper .blog--post--bottom {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    margin-top: auto !important;
}

body.blog .postbox__wrapper .blog--post--bottom a,
body.archive.category .postbox__wrapper .blog--post--bottom a {
    font-size: 14px !important;
    font-weight: 700 !important;
}

@media (max-width: 1199px) {
    body.blog .postbox__wrapper,
    body.archive.category .postbox__wrapper {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 640px) {
    body.blog .postbox__wrapper,
    body.archive.category .postbox__wrapper {
        grid-template-columns: 1fr !important;
    }

    body.blog .postbox__wrapper article.blog--post--item,
    body.archive.category .postbox__wrapper article.blog--post--item {
        height: 480px !important;
    }
}
/* Blog archive gap tuning */
body.blog .postbox__wrapper,
body.archive.category .postbox__wrapper {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 30px !important;
    row-gap: 30px !important;
    column-gap: 30px !important;
}

body.blog .postbox__wrapper article.blog--post--item,
body.archive.category .postbox__wrapper article.blog--post--item {
    margin: 0 !important;
}

@media (max-width: 1199px) {
    body.blog .postbox__wrapper,
    body.archive.category .postbox__wrapper {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 24px !important;
        row-gap: 24px !important;
        column-gap: 24px !important;
    }
}

@media (max-width: 640px) {
    body.blog .postbox__wrapper,
    body.archive.category .postbox__wrapper {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
        row-gap: 20px !important;
        column-gap: 20px !important;
    }
}
