/* Home page introduction: Luke's curve bottom left, stripes top right. */
.bs-hero {
	background-image: url(../images/curve.png), url(../images/stripes.png);
	background-repeat: no-repeat, no-repeat;
	background-position: left bottom, right top;
	background-size: min(40%, 560px) auto, min(26%, 360px) auto;
	padding-bottom: calc(min(40vw, 560px) * 0.317 + 1.5rem) !important;
}
@media (max-width: 781px) {
	.bs-hero {
		background-size: 70% auto, 24% auto;
		padding-top: calc(24vw * 0.9 + 1rem) !important;
		padding-bottom: calc(70vw * 0.317 + 1.5rem) !important;
	}
}

/* Page header: featured image under a 70% black overlay, a nod to Barnsley Youth Choir. */
.bs-page-header {
	background-color: var(--wp--preset--color--black, #000);
	overflow: hidden;
	padding-left: 0 !important;
	padding-right: 0 !important;
}
.bs-page-header::after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	z-index: 1;
	width: min(18%, 220px);
	aspect-ratio: 500 / 450;
	background: url(../images/stripes.png) no-repeat right top / contain;
	pointer-events: none;
}
.bs-page-header .wp-block-cover__inner-container {
	z-index: 2;
	width: 100% !important;
	max-width: var(--wp--style--global--wide-size, 1200px) !important;
	margin-inline: auto !important;
}
.bs-page-header .wp-block-cover__inner-container > .alignwide {
	margin-left: 0 !important;
	max-width: 100%;
}
.bs-page-header .wp-block-post-title {
	margin: 0;
}
.bs-page-header .wp-block-post-title::after {
	content: "";
	display: block;
	width: 3rem;
	height: 4px;
	margin-top: 0.8rem;
	background: var(--wp--preset--color--red, #bd1522);
}
.bs-page-header .bs-page-subtitle {
	margin-top: 1rem;
	max-width: 40rem;
}
.bs-page-header .bs-page-subtitle p {
	margin: 0;
}
.bs-page-header .wp-block-post-date {
	margin-top: 0.75rem;
}
@media (max-width: 781px) {
	.bs-page-header {
		min-height: 260px !important;
	}
	.bs-page-header::after {
		width: 22%;
	}
}

/* Page header (1.4): gradient overlay, default image, long titles. */
.bs-page-header .wp-block-cover__background {
	opacity: 1 !important;
	background: linear-gradient(90deg, rgba(0,0,0,.8) 0%, rgba(0,0,0,.8) 62%, rgba(0,0,0,.35) 100%) !important;
}
.bs-page-header:not(:has(.wp-block-cover__image-background)) {
	background: #000 url(../images/header-default.jpg) center / cover no-repeat;
}
.bs-page-header .wp-block-post-title {
	overflow-wrap: anywhere;
	hyphens: auto;
}
@media (max-width: 781px) {
	.bs-page-header .wp-block-cover__background {
		background: rgba(0,0,0,.7) !important;
	}
}
.bs-page-header .wp-block-post-title.is-long-title {
	font-size: var(--wp--preset--font-size--x-large) !important;
}
@media (max-width: 781px) {
	.bs-page-header {
		padding-top: calc(22vw * 0.9 + 1.25rem) !important;
	}
	.bs-page-header .wp-block-post-title {
		font-size: 1.75rem !important;
	}
	.bs-page-header .wp-block-post-title.is-long-title {
		font-size: 1.4rem !important;
	}
}

/* Header bar (1.4): smaller logo. Phones show the roundel only, cropped from
   the site logo, so there is still a single logo file to manage. */
.wp-site-blocks > header .wp-block-site-logo img {
	width: 140px !important;
	height: auto;
}
@media (max-width: 600px) {
	.wp-site-blocks > header .wp-block-site-logo a {
		display: block;
		width: 56px;
		overflow: hidden;
	}
	.wp-site-blocks > header .wp-block-site-logo img {
		width: 114px !important;
		max-width: none;
	}
}

/* Text for screen readers only (used by social links and some plugins). */
.screen-reader-text {
	border: 0;
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
	word-wrap: normal !important;
}
.screen-reader-text:focus {
	clip-path: none;
	height: auto;
	width: auto;
	margin: 0;
	padding: 0.75rem 1rem;
	z-index: 100000;
	background: var(--wp--preset--color--white);
	color: var(--wp--preset--color--black);
}

/* Pages ending in a full-width coloured band (e.g. "Come and sing with us"): no white strip before the footer. */
main:has(> .wp-block-post-content > .alignfull.has-background:last-child) {
	padding-bottom: 0 !important;
}
