/*
* When dealing with third party library overwrites lenience with !important is granted
* Do not abuse this and use only where absolutely necessary
*/

/* Container */
.vw-gallery__container {
	position: relative;
	overflow: hidden;
}

/* Slides */
.vw-gallery__slides {
	display: grid;
	grid-template-areas: "vwgallery";
	width: auto !important;
	margin: 0;
	margin: 0;
	padding: 0;
	list-style: none;
	transform: none !important;
}

/* Slide */
.vw-gallery__slide {
	position: relative;
	grid-area: vwgallery;
	align-self: flex-start;
	width: 100% !important;
	height: auto;
	opacity: 0;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	transition: opacity .5s ease;
	text-align: center;
}
.vw-gallery__slide[data-type="video"] {
	cursor: pointer;
}
.vw-gallery__slide--active {
	z-index: 1;
	opacity: 1;
}

/* Spacer */
.vw-gallery__spacer {
	display: block;
	width: 100%;
	padding-bottom: 66.6666666667%;
}

/* Toggle */
.vw-gallery__toggle {
	position: absolute;
	bottom: 0;
	right: 0;
	display: flex;
	align-items: flex-end;
	justify-content: flex-end;
	width: 60px;
	height: 60px;
	z-index: 10;
	transition: transform .35s;
}

.vw-gallery__toggle:before {
	content: "";
	position: absolute;
	display: inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 0 60px 60px;
	border-color: transparent transparent rgba(255, 103, 1, .3);
}

.vw-gallery__toggle--hidden {
	transform: translateY(100%);
}

.vw-gallery__toggle-icon {
	position: relative;
	width: 1.5em;
	height: 1.5em;
	margin-right: 5px;
	margin-bottom: 5px;
	z-index: 10;
	cursor: pointer;
}

.vw-gallery__toggle-icon path {
	fill: rgba(255, 255, 255, .85);
}

/* Overlay */
.vw-gallery__overlay {
	position: absolute;
	display: flex;
	align-items: center;
	justify-content: space-between;
	left: 0;
	right: 0;
	bottom: 1em;
	width: 90%;
	max-width: 340px;
	margin: 0 auto;
	padding: .75em 1em;
	background-color: rgba(255, 103, 1, .3);
	transform: translateY(calc(100% + 1em));
	transition: transform .35s;
	z-index: 10;
}

.vw-gallery__overlay--mag-only {
	left: initial;
	right: 1em;
	justify-content: center;
	width: 46px;
	padding: .75em;
}

.vw-gallery__overlay--showing {
	transform: translateY(0);
}

/* Switch */
.vw-gallery__switch {
	width: 22px;
	height: 22px;
	cursor: pointer;
}

.vw-gallery__switch:hover .vw-gallery__icon path {
	fill: #fff;
}
.vw-gallery__icon {
	width: 100%;
	height: 100%;
}
.vw-gallery__icon path {
	fill: rgba(255, 255, 255, .85);
	transition: fill .35s;
}

/* Bullets */
.vw-gallery__bullets {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	width: 160px;
	margin: 0 1em;
}

.vw-gallery__bullet {
	appearance: none;
	margin: 0;
	border: none;
	background-color: transparent;
	text-decoration: none;
	cursor: pointer;
	width: .5em;
	height: .5em;
	margin: .25em;
	padding: 0;
	background-color: rgba(255, 255, 255, .5);
	transition: background-color .35s;
}

.vw-gallery__bullet:hover, .vw-gallery__bullet--active {
	background-color: #fff;
}

/* Thumbs */
.vw-gallery__thumbs {
	display: none;
	position: absolute;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	overflow-y: scroll;
	z-index: 10;
	background: rgba(28, 28, 28, .85);
}

.vw-gallery__thumbs-wrapper {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	padding: .5em;
}

.vw-gallery__thumb {
	width: 18%;
	height: auto;
	margin: 1%;
	transition: opacity .35s;
	cursor: pointer;
}

.vw-gallery__thumb.vw-gallery__bullet--active {
	opacity: .3;
}

@media (min-width: 800px) {
	/* Toggle */
	.vw-gallery__toggle {
		display: none;
	}

	/* Overlay */
	.vw-gallery__overlay {
		bottom: 1.5em;
		max-width: 400px;
		padding: .75em 1.25em;
		transform: translateY(0);
	}

	.vw-gallery .vw-gallery__overlay--mag-only {
		width: 48px;
		padding: .75em;
	}

	.vw-gallery__overlay--hidden {
		transform: translateY(calc(100% + 1.5em));
	}

	/* Switch */
	.vw-gallery__switch {
		width: 24px;
		height: 24px;
	}

	/* Bullets */
	.vw-gallery__bullets {
		width: 180px;
	}

	.vw-gallery__bullet {
		width: .65em;
		height: .65em;
		margin: .3em;
	}

	.vw-gallery__thumbs-wrapper {
		padding: 1em;
	}

	.vw-gallery__thumb {
		width: 15%;
		margin: .833%;
	}
}
@media (min-width: 64em) {
	/* Overlay */
	.vw-gallery__overlay {
		max-width: 420px;
		padding: .75em 1em;
	}

	/* Switch */
	.vw-gallery__switch {
		width: 26px;
		height: 26px;
	}

	/* Bullets */
	.vw-gallery__bullets {
		width: 220px;
	}

	.vw-gallery__bullet {
		width: .7em;
		height: .7em;
	}

	/* Thumbs */
	.vw-gallery__thumbs-wrapper {
		padding: 1.5em;
	}

	.vw-gallery__thumb {
		width: 12%;
		margin: 1.14%;
	}
}
@media (min-width: 70em) {
	/* Thumbs */
	.vw-gallery__thumbs-wrapper {
		padding: 2em;
	}

	.vw-gallery__thumb {
		width: 10%;
		margin: 1.25%;
	}
}

