.wp-block-lupus-plugin-header,
.wp-block-lupus-plugin-section {
    width: 100% !important;
    max-width: unset !important;
	margin: 0 !important;
	padding: var(--standard-margin) 0 !important;
}

.wp-block-lupus-plugin-header,
.wp-block-lupus-plugin-header * {
    color: var(--accent-color);
}

.wp-block-lupus-plugin-header {
    padding-bottom: 0 !important;
}

.wp-block-lupus-plugin-header__inner,
.wp-block-lupus-plugin-section__inner {
    width: unset !important;
    max-width: 1200px;
	margin: 0 auto;
	padding-inline: .714285rem;
	box-sizing: border-box;
}

.wp-block-lupus-plugin-header__inner {
    padding-block: 8rem;
}

.wp-block-lupus-plugin-header__inner :last-child {
    margin-bottom: 0 !important;
}

.full-sized .wp-block-lupus-plugin-header__inner {
    top: 20%;
}

.wp-block-lupus-plugin-header h1 {
    position: relative;
}

.wp-block-lupus-plugin-header h1:not(.wp-block-lupus-plugin-subtitle+h1)::before {
    content: '';

    position: absolute;
    top: -.4em;
    width: 50%;
    height: .2em;

    background: var(--tertiary-color) !important;
}

@media (max-width: 991px) {
    .wp-block-lupus-plugin-header h1:not(.wp-block-lupus-plugin-subtitle+h1):before {
        width: 60%;
    }
}

@media (max-width: 543px) {
    .wp-block-lupus-plugin-header h1:not(.wp-block-lupus-plugin-subtitle+h1)::before {
        width: 80%;
    }
}

.wp-block-lupus-plugin-header__inner .wp-block-post-date {
    position: absolute;
    bottom: 0;
    left: .714285rem;

    padding: .6em 1em;

    background: fixed var(--tertiary-color);
    font-weight: 900;
    text-transform: uppercase;
}

.wp-block-lupus-plugin-horizontal-scroll__before-after,
.wp-block-lupus-plugin-section__before-after {
    display: block !important;

    position: relative;
    margin: 0 !important;
    padding: 0 !important;
    height: 0;
    width: 100%;
    max-width: unset !important;

    overflow: hidden;

    z-index: 2;
}

.wp-block-lupus-plugin-section__before-after.image {
    display: none !important;
}

.wp-block-lupus-plugin-horizontal-scroll__before-after.alternative-colors,
.wp-block-lupus-plugin-section__before-after.alternative-colors {
    background: fixed var(--primary-color);
}

.wp-block-lupus-plugin-horizontal-scroll__before-after.alternative-colors::before,
.wp-block-lupus-plugin-section__before-after.alternative-colors::before,
.wp-block-lupus-plugin-horizontal-scroll__before-after::after,
.wp-block-lupus-plugin-section__before-after::after {
    content: '';

    position: absolute;
    height: .6em;
}

.wp-block-lupus-plugin-horizontal-scroll__before-after.alternative-colors::before,
.wp-block-lupus-plugin-section__before-after.alternative-colors::before {
    top: 0;

    background: fixed var(--primary-background-color);
}

.wp-block-lupus-plugin-horizontal-scroll__before-after::after,
.wp-block-lupus-plugin-section__before-after::after {
    bottom: 0;

    background: var(--tertiary-color);
}

@media (prefers-reduced-motion: no-preference) {
    @supports (animation-timeline: view(block var(--nav-height-small) 0)) {
        .wp-block-lupus-plugin-horizontal-scroll__before-after,
        .wp-block-lupus-plugin-section__before-after {
            height: .6em;

            overflow: initial;
        }

        .wp-block-lupus-plugin-horizontal-scroll__before-after.alternative-colors,
        .wp-block-lupus-plugin-section__before-after.alternative-colors {
            height: 1.8em;
        }

        .wp-block-lupus-plugin-horizontal-scroll__before-after::before,
        .wp-block-lupus-plugin-section__before-after::before,
        .wp-block-lupus-plugin-horizontal-scroll__before-after::after,
        .wp-block-lupus-plugin-section__before-after::after {
            left: 0;
            right: 100%;

            animation: scroll-bar-left 1ms linear forwards;
            animation-timeline: view(block var(--nav-height-small) 0);
        }

        .wp-block-lupus-plugin-horizontal-scroll__before-after::before,
        .wp-block-lupus-plugin-section__before-after::before,
        .wp-block-lupus-plugin-horizontal-scroll__before-after:nth-of-type(even)::after,
        .wp-block-lupus-plugin-section__before-after:nth-of-type(even)::after {
            left: unset;
            right: 0;

            animation-name: scroll-bar-right;
        }

        .wp-block-lupus-plugin-horizontal-scroll__before-after:nth-of-type(even)::before,
        .wp-block-lupus-plugin-section__before-after:nth-of-type(even)::before {
            left: 0;
            right: unset;

            animation-name: scroll-bar-left;
        }
    }
}

@keyframes scroll-bar-left {
    from {
        left: 0;
        right: 100%;
    }

    50% {
        left: 0;
        right: 0;
    }

    to {
        left: 100%;
        right: 0;
    }
}

@keyframes scroll-bar-right {
    from {
        left: 100%;
        right: 0;
    }

    50% {
        left: 0;
        right: 0;
    }

    to {
        left: 0;
        right: 100%;
    }
}

.wp-block-lupus-plugin-header.full-sized,
.wp-block-lupus-plugin-section.full-sized {
    min-height: calc(100vh - var(--nav-height-small) - var(--wordpress-support-bar)) !important;
    min-height: calc(100svh - var(--nav-height-small) - var(--wordpress-support-bar)) !important;
    overflow: hidden;

	scroll-margin: calc(var(--nav-height-small)) 0 0 !important;
}

.wp-block-lupus-plugin-header.full-sized,
.wp-block-lupus-plugin-horizontal-scroll .wp-block-lupus-plugin-section {
    height: calc(100vh - var(--nav-height-small) - var(--wordpress-support-bar)) !important;
    height: calc(100svh - var(--nav-height-small) - var(--wordpress-support-bar)) !important;}

.alternative-colors {
    --alternative-font-color: var(--accent-color);
    --alternative-background-color: var(--primary-color);
}

.alternative-colors h2,
.alternative-colors h3,
.alternative-colors h4,
.alternative-colors h5 {
    color: inherit !important;
}

.alternative-colors .wp-block-button__link {
    color: var(--accent-color) !important;
    background: fixed var(--tertiary-color);
}

.alternative-colors .wp-block-button__link:hover {
    color: var(--primary-color) !important;
    background: fixed var(--accent-color);
    border-color: var(--accent-color);
}

.alternative-colors .wp-block-details,
.alternative-colors .wp-block-details p:nth-child(2) {
    transition: border-color .4s;
}

.alternative-colors .wp-block-details[open],
.alternative-colors .wp-block-details[open] p:nth-child(2) {
    border-color: var(--accent-color);

    transition: none;
}

.alternative-colors .wp-block-details::before,
.alternative-colors .wp-block-details summary {
    color: var(--accent-color) !important;
}

.alternative-colors .wp-block-details[open]::before,
.alternative-colors .wp-block-details[open] summary {
    color: var(--primary-color) !important;
}

.alternative-colors .wp-block-details summary {
    background: fixed var(--tertiary-color);
}

.alternative-colors .wp-block-details[open] summary {
    background: fixed var(--accent-color);
}

@media (prefers-reduced-motion: no-preference) {
    .alternative-colors .wp-block-details::after {
        background: fixed var(--accent-color);
    }
}

.alternative-colors .wp-block-quote p {
    color: inherit;
}

.wp-block-lupus-plugin-section__logo-container {
    background: fixed center calc(50% + (var(--nav-height-small) + var(--wordpress-support-bar)) / 2) / 300px no-repeat !important;
    background-image: var(--alternative-logo-src, var(--logo-src)) !important;
}

@media (min-width: 992px) {
    .wp-block-lupus-plugin-section__logo-container {
        background: fixed center calc(50% + (var(--nav-height-small) + var(--wordpress-support-bar)) / 2) / 500px no-repeat !important;
        background-image: var(--alternative-logo-src, var(--logo-src)) !important;
        opacity: 10% !important;
    }
}

.wp-block-lupus-plugin-section__message-container {
    font-family: var(--details-font);
    font-size: 3rem !important;
    font-weight: 900;
    text-transform: uppercase;
}

@media (min-width: 992px) {
    .wp-block-lupus-plugin-section__message-container {
        font-size: 4rem !important;
        opacity: 10% !important;
    }
}

@media (prefers-reduced-motion: no-preference) {
    .wp-block-lupus-plugin-section__message-container {
        justify-content: unset !important;
    }

    .wp-block-lupus-plugin-section__message-line__inner {
        animation: message-scroll calc(120s / var(--animation-speed-factor, 1)) linear infinite var(--animation-direction, forwards);
    }

    .wp-block-lupus-plugin-section__message-group:nth-of-type(odd) .wp-block-lupus-plugin-section__message-line:nth-of-type(even) .wp-block-lupus-plugin-section__message-line__inner,
    .wp-block-lupus-plugin-section__message-group:nth-of-type(even) .wp-block-lupus-plugin-section__message-line:nth-of-type(odd) .wp-block-lupus-plugin-section__message-line__inner {
        --animation-speed-factor: .5;
    }
}

@keyframes message-scroll {
    to {
        transform: translate(-100%);
    }
}

.wp-block-lupus-plugin-section.image {
    color: var(--accent-color) !important;

    scroll-margin: var(--nav-height-small) 0 0 !important;
}

.wp-block-lupus-plugin-header__image-overlay,
    .wp-block-lupus-plugin-section__image-overlay {
    opacity: 1 !important;
    background-color: unset !important;
    background-image: linear-gradient(rgba(0,0,0,0), rgba(0,0,0,0.6)) !important;
}

.wp-block-lupus-plugin-header__image-container {
    background-position: 50% calc(50% + var(--nav-height-big)) !important;
}

.wp-block-lupus-plugin-header.image-fixed .wp-block-lupus-plugin-header__image-container,
.wp-block-lupus-plugin-section.image-fixed .wp-block-lupus-plugin-section__image-container {
    background-position: 50% calc(50% + (var(--nav-height-big) - var(--nav-height-small))) !important;
}

@media (max-aspect-ratio: 1/1) {
    .wp-block-lupus-plugin-header__image-container,
    .wp-block-lupus-plugin-section__image-container {
        background-position: 50% calc(50% + (var(--nav-height-big) - var(--nav-height-small)) / 2) !important;
    }
}

.wp-block-lupus-plugin-section.image h2,
.wp-block-lupus-plugin-section.image h3,
.wp-block-lupus-plugin-section.image h4,
.wp-block-lupus-plugin-section.image h5 {
    color: inherit !important;
}

.wp-block-lupus-plugin-header__photocredit,
    .wp-block-lupus-plugin-section__photocredit {
    padding: .125em .5em !important;
    font-size: 1rem;
    font-style: normal;
    font-weight: 300;

    backdrop-filter: blur(.5rem);
}

@supports not (backdrop-filter: blur(.5rem)) {
    .wp-block-lupus-plugin-header__photocredit,
        .wp-block-lupus-plugin-section__photocredit {
        background-color: color-mix(in srgb, var(--primary-color) 60%, transparent) !important;
    }
}

@supports not ((backdrop-filter: blur(.5rem)) or (background-color: color-mix(in srgb, var(--primary-color) 60%, transparent))) {
    .wp-block-lupus-plugin-header__photocredit,
        .wp-block-lupus-plugin-section__photocredit {
        background-color: var(--primary-color) !important;
    }
}

.wp-block-lupus-plugin-header__photocredit a,
    .wp-block-lupus-plugin-section__photocredit a {
    font-style: inherit;
}

.wp-block-lupus-plugin-section.image .wp-block-lupus-plugin-section__inner>* {
    backdrop-filter: blur(.5rem);
}

.wp-block-lupus-plugin-section.image .wp-block-lupus-plugin-section__inner>.wp-block-media-text {
    backdrop-filter: unset;
}

.wp-block-lupus-plugin-section.image .wp-block-lupus-plugin-section__inner>p,
.wp-block-lupus-plugin-section.image .wp-block-media-text__content {
    padding: 1rem 1.5rem !important;
}

.wp-block-lupus-plugin-section.image .wp-block-media-text__content {
    backdrop-filter: blur(.5rem);
}



/* SUBTITLE */

.wp-block-lupus-plugin-subtitle {
    position: relative;
    width: 50%;
    margin-inline: 0 !important;
    margin-bottom: .6em;
    
    color: var(--tertiary-color);

    font-family: var(--secondary-font);
    font-weight: 900;
    text-transform: var(--subtitle-texttransform);
    font-size: inherit !important;
    line-height: 1.5;
}

.alternative-colors .wp-block-lupus-plugin-subtitle {
    color: inherit;
}

.wp-block-lupus-plugin-header .wp-block-lupus-plugin-subtitle {
    font-size: 1.33333em !important;
    color: inherit;
}

@media (max-width: 991px) {
    .wp-block-lupus-plugin-subtitle {
        width: 60%;
    }
}

@media (max-width: 543px) {
    .wp-block-lupus-plugin-subtitle {
        width: 85%;
    }
}

.image h2:not(.wp-block-lupus-plugin-subtitle+h2),
.image h3:not(.wp-block-lupus-plugin-subtitle+h3),
.image h4:not(.wp-block-lupus-plugin-subtitle+h4),
.image h5:not(.wp-block-lupus-plugin-subtitle+h5),
.wp-block-lupus-plugin-subtitle {
    width: 60%;
    min-height: 1.5em;

    overflow: hidden;
}

@media (max-width: 991px) {
    .image h2:not(.wp-block-lupus-plugin-subtitle+h2),
    .image h3:not(.wp-block-lupus-plugin-subtitle+h3),
    .image h4:not(.wp-block-lupus-plugin-subtitle+h4),
    .image h5:not(.wp-block-lupus-plugin-subtitle+h5),
    .wp-block-lupus-plugin-subtitle {
        width: 67%;
    }
}

@media (max-width: 600px) {
    .image h2:not(.wp-block-lupus-plugin-subtitle+h2),
    .image h3:not(.wp-block-lupus-plugin-subtitle+h3),
    .image h4:not(.wp-block-lupus-plugin-subtitle+h4),
    .image h5:not(.wp-block-lupus-plugin-subtitle+h5),
    .wp-block-lupus-plugin-section .wp-block-lupus-plugin-subtitle {
        width: unset;
    }
}

.image h2:not(.wp-block-lupus-plugin-subtitle+h2)::after,
.image h3:not(.wp-block-lupus-plugin-subtitle+h3)::after,
.image h4:not(.wp-block-lupus-plugin-subtitle+h4)::after,
.image h5:not(.wp-block-lupus-plugin-subtitle+h5)::after,
.wp-block-lupus-plugin-subtitle::after {
    content: '';

    position: absolute;
    bottom: .45em;
    height: .6em;
    width: 100%;
    margin-left: .6em;

    background: fixed var(--tertiary-color) !important;
}

@media (max-width: 600px) {
    .image h2:not(.wp-block-lupus-plugin-subtitle+h2)::after,
    .image h3:not(.wp-block-lupus-plugin-subtitle+h3)::after,
    .image h4:not(.wp-block-lupus-plugin-subtitle+h4)::after,
    .image h5:not(.wp-block-lupus-plugin-subtitle+h5)::after,
    .wp-block-lupus-plugin-section .wp-block-lupus-plugin-subtitle::after {
        content: unset;
    }
}

/* HORIZONTAL SCROLL */

.wp-block-lupus-plugin-horizontal-scroll {
    width: 100% !important;
    max-width: unset !important;
    padding: 0 !important;
}