@layer cavalree {
	:where([data-cavalree="group"i], [data-cavalree^="group@"i]) {
		--c-composition--place: center;
	}

	:where([data-cavalree="group/asset"i], [data-cavalree^="group/asset@"i]) {
	}

	:where([data-cavalree="group/content"i], [data-cavalree^="group/content@"i]) {
	}

	:where([data-cavalree="group/control"i], [data-cavalree^="group/control@"i])  {
		--_c-composition_item--size: calc(var(--c--size--viewport) + var(--c--size--gutter--site) * 2);

		--c-box--padding--inline: var(--c--size--gutter--site);

		--c-cluster--gap: 0.25rem;
		--c-cluster--place--inline: end;

		inset-block-end: calc(100% + var(--c-stack--gap) + 0.5rem);
		pointer-events: none;
		position: absolute;

		& :is([data-cavalree="button"i], [data-cavalree^="button@"i]) {
			background-color: currentcolor;
			block-size: 2.5rem;
			contain: strict;
			inline-size: 2.5rem;
			mask-image: url("/wp-content/themes/cavalree/images/arrow.svg");
			mask-position: 50%;
			mask-repeat: no-repeat;
			mask-size: 2rem;
			pointer-events: auto;
			transition-duration: 250ms;
			transition-property: scale;
			transition-timing-function: ease;

			&[data-action="previous"i] {
				rotate: 180deg;
			}

			&:is(:focus, :hover) {
				scale: 1.125;
			}
		}
	}

	:where([data-cavalree="group/figure"i], [data-cavalree^="group/figure@"i]) {
	}

	:where([data-cavalree="group/inner"i], [data-cavalree^="group/inner@"i]) {
		--c-cluster--gap: var(--c--size--gutter--sm);

		--c-content-sidebar--gap: var(--c--size--gutter);
		--c-content-sidebar--place: center;

		--c-grid--gap: var(--c--size--gutter--xs);

		--c-reel--gap: var(--c--size--gutter);

		--c-stack--gap: var(--c--size--gutter);

		--c-switcher--gap: var(--c--size--gutter--lg);

		position: static !important; /* KLUDGE */

		& > :where([data-cavalree]) {
			--c-composition--place: center;
			--c-composition--size: var(--c--size--viewport);
		}
	}

	:where([data-cavalree="group/kicker"i], [data-cavalree^="group/kicker@"i]) {
	}

	:where([data-cavalree="group/label"i], [data-cavalree^="group/label@"i]) {
	}
}

@layer cavalree {
	[data-cavalree="group"i] {
	}

	[data-cavalree="group/asset"i] {
	}

	[data-cavalree="group/content"i] {
	}

	[data-cavalree="group/figure"i] {
	}

	[data-cavalree="group/inner"i] {
	}

	[data-cavalree="group/kicker"i] {
	}

	[data-cavalree="group/label"i] {
	}
}
