/**
 * Variant CSS: hero--ribbon-kicker-photo
 * Layer 2 — Variants Library (Path B Recipes architecture).
 * Concept: full-bleed cover photo + deep scrim + light text bottom-left, led by a
 *   diagonal accent "ribbon" kicker. Promotional, confident. Text is light on the
 *   dark scrim (guaranteed contrast).
 * Scoping: body.aibt-universal .universal-hero--ribbon-kicker-photo
 * @since 2026-06-04 (Path B Variants Library)
 */

body.aibt-universal .universal-hero--ribbon-kicker-photo {
	padding: 0 !important;
	border-bottom: 1px solid var(--divider-primary, rgba(0, 0, 0, 0.08));
}
body.aibt-universal .universal-hero--ribbon-kicker-photo .wp-block-cover__image-background { object-fit: cover; }
body.aibt-universal .universal-hero--ribbon-kicker-photo .wp-block-cover__inner-container {
	width: 100%;
	max-width: 1240px;
	margin: 0 auto;
	padding: clamp(var(--space-xl, 3rem), 6vw, var(--space-3xl, 7rem)) clamp(var(--space-md, 1.25rem), 5vw, var(--space-2xl, 5rem));
}
body.aibt-universal .universal-hero--ribbon-kicker-photo .universal-hero__panel {
	max-width: 38rem;
	margin: 0;
}
/* Ribbon kicker — accent tag with a notched end, slightly tilted. */
body.aibt-universal .universal-hero--ribbon-kicker-photo .universal-hero__kicker {
	display: inline-block;
	font-family: var(--font-body) !important;
	font-size: var(--text-xs, 0.75rem) !important;
	font-weight: 700 !important;
	letter-spacing: var(--tracking-wide, 0.1em) !important;
	text-transform: uppercase !important;
	color: var(--cta-text-primary, #fff) !important;
	background: var(--accent) !important;
	padding: 0.5rem 1.5rem 0.5rem 0.9rem !important;
	margin: 0 0 var(--space-md, 1.25rem) 0 !important;
	transform: rotate(-1.5deg);
	clip-path: polygon(0 0, 100% 0, calc(100% - 0.7rem) 50%, 100% 100%, 0 100%);
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.3);
}
body.aibt-universal .universal-hero--ribbon-kicker-photo .universal-hero__headline {
	font-family: var(--font-display) !important;
	color: #fff !important;
	margin: 0 0 var(--space-md, 1.25rem) 0 !important;
	max-width: 16ch;
	text-shadow: 0 2px 24px rgba(0, 0, 0, 0.4);
}
body.aibt-universal .universal-hero--ribbon-kicker-photo .universal-hero__headline em {
	font-style: italic;
	color: color-mix(in srgb, var(--accent) 70%, #fff);
	font-weight: inherit;
}
body.aibt-universal .universal-hero--ribbon-kicker-photo .universal-hero__deck {
	font-family: var(--font-body) !important;
	font-size: var(--text-lg, 1.2rem) !important;
	line-height: var(--leading-relaxed, 1.6) !important;
	color: rgba(255, 255, 255, 0.9) !important;
	max-width: 40ch;
	margin: 0 0 var(--space-lg, 2rem) 0 !important;
	text-shadow: 0 1px 16px rgba(0, 0, 0, 0.4);
}
body.aibt-universal .universal-hero--ribbon-kicker-photo .universal-hero__cta--primary .wp-block-button__link {
	font-family: var(--font-body);
	font-weight: 600;
	font-size: var(--text-base, 1rem);
	letter-spacing: var(--tracking-wide, 0.02em);
	padding: 1.05rem 2.5rem;
	color: var(--cta-text-primary, #fff);
	background: var(--cta-bg-primary, var(--accent));
	border: 1px solid var(--cta-bg-primary, var(--accent));
	border-radius: var(--decor-radius, 0);
	min-height: var(--target-min, 44px);
	display: inline-flex;
	align-items: center;
	transition: background var(--duration-fast, 240ms) var(--ease-default, ease), transform var(--duration-fast, 240ms) var(--ease-default, ease);
}
body.aibt-universal .universal-hero--ribbon-kicker-photo .universal-hero__cta--primary .wp-block-button__link:hover {
	background: color-mix(in srgb, var(--cta-bg-primary, var(--accent)) 86%, #000);
	border-color: color-mix(in srgb, var(--cta-bg-primary, var(--accent)) 86%, #000);
	transform: translateY(-2px);
}
body.aibt-universal .universal-hero--ribbon-kicker-photo .universal-hero__cta--primary .wp-block-button__link:focus-visible {
	outline: 2px solid #fff;
	outline-offset: var(--focus-offset, 4px);
}
@media (max-width: 640px) {
	body.aibt-universal .universal-hero--ribbon-kicker-photo .universal-hero__headline {
		font-size: clamp(2rem, 8.5vw, 2.7rem) !important;
		max-width: 100%;
	}
	body.aibt-universal .universal-hero--ribbon-kicker-photo .universal-hero__kicker { letter-spacing: 0.06em !important; }
	body.aibt-universal .universal-hero--ribbon-kicker-photo .universal-hero__cta--primary .wp-block-button__link { width: 100%; justify-content: center; }
}
@media (prefers-reduced-motion: reduce) {
	body.aibt-universal .universal-hero--ribbon-kicker-photo .wp-block-button__link { transition: none; }
	body.aibt-universal .universal-hero--ribbon-kicker-photo .universal-hero__cta--primary .wp-block-button__link:hover { transform: none; }
}
