html { overflow-x: clip; }

.sf-block.sf-media-small { width: min(360px, 100%); }
.sf-block.sf-media-content,
.sf-image-content { width: min(640px, 100%); }
.sf-block.sf-media-wide,
.sf-image-wide { width: min(980px, 100%); }
.sf-block.sf-media-full,
.sf-image-full { width: 100%; max-width: 100%; }
.sf-block.sf-scaled:not(.sf-has-aside):not(.sf-media-bleed) {
    width: min(var(--sf-media-scale, 100%), 100%);
    max-width: 100%;
}
.sf-block.sf-align-left { margin-left: 0; margin-right: auto; }
.sf-block.sf-align-center { margin-left: auto; margin-right: auto; }
.sf-block.sf-align-right { margin-left: auto; margin-right: 0; }
.sf-block.sf-media-full.sf-align-left,
.sf-block.sf-media-full.sf-align-right,
.sf-block.sf-media-bleed {
    margin-left: auto;
    margin-right: auto;
}
.sf-block.sf-media-bleed {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
}
.sf-block.sf-media-bleed figure,
.sf-block.sf-media-bleed .sf-slideshow,
.sf-block.sf-media-bleed .sf-video {
    border-radius: 0;
}
.sf-block.sf-media-bleed img,
.sf-block.sf-media-bleed video {
    border-radius: 0;
}

.sf-block.sf-has-aside {
    display: flex;
    gap: 1.25rem;
    align-items: flex-start;
    width: 100% !important;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
}
.sf-block.sf-has-aside.sf-align-right { flex-direction: row-reverse; }
.sf-block.sf-has-aside.sf-align-center {
    flex-direction: column;
    align-items: center;
}
.sf-block.sf-has-aside > figure {
    margin: 0;
    max-width: 100%;
}
.sf-block.sf-has-aside.sf-align-left > figure,
.sf-block.sf-has-aside.sf-align-right > figure {
    flex: 0 0 var(--sf-media-scale, 42%);
    width: var(--sf-media-scale, 42%);
}
.sf-block.sf-has-aside.sf-align-center > figure {
    width: var(--sf-media-scale, 70%);
}
.sf-block.sf-has-aside > .sf-media-aside {
    flex: 1 1 220px;
    min-width: min(100%, 220px);
    background: var(--sf-aside-bg, transparent);
}
.sf-block.sf-has-aside.has-box-bg > .sf-media-aside {
    padding: 1rem 1.15rem;
    border-radius: 14px;
}
.sf-block.sf-has-aside.has-text-color > .sf-media-aside,
.sf-block.sf-has-aside.has-text-color > .sf-media-aside.sf-prose {
    color: var(--sf-aside-fg);
}
.sf-block-text.has-box-bg {
    padding: 1.1rem 1.25rem;
    border-radius: 14px;
}
.sf-block-text.has-text-color,
.sf-block-text.has-text-color .sf-prose,
.sf-block-text.has-text-color .sf-prose h1,
.sf-block-text.has-text-color .sf-prose h2,
.sf-block-text.has-text-color .sf-prose h3,
.sf-block-text.has-text-color .sf-prose p {
    color: inherit;
}
.sf-block.sf-has-aside.sf-align-center > .sf-media-aside {
    width: 100%;
    flex: 1 1 auto;
}

@media (max-width: 760px) {
    .sf-block.sf-media-small,
    .sf-block.sf-media-content,
    .sf-block.sf-media-wide,
    .sf-block.sf-scaled:not(.sf-has-aside):not(.sf-media-bleed) {
        width: 100%;
    }
    .sf-block.sf-has-aside {
        flex-direction: column;
    }
    .sf-block.sf-has-aside > figure {
        flex-basis: auto !important;
        width: 100% !important;
    }
}
