.paywall-wrap {
    position: relative;
}

.paywall-block {
    position: absolute;
    max-width: 900px;
    box-shadow: 0 0 45px rgba( 0, 0, 0, 0.25 );
    top: 60px;
    left: 50%;
    box-sizing: border-box;
    width: 80%;
    transform: translate(-50%, 0);
}

.paywall-modal .paywall-block {
    position: relative;
    top: 0;
    left: 0;
    margin: 0 auto;
    width: 100%;
    transform: unset;
    box-shadow: none;
}

.paywall-modal.modal .modal-body {
    padding: 0;
}

.paywall-block .paywall-header {
    padding: 30px 75px 35px;
    background: #fff;
}

.paywall-block .paywall-header .paywall-title {
    font-size: 35px;
    font-weight: 300;
    line-height: 30px;
    position: relative;
    padding-bottom: 30px;
}

.paywall-block .paywall-header .paywall-title:before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    height: 8px;
    width: 60px;
    display: block;
    background: #77C19D;
}

.paywall-block .paywall-content {
    border-left: 8px solid #77C19D;
    padding: 30px 75px 40px;
    position: relative;
    background: #dadada;
    color: rgb(81, 81, 81);
}

.paywall-block .paywall-content:before {
    content: "";
    position: absolute;

    top: -50px;
    right: 50px;

    border: 25px solid #dadada;
    border-right-color: transparent;
    border-top-color: transparent;
}
.paywall-image-placeholder {
    width: 100%;
}

@media screen and (max-width: 800px) {
    .paywall-block .paywall-header {
        padding: 15px;
    }

    .paywall-block .paywall-header .paywall-title {
        font-size: 25px;
        line-height: 32px;
    }

    .paywall-block .paywall-content {
        border-left: 4px solid #77C19D;
        padding: 15px;
    }

    .paywall-block .paywall-content:before {
        top: -30px;
        right: 30px;

        border-width: 15px;
    }
}

@media screen and (min-width: 800px) {
    .paywall-modal .paywall-block {
        max-width: 800px;
        width: 80%;
    }
}