.hive-block-cta {
    padding: 80px 0;
    position: relative;
}

.hive-block-cta.thin {
    padding: 40px 0;
}

.hive-block-cta.large {
    padding: 120px 0;
}

.hive-block-cta .container-fluid:not(.full-width) {
    padding-left: 30px;
    padding-right: 30px;
}

.ccm-page .hive-block-cta p {
    margin-top: 1em;
    margin-bottom: 1.5em;
    line-height: 1.25em;
}

.cta-image {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center; 
    opacity: .5;
}

.cta-button {
    min-width: 180px;
}

div.ccm-page .cta-button {
    margin: 0 0.5em 0.5em 0;
    white-space: normal;
}

div.ccm-page .text-right .cta-button {
    margin: 0 0 0.5em 0.5em;
}

.controlled-width {
    width: 60%;
}

.text-center .controlled-width {
    margin: 0 auto;
}

@media screen and (max-width: 767px) {
    .controlled-width {
        width: auto;
    }    
}