.image-button-swiper .swiper-slide {
	width: 360px;
	overflow:hidden;
}
.image-button-swiper {
	position: relative;
	margin-right: 200px;
	overflow:hidden;	
}
.image-button-swiper .swiper-wrapper{
	cursor:none;
}
.image-button-slider-wrapper .swiper-button-prev,
.image-button-slider-wrapper .swiper-button-next {
	position: absolute;
	bottom: 0px;
	z-index: 10;
	width: 80px;
	height: 80px;
	background:#ec1c24;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: background 0.3s ease;
	left:inherit;
	top:inherit;
}
.image-button-slider-wrapper .swiper-button-prev:hover,
.image-button-slider-wrapper .swiper-button-next:hover {
	background: rgba(0, 0, 0, 0.9);
}
.image-button-slider-wrapper .swiper-button-prev {
	right: 90px;
}
.image-button-slider-wrapper .swiper-button-next {
	right: 10px;
}
.image-button-slider-wrapper .image-button {
	min-height:470px;
	display:block;
	position:relative;
	overflow:hidden;
	background-size:cover;
	background-position:center;
	background-repeat:no-repeat;
}
.image-button-slider-wrapper .image-button h3 {
	width: calc(100% - 100px);
	position:absolute;
	bottom:50px;
	left:50px;
	z-index:3;
	color:#fff;
}
.image-button-slider-wrapper .heading-line-enabled .image-button h3:after {
	content: '';
	display: block;
	width: 60px;
	height: 4px;
	background-color: currentColor;
	position: absolute;
	left: 0;
	bottom: -15px;
}
.image-button-slider-wrapper .image-button span.overlay {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	opacity:0.5;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#00000e+0,00000e+100&0+0,1+100 */
	background: -moz-linear-gradient(top,  rgba(0,0,14,0) 0%, rgba(0,0,14,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgba(0,0,14,0) 0%,rgba(0,0,14,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  rgba(0,0,14,0) 0%,rgba(0,0,14,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0000000e', endColorstr='#00000e',GradientType=0 ); /* IE6-9 */
	z-index:2;
}
.image-button-slider-wrapper .image-button:hover span.image {
	-moz-transform: scale(1.1);
	-webkit-transform: scale(1.1);
	-o-transform: scale(1.1);
	-ms-transform: scale(1.1);
	transform: scale(1.1);
}
.image-button-slider-wrapper .image-button span.image {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background-size:cover;
	background-position:center;
	background-repeat:no-repeat;
	z-index:1;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
/* Cursor wrapper */
.cursor {
  position: fixed;
  top: 0;
  left: 0;
  pointer-events: none; /* don’t block clicks */
  z-index: 9999;
  transform: translate3d(0, 0, 0);
  transition: transform 0.1s ease-out; /* smooth movement */
}
.cursor-dot.show {
  opacity: 1;
}
.cursor-dot {
  position: relative;
  opacity: 0;
  width: 4rem;
  height: 4rem;
  border-radius: 50%;
  background: var(--primary-colour);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s ease;
  transform: translate(-50%, -50%);
}
.cursor-dot.active {
  width: 5rem;
  height: 5rem;
  background: rgba(255, 49, 79, 0.3);
  box-shadow: 0 0 8px rgba(255, 49, 79, 0.4);
}
.cursor-text {
  font-size: 0.75rem;
  color: #fff;
  pointer-events: none;
  user-select: none;
  text-transform: uppercase;
  letter-spacing: 1px;
  transform: none;
}
.cursor-dot-accent {
  position: absolute;
  width: 0;
  height: 0;
  border-top: 0.3rem solid transparent;
  border-bottom: 0.3rem solid transparent;
  opacity: 1;
  transition: opacity 0.2s ease;
}
.cursor-dot-accent.left {
	left: -0.6rem;
	transform: translateY(-50%) rotate(180deg);
}
.cursor-dot-accent.right {
	right: -0.6rem;
	transform: translateY(-50%) rotate(0deg);
}
.cursor-dot-accent.left, .cursor-dot-accent.right { 
  top: 50%;
  border-left: 0.4rem solid #ff314f; /* arrow points left */
}
.cursor-dot.active .cursor-dot-accent.left {
  left: -1rem;
}
.cursor-dot.active .cursor-dot-accent.right {
  right: -1rem;
}
/* Press effect on slide */
.image-button-swiper {
	transition: all 0.2s ease;
}
.image-button-swiper.is-pressed {
	transform: scale(0.95);
}
/* ---------------------------------------------
   SLIDE SCROLL-IN HINT ANIMATION (SLOW + RIGHT)
--------------------------------------------- */

/* Initial state */
.image-button-swiper.animate-in .swiper-slide {
	transform: translateX(120px) translateY(-10px);
	opacity: 0;
}

/* Visible state */
.image-button-swiper.animate-in.is-visible .swiper-slide {
	transform: translateX(0) translateY(0);
	opacity: 1;
	transition:
		transform 1s cubic-bezier(0.22, 1, 0.36, 1),
		opacity 0.4s ease-out;
}

/* Stagger for readability */
.image-button-swiper.animate-in.is-visible .swiper-slide:nth-child(1) { transition-delay: 0s; }
.image-button-swiper.animate-in.is-visible .swiper-slide:nth-child(2) { transition-delay: 0.12s; }
.image-button-swiper.animate-in.is-visible .swiper-slide:nth-child(3) { transition-delay: 0.24s; }
.image-button-swiper.animate-in.is-visible .swiper-slide:nth-child(4) { transition-delay: 0.36s; }
.image-button-swiper.animate-in.is-visible .swiper-slide:nth-child(5) { transition-delay: 0.48s; }
@media (prefers-reduced-motion: reduce) {
	.image-button-swiper.animate-in .swiper-slide,
	.image-button-swiper.animate-in.is-visible .swiper-slide {
		transform: none;
		opacity: 1;
		transition: none;
	}
}
@media (max-width: 480px) {
	.image-button-slider-wrapper .image-button-swiper .swiper-button-prev {
		right: 70px;
	}
	.image-button-slider-wrapper .image-button-swiper .swiper-button-next {
		right: 30px;
	}
	.image-button-swiper {
		margin-right:inherit;
	}
	.image-button-slider-wrapper .swiper-button-prev, .image-button-slider-wrapper .swiper-button-next {
		top:22px;
	}
	.image-button-slider-wrapper .swiper-button-prev {
		left:20px;
		right:inherit;
	}
	.image-button-slider-wrapper .swiper-button-next {
		left:100px;
		right:inherit;
	}
}