/* Homepage hero refinements. */
.hero-wrap-title_item {
    z-index: 2;
    max-width: 780px;
}

.hero-wrap-title_item + .hwt_dec {
    left: -34px;
    top: -58px;
    bottom: -45px;
    width: 760px;
    max-width: calc(100vw - 55px);
    border-radius: 3px;
    background: linear-gradient(110deg, rgba(8, 27, 17, .82) 0%, rgba(16, 38, 27, .68) 70%, rgba(16, 38, 27, .36) 100%);
    box-shadow: 0 18px 40px rgba(0, 0, 0, .18);
    backdrop-filter: blur(1px);
}

.hero-wrap-title_item .hc_btn.color-bg {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 2px;
    background: linear-gradient(110deg, #46ad49 0%, #176b36 55%, #104d29 100%) !important;
    box-shadow: 0 10px 24px rgba(16, 77, 41, .32);
    color: #fff;
    transition: transform .25s ease, box-shadow .25s ease, filter .25s ease;
}

.hero-wrap-title_item .hc_btn.color-bg:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: -65%;
    width: 45%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .2), transparent);
    transform: skewX(-18deg);
    transition: left .55s ease;
}

.hero-wrap-title_item .hc_btn.color-bg:hover,
.hero-wrap-title_item .hc_btn.color-bg:focus {
    color: #fff;
    filter: brightness(1.08);
    transform: translateY(-3px);
    box-shadow: 0 15px 30px rgba(16, 77, 41, .42);
}

.hero-wrap-title_item .hc_btn.color-bg:hover:before,
.hero-wrap-title_item .hc_btn.color-bg:focus:before {
    left: 125%;
}

@media only screen and (max-width: 820px) {
    .hero-wrap-title_item { max-width: calc(100% - 20px); }
    .hero-wrap-title_item + .hwt_dec {
        left: -20px;
        top: -42px;
        bottom: -32px;
        width: calc(100% + 35px);
        max-width: none;
    }
}

@media only screen and (max-width: 520px) {
    .hero-wrap-title_item + .hwt_dec {
        left: -14px;
        top: -32px;
        bottom: -25px;
        width: calc(100% + 24px);
    }
    .hero-wrap-title_item .hc_btn.color-bg {
        padding: 14px 20px;
        font-size: 11px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .hero-wrap-title_item .hc_btn.color-bg,
    .hero-wrap-title_item .hc_btn.color-bg:before { transition: none; }
}
