/* Never inside lightbox overlay */

/* Width presets, desktop */
.wp-block-image:not(.wp-lightbox-overlay *):is(.alignleft, .alignright):is(.gpro-float-w-25, .gpro-float-w-33, .gpro-float-w-40, .gpro-float-w-50),
.wp-block-image:not(.wp-lightbox-overlay *):is(.gpro-float-w-25, .gpro-float-w-33, .gpro-float-w-40, .gpro-float-w-50) > :is(.alignleft, .alignright) {
    max-width: 100%;
}

.wp-block-image:not(.wp-lightbox-overlay *).gpro-float-w-25:is(.alignleft, .alignright),
.wp-block-image:not(.wp-lightbox-overlay *).gpro-float-w-25 > :is(.alignleft, .alignright) { width: 25%; }

.wp-block-image:not(.wp-lightbox-overlay *).gpro-float-w-33:is(.alignleft, .alignright),
.wp-block-image:not(.wp-lightbox-overlay *).gpro-float-w-33 > :is(.alignleft, .alignright) { width: 33.333%; }

.wp-block-image:not(.wp-lightbox-overlay *).gpro-float-w-40:is(.alignleft, .alignright),
.wp-block-image:not(.wp-lightbox-overlay *).gpro-float-w-40 > :is(.alignleft, .alignright) { width: 40%; }

.wp-block-image:not(.wp-lightbox-overlay *).gpro-float-w-50:is(.alignleft, .alignright),
.wp-block-image:not(.wp-lightbox-overlay *).gpro-float-w-50 > :is(.alignleft, .alignright) { width: 50%; }

/* Preset image fills figure */
.wp-block-image:not(.wp-lightbox-overlay *)[class*="gpro-float-w-"] img {
    width: 100%;
    height: auto;
}

/* Text spacing beside floats */
figure.wp-block-image:not(.wp-lightbox-overlay *).alignleft,
.wp-block-image:not(.wp-lightbox-overlay *) > figure.alignleft {
    margin: 0.3em 2rem 1rem 0;
}

figure.wp-block-image:not(.wp-lightbox-overlay *).alignright,
.wp-block-image:not(.wp-lightbox-overlay *) > figure.alignright {
    margin: 0.3em 0 1rem 2rem;
}

/* Clear at section breaks */
:is(.wp-block-image:not(.wp-lightbox-overlay *):is(.alignleft, .alignright), .wp-block-image:not(.wp-lightbox-overlay *):has(> .alignleft, > .alignright))
    ~ :is(
        .wp-block-separator,
        .wp-block-spacer,
        .wp-block-group:has(> .wp-block-spacer, > .wp-block-group__inner-container > .wp-block-spacer)
    ) {
    clear: both;
}

/* Mobile: stack and centre */
@media (max-width: 767px) {
    .wp-block-image:not(.wp-lightbox-overlay *):is(.alignleft, .alignright):not(.gpro-float-keep),
    .wp-block-image:not(.wp-lightbox-overlay *):not(.gpro-float-keep) > :is(.alignleft, .alignright) {
        float: none;
        margin: 1.5rem auto;
    }

    .wp-block-image:not(.wp-lightbox-overlay *)[class*="gpro-float-w-"]:is(.alignleft, .alignright):not(.gpro-float-keep),
    .wp-block-image:not(.wp-lightbox-overlay *)[class*="gpro-float-w-"]:not(.gpro-float-keep) > :is(.alignleft, .alignright) {
        width: 80%;
        max-width: 360px;
    }

    /* Kept floats: tighter gap */
    .wp-block-image:not(.wp-lightbox-overlay *).gpro-float-keep.alignleft,
    .wp-block-image:not(.wp-lightbox-overlay *).gpro-float-keep > .alignleft {
        margin-right: 1rem;
    }

    .wp-block-image:not(.wp-lightbox-overlay *).gpro-float-keep.alignright,
    .wp-block-image:not(.wp-lightbox-overlay *).gpro-float-keep > .alignright {
        margin-left: 1rem;
    }
}
