/* QV Title — buzzblitz gb-headline inside an entry-header, with an optional
   excerpt line below. Measured from buzzblitz.net. Text properties are set on
   .gb-headline-text / .entry-excerpt p (not the theme's .entry-title / p) and
   scoped under .qv-gb-title, so they beat theme + offer-page rules without
   !important. Poppins (title) + Source Sans 3 (excerpt) load with the block. */
.qv-gb-title {
	margin: 24px 0;
	text-align: center !important; /* override theme's .entry-header text-align */
}

/* Title <p>: stack the headline text and the icon bar, centred. */
.qv-gb-title .entry-title {
	display: flex;
	flex-direction: column;
	align-items: center;
	margin: 0;
	padding: 0;
}

.qv-gb-title .gb-headline-text {
	display: block;
	color: #212529;
	font-family: 'Poppins', sans-serif;
	font-size: 24px;
	line-height: 36px;
	/* buzzblitz effectively renders Bold (it loads Poppins 400+700, so its 600
	   title maps up to 700), so match that weight here. */
	font-weight: 700;
	letter-spacing: 4.8px;
	text-transform: uppercase;
	/* The theme sets -webkit-font-smoothing: antialiased globally, which renders
	   text thinner; buzzblitz uses the default (auto), so match it here. */
	-webkit-font-smoothing: auto;
	-moz-osx-font-smoothing: auto;
}

.qv-gb-title .gb-icon {
	display: block;
	width: 100%;
	text-align: center;
}

.qv-gb-title .gb-icon svg {
	display: inline-block;
	width: 36px;
	height: 36px;
	fill: #A31CAF;
	vertical-align: middle;
}

/* Excerpt line under the title (buzzblitz: Source Sans 3, 16px, centred). The text
   sits directly in the .entry-excerpt <div> — no <p>, so no theme paragraph margins. */
.qv-gb-title .entry-excerpt {
	margin: 0;
	color: #212529;
	font-family: 'Source Sans 3', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
	font-size: 16px;
	line-height: 24px;
	font-weight: 400;
	text-align: center;
}

/* Mobile (matches buzzblitz): 18px title, tighter line-height, no letter-spacing. */
@media (max-width: 767px) {
	.qv-gb-title .gb-headline-text {
		font-size: 18px;
		line-height: 27px;
		letter-spacing: normal;
	}
}
