/**
 * Related Posts
 */

.entry-content #jp-relatedposts {
	max-width: var(--responsive--aligndefault-width);
	margin-left: auto;
	margin-right: auto;
}

/**
 * Infinite Scroll
 */

/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .pagination,
.infinite-scroll.neverending .widget-area,
.infinite-scroll.neverending footer#colophon {

	/* Theme Footer (when set to scrolling) */
	display: none;
}

/* When Infinite Scroll has reached its end we need to re-display
 * elements that were hidden (via .neverending) before. */
.infinity-end.neverending .widget-area,
.infinity-end.neverending footer#colophon {
	display: block;
}

body[class*=" infinity-"] main#main > article:last-of-type .entry-footer {
	border-bottom: var(--separator--height) solid var(--separator--border-color);
}

body:not(.infinity-end) .site-main > div:nth-last-child(2) > article:last-of-type .entry-footer,
body.infinity-end .site-main > div:last-of-type > article:last-of-type .entry-footer {
	border: none;
}

.site-main > .infinite-wrap > article > .entry-footer {
	margin-top: var(--global--spacing-vertical);
	padding-top: var(--global--spacing-unit);
	padding-bottom: calc(3 * var(--global--spacing-vertical));
	border-bottom: var(--separator--height) solid var(--separator--border-color);
}

.site-main > .infinite-wrap > * {
	margin-top: calc(3 * var(--global--spacing-vertical));
	margin-bottom: calc(3 * var(--global--spacing-vertical));
}

#infinite-handle {
	text-align: center;
}

.infinite-loader {
	margin: calc(3 * 1rem) auto;
}

#infinite-handle span {
	color: var(--global--color-background);
	background-color: var(--global--color-secondary);
	font-family: var(--global--font-primary);
	font-size: var(--global--font-size-base);
	font-weight: 500;
	line-height: 1.5;
	border-width: 3px;
	border-radius: 0;
	padding: 15px calc(2 * var(--button--padding-vertical));
	max-width: 170px;
	margin: auto;
}

#infinite-handle span:hover {
	color: var(--global--color-secondary);
	background-color: var(--global--color-background);
	border-color: var(--global--color-secondary);
	border-style: solid;
}

#infinite-handle span:active {
	color: var(--global--color-secondary);
	background-color: var(--global--color-background);
	border-color: var(--global--color-secondary);
}

/* Customizer */
.widget-area .widget_block {
	min-width: 0;
}

@media only screen and (min-width: 1024px) {

	.widget-area {

		/*
			Fix: minimum width of 0
			See: https://css-tricks.com/preventing-a-grid-blowout/
		*/
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

/* Contact form */

/* See https://core.trac.wordpress.org/browser/trunk/src/wp-content/themes/twentytwentyone/style.css?rev=58726#L1276 */
@supports (-webkit-appearance: none) or (-moz-appearance: none) {

	.contact-form input.grunion-field[type="checkbox"],
	.contact-form input.grunion-field[type="radio"] {
		width: 25px;
		height: 25px;
	}
}
