.fancy-block {
    position: relative;
    padding: 15px 20px;
    border-radius: 8px;
    background-color: #2c2c2c;
    /* margin убран — задаётся через inline-стили из админки */
}

/* Градиентная линия СНАРУЖИ сверху блока */
.fancy-block::before {
    content: '';
    position: absolute;
    top: calc(-1 * var(--block-width, 3px));
    left: 0;
    right: 0;
    height: var(--block-width, 3px);
    background: linear-gradient(
        to top,
        var(--block-color, #d32f2f) 0%,
        transparent 100%
    );
    z-index: 10;
}

/* Градиентная линия СНАРУЖИ снизу блока */
.fancy-block::after {
    content: '';
    position: absolute;
    bottom: calc(-1 * var(--block-width, 3px));
    left: 0;
    right: 0;
    height: var(--block-width, 3px);
    background: linear-gradient(
        to bottom,
        var(--block-color, #d32f2f) 0%,
        transparent 100%
    );
    z-index: 10;
}

.fancy-block > *:first-child { margin-top: 0; }
.fancy-block > *:last-child { margin-bottom: 0; }
.fancy-block p { margin: 0; white-space: pre-wrap; word-wrap: break-word; }
.fancy-block { white-space: normal; }

@media (max-width: 768px) {
    .fancy-block {
        width: 100% !important;
        float: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
}