/*********************************************
 * Module Blog > Item
**********************************************/
.twc-blog-item {--item-width-button:60px;}
.twc-blog-item__inner {display:block;}
.twc-blog-item__thumbnail {overflow:hidden;}
.twc-blog-item__thumbnail-bg {aspect-ratio:370/248; transition:var(--twc-transition);}
.twc-blog-item__thumbnail-bg:before {
    background:#000; opacity:0; pointer-events:none;
    z-index:1; transition:var(--twc-transition);
}
.twc-blog-item__button {
    width:var(--item-width-button); height:var(--item-width-button);
    background:var(--twc-color-primary); color:var(--twc-color-on-primary); font-size:var(--twc-size-16);
    opacity:0; transition:var(--twc-transition);
}
.main_content .twc-blog-item__title {
    --twc-spacing-heading:30px;
    font-weight:500;
}
.twc-blog-item__excerpt {font-weight:300; font-size:var(--twc-size-16); letter-spacing:-.01em; color:rgba(35, 31, 32, .5);}

/* Hover */
.twc-blog-item__inner:hover {transform:translateY(-10px)}
.twc-blog-item__inner:hover .twc-blog-item__thumbnail-bg {transform:scale(1.05);}
.twc-blog-item__inner:hover .twc-blog-item__thumbnail-bg:before {opacity:.6;}
.twc-blog-item__inner:hover .twc-blog-item__button {opacity:1;}
a:focus-visible {outline:2px solid var(--twc-color-secondary); border-radius:3px; transition:none;}

/*********************************************
 * Module Blog > Slider
**********************************************/
.twc-blog-slider {
    --item-w:33.33%;
    --item-lr-padding:58px;
    margin:-3px calc(-1 * var(--item-lr-padding));
}
.twc-blog-slider .twc-blog-item {
    width:var(--item-w);
    padding:3px var(--item-lr-padding);
}
@media only screen and (min-width:1025px) {
    .twc-blog-slider:before, .twc-blog-slider:after {
        content:""; display:block;
        width:var(--item-lr-padding); height:100%; background:var(--twc-color-bg);
        position:absolute; top:0; z-index:1;
    }
    .twc-blog-slider:before {left:-3px;}
    .twc-blog-slider:after {right:-3px;}
    .twc-blog-slider .flickity-button {z-index:2;}
}


/*********************************************
 * Module Blog > Grid
**********************************************/
.twc-blog-grid {
    --item-w:33.33%;
    --item-lr-padding:58px;
    --item-tb-padding:45px;
    overflow:hidden; padding:10px 3px;
}
.twc-blog-grid__inner {
    margin:calc(-1 * var(--item-tb-padding)) calc(-1 * var(--item-lr-padding));
}
.twc-blog-grid .twc-blog-item {
    width:var(--item-w);
    padding:var(--item-tb-padding) var(--item-lr-padding);
}

/*********************************************
 * Module Blog Responsive
**********************************************/
@media only screen and (max-width:1180px) {
    /* Module Blog > Grid */
    .twc-blog-grid {
        --item-lr-padding:calc(var(--twc-gap-container) * 0.5);
        --item-tb-padding:calc(var(--twc-spacing-default) * 0.5);
    }

    /* Module Blog > Slider */
    .twc-blog-slider {--item-lr-padding:calc(var(--twc-gap-container) * 0.5);}
}
@media only screen and (max-width:1024px) {
    /* General */
    .twc-blog-item {--item-width-button:40px;}

    /* Module Blog > Slider */
    .twc-blog-slider {--item-w:40%;}
    .twc-blog-slider .twc-blog-item:first-child,
    .twc-blog-slider .twc-blog-item:last-child {
        width:calc(var(--item-w) + var(--twc-gap-container));
    }
    .twc-blog-slider .twc-blog-item:first-child {padding-left:calc(var(--twc-gap-container) + var(--item-lr-padding));}
    .twc-blog-slider .twc-blog-item:last-child {padding-right:calc(var(--twc-gap-container) + var(--item-lr-padding));}
}
@media only screen and (max-width:920px) {
    /* Module Blog > Grid */
    .twc-blog-grid {
        --item-w:50%;
    }

    /* Module Blog > Slider */
    .twc-blog-slider {--item-lr-padding:calc(var(--twc-gap-container) * 0.5);}
}
@media only screen and (max-width:767px) {
    /* Module Blog > Grid */
    .twc-blog-grid {--item-w:50%;}

    /* Module Blog > Slider */
    .twc-blog-slider {--item-w:60%;}
}
@media only screen and (max-width:540px) {
    /* Module Blog > Grid */
    .twc-blog-grid {--item-w:100%;}
    .main_content .twc-blog-item__title {--twc-spacing-heading:25px;}

    /* Module Blog > Slider */
    .twc-blog-slider {--item-w:80%;}
}