/* Canonical brand shimmer. Purchase presentation now lives with the semantic
 * single-product owner in gloskin-ui1-single-product-geometry.css. */
.gloskin-ui1-brand,
.gloskin-ui1-compact-brand,
.gloskin-ui1-brand--footer{
	position:relative;
	overflow:hidden;
	isolation:isolate;
}
.gloskin-ui1-brand::before,
.gloskin-ui1-compact-brand::before,
.gloskin-ui1-brand--footer::before,
.gloskin-ui1-brand::after,
.gloskin-ui1-compact-brand::after,
.gloskin-ui1-brand--footer::after{
	position:absolute;
	z-index:1;
	pointer-events:none;
	content:"";
}
.gloskin-ui1-brand::before,
.gloskin-ui1-compact-brand::before,
.gloskin-ui1-brand--footer::before{
	inset:0;
	background:linear-gradient(118deg,transparent 14%,color-mix(in srgb,var(--gloskin-inverse) 16%,transparent) 48%,color-mix(in srgb,var(--gloskin-brand-champagne) 10%,transparent) 62%,transparent 84%);
	mix-blend-mode:soft-light;
	opacity:.16;
}
.gloskin-ui1-brand::after,
.gloskin-ui1-compact-brand::after,
.gloskin-ui1-brand--footer::after{
	top:-42%;
	bottom:-42%;
	left:-46%;
	width:32%;
	background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--gloskin-inverse) 18%,transparent) 30%,color-mix(in srgb,var(--gloskin-inverse) 58%,transparent) 50%,color-mix(in srgb,var(--gloskin-brand-champagne) 20%,transparent) 62%,transparent 100%);
	mix-blend-mode:screen;
	opacity:0;
	transform:translate3d(-155%,0,0) rotate(18deg);
	transform-origin:center;
	will-change:transform,opacity;
	animation:gloskin-ui1-brand-shimmer var(--gloskin-brand-shimmer-duration,9.4s) cubic-bezier(.22,1,.36,1) var(--gloskin-brand-shimmer-delay,-2.3s) infinite;
}
.gloskin-ui1-brand{
	--gloskin-brand-shimmer-duration:9.4s;
	--gloskin-brand-shimmer-delay:-2.3s;
}
.gloskin-ui1-compact-brand{
	--gloskin-brand-shimmer-duration:11.2s;
	--gloskin-brand-shimmer-delay:1.4s;
}
.gloskin-ui1-brand--footer{
	--gloskin-brand-shimmer-duration:13.1s;
	--gloskin-brand-shimmer-delay:-4.9s;
}
/* Compact logo remains on one animation timeline from first paint, but paused
 * while hidden. Resuming it after sticky activation starts from the quiet
 * beginning instead of constructing an animation mid-cycle with a negative
 * delay, which previously could flash a bright sweep during the handoff. */
.gloskin-ui1-compact-brand::after{
	animation:gloskin-ui1-brand-shimmer var(--gloskin-brand-shimmer-duration) cubic-bezier(.22,1,.36,1) var(--gloskin-brand-shimmer-delay) infinite;
	animation-play-state:paused;
	opacity:0;
}
.gloskin-ui1-header__nav-row.is-compact-sticky .gloskin-ui1-compact-brand::after{
	animation-play-state:running;
}
@keyframes gloskin-ui1-brand-shimmer{
	0%,70%{opacity:0;transform:translate3d(-155%,0,0) rotate(18deg)}
	72%{opacity:0;transform:translate3d(-155%,0,0) rotate(18deg)}
	75%{opacity:.16}
	82%{opacity:.24}
	86%{opacity:0;transform:translate3d(520%,0,0) rotate(18deg)}
	100%{opacity:0;transform:translate3d(520%,0,0) rotate(18deg)}
}
@media (prefers-reduced-motion:reduce){
	.gloskin-ui1-brand::before,
	.gloskin-ui1-compact-brand::before,
	.gloskin-ui1-brand--footer::before,
	.gloskin-ui1-brand::after,
	.gloskin-ui1-compact-brand::after,
	.gloskin-ui1-brand--footer::after,
	.gloskin-ui1-header__nav-row.is-compact-sticky .gloskin-ui1-compact-brand::after{
		animation:none;
		opacity:0;
	}
}