.gm-blog-widget,
.gm-blog-widget *{box-sizing:border-box}

.gm-blog-widget{
    --gm-dark:#111315;
    --gm-light:#F0F0EE;
    width:100%;
    position:relative;
    font-family:'Montserrat',sans-serif
}

.gm-blog-widget__controls{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    margin-bottom:28px
}

.gm-blog-widget__search{
    position:relative;
    width:100%;
    max-width:330px;
    flex:0 1 330px
}

.gm-blog-widget__search-icon{
    position:absolute;
    left:14px;
    top:50%;
    width:16px;
    height:16px;
    display:flex;
    align-items:center;
    justify-content:center;
    transform:translateY(-50%);
    color:rgba(17,19,21,.48);
    pointer-events:none
}

.gm-blog-widget__search-icon svg{width:16px;height:16px}

.gm-blog-widget .gm-blog-widget__search-input{
    width:100%!important;
    height:42px!important;
    margin:0!important;
    padding:0 42px!important;
    background:transparent!important;
    border:1px solid rgba(17,19,21,.15)!important;
    border-radius:100px!important;
    color:var(--gm-dark)!important;
    font-family:'Montserrat',sans-serif!important;
    font-size:11px!important;
    font-weight:500!important;
    box-shadow:none!important;
    outline:none!important
}

.gm-blog-widget .gm-blog-widget__search-input:focus{
    border-color:var(--gm-dark)!important
}

.gm-blog-widget__search-input::-webkit-search-cancel-button{display:none}

.gm-blog-widget .gm-blog-widget__search-clear{
    position:absolute;
    right:8px;
    top:50%;
    width:29px;
    height:29px;
    display:none;
    align-items:center;
    justify-content:center;
    margin:0!important;
    padding:0!important;
    background:transparent!important;
    border:0!important;
    border-radius:50%!important;
    color:rgba(17,19,21,.45)!important;
    transform:translateY(-50%);
    cursor:pointer;
    box-shadow:none!important
}

.gm-blog-widget .gm-blog-widget__search-clear.is-visible{display:flex}
.gm-blog-widget__search-clear svg{width:13px;height:13px}

.gm-blog-widget__filters{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    flex-wrap:wrap;
    gap:7px
}

.gm-blog-widget .gm-blog-filter{
    min-height:35px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    margin:0!important;
    padding:0 14px!important;
    background:transparent!important;
    border:1px solid rgba(17,19,21,.15)!important;
    border-radius:100px!important;
    color:rgba(17,19,21,.62)!important;
    font-family:'Montserrat',sans-serif!important;
    font-size:9px!important;
    font-weight:600!important;
    cursor:pointer;
    box-shadow:none!important;
    transition:.2s ease
}

.gm-blog-widget .gm-blog-filter:hover{
    border-color:rgba(17,19,21,.42)!important;
    color:var(--gm-dark)!important
}

.gm-blog-widget .gm-blog-filter.is-active{
    background:var(--gm-dark)!important;
    border-color:var(--gm-dark)!important;
    color:var(--gm-light)!important
}

.gm-blog-widget__status{
    min-height:0;
    margin:-10px 0 18px;
    color:rgba(17,19,21,.46);
    font-size:9px;
    line-height:1.4
}

.gm-blog-widget__status:empty{display:none}

.gm-blog-widget__content{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
    transition:opacity .2s ease
}

.gm-blog-widget.is-loading .gm-blog-widget__content,
.gm-blog-widget.is-loading .gm-blog-widget__pagination{
    opacity:.35;
    pointer-events:none
}

.gm-blog-card{
    position:relative;
    min-height:260px;
    display:flex;
    flex-direction:column;
    padding:25px;
    overflow:hidden;
    background:var(--gm-light);
    border:1px solid rgba(17,19,21,.12);
    border-radius:14px;
    color:var(--gm-dark)!important;
    text-decoration:none!important;
    transition:transform .25s ease,border-color .25s ease
}

.gm-blog-card:hover{
    transform:translateY(-3px);
    border-color:rgba(17,19,21,.35);
    color:var(--gm-dark)!important
}

.gm-blog-card__top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    margin-bottom:24px
}

.gm-blog-card__category{
    min-height:28px;
    display:inline-flex;
    align-items:center;
    padding:0 10px;
    background:rgba(17,19,21,.07);
    border-radius:100px;
    color:var(--gm-dark);
    font-size:9px;
    font-weight:700;
    line-height:1;
    letter-spacing:.7px;
    text-transform:uppercase
}

.gm-blog-card__date{
    min-height:38px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 11px;
    background:var(--gm-dark);
    border-radius:100px;
    color:var(--gm-light);
    font-size:9px;
    font-weight:700;
    line-height:1;
    letter-spacing:.45px;
    white-space:nowrap;
    text-transform:uppercase
}

.gm-blog-card__title{
    margin:0 0 12px!important;
    padding:0!important;
    color:var(--gm-dark)!important;
    font-family:'Montserrat',sans-serif!important;
    font-size:18px;
    font-weight:700;
    line-height:1.3;
    letter-spacing:-.35px;
    transition:opacity .25s ease
}

.gm-blog-card:hover .gm-blog-card__title{opacity:.72}

.gm-blog-card__excerpt{
    display:-webkit-box;
    margin:0!important;
    padding:0!important;
    overflow:hidden;
    color:rgba(17,19,21,.64)!important;
    font-family:'Montserrat',sans-serif;
    font-size:12px;
    font-weight:400;
    line-height:1.65;
    -webkit-line-clamp:3;
    -webkit-box-orient:vertical
}

.gm-blog-card__footer{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    margin-top:auto;
    padding-top:24px
}

.gm-blog-card__reading{
    display:flex;
    align-items:center;
    gap:6px;
    color:rgba(17,19,21,.48);
    font-size:10px;
    font-weight:500
}

.gm-blog-card__reading svg{width:14px;height:14px}

.gm-blog-card__arrow{
    width:42px;
    height:42px;
    min-width:42px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:var(--gm-dark);
    border:1px solid var(--gm-dark);
    border-radius:50%;
    color:var(--gm-light);
    transition:.25s ease
}

.gm-blog-card__arrow svg{
    width:18px;
    height:18px;
    transition:transform .25s ease
}

.gm-blog-card:hover .gm-blog-card__arrow{
    background:transparent;
    color:var(--gm-dark)
}

.gm-blog-card:hover .gm-blog-card__arrow svg{
    transform:translate(2px,-2px)
}

.gm-blog-card::after{
    content:"";
    position:absolute;
    left:25px;
    bottom:0;
    width:0;
    height:3px;
    background:var(--gm-dark);
    transition:width .35s ease
}

.gm-blog-card:hover::after{width:45px}

.gm-blog-widget__pagination{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:8px;
    margin-top:42px;
    transition:opacity .2s ease
}

.gm-blog-widget .gm-blog-page{
    width:42px;
    height:42px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    margin:0!important;
    padding:0!important;
    background:var(--gm-light)!important;
    border:1px solid rgba(17,19,21,.14)!important;
    border-radius:50%!important;
    color:rgba(17,19,21,.62)!important;
    font-family:'Montserrat',sans-serif!important;
    font-size:11px!important;
    font-weight:600!important;
    cursor:pointer;
    box-shadow:none!important
}

.gm-blog-widget .gm-blog-page.is-active{
    background:var(--gm-dark)!important;
    border-color:var(--gm-dark)!important;
    color:var(--gm-light)!important
}

.gm-blog-widget .gm-blog-page:disabled{
    opacity:.28;
    cursor:default
}

.gm-blog-page--arrow svg{width:17px;height:17px}

.gm-blog-pagination__dots{
    width:28px;
    display:flex;
    align-items:center;
    justify-content:center;
    color:rgba(17,19,21,.4);
    font-size:13px
}

.gm-blog-widget__loading{
    display:none;
    position:absolute;
    left:50%;
    bottom:-28px;
    transform:translateX(-50%);
    color:rgba(17,19,21,.5);
    font-size:10px
}

.gm-blog-widget.is-loading .gm-blog-widget__loading{display:block}

@media(max-width:1024px){
    .gm-blog-widget__controls{
        flex-direction:column;
        align-items:stretch;
        gap:12px
    }

    .gm-blog-widget__search{
        max-width:100%;
        flex:none
    }

    .gm-blog-widget__filters{
        justify-content:flex-start
    }

    .gm-blog-widget__content{
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
}

@media(max-width:767px){
    .gm-blog-widget__controls{margin-bottom:22px}

    .gm-blog-widget__filters{
        width:100%;
        flex-wrap:nowrap;
        justify-content:flex-start;
        overflow-x:auto;
        padding-bottom:4px;
        scrollbar-width:none
    }

    .gm-blog-widget__filters::-webkit-scrollbar{display:none}

    .gm-blog-widget .gm-blog-filter{
        flex:0 0 auto;
        min-height:33px;
        padding:0 12px!important;
        font-size:8px!important
    }

    .gm-blog-widget__content{
        grid-template-columns:1fr;
        gap:12px
    }

    .gm-blog-card{
        min-height:auto;
        padding:21px
    }

    .gm-blog-card__title{font-size:17px}

    .gm-blog-card__date{
        min-height:34px;
        padding:0 10px;
        font-size:8px
    }

    .gm-blog-card::after{left:21px}

    .gm-blog-widget__pagination{
        margin-top:30px;
        gap:6px
    }

    .gm-blog-widget .gm-blog-page{
        width:38px;
        height:38px;
        font-size:10px!important
    }
}
