/* ─── WEPRO: Page Title Bar ─── */

.wsk-ptb {
	position: relative;
	overflow: hidden;
	padding: var(--wsk-ptb-padding, clamp(24px, 4vw, 56px)) clamp(20px, 4vw, 60px);
	background: var(--wsk-ptb-bg, transparent);
}

/* Alignment via data attribute — no flex override on container */
.wsk-ptb[data-wsk-align="center"] { text-align: center !important; }
.wsk-ptb[data-wsk-align="left"]   { text-align: left !important; }
.wsk-ptb[data-wsk-align="right"]  { text-align: right !important; }

/* ── Decorative line ── */
.wsk-ptb__line {
	display: block;
	width: 48px;
	height: 1px;
	background: var(--wsk-ptb-accent, var(--wdt-color-primary, #b08d57));
	margin: 0 auto 24px;
	transform-origin: center;
}

.wsk-ptb[data-wsk-align="left"] .wsk-ptb__line  { margin-left: 0; margin-right: auto; transform-origin: left; }
.wsk-ptb[data-wsk-align="right"] .wsk-ptb__line { margin-left: auto; margin-right: 0; transform-origin: right; }

/* ── Title (H1) ── */
.wsk-ptb__title,
.fusion-body .wsk-ptb .wsk-ptb__title {
	font-family: var(--wsk-ptb-heading-font-family, "Lora", serif) !important;
	font-size: var(--wsk-ptb-heading-font-size, clamp(2.4rem, 5.5vw, 4.8rem)) !important;
	font-weight: var(--wsk-ptb-heading-font-weight, 300) !important;
	font-style: var(--wsk-ptb-heading-font-style, normal) !important;
	line-height: var(--wsk-ptb-heading-line-height, 1.08) !important;
	letter-spacing: var(--wsk-ptb-heading-letter-spacing, -0.02em) !important;
	color: var(--wsk-ptb-heading-color, var(--wdt-color-text, #1a1a1a)) !important;
	text-transform: var(--wsk-ptb-heading-text-transform, none) !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Title alignment — Typography override wins, then falls back to element alignment */
.wsk-ptb[data-wsk-align="center"] .wsk-ptb__title { text-align: var(--wsk-ptb-heading-text-align, center) !important; }
.wsk-ptb[data-wsk-align="left"] .wsk-ptb__title   { text-align: var(--wsk-ptb-heading-text-align, left) !important; }
.wsk-ptb[data-wsk-align="right"] .wsk-ptb__title  { text-align: var(--wsk-ptb-heading-text-align, right) !important; }

/* ── Subtitle ── */
.wsk-ptb__subtitle,
.fusion-body .wsk-ptb .wsk-ptb__subtitle {
	font-family: var(--wsk-ptb-subtitle-font-family, inherit) !important;
	font-size: var(--wsk-ptb-subtitle-font-size, clamp(0.95rem, 1.4vw, 1.15rem)) !important;
	font-weight: var(--wsk-ptb-subtitle-font-weight, 400) !important;
	font-style: var(--wsk-ptb-subtitle-font-style, normal) !important;
	line-height: var(--wsk-ptb-subtitle-line-height, 1.5) !important;
	letter-spacing: var(--wsk-ptb-subtitle-letter-spacing, 0.04em) !important;
	color: var(--wsk-ptb-subtitle-color, rgba(0,0,0,0.45)) !important;
	text-transform: var(--wsk-ptb-subtitle-text-transform, uppercase) !important;
	margin: 16px 0 0 !important;
	padding: 0 !important;
	max-width: 640px;
}

.wsk-ptb[data-wsk-align="center"] .wsk-ptb__subtitle { margin-left: auto !important; margin-right: auto !important; text-align: center !important; }
.wsk-ptb[data-wsk-align="left"] .wsk-ptb__subtitle   { text-align: left !important; }
.wsk-ptb[data-wsk-align="right"] .wsk-ptb__subtitle  { margin-left: auto !important; text-align: right !important; }

/* ── Breadcrumb ── */
.wsk-ptb__breadcrumb {
	margin-top: 20px;
	font-size: 12px;
	font-weight: 400;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: rgba(0,0,0,0.35);
}

.wsk-ptb__breadcrumb a {
	color: var(--wsk-ptb-accent, var(--wdt-color-primary, #b08d57));
	text-decoration: none;
	transition: color 0.3s ease;
}

.wsk-ptb__breadcrumb a:hover { color: var(--wsk-ptb-heading-color, #1a1a1a); }
.wsk-ptb__breadcrumb span.sep { margin: 0 8px; opacity: 0.4; }

/* ── JS adds wsk-ptb--ready to hide, then wsk-ptb--revealed to animate in ── */
.wsk-ptb--ready .wsk-ptb__line       { transform: scaleX(0); transition: transform 0.8s cubic-bezier(0.22, 1, 0.36, 1) 0.1s; }
.wsk-ptb--ready .wsk-ptb__title      { opacity: 0; transform: translateY(20px); transition: opacity 0.7s cubic-bezier(0.22, 1, 0.36, 1) 0.2s, transform 0.7s cubic-bezier(0.22, 1, 0.36, 1) 0.2s; }
.wsk-ptb--ready .wsk-ptb__subtitle   { opacity: 0; transform: translateY(14px); transition: opacity 0.6s cubic-bezier(0.22, 1, 0.36, 1) 0.4s, transform 0.6s cubic-bezier(0.22, 1, 0.36, 1) 0.4s; }
.wsk-ptb--ready .wsk-ptb__breadcrumb { opacity: 0; transform: translateY(10px); transition: opacity 0.5s cubic-bezier(0.22, 1, 0.36, 1) 0.55s, transform 0.5s cubic-bezier(0.22, 1, 0.36, 1) 0.55s; }

.wsk-ptb--revealed .wsk-ptb__line       { transform: scaleX(1); }
.wsk-ptb--revealed .wsk-ptb__title      { opacity: 1; transform: translateY(0); }
.wsk-ptb--revealed .wsk-ptb__subtitle   { opacity: 1; transform: translateY(0); }
.wsk-ptb--revealed .wsk-ptb__breadcrumb { opacity: 1; transform: translateY(0); }

/* ── Reduced motion ── */
@media (prefers-reduced-motion: reduce) {
	.wsk-ptb__title,
	.wsk-ptb__subtitle,
	.wsk-ptb__breadcrumb { opacity: 1 !important; transform: none !important; transition: none !important; }
	.wsk-ptb__line { transform: scaleX(1) !important; transition: none !important; }
}

/* ── Tablet ── */
@media (max-width: 1024px) {
	.wsk-ptb { padding: var(--wsk-ptb-padding-md, clamp(20px, 3vw, 40px)) clamp(20px, 4vw, 40px); }
	.wsk-ptb__title,
	.fusion-body .wsk-ptb .wsk-ptb__title {
		font-size: var(--wsk-ptb-heading-font-size-md, clamp(2rem, 6vw, 3.2rem)) !important;
	}
}

/* ── Mobile ── */
@media (max-width: 768px) {
	.wsk-ptb { padding: var(--wsk-ptb-padding-sm, clamp(16px, 3vw, 32px)) 20px; }
	.wsk-ptb__title,
	.fusion-body .wsk-ptb .wsk-ptb__title {
		font-size: var(--wsk-ptb-heading-font-size-sm, clamp(1.8rem, 8vw, 2.6rem)) !important;
	}
	.wsk-ptb__line { width: 36px; margin-bottom: 18px; }
}
