/*
 * EJT LOCATIONS — hero banner on a single location page.
 *
 * Loaded ONLY on an ejt_location single (see EJT_Locations_Assets::hero_styles).
 * The image URL itself is added as an inline style beside this file, because it
 * is per-location; everything static lives here.
 *
 * ⛔ EVERY DECLARATION BELOW IS STATED EVEN THOUGH SOMETHING ELSE ON THE SITE
 *    ALREADY STATES IT, AND THAT IS DELIBERATE.
 *
 *    Measured 27 Aug 2026: the overlay, the section's `position: relative` and
 *    the `> * { z-index: 1 }` stacking that lifts the heading above the overlay
 *    are NOT in any stylesheet on disk. They are in the Customizer's Additional
 *    CSS — the <style id="wp-custom-css"> block — which is a row in the
 *    database, editable in wp-admin by anyone, and invisible to grep. If this
 *    file leaned on it and someone tidied that box, the overlay would vanish
 *    with no error anywhere and the heading would drop to about 1.4:1 against
 *    the photograph. Restating them here costs a few bytes and makes the hero
 *    self-sufficient.
 *
 *    Scoped to body.single-ejt_location throughout, so the Customizer block
 *    keeps governing /locations/, the area archives and the eleven demo pages
 *    exactly as it does today. Two classes beat the one-class Customizer
 *    selectors on specificity, so no !important is needed anywhere.
 */

body.single-ejt_location .bg-banner.page-hero-section {
	position: relative;
	overflow: hidden;
}

/*
 * THE SCRIM. 0.55 black.
 *
 * MEASURED, not chosen by eye. The heading is #FFFFFF, so the worst case for
 * contrast is a pure-white pixel in the photograph, and 255 * (1 - 0.55) = 115
 * gives white-on-rgb(115,115,115) = 4.74:1. Because 255 is the brightest a
 * pixel can be, 0.55 puts a FLOOR of 4.74:1 under the heading that holds for
 * ANY image an editor later picks — the contrast stops depending on the
 * photograph. Confirmed on the shipped default by re-rendering with the
 * heading hidden and sampling only the pixels the glyphs actually cover:
 * 4.74:1 worst at 1280 and at 390, against 1.41:1 at the site's usual 0.15.
 */
body.single-ejt_location .bg-banner.page-hero-section::before {
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.55);
	pointer-events: none;
	z-index: 0;
}

/* The heading and everything else in the banner sit above the scrim. */
body.single-ejt_location .bg-banner.page-hero-section > * {
	position: relative;
	z-index: 1;
}
