/* ----------------------------------------------------------------------
    call-to-action (call to action)
-------------------------------------------------------------------------*/
.call-to-action {
    display: flex;
    flex-direction: column;
    width: 100%;
    min-height: 272px;
    position: relative;
    overflow: hidden;
    padding: 35px;
    z-index: 0;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    border-radius: 4px;
}

.call-to-action .container {
    position: relative;
}

.call-to-action .action-overlay {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0,0,0,0.65);
    z-index: -1;
}

.call-to-action :is(h2, h3) {
    margin-bottom: 10px;
    color: #fff;
    font-size: 28px;
    line-height: 1.3;
    min-height: 60px;
}

.call-to-action :is(h2, h3) i { color: #fff; }

.call-to-action p {
    margin-top: 0;
    font-size: 14px;
    margin-bottom: 20px;
    color: #fff;
}

.call-to-action a.btn {
    align-self: flex-end;
    margin-top: auto;
    margin-bottom: 0;
    color: #fff;
    border-color: #fff;
    background-color: transparent !important;
    color: #fff !important;
}

.call-to-action a.btn:is(:hover, :focus, :focus-visible, :active) { color: #4c5667 !important; background-color: #fff !important; border-color: #fff; }

.call-to-action a.btn:focus-visible { outline: 2px solid #fff; outline-offset: 4px; }

.row > [class*="col-"]:has(> .call-to-action) { display: flex; }

@media (max-width: 991.98px) {
    .call-to-action {
        padding: 26px 12px 18px;
    }

    [class*="col-"] > .call-to-action {
        padding: 26px 26px 18px;
    }
}
