/**
 * Asbahr Motion Premium — camada visual independente do layout.
 */

#amp-motion-layer,
#amp-motion-layer * {
	box-sizing: border-box;
}

#amp-motion-layer {
	position: fixed;
	inset: 0;
	z-index: var(--amp-cursor-z, 999999);
	pointer-events: none;
	overflow: hidden;
	contain: strict;
}

.amp-cursor__dot,
.amp-cursor__ring,
.amp-cursor__trail-dot {
	position: fixed;
	left: 0;
	top: 0;
	pointer-events: none;
	will-change: transform, opacity;
}

.amp-cursor__dot {
	width: var(--amp-cursor-size, 9px);
	height: var(--amp-cursor-size, 9px);
	margin: calc(var(--amp-cursor-size, 9px) / -2) 0 0 calc(var(--amp-cursor-size, 9px) / -2);
	border-radius: 50%;
	background: var(--amp-cursor-primary, #ffbd00);
	opacity: var(--amp-cursor-opacity, 1);
	mix-blend-mode: var(--amp-cursor-blend, normal);
	transition: width 180ms ease, height 180ms ease, margin 180ms ease, background 180ms ease, opacity 180ms ease;
}

.amp-cursor__ring {
	display: grid;
	place-items: center;
	width: var(--amp-cursor-ring, 38px);
	height: var(--amp-cursor-ring, 38px);
	margin: calc(var(--amp-cursor-ring, 38px) / -2) 0 0 calc(var(--amp-cursor-ring, 38px) / -2);
	border: var(--amp-cursor-stroke, 1.5px) solid var(--amp-cursor-secondary, #f2f0e9);
	border-radius: 50%;
	opacity: calc(var(--amp-cursor-opacity, 1) * .82);
	mix-blend-mode: var(--amp-cursor-blend, normal);
	transition: width 220ms cubic-bezier(.2,.8,.2,1), height 220ms cubic-bezier(.2,.8,.2,1), margin 220ms cubic-bezier(.2,.8,.2,1), border-color 180ms ease, background 180ms ease, opacity 180ms ease;
}

.amp-cursor__ring::before,
.amp-cursor__ring::after {
	content: "";
	position: absolute;
	opacity: 0;
	transition: opacity 180ms ease;
}

.amp-cursor__label {
	display: none;
	color: #080908;
	font: 800 9px/1 Arial, sans-serif;
	letter-spacing: .13em;
	white-space: nowrap;
}

.amp-cursor.is-hovering .amp-cursor__dot {
	width: calc(var(--amp-cursor-size, 9px) * var(--amp-cursor-hover-scale, 1.65));
	height: calc(var(--amp-cursor-size, 9px) * var(--amp-cursor-hover-scale, 1.65));
	margin: calc(var(--amp-cursor-size, 9px) * var(--amp-cursor-hover-scale, 1.65) / -2) 0 0 calc(var(--amp-cursor-size, 9px) * var(--amp-cursor-hover-scale, 1.65) / -2);
}

.amp-cursor.is-hovering .amp-cursor__ring {
	width: calc(var(--amp-cursor-ring, 38px) * var(--amp-cursor-hover-scale, 1.65));
	height: calc(var(--amp-cursor-ring, 38px) * var(--amp-cursor-hover-scale, 1.65));
	margin: calc(var(--amp-cursor-ring, 38px) * var(--amp-cursor-hover-scale, 1.65) / -2) 0 0 calc(var(--amp-cursor-ring, 38px) * var(--amp-cursor-hover-scale, 1.65) / -2);
	border-color: var(--amp-cursor-primary, #ffbd00);
}

.amp-cursor.is-hidden .amp-cursor__dot,
.amp-cursor.is-hidden .amp-cursor__ring {
	opacity: 0;
}

.amp-cursor--minimal-dot .amp-cursor__ring { display: none; }
.amp-cursor--minimal-dot .amp-cursor__dot { box-shadow: 0 0 0 4px rgb(255 189 0 / 12%); }

.amp-cursor--outline-ring .amp-cursor__dot { display: none; }
.amp-cursor--outline-ring .amp-cursor__ring { border-color: var(--amp-cursor-primary); }

.amp-cursor--crosshair .amp-cursor__dot { width: 3px; height: 3px; margin: -1.5px 0 0 -1.5px; }
.amp-cursor--crosshair .amp-cursor__ring { border-color: transparent; }
.amp-cursor--crosshair .amp-cursor__ring::before,
.amp-cursor--crosshair .amp-cursor__ring::after { opacity: 1; background: var(--amp-cursor-secondary); }
.amp-cursor--crosshair .amp-cursor__ring::before { width: 100%; height: var(--amp-cursor-stroke); left: 0; top: 50%; }
.amp-cursor--crosshair .amp-cursor__ring::after { width: var(--amp-cursor-stroke); height: 100%; top: 0; left: 50%; }

.amp-cursor--architect-cross .amp-cursor__ring { border: 0; }
.amp-cursor--architect-cross .amp-cursor__ring::before,
.amp-cursor--architect-cross .amp-cursor__ring::after { opacity: 1; background: var(--amp-cursor-primary); }
.amp-cursor--architect-cross .amp-cursor__ring::before { width: 100%; height: 2px; top: calc(50% - 1px); left: 0; }
.amp-cursor--architect-cross .amp-cursor__ring::after { width: 2px; height: 100%; left: calc(50% - 1px); top: 0; }
.amp-cursor--architect-cross .amp-cursor__dot { background: var(--amp-cursor-secondary); }

.amp-cursor--square .amp-cursor__dot,
.amp-cursor--square .amp-cursor__ring { border-radius: 2px; }

.amp-cursor--diamond .amp-cursor__dot,
.amp-cursor--diamond .amp-cursor__ring { border-radius: 1px; rotate: 45deg; }

.amp-cursor--solid-circle .amp-cursor__dot { display: none; }
.amp-cursor--solid-circle .amp-cursor__ring { border: 0; background: var(--amp-cursor-primary); opacity: .76; }

.amp-cursor--double-ring .amp-cursor__dot { background: var(--amp-cursor-secondary); }
.amp-cursor--double-ring .amp-cursor__ring::after { opacity: 1; inset: 6px; border: var(--amp-cursor-stroke) solid var(--amp-cursor-primary); border-radius: inherit; }

.amp-cursor--neon-glow .amp-cursor__dot { box-shadow: 0 0 10px 3px var(--amp-cursor-primary), 0 0 24px 5px var(--amp-cursor-primary); }
.amp-cursor--neon-glow .amp-cursor__ring { border-color: var(--amp-cursor-primary); box-shadow: 0 0 18px -3px var(--amp-cursor-primary), inset 0 0 12px -5px var(--amp-cursor-primary); }

.amp-cursor--blend-orbit .amp-cursor__ring { border-color: transparent; animation: amp-orbit-spin 2.8s linear infinite; }
.amp-cursor--blend-orbit .amp-cursor__ring::before,
.amp-cursor--blend-orbit .amp-cursor__ring::after { opacity: 1; width: 8px; height: 8px; border-radius: 50%; background: var(--amp-cursor-primary); }
.amp-cursor--blend-orbit .amp-cursor__ring::before { top: 0; left: 50%; }
.amp-cursor--blend-orbit .amp-cursor__ring::after { bottom: 0; right: 50%; background: var(--amp-cursor-secondary); }

.amp-cursor--smooth-follower .amp-cursor__dot { width: calc(var(--amp-cursor-size) * 1.7); height: calc(var(--amp-cursor-size) * 1.7); margin: calc(var(--amp-cursor-size) * -.85) 0 0 calc(var(--amp-cursor-size) * -.85); background: transparent; border: var(--amp-cursor-stroke) solid var(--amp-cursor-primary); }
.amp-cursor--smooth-follower .amp-cursor__ring { opacity: .32; }

.amp-cursor--dot-trail .amp-cursor__ring { display: none; }
.amp-cursor__trail-dot { width: 5px; height: 5px; margin: -2.5px 0 0 -2.5px; border-radius: 50%; background: var(--amp-cursor-primary); }

.amp-cursor--directional-line .amp-cursor__dot { display: none; }
.amp-cursor--directional-line .amp-cursor__ring { width: calc(var(--amp-cursor-ring) * 1.25); height: 2px; margin: -1px 0 0 calc(var(--amp-cursor-ring) * -.625); border: 0; border-radius: 0; background: linear-gradient(90deg, transparent 0 8%, var(--amp-cursor-primary) 8% 75%, var(--amp-cursor-secondary) 75% 100%); rotate: var(--amp-angle, 0deg); transform-origin: center; }

.amp-cursor--context-label .amp-cursor__dot { display: none; }
.amp-cursor--context-label .amp-cursor__ring { width: 18px; height: 18px; margin: -9px 0 0 -9px; border-color: var(--amp-cursor-primary); background: transparent; }
.amp-cursor--context-label.is-hovering .amp-cursor__ring { width: 58px; height: 58px; margin: -29px 0 0 -29px; background: var(--amp-cursor-primary); }
.amp-cursor--context-label.is-hovering .amp-cursor__label { display: block; }

@keyframes amp-orbit-spin { to { rotate: 360deg; } }

body.amp-hide-native-cursor,
body.amp-hide-native-cursor a,
body.amp-hide-native-cursor button,
body.amp-hide-native-cursor input,
body.amp-hide-native-cursor textarea,
body.amp-hide-native-cursor select,
body.amp-hide-native-cursor [role="button"] { cursor: none !important; }

#amp-scroll-progress {
	position: fixed;
	left: 0;
	width: 100%;
	height: var(--amp-progress-height, 3px);
	background: var(--amp-progress-track, #111);
	opacity: var(--amp-progress-opacity, 1);
	z-index: var(--amp-progress-z, 999990);
	pointer-events: none;
	overflow: hidden;
}

#amp-scroll-progress__bar {
	width: 100%;
	height: 100%;
	background: linear-gradient(90deg, var(--amp-progress-start, #ffbd00), var(--amp-progress-end, #fff1a8));
	border-radius: 0 var(--amp-progress-radius, 8px) var(--amp-progress-radius, 8px) 0;
	box-shadow: 0 0 var(--amp-progress-glow, 14px) var(--amp-progress-start, #ffbd00);
	transform: scaleX(0);
	transform-origin: left center;
	will-change: transform;
}

#amp-spotlight {
	position: fixed;
	left: 0;
	top: 0;
	width: var(--amp-spotlight-size, 380px);
	height: var(--amp-spotlight-size, 380px);
	margin: calc(var(--amp-spotlight-size, 380px) / -2) 0 0 calc(var(--amp-spotlight-size, 380px) / -2);
	border-radius: 50%;
	background: radial-gradient(circle, var(--amp-spotlight-color, #ffbd00) 0, transparent 68%);
	opacity: var(--amp-spotlight-opacity, .07);
	filter: blur(2px);
	pointer-events: none;
	will-change: transform;
	mix-blend-mode: screen;
}

#amp-noise {
	position: fixed;
	inset: -50%;
	z-index: var(--amp-noise-z, 999980);
	pointer-events: none;
	opacity: var(--amp-noise-opacity, .025);
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.72'/%3E%3C/svg%3E");
	animation: amp-noise-shift .24s steps(2) infinite;
}

@keyframes amp-noise-shift {
	0% { transform: translate3d(0, 0, 0); }
	25% { transform: translate3d(2%, -1%, 0); }
	50% { transform: translate3d(-1%, 2%, 0); }
	75% { transform: translate3d(1%, 1%, 0); }
	100% { transform: translate3d(-2%, -1%, 0); }
}

.amp-reveal {
	opacity: 0;
	transition-property: opacity, transform, filter, clip-path;
	transition-duration: var(--amp-reveal-duration, 720ms);
	transition-timing-function: var(--amp-reveal-easing, cubic-bezier(.22,1,.36,1));
	transition-delay: var(--amp-reveal-delay, 0ms);
	will-change: opacity, transform;
}

.amp-reveal--fade-up { transform: translate3d(0, var(--amp-reveal-distance, 24px), 0); }
.amp-reveal--fade-down { transform: translate3d(0, calc(var(--amp-reveal-distance, 24px) * -1), 0); }
.amp-reveal--fade-left { transform: translate3d(calc(var(--amp-reveal-distance, 24px) * -1), 0, 0); }
.amp-reveal--fade-right { transform: translate3d(var(--amp-reveal-distance, 24px), 0, 0); }
.amp-reveal--scale { transform: scale(.965); }
.amp-reveal--blur { filter: blur(12px); transform: scale(.985); }
.amp-reveal--clip { clip-path: inset(0 0 100% 0); opacity: 1; }
.amp-reveal.is-visible { opacity: 1; transform: none; filter: none; clip-path: inset(0 0 0 0); }

.amp-tilt-target {
	transform-style: preserve-3d;
	transition: transform var(--amp-tilt-duration, 260ms) cubic-bezier(.22,1,.36,1), box-shadow var(--amp-tilt-duration, 260ms) ease;
	will-change: transform;
}

.amp-tilt-target.is-tilting {
	box-shadow: 0 calc(var(--amp-tilt-shadow, 22px) * .45) var(--amp-tilt-shadow, 22px) rgb(0 0 0 / 22%);
}

.amp-magnetic-target {
	transition: translate 240ms cubic-bezier(.22,1,.36,1);
	will-change: translate;
}

.amp-zoom-target {
	transition: scale var(--amp-zoom-duration, 650ms) cubic-bezier(.22,1,.36,1);
	will-change: scale;
}

.amp-zoom-target:hover { scale: var(--amp-zoom-scale, 1.035); }
.amp-parallax-target { will-change: translate; }

@media (pointer: coarse), (hover: none) {
	.amp-cursor,
	#amp-spotlight { display: none !important; }
	body.amp-hide-native-cursor,
	body.amp-hide-native-cursor * { cursor: auto !important; }
	.amp-tilt-target { transform: none !important; }
}

@media (prefers-reduced-motion: reduce) {
	body.amp-respect-reduced-motion #amp-motion-layer,
	body.amp-respect-reduced-motion #amp-noise { display: none !important; }
	body.amp-respect-reduced-motion .amp-reveal { opacity: 1 !important; transform: none !important; filter: none !important; clip-path: none !important; transition: none !important; }
	body.amp-respect-reduced-motion .amp-tilt-target,
	body.amp-respect-reduced-motion .amp-magnetic-target,
	body.amp-respect-reduced-motion .amp-zoom-target,
	body.amp-respect-reduced-motion .amp-parallax-target { transform: none !important; translate: none !important; scale: 1 !important; transition: none !important; }
}
