/*
 * b7-blocks.css
 *
 * Styles ported from Spectra (UAG) generated block CSS when the site's
 * remaining Spectra blocks were converted to core blocks (2026-10-26).
 * Loaded by the child theme on the front end only.
 *
 * Sections:
 *   1. Responsive visibility helpers (was Spectra "Hide on device")
 *   2. Pub single layout (template-parts/pub-layout.html, was Astra Pro Custom Layout 429)
 *   3. The Pints stats cards
 *   4. Home pub cards + disclaimer box (was uagb/info-box)
 *   5. FAQ icon list (was uagb/icon-list)
 */

/* ------------------------------------------------------------------
 * 1. Responsive visibility helpers
 *    Breakpoints match the Spectra classes they replace:
 *    desktop >=1025px, tablet 768-1024px, mobile <=767px
 * ------------------------------------------------------------------ */
@media (min-width: 1025px) {
	body .b7-hide-desktop { display: none !important; }
}
@media (min-width: 768px) and (max-width: 1024px) {
	body .b7-hide-tab { display: none !important; }
}
@media (max-width: 767px) {
	body .b7-hide-mob { display: none !important; }
}

/* ------------------------------------------------------------------
 * 2. Pub single layout
 *    Outer .b7-pub-* groups are alignfull; inner rows are capped at
 *    1200px exactly like the Spectra root containers they replace.
 * ------------------------------------------------------------------ */
.b7-pub-row {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: center;
	column-gap: 20px;
	row-gap: 0;
	width: 100%;
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
}
.b7-pub-col {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
	max-width: 50%;
}
.b7-pub-gallery {
	background-color: #1a0b0e;
	border-radius: 10px;
	box-shadow: 3px 8px 12px #00000070;
	padding: 20px 20px 30px 30px;
}
.b7-pub-gallery-row {
	column-gap: 0;
}
.b7-pub-gallery-col {
	align-items: stretch;
}
.b7-pub-gallery-col-pad {
	padding: 50px;
}

@media (max-width: 767px) {
	.b7-pub-intro {
		padding-left: 20px;
		padding-right: 20px;
	}
	.b7-pub-row {
		flex-wrap: wrap;
	}
	.b7-pub-col {
		max-width: 100%;
	}
}

/* ------------------------------------------------------------------
 * 3. The Pints stats cards
 * ------------------------------------------------------------------ */
.b7-stats-section {
	width: 100%;
}
/* Astra gives .entry-content > .wp-block-group default 100px/80px padding via
   --wp--custom--ast-default-block-* variables; scope above it to keep the
   original Spectra container spacing (0 top, 30 bottom, 10 sides on mobile). */
.entry-content > .wp-block-group.b7-stats-section {
	padding-top: 0;
	padding-right: 0;
	padding-bottom: 30px;
	padding-left: 0;
}
/* Core flow-layout block gap would add 24px between the cards in a row and
   under the headings; the original Spectra containers had none. */
.b7-stats-row > .b7-stat-card,
.b7-stat-card > .pub-counter {
	margin-block-start: 0;
}
.b7-stats-row {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: center;
	column-gap: 50px;
	row-gap: 0;
	width: 100%;
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
}
.b7-stat-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
	max-width: 33%;
	background-color: #f4f0ea;
	border-radius: 20px;
	padding: 15px 0;
}

@media (max-width: 767px) {
	.entry-content > .wp-block-group.b7-stats-section {
		padding-left: 10px;
		padding-right: 10px;
	}
	.b7-stats-row {
		flex-wrap: wrap;
		row-gap: 15px;
	}
	.b7-stat-card {
		max-width: 100%;
	}
}

/* ------------------------------------------------------------------
 * 4. Home pub cards + disclaimer box (replaces uagb/info-box)
 * ------------------------------------------------------------------ */
.b7-pub-card {
	text-align: center;
}
.b7-pub-card .wp-block-image {
	margin-left: 0;
	margin-right: 0;
	margin-bottom: 0;
}
.b7-pub-card .wp-block-image img {
	border-radius: 20px;
}
.b7-pub-card .b7-pub-card-title {
	margin: 0;
}

.b7-disclaimer {
	text-align: center;
	padding: 50px 40px 40px;
	border-radius: 10px;
}
.b7-disclaimer-icon {
	display: flex;
	justify-content: center;
	margin-bottom: 15px;
}
.b7-disclaimer-icon svg {
	width: 30px;
	height: 30px;
	fill: #333;
}
.b7-disclaimer .b7-disclaimer-title {
	margin: 0 0 10px;
}

/* ------------------------------------------------------------------
 * 5. FAQ icon list (replaces uagb/icon-list, glass icon #ba6c2c)
 * ------------------------------------------------------------------ */
.b7-icon-list {
	list-style: none;
	margin-top: 0;
	margin-right: 0;
	margin-bottom: 10px;
	margin-left: 30px;
	padding-left: 0;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}
.b7-icon-list li {
	position: relative;
	margin-bottom: 10px;
	padding-left: calc(1em + 10px);
}
.b7-icon-list li:last-child {
	margin-bottom: 0;
}
.b7-icon-list li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.15em;
	width: 1em;
	height: 1em;
	background-color: #ba6c2c;
	-webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'><path d='M352 0C360.9 0 369.4 3.692 375.4 10.19C381.5 16.69 384.6 25.42 383.9 34.28L355.1 437.7C352.1 479.6 317.3 512 275.3 512H108.7C66.72 512 31.89 479.6 28.9 437.7L.0813 34.28C-.5517 25.42 2.527 16.69 8.58 10.19C14.63 3.692 23.12 0 32 0L352 0zM97.19 168.6C116.6 178.3 139.4 178.3 158.8 168.6C179.7 158.1 204.3 158.1 225.2 168.6C244.6 178.3 267.4 178.3 286.8 168.6L311 156.5L317.6 64H66.37L72.97 156.5L97.19 168.6z'></path></svg>");
	mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'><path d='M352 0C360.9 0 369.4 3.692 375.4 10.19C381.5 16.69 384.6 25.42 383.9 34.28L355.1 437.7C352.1 479.6 317.3 512 275.3 512H108.7C66.72 512 31.89 479.6 28.9 437.7L.0813 34.28C-.5517 25.42 2.527 16.69 8.58 10.19C14.63 3.692 23.12 0 32 0L352 0zM97.19 168.6C116.6 178.3 139.4 178.3 158.8 168.6C179.7 158.1 204.3 158.1 225.2 168.6C244.6 178.3 267.4 178.3 286.8 168.6L311 156.5L317.6 64H66.37L72.97 156.5L97.19 168.6z'></path></svg>");
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}
