.iflb-front-block {
    box-sizing: border-box;
}

.iflb-front-block *,
.iflb-front-block *::before,
.iflb-front-block *::after {
    box-sizing: border-box;
}

.iflb-canvas {
    position: relative;
    width: 100%;
    height: var(--iflb-height-d, 640px);
    min-height: 280px;
    overflow: hidden;
    background-color: var(--iflb-bg, #f8fafc);
    background-size: cover;
    background-position: center;
    border-radius: var(--iflb-radius, 0px);
}

.iflb-item {
    position: absolute;
    left: var(--iflb-x-d, 0%);
    top: var(--iflb-y-d, 0%);
    width: var(--iflb-w-d, 30%);
    height: var(--iflb-h-d, auto);
    transform: rotate(var(--iflb-r-d, 0deg));
    display: flex;
    overflow: hidden;
    line-height: 1.55;
    word-break: break-word;
}

.iflb-type-image {
    padding: 0 !important;
}

.iflb-type-image img,
.iflb-image-link,
.iflb-image-link img {
    width: 100%;
    height: 100%;
    display: block;
}

.iflb-type-image img {
    object-fit: cover;
}

.iflb-image-link {
    color: inherit;
    text-decoration: none;
}

.iflb-heading-text {
    width: 100%;
    line-height: 1.16;
}

.iflb-heading-text small {
    display: block;
    margin-top: .7em;
    font-size: .32em;
    line-height: 1.6;
    font-weight: 500;
    opacity: .78;
}

.iflb-text-body {
    width: 100%;
}

.iflb-button-link,
.iflb-button-like {
    display: inline-flex;
    width: 100%;
    height: 100%;
    align-items: center;
    justify-content: center;
    color: inherit;
    text-decoration: none;
}

.iflb-button-link:hover {
    filter: brightness(.96);
    transform: translateY(-1px);
}

.iflb-card-content {
    width: 100%;
}

.iflb-card-content strong {
    display: block;
    font-size: 1.12em;
    line-height: 1.35;
}

.iflb-card-content p {
    margin: .65em 0 0;
    font-size: .86em;
    line-height: 1.65;
    font-weight: 400;
    opacity: .82;
}

.iflb-number-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    line-height: 1.05;
}

.iflb-number-content strong {
    font-size: 1em;
    line-height: 1;
}

.iflb-number-content span {
    margin-top: .45em;
    font-size: .32em;
    line-height: 1.45;
    font-weight: 600;
}

.iflb-image-placeholder {
    width: 100%;
    height: 100%;
    min-height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-image: linear-gradient(135deg, rgba(255,255,255,.35), rgba(255,255,255,0));
    color: #64748b;
    font-size: 14px;
}

@media (max-width: 900px) {
    .iflb-canvas {
        height: var(--iflb-height-t, 760px);
    }
    .iflb-item {
        left: var(--iflb-x-t, var(--iflb-x-d, 0%));
        top: var(--iflb-y-t, var(--iflb-y-d, 0%));
        width: var(--iflb-w-t, var(--iflb-w-d, 30%));
        height: var(--iflb-h-t, var(--iflb-h-d, auto));
        transform: rotate(var(--iflb-r-t, var(--iflb-r-d, 0deg)));
    }
}

@media (max-width: 600px) {
    .iflb-canvas {
        height: var(--iflb-height-m, 980px);
    }
    .iflb-item {
        left: var(--iflb-x-m, var(--iflb-x-t, var(--iflb-x-d, 0%)));
        top: var(--iflb-y-m, var(--iflb-y-t, var(--iflb-y-d, 0%)));
        width: var(--iflb-w-m, var(--iflb-w-t, var(--iflb-w-d, 30%)));
        height: var(--iflb-h-m, var(--iflb-h-t, var(--iflb-h-d, auto)));
        transform: rotate(var(--iflb-r-m, var(--iflb-r-t, var(--iflb-r-d, 0deg))));
    }
}
