/**
 * Hero / slider — 1:1 mockup, tło z panelu Creative-Colors.
 */

.site-main > .wsr-hero {
	display: block;
	width: 100vw;
	max-width: 100vw;
	margin: 0 calc(50% - 50vw);
	padding: 0;
}

.wsr-hero {
	position: relative;
	isolation: isolate;
	min-height: clamp(640px, 92vh, 960px);
	background: #0a0a0a;
	overflow: hidden;
}

.wsr-hero__preload {
	position: absolute;
	width: 0;
	height: 0;
	opacity: 0;
	pointer-events: none;
	overflow: hidden;
}

.wsr-hero__media {
	position: absolute;
	inset: 0;
	z-index: 0;
	background-color: #0a0a0a;
	background-image: var(--wsr-hero-image);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: 72% center;
}

.wsr-hero__shade {
	position: absolute;
	inset: 0;
	z-index: 1;
	background: linear-gradient(
		90deg,
		rgba(0, 0, 0, 0.92) 0%,
		rgba(0, 0, 0, 0.88) 26%,
		rgba(0, 0, 0, 0.72) 38%,
		rgba(0, 0, 0, 0.38) 52%,
		rgba(0, 0, 0, 0.08) 64%,
		rgba(0, 0, 0, 0) 74%
	);
	pointer-events: none;
}

.wsr-hero--has-image .wsr-hero__shade {
	background: linear-gradient(
		90deg,
		rgba(0, 0, 0, 0.94) 0%,
		rgba(0, 0, 0, 0.9) 28%,
		rgba(0, 0, 0, 0.74) 40%,
		rgba(0, 0, 0, 0.4) 54%,
		rgba(0, 0, 0, 0.06) 66%,
		rgba(0, 0, 0, 0) 76%
	);
}

.wsr-hero__inner {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	min-height: clamp(640px, 92vh, 960px);
}

.wsr-hero__content {
	width: 100%;
	padding: clamp(56px, 7vw, 96px) 0;
}

.wsr-hero__copy {
	max-width: min(860px, 92%);
	margin: 0 auto;
}

.wsr-hero__accent {
	display: block;
	width: 52px;
	height: 2px;
	margin: 0 auto 22px;
	background: var(--ws-gold, #c5a07d);
}

.wsr-hero h1 {
	margin: 0 0 18px;
	color: #ffffff;
	font-family: var(--ws-serif);
	font-size: clamp(2.45rem, 4.6vw, 3.85rem);
	font-weight: 400;
	line-height: 1.1;
	letter-spacing: -0.01em;
	text-align: center;
}

.wsr-hero__lead {
	margin: 0;
	max-width: 58ch;
	margin-left: auto;
	margin-right: auto;
	color: #d8dce0;
	font-family: var(--ws-sans);
	font-size: clamp(0.92rem, 1.3vw, 1.02rem);
	font-weight: 400;
	line-height: 1.65;
	text-align: center;
}

.wsr-hero__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 12px;
	margin-top: 32px;
}

.wsr-hero .wsr-btn {
	min-height: 48px;
	padding: 0 24px;
}

.wsr-hero .wsr-btn--gold {
	border: 1px solid var(--ws-gold, #c5a07d);
	background: var(--ws-gold, #c5a07d);
	color: #111111;
}

.wsr-hero .wsr-btn--gold:hover,
.wsr-hero .wsr-btn--gold:focus-visible {
	background: var(--ws-gold-hover, #b08d6a);
	border-color: var(--ws-gold-hover, #b08d6a);
	color: #111111;
}

.wsr-hero .wsr-btn--gold-outline.wsr-btn--on-dark {
	border: 1px solid var(--ws-gold, #c5a07d);
	background: transparent;
	color: #ffffff;
}

.wsr-hero .wsr-btn--gold-outline.wsr-btn--on-dark:hover,
.wsr-hero .wsr-btn--gold-outline.wsr-btn--on-dark:focus-visible {
	background: rgba(197, 160, 125, 0.14);
	border-color: var(--ws-gold, #c5a07d);
	color: #ffffff;
}

@media (max-width: 980px) {
	.site-main > .wsr-hero {
		width: 100%;
		max-width: 100%;
		margin: 0;
	}

	.wsr-hero,
	.wsr-hero__inner {
		min-height: clamp(540px, 80vh, 740px);
	}

	.wsr-hero__media {
		background-position: center center;
	}

	.wsr-hero__shade,
	.wsr-hero--has-image .wsr-hero__shade {
		background: linear-gradient(
			180deg,
			rgba(0, 0, 0, 0.5) 0%,
			rgba(0, 0, 0, 0.8) 45%,
			rgba(0, 0, 0, 0.96) 100%
		);
	}

	.wsr-hero__actions {
		flex-direction: column;
		align-items: stretch;
	}

	.wsr-hero .wsr-btn {
		width: 100%;
	}
}
