$selector: '.entry-content p > a', '.entry-content h1 > a',
	'.entry-content h2 > a', '.entry-content h3 > a', '.entry-content h4 > a',
	'.entry-content h5 > a', '.entry-content h6 > a', '.entry-content em > a',
	'.entry-content strong > a', '.entry-content > ul a',
	'.entry-content > ol a', '.wp-block-column > ul a',
	'.wp-block-column > ol a', '[class*="_inner-container"] > ul a',
	'[class*="_inner-container"] > ol a', '.gdpr-confirm-policy a';

a {
	color: var(--linkInitialColor);
	text-decoration: var(--has-link-decoration, var(--textDecoration, none));

	&:hover {
		color: var(--linkHoverColor);
	}
}

// type 2
[data-link='type-2'] {
	#{$selector} {
		--textDecoration: underline;
	}
}

// type 3
[data-link='type-3'] {
	#{$selector} {
		background-position: var(--has-link-decoration, 0% 100%);
		background-repeat: var(--has-link-decoration, no-repeat);
		background-size: var(--has-link-decoration, 0% 2px);
		background-image: var(
			--has-link-decoration,
			linear-gradient(currentColor, currentColor)
		);

		&:hover {
			background-size: var(--has-link-decoration, 100% 2px);
		}
	}
}

// type 4
[data-link='type-4'] {
	#{$selector} {
		background-position: var(--has-link-decoration, 0% 100%);
		background-repeat: var(--has-link-decoration, no-repeat);
		background-size: var(--has-link-decoration, 100% 2px);
		background-image: var(
			--has-link-decoration,
			linear-gradient(currentColor, currentColor)
		);

		&:hover {
			color: var(--has-link-decoration, #fff);

			background-size: var(--has-link-decoration, 100% 100%);
			background-image: var(
				--has-link-decoration,
				linear-gradient(var(--linkHoverColor), var(--linkHoverColor))
			);
		}
	}
}

// type 5
[data-link='type-5'] {
	#{$selector} {
		background-repeat: var(--has-link-decoration, no-repeat);
		background-size: var(--has-link-decoration, 0% 100%);
		background-image: var(
			--has-link-decoration,
			linear-gradient(var(--linkHoverColor), var(--linkHoverColor))
		);

		&:hover {
			color: var(--has-link-decoration, #fff);
			background-size: var(--has-link-decoration, 100% 100%);
		}
	}
}

// anchor links + sticky state
// not working in Safari
:target {
	// 1. No sticky -- 0px
	scroll-margin-top: calc(
		var(--admin-bar, 0px) + var(--frame-size, 0px) +
			var(--scroll-margin-top-offset, 0px)
	);
}

[data-header*='sticky'] {
	// 3. Sticky present and init -- --headerStickyHeight
	--scroll-margin-top-offset: calc(
		(
				var(--headerStickyHeight, var(--headerHeight, 0px)) *
					var(--has-transparent-header) *
					(var(--stickyShrink, 100) / 100)
			) + var(--headerStickyHeight, var(--headerHeight, 0px)) *
			(1 - var(--has-transparent-header))
	);
}

[data-header*='sticky:shrink'] {
	// 3. Sticky present and init -- --headerStickyHeight
	--scroll-margin-top-offset: calc(
		var(--headerStickyHeight, var(--headerHeight, 0px)) *
			(var(--stickyShrink, 100) / 100)
	);
}
