/* Structural block presentation consumes native theme.json variables only. */

.awp-grid {
	display: grid;
	grid-template-columns: repeat(var(--awp-grid-columns, 3), minmax(0, 1fr));
	align-items: stretch;
	min-width: 0;
	gap: var(--awp-grid-gap, var(--wp--preset--spacing--40));
}

.awp-grid--columns-1 { --awp-grid-columns: 1; }
.awp-grid--columns-2 { --awp-grid-columns: 2; }
.awp-grid--columns-3 { --awp-grid-columns: 3; }
.awp-grid--columns-4 { --awp-grid-columns: 4; }
.awp-grid--gap-small { --awp-grid-gap: var(--wp--preset--spacing--30); }
.awp-grid--gap-medium { --awp-grid-gap: var(--wp--preset--spacing--40); }
.awp-grid--gap-large { --awp-grid-gap: var(--wp--preset--spacing--60); }
.wp-block-atomic-wp-grid.awp-grid { display: grid; }
.awp-grid > * { min-width: 0; }
.awp-grid--equal-height > * { align-self: stretch; }
.awp-grid--natural-height { align-items: start; }
.awp-grid--align-top { align-items: start; }
.awp-grid--align-center { align-items: center; }
.awp-grid--align-bottom { align-items: end; }

/* Group corners consume the parent theme's single normal-surface radius. */
.wp-block-group.awp-corners-resolved-rounded {
	border-radius: var(--wp--custom--radius--md);
}
.wp-block-group.awp-corners-resolved-square,
.wp-block-image.awp-corners-square img {
	border-radius: 0;
}
.wp-block-image.awp-corners-rounded img {
	border-radius: var(--wp--custom--radius--md);
}

/* Edge shapes are trusted inline SVG decoration. They belong to the Group,
   occupy no flow height, and share exactly the Group's rendered width. */
.awp-group-has-shapes {
	position: relative;
	isolation: isolate;
}
.awp-group-shape {
	box-sizing: border-box;
	display: block;
	inset-inline-start: 0;
	inline-size: 100%;
	max-inline-size: none;
	margin: 0;
	overflow: hidden;
	pointer-events: none;
	position: absolute;
	transform-origin: center;
	z-index: 3;
}
.awp-group-shape--top {
	block-size: var(--awp-group-shape-top-height, 100px);
	color: var(--awp-group-shape-top-color, currentColor);
	top: -1px;
}
.awp-group-shape--bottom {
	block-size: var(--awp-group-shape-bottom-height, 100px);
	bottom: -1px;
	color: var(--awp-group-shape-bottom-color, currentColor);
}
.awp-group-shape--flip-horizontal { transform: scaleX(-1); }
.awp-group-has-shapes > :not(.awp-background-media):not(.awp-group-shape) {
	position: relative;
	z-index: 2;
}

/* Reserve the selected edge height in normal flow without changing the
   author's serialized Core padding. The SVG remains absolutely positioned at
   the edge; this anonymous block is structural space only. */
.awp-group-shape-reserves-top::before,
.awp-group-shape-reserves-bottom::after {
	content: "";
	display: block;
	inline-size: 100%;
	block-size: var(--awp-group-shape-top-height, 0px);
	pointer-events: none;
}
.awp-group-shape-reserves-bottom::after {
	block-size: var(--awp-group-shape-bottom-height, 0px);
}

/* The editor block wrapper cannot contain render-filter markup. It paints a
   mask generated from the same localized registry path used by frontend SVG. */
.block-editor-block-list__block.awp-group-has-shapes::before,
.block-editor-block-list__block.awp-group-has-shapes::after {
	background: var(--awp-group-shape-preview-color, currentColor);
	box-sizing: border-box;
	content: "";
	display: none;
	inset-inline-start: 0;
	inline-size: 100%;
	max-inline-size: none;
	margin: 0;
	pointer-events: none;
	position: absolute;
	-webkit-mask-image: var(--awp-group-shape-preview-mask);
	mask-image: var(--awp-group-shape-preview-mask);
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: 100% 100%;
	mask-size: 100% 100%;
	transform-origin: center;
	z-index: 3;
}
.block-editor-block-list__block.awp-group-shape-preview--top::before {
	--awp-group-shape-preview-color: var(--awp-group-shape-top-color, currentColor);
	--awp-group-shape-preview-mask: var(--awp-group-shape-top-mask);
	block-size: var(--awp-group-shape-top-height, 100px);
	display: block;
	top: -1px;
	transform: scale(var(--awp-group-shape-top-flip-x, 1), -1);
}
.block-editor-block-list__block.awp-group-shape-preview--bottom::after {
	--awp-group-shape-preview-color: var(--awp-group-shape-bottom-color, currentColor);
	--awp-group-shape-preview-mask: var(--awp-group-shape-bottom-mask);
	block-size: var(--awp-group-shape-bottom-height, 100px);
	bottom: -1px;
	display: block;
	transform: scale(var(--awp-group-shape-bottom-flip-x, 1), 1);
}

/* BlockListBlock cannot add a second pseudo-element for flow reservation, so
   the editor moves the native inner-blocks wrapper by the same canonical
   edge height while preserving Core padding attributes. */
.block-editor-block-list__block.awp-group-shape-reserves-top > .block-editor-inner-blocks {
	margin-block-start: var(--awp-group-shape-top-height, 0px);
}
.block-editor-block-list__block.awp-group-shape-reserves-bottom > .block-editor-inner-blocks {
	margin-block-end: var(--awp-group-shape-bottom-height, 0px);
}

.awp-shape-picker {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
	margin-block-end: 16px;
}
.awp-shape-picker__choice {
	display: grid;
	gap: 4px;
	height: auto;
	justify-items: stretch;
	padding: 6px;
}
.awp-shape-picker__choice svg {
	display: block;
	inline-size: 100%;
	block-size: 32px;
}
.awp-shape-picker__label { font-size: 11px; text-align: center; }

.awp-section--inner-width-content > .wp-block-group__inner-container,
.awp-section--inner-width-content > * { max-width: var(--wp--style--global--content-size); margin-inline: auto; }
.awp-section--inner-width-wide > .wp-block-group__inner-container,
.awp-section--inner-width-wide > * { max-width: var(--wp--style--global--wide-size); margin-inline: auto; }
.awp-section--inner-width-full > .wp-block-group__inner-container,
.awp-section--inner-width-full > * { width: auto; max-width: none; margin-inline: 0; }
.awp-section--width-full,
.awp-section.alignfull { max-width: none; }
.awp-section.awp-has-background-media > .awp-background-media { width: auto; max-width: none; margin-inline: 0; }
.awp-section--spacing-none { padding-block: 0; }
.awp-section--spacing-small { padding-block: var(--wp--preset--spacing--40); }
.awp-section--spacing-medium { padding-block: var(--wp--preset--spacing--60); }
.awp-section--spacing-large { padding-block: var(--wp--preset--spacing--80); }

/* Semantic Group roles are global defaults layered beneath native local block
   styles. Hero min-height is intentionally a minimum; content may expand it. */
.wp-block-group.awp-group-role-section {
	padding-block: var(--awp-group-role-section-spacing, var(--wp--preset--spacing--60));
}
.wp-block-group.awp-group-role-hero {
	min-height: var(--awp-group-role-hero-min-height, min(60svh, 40rem));
	display: flex;
	flex-direction: column;
	justify-content: var(--awp-group-role-hero-justify-content, center);
	padding-block: var(--awp-group-role-hero-padding, var(--wp--preset--spacing--80));
}
.wp-block-group.awp-group-role-hero--top { justify-content: flex-start; }
.wp-block-group.awp-group-role-hero--center { justify-content: center; }
.wp-block-group.awp-group-role-hero--bottom { justify-content: flex-end; }

/* Semantic foreground contexts affect ordinary inherited content only. Core
   local colors and Button styles remain authoritative on their own elements. */
.wp-block-group.awp-content-color-light,
.wp-block-group.awp-content-color-dark { color: var(--awp-content-color); }
.wp-block-group.awp-content-color-light a:not(.wp-element-button):not(.wp-block-button__link),
.wp-block-group.awp-content-color-dark a:not(.wp-element-button):not(.wp-block-button__link) { color: var(--awp-content-link-color); }

@media (max-width: 782px) {
	.awp-grid--columns-3,
	.awp-grid--columns-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Gutenberg adds two editor-only wrappers around InnerBlocks. The block-list
   wrapper directly owns the children, so it receives the same grid contract
   while the outer block remains a normal editor selection surface. */
.block-editor .wp-block-atomic-wp-grid.awp-grid { display: block; }
.block-editor .wp-block-atomic-wp-grid.awp-grid > .block-editor-inner-blocks > .block-editor-block-list__layout {
	display: grid;
	grid-template-columns: repeat(var(--awp-grid-columns, 3), minmax(0, 1fr));
	gap: var(--awp-grid-gap, var(--wp--preset--spacing--40));
	align-items: stretch;
	min-width: 0;
}
.block-editor .wp-block-atomic-wp-grid.awp-grid > .block-editor-inner-blocks > .block-editor-block-list__layout > * { min-width: 0; }
.block-editor .awp-grid--equal-height > .block-editor-inner-blocks > .block-editor-block-list__layout > * { align-self: stretch; }
.block-editor .awp-grid--natural-height > .block-editor-inner-blocks > .block-editor-block-list__layout,
.block-editor .awp-grid--align-top > .block-editor-inner-blocks > .block-editor-block-list__layout { align-items: start; }
.block-editor .awp-grid--align-center > .block-editor-inner-blocks > .block-editor-block-list__layout { align-items: center; }
.block-editor .awp-grid--align-bottom > .block-editor-inner-blocks > .block-editor-block-list__layout { align-items: end; }

@media (max-width: 782px) {
	.block-editor .awp-grid--columns-3 > .block-editor-inner-blocks > .block-editor-block-list__layout,
	.block-editor .awp-grid--columns-4 > .block-editor-inner-blocks > .block-editor-block-list__layout { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 480px) {
	.block-editor .awp-grid--columns-2 > .block-editor-inner-blocks > .block-editor-block-list__layout,
	.block-editor .awp-grid--columns-3 > .block-editor-inner-blocks > .block-editor-block-list__layout,
	.block-editor .awp-grid--columns-4 > .block-editor-inner-blocks > .block-editor-block-list__layout { grid-template-columns: 1fr; }
}

@media (max-width: 480px) {
	.awp-grid--columns-2,
	.awp-grid--columns-3,
	.awp-grid--columns-4 { grid-template-columns: 1fr; }
}

/* Atomic Separator V1 is an explicit full-aligned transition layer. Its
   fill is a semantic source selected by the block; theme variables provide
   the actual presentation values. */
.awp-separator {
	box-sizing: border-box;
	position: relative;
	z-index: 2;
	display: block;
	width: 100%;
	max-width: none;
	height: var(--awp-separator-height, var(--wp--preset--spacing--60));
	margin-block: calc(var(--awp-separator-height, var(--wp--preset--spacing--60)) / -2);
	overflow: hidden;
	pointer-events: none;
}
.awp-separator--height-small { --awp-separator-height: var(--wp--preset--spacing--50); }
.awp-separator--height-medium { --awp-separator-height: var(--wp--preset--spacing--70); }
.awp-separator--height-large { --awp-separator-height: var(--wp--preset--spacing--90); }
.awp-separator__shape {
	position: absolute;
	inset: 0;
	display: block;
	background-color: var(--awp-separator-fill-color, var(--wp--preset--color--background));
	clip-path: polygon(0 30%, 100% 0, 100% 100%, 0 100%);
}
.awp-separator--fill-upper { --awp-separator-fill-color: var(--awp-separator-upper-color, var(--wp--preset--color--surface)); }
.awp-separator--fill-lower { --awp-separator-fill-color: var(--awp-separator-lower-color, var(--wp--preset--color--background)); }
.awp-separator--fill-custom { --awp-separator-fill-color: var(--awp-separator-custom-color, var(--wp--preset--color--background)); }
.awp-separator--shape-none { height: 0; margin-block: 0; }
.awp-separator--shape-none .awp-separator__shape { display: none; }
.awp-separator--shape-curve .awp-separator__shape { clip-path: ellipse(75% 100% at 50% 100%); }
.awp-separator--shape-wave .awp-separator__shape { clip-path: polygon(0 35%, 12% 15%, 25% 35%, 38% 15%, 50% 35%, 62% 15%, 75% 35%, 88% 15%, 100% 35%, 100% 100%, 0 100%); }
.awp-separator--shape-diagonal .awp-separator__shape { clip-path: polygon(0 0, 100% 45%, 100% 100%, 0 100%); }
.awp-separator--shape-arc .awp-separator__shape { clip-path: ellipse(85% 100% at 50% 100%); }
.awp-separator--shape-organic .awp-separator__shape { clip-path: polygon(0 25%, 15% 40%, 31% 18%, 47% 36%, 64% 12%, 82% 32%, 100% 20%, 100% 100%, 0 100%); }
.awp-separator--flip-horizontal .awp-separator__shape { transform: scaleX(-1); }

/* Atomic Rail V1 structural grammar. Presentation values are inherited from
   theme-owned --awp-rail-* variables so all consumers share one visual system. */
.awp-rail { position: relative; min-width: 0; }
.awp-rail__track {
	position: absolute;
	display: block;
	background: var(--awp-rail-track-color, currentColor);
	z-index: 0;
}
.awp-rail--vertical > .awp-rail__track {
	top: calc(var(--awp-rail-marker-size, 0.75rem) / 2);
	bottom: calc(var(--awp-rail-marker-size, 0.75rem) / 2);
	left: 50%;
	width: var(--awp-rail-track-width, 2px);
	transform: translateX(-50%);
}
.awp-rail--horizontal > .awp-rail__track {
	top: 50%;
	right: calc(var(--awp-rail-marker-size, 0.75rem) / 2);
	left: calc(var(--awp-rail-marker-size, 0.75rem) / 2);
	height: var(--awp-rail-track-width, 2px);
	transform: translateY(-50%);
}
.awp-rail__marker {
	box-sizing: border-box;
	display: block;
	width: var(--awp-rail-marker-size, 0.75rem);
	height: var(--awp-rail-marker-size, 0.75rem);
	border: var(--awp-rail-track-width, 2px) solid var(--awp-rail-marker-color, currentColor);
	border-radius: 50%;
	background: var(--awp-rail-marker-color, currentColor);
	z-index: 1;
	justify-self: center;
	transform: scale(1);
	transition: transform 180ms ease, background-color 180ms ease, border-color 180ms ease;
}
.awp-rail__marker--active,
.awp-timeline-item--active .awp-rail__marker {
	border-color: var(--awp-rail-marker-active-color, currentColor);
	background: var(--awp-rail-marker-active-color, currentColor);
	transform: scale(var(--awp-rail-active-scale, 1.15));
}
.awp-rail__label,
.awp-rail a,
.awp-rail button { color: var(--awp-rail-label-color, inherit); }
.awp-rail a:focus-visible,
.awp-rail button:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }

/* Timeline V1 keeps the rail centered on desktop and becomes a single
   predictable marker/content flow on narrow screens. */
.awp-timeline { min-width: 0; }
.awp-timeline__items {
	position: relative;
	display: grid;
	gap: var(--awp-rail-gap, var(--wp--preset--spacing--60));
	margin: 0;
	padding: 0;
	list-style: none;
}
.awp-timeline-item {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) var(--awp-rail-marker-size, 0.75rem) minmax(0, 1fr);
	column-gap: var(--awp-rail-gap, var(--wp--preset--spacing--40));
	align-items: start;
	min-width: 0;
}
.awp-timeline-item > .awp-rail__marker { grid-column: 2; grid-row: 1; margin-top: 0.35rem; }
.awp-timeline-item__media { grid-column: 1; grid-row: 1; min-width: 0; margin: 0; }
.awp-timeline-item__media-image { display: block; width: 100%; height: auto; }
.awp-timeline-item__body { grid-column: 3; grid-row: 1; min-width: 0; color: var(--awp-rail-label-color, inherit); }
.awp-timeline--alternating .awp-timeline-item > .awp-timeline-item__body {
	grid-column: 1 / 4;
	display: grid;
	grid-template-columns: minmax(0, 1fr) var(--awp-rail-marker-size, 0.75rem) minmax(0, 1fr);
	column-gap: var(--awp-rail-gap, var(--wp--preset--spacing--40));
}
.awp-timeline--alternating .awp-timeline-item__body > .awp-timeline-item__date,
.awp-timeline--alternating .awp-timeline-item__body > .awp-timeline-item__accent-rule,
.awp-timeline--alternating .awp-timeline-item__body > .awp-timeline-item__heading,
.awp-timeline--alternating .awp-timeline-item__content > :not(.awp-timeline-item__media) { grid-column: 3; }
.awp-timeline--alternating .awp-timeline-item__content { display: contents; }
.awp-timeline--alternating .awp-timeline-item__content > .wp-block-image.awp-timeline-item__media { grid-column: 1; grid-row: 1 / span 3; align-self: stretch; }
.awp-timeline--alternating .awp-timeline-item__content > .wp-block-image.awp-timeline-item__media img { width: 100%; height: 100%; object-fit: cover; }
.awp-timeline--alternating .awp-timeline-item:nth-child(even) > .awp-timeline-item__media { grid-column: 3; }
.awp-timeline--alternating .awp-timeline-item:nth-child(even) > .awp-timeline-item__body { grid-column: 1 / 4; }
.awp-timeline--alternating .awp-timeline-item:nth-child(even) .awp-timeline-item__body > .awp-timeline-item__date,
.awp-timeline--alternating .awp-timeline-item:nth-child(even) .awp-timeline-item__body > .awp-timeline-item__accent-rule,
.awp-timeline--alternating .awp-timeline-item:nth-child(even) .awp-timeline-item__body > .awp-timeline-item__heading,
.awp-timeline--alternating .awp-timeline-item:nth-child(even) .awp-timeline-item__content > :not(.awp-timeline-item__media) { grid-column: 1; }
.awp-timeline--alternating .awp-timeline-item:nth-child(even) .awp-timeline-item__content > .wp-block-image.awp-timeline-item__media { grid-column: 3; }
.awp-timeline--left .awp-timeline-item > .awp-timeline-item__body,
.awp-timeline--right .awp-timeline-item > .awp-timeline-item__body { grid-row: 1; }
.awp-timeline--left .awp-timeline-item > .awp-timeline-item__media,
.awp-timeline--right .awp-timeline-item > .awp-timeline-item__media { grid-row: 2; }
.awp-timeline--right .awp-timeline-item > .awp-timeline-item__body { grid-column: 3; }
.awp-timeline--single-column .awp-timeline-item {
	grid-template-columns: var(--awp-rail-marker-size, 0.75rem) minmax(0, 1fr);
	grid-template-rows: auto auto;
}
.awp-timeline--single-column .awp-rail--vertical > .awp-rail__track { left: calc(var(--awp-rail-marker-size, 0.75rem) / 2); }
.awp-timeline--single-column .awp-timeline-item > .awp-rail__marker { grid-column: 1; grid-row: 1 / span 2; }
.awp-timeline--single-column .awp-timeline-item > .awp-timeline-item__body,
.awp-timeline--single-column .awp-timeline-item > .awp-timeline-item__media { grid-column: 2; }
.awp-timeline--single-column .awp-timeline-item > .awp-timeline-item__body { grid-row: 1; }
.awp-timeline--single-column .awp-timeline-item > .awp-timeline-item__media { grid-row: 2; }
.awp-timeline-item__date,
.awp-timeline-item__heading { margin-block-start: 0; }
.awp-timeline-item__date {
	margin-block-end: var(--wp--preset--spacing--20);
	color: var(--awp-rail-label-color, currentColor);
	font-size: var(--wp--preset--font-size--small, 0.875rem);
}
.awp-timeline-item--date-prominent .awp-timeline-item__date {
	font-family: var(--wp--preset--font-family--display-font, inherit);
	font-size: var(--wp--preset--font-size--x-large, 2.25rem);
	line-height: 1.1;
}
.awp-timeline-item__accent-rule {
	display: block;
	inline-size: var(--wp--preset--spacing--50, 2rem);
	block-size: var(--awp-rail-track-width, 2px);
	margin-block-end: var(--wp--preset--spacing--20);
	background: var(--awp-rail-marker-active-color, currentColor);
}
.awp-timeline-item__heading { margin-block-end: var(--wp--preset--spacing--20); }
.awp-timeline-item__content > :first-child { margin-block-start: 0; }
.awp-timeline-item__content > :last-child { margin-block-end: 0; }

.awp-timeline-item--text-date-aside > .awp-timeline-item__body {
	display: grid;
	grid-template-columns: minmax(0, 0.35fr) var(--wp--preset--spacing--40) minmax(0, 0.65fr);
	column-gap: 0;
}
.awp-timeline-item--text-date-aside .awp-timeline-item__date { grid-column: 1; margin-block-end: 0; }
.awp-timeline-item--text-date-aside .awp-timeline-item__accent-rule,
.awp-timeline-item--text-date-aside .awp-timeline-item__heading,
.awp-timeline-item--text-date-aside .awp-timeline-item__content { grid-column: 3; }

.awp-timeline--alternating .awp-timeline-item--text-date-aside > .awp-timeline-item__body {
	grid-template-columns:
		minmax(0, 0.35fr) var(--wp--preset--spacing--40) minmax(0, 0.65fr)
		var(--awp-rail-gap, var(--wp--preset--spacing--40)) var(--awp-rail-marker-size, 0.75rem)
		var(--awp-rail-gap, var(--wp--preset--spacing--40))
		minmax(0, 0.35fr) var(--wp--preset--spacing--40) minmax(0, 0.65fr);
}
.awp-timeline--alternating .awp-timeline-item--text-date-aside > .awp-timeline-item__body > .awp-timeline-item__date { grid-column: 7; }
.awp-timeline--alternating .awp-timeline-item--text-date-aside > .awp-timeline-item__body > .awp-timeline-item__accent-rule,
.awp-timeline--alternating .awp-timeline-item--text-date-aside > .awp-timeline-item__body > .awp-timeline-item__heading,
.awp-timeline--alternating .awp-timeline-item--text-date-aside .awp-timeline-item__content > :not(.awp-timeline-item__media) { grid-column: 9; }
.awp-timeline--alternating .awp-timeline-item--text-date-aside .awp-timeline-item__content > .wp-block-image.awp-timeline-item__media { grid-column: 1 / 4; }
.awp-timeline--alternating .awp-timeline-item--text-date-aside:nth-child(even) > .awp-timeline-item__body > .awp-timeline-item__date { grid-column: 1; }
.awp-timeline--alternating .awp-timeline-item--text-date-aside:nth-child(even) > .awp-timeline-item__body > .awp-timeline-item__accent-rule,
.awp-timeline--alternating .awp-timeline-item--text-date-aside:nth-child(even) > .awp-timeline-item__body > .awp-timeline-item__heading,
.awp-timeline--alternating .awp-timeline-item--text-date-aside:nth-child(even) .awp-timeline-item__content > :not(.awp-timeline-item__media) { grid-column: 3; }
.awp-timeline--alternating .awp-timeline-item--text-date-aside:nth-child(even) .awp-timeline-item__content > .wp-block-image.awp-timeline-item__media { grid-column: 7 / 10; }

@media (max-width: 782px) {
	.awp-timeline--alternating .awp-timeline-item,
	.awp-timeline--left .awp-timeline-item,
	.awp-timeline--right .awp-timeline-item,
	.awp-timeline--single-column .awp-timeline-item {
		grid-template-columns: var(--awp-rail-marker-size, 0.75rem) minmax(0, 1fr);
		column-gap: var(--awp-rail-gap, var(--wp--preset--spacing--40));
	}
	.awp-timeline--alternating .awp-timeline-item > .awp-timeline-item__body,
	.awp-timeline--left .awp-timeline-item > .awp-timeline-item__body,
	.awp-timeline--right .awp-timeline-item > .awp-timeline-item__body,
	.awp-timeline--single-column .awp-timeline-item > .awp-timeline-item__body { grid-column: 2; }
	.awp-timeline--alternating .awp-timeline-item > .awp-timeline-item__media,
	.awp-timeline--left .awp-timeline-item > .awp-timeline-item__media,
	.awp-timeline--right .awp-timeline-item > .awp-timeline-item__media { grid-column: 2; grid-row: 2; }
	.awp-timeline--alternating .awp-timeline-item > .awp-rail__marker,
	.awp-timeline--left .awp-timeline-item > .awp-rail__marker,
	.awp-timeline--right .awp-timeline-item > .awp-rail__marker { grid-column: 1; grid-row: 1 / span 2; }
	.awp-timeline--single-column .awp-timeline-item > .awp-rail__marker { grid-column: 1; grid-row: 1 / span 2; }
	.awp-timeline .awp-rail--vertical > .awp-rail__track { left: calc(var(--awp-rail-marker-size, 0.75rem) / 2); }
	.awp-timeline--alternating .awp-timeline-item > .awp-timeline-item__body { display: block; grid-column: 2; }
	.awp-timeline-item--text-date-aside > .awp-timeline-item__body { display: block; }
	.awp-timeline-item--text-date-aside .awp-timeline-item__date { margin-block-end: var(--wp--preset--spacing--20); }
	.awp-timeline--alternating .awp-timeline-item__content { display: block; }
	.awp-timeline--alternating .awp-timeline-item__content > .wp-block-image.awp-timeline-item__media { margin-block-end: var(--wp--preset--spacing--30); }
}

@media (prefers-reduced-motion: reduce) {
	.awp-rail__marker { transition: none; }
}
