/**
 * Vince facet labs — who / what / where / why.
 * Pages: content/pages/vince-facet-lab-a.html, -b.html, -c.html
 * Does not style the Heritage Slider Lab.
 */

.skid-facet-lab {
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}

.skid-facet-lab__note {
	max-width: 40rem;
	margin: 0 auto;
	padding: var(--wp--preset--spacing--50) 1.25rem var(--wp--preset--spacing--40);
	color: var(--skid-muted);
	font-family: var(--skid-font-body);
	font-size: 0.95rem;
	line-height: 1.5;
}

.skid-facet-lab__note a {
	color: var(--skid-wax);
}

.skid-facet,
.skid-facet-c__stage {
	position: relative;
	display: flex;
	align-items: center;
	min-height: 78vh;
	padding: var(--wp--preset--spacing--70) var(--wp--preset--spacing--50) 4.5rem;
	overflow: hidden;
}

.skid-facet__bg,
.skid-facet__scrim {
	position: absolute;
	inset: 0;
}

.skid-facet__bg {
	top: -6%;
	right: 0;
	bottom: auto;
	left: 0;
	height: 112%;
	background-position: 50% 45%;
	background-size: cover;
	opacity: 0;
	transition: opacity 0.45s ease;
	will-change: transform;
}

.skid-facet__bg.is-on {
	opacity: 1;
}

.skid-facet__scrim {
	background: color-mix(in srgb, var(--skid-ink-brown) 28%, transparent);
	z-index: 0;
}

.skid-facet__panel {
	position: relative;
	z-index: 1;
	width: min(34rem, 100%);
	padding: 2rem;
	background:
		linear-gradient(
			165deg,
			color-mix(in srgb, var(--skid-surface) 94%, var(--skid-gold)) 0%,
			color-mix(in srgb, var(--skid-trust) 92%, var(--skid-surface)) 100%
		);
	border: 1px solid color-mix(in srgb, var(--skid-ink-brown) 22%, transparent);
	box-shadow:
		0 0 0 6px color-mix(in srgb, var(--skid-surface) 35%, transparent),
		0 18px 48px color-mix(in srgb, var(--skid-ink-brown) 28%, transparent);
}

.skid-facet__panel::before {
	content: "";
	position: absolute;
	inset: 0.55rem;
	border: 1px solid color-mix(in srgb, var(--skid-honey) 45%, var(--skid-ink-brown));
	pointer-events: none;
	opacity: 0.55;
}

.skid-facet__slider {
	display: grid;
}

.skid-facet__slide {
	grid-area: 1 / 1;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.4s ease, visibility 0.4s ease;
}

.skid-facet__slide.is-active {
	opacity: 1;
	visibility: visible;
	z-index: 1;
}

.skid-facet__eyebrow {
	margin: 0 0 0.35rem;
	color: var(--skid-wax);
	font-family: var(--skid-font-body);
	font-size: 0.8rem;
	font-weight: 500;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.skid-facet__title {
	margin: 0 0 0.85rem;
	color: var(--skid-ink-brown);
	font-family: var(--skid-font-heading);
	font-size: var(--wp--preset--font-size--x-large);
	font-weight: 500;
	line-height: 1.05;
}

.skid-facet__body {
	margin: 0;
	color: var(--skid-ink);
	font-family: var(--skid-font-body);
	line-height: 1.55;
}

.skid-facet__body a {
	color: var(--skid-wax);
}

.skid-facet__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.6rem;
	margin-top: 1.15rem;
}

.skid-facet__btn {
	display: inline-block;
	padding: 0.7rem 1.05rem;
	border: 2px solid var(--skid-ink);
	color: var(--skid-ink);
	font-family: var(--skid-font-body);
	font-size: 0.95rem;
	text-decoration: none;
}

.skid-facet__btn--fill {
	background: var(--skid-honey);
}

.skid-facet__dots {
	grid-row: 2;
	display: flex;
	justify-content: center;
	gap: 0.55rem;
	margin: 1.15rem 0 0;
}

.skid-facet__dots button,
.skid-facet__rail button {
	padding: 0;
	border: 1px solid var(--skid-ink-brown);
	background: transparent;
	cursor: pointer;
}

.skid-facet__dots button {
	width: 0.7rem;
	height: 0.7rem;
	border-radius: 50%;
}

.skid-facet__dots button.is-active,
.skid-facet__rail button.is-active {
	background: var(--skid-honey);
}

.skid-facet__credit {
	position: absolute;
	z-index: 1;
	right: 1rem;
	bottom: 0.85rem;
	left: 1rem;
	margin: 0;
	color: color-mix(in srgb, var(--skid-surface) 92%, white);
	font-family: var(--skid-font-body);
	font-size: 0.72rem;
	line-height: 1.4;
	text-align: center;
	opacity: 0;
	transition: opacity 0.4s ease;
}

.skid-facet.is-where .skid-facet__credit,
.skid-facet-c.is-where .skid-facet__credit {
	opacity: 1;
}

.skid-facet__credit a {
	color: var(--skid-gold);
}

.skid-facet + .skid-facet {
	margin-top: 0;
}

.skid-facet-c {
	position: relative;
	height: 400vh;
}

.skid-facet-c__stage {
	position: sticky;
	top: 0;
	height: 100vh;
	min-height: 0;
	display: block;
	padding: 0;
}

.skid-facet-c__layout {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: 8.5rem min(34rem, calc(100% - 11rem));
	gap: 1.5rem;
	align-items: center;
	height: 100%;
	padding: var(--wp--preset--spacing--70) var(--wp--preset--spacing--50) 4.5rem;
}

.skid-facet__rail {
	display: flex;
	flex-direction: column;
	gap: 0.85rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.skid-facet__rail button {
	display: inline-block;
	color: var(--skid-surface);
	font-family: var(--skid-font-body);
	font-size: 0.78rem;
	letter-spacing: 0.14em;
	text-align: left;
	text-transform: uppercase;
	border: 0;
	border-left: 3px solid color-mix(in srgb, var(--skid-surface) 45%, transparent);
	background: color-mix(in srgb, var(--skid-ink) 78%, transparent);
	padding: 0.4rem 0.7rem 0.4rem 0.65rem;
}

.skid-facet__rail button.is-active {
	background: color-mix(in srgb, var(--skid-ink) 88%, transparent);
	border-left-color: var(--skid-honey);
	color: var(--skid-honey);
}

.skid-facet-c .skid-facet__panel {
	width: 100%;
}

@media (max-width: 800px) {
	.skid-facet-c__layout {
		grid-template-columns: 1fr;
		align-content: center;
	}

	.skid-facet__rail {
		flex-direction: row;
		flex-wrap: wrap;
		gap: 0.4rem 0.8rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.skid-facet__bg,
	.skid-facet__slide,
	.skid-facet__credit {
		transition: none;
	}

	.skid-facet__bg {
		top: 0;
		height: 100%;
		transform: none !important;
	}

	.skid-facet-c {
		height: auto;
	}

	.skid-facet-c__stage {
		position: relative;
		height: auto;
	}

	.skid-facet-c .skid-facet__slider {
		display: block;
	}

	.skid-facet-c .skid-facet__slide {
		opacity: 1;
		visibility: visible;
		margin-bottom: 1.25rem;
	}

	.skid-facet-c .skid-facet__rail {
		display: none;
	}
}
