@charset "UTF-8";
.layout-panel {
	position: fixed;
	top: 0;
	right: 0;
	width: 290px;
	height: 100vh;
	transform: translateX(101%);
	background-color: #ffffff;
	transition: .55s all ease;
	z-index: 1100;
}

.layout-panel:after {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	box-shadow: none;
	transition: .33s all ease;
	z-index: -10;
}

@media (min-width: 768px) {
	.layout-panel {
		width: 290px;
	}
}

.layout-panel.active {
	transform: translateX(0);
	box-shadow: -3px 0px 50px -2px rgba(0, 0, 0, 0.09);
}

.layout-panel-scroll {
	overflow-y: auto;
	overflow-x: hidden;
	-webkit-overflow-scrolling: touch;
	height: 100%;
}

.layout-panel-scroll::-webkit-scrollbar {
	width: 4px;
}

.layout-panel-scroll::-webkit-scrollbar-thumb {
	background: #49a5fc;
	border: none;
	border-radius: 0;
	opacity: .2;
}

.layout-panel-scroll::-webkit-scrollbar-track {
	background: #0473db;
	border: none;
	border-radius: 0;
}

.layout-panel-content {
	position: relative;
	padding: 20px 12px;
	text-align: center;
}

.layout-panel-header .button {
	width: 100%;
}

.layout-panel-header * + .layout-panel-element,
.layout-panel-header * + .layout-panel-title {
	margin-top: 22px;
}

@media (min-width: 768px) {
	.layout-panel-header * + .layout-panel-element,
	.layout-panel-header * + .layout-panel-title {
		margin-top: 30px;
	}
}

.layout-panel-toggle {
	background: none;
	border: none;
	display: inline-block;
	padding: 0;
	outline: none;
	outline-offset: 0;
	cursor: pointer;
	-webkit-appearance: none;
	position: fixed;
	top: 20vh;
	right: 320px;
	z-index: 10;
	width: 40px;
	height: 40px;
	line-height: 40px;
	background: #0473db;
	color: #000000;
	text-align: center;
	box-shadow: -5px 1px 10px 0 rgba(0, 0, 0, 0.05);
	border-right: 0;
	transition: .55s all ease;
}

.layout-panel-toggle::-moz-focus-inner {
	border: none;
	padding: 0;
}

@media (min-width: 768px) {
	.layout-panel-toggle {
		width: 54px;
		height: 54px;
		line-height: 54px;
		right: 330px;
	}
	.layout-panel-toggle::before, .layout-panel-toggle::after {
		font-size: 22px;
	}
}

.layout-panel-toggle::before, .layout-panel-toggle::after {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	
	font-size: 16px;
	transition: .33s;
}

.layout-panel-toggle::before {
	font: 'FontAwesome';
	content: "\f39e";
	opacity: 1;
}

.layout-panel-toggle::after {
	content: "\f082";
	opacity: 0;
}

.layout-panel-toggle.active::before {
	opacity: 0;
}

.layout-panel-toggle.active::after {
	opacity: 1;
}

.layout-panel-body {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	position: relative;
	margin-bottom: -10px;
	margin-left: -10px;
	z-index: 10;
}

.layout-panel-body:empty {
	margin-bottom: 0;
	margin-left: 0;
}

.layout-panel-body > * {
	display: inline-block;
	margin-top: 0;
	margin-bottom: 10px;
	margin-left: 10px;
}

.layout-panel-body .thumbnail-small {
	flex-basis: calc(50% - 10px);
	max-width: calc(50% - 10px);
}

* + .layout-panel-body {
	margin-top: 25px;
}

.thumbnail-small {
	position: relative;
	display: block;
	text-align: center;
	padding: 5px 5px 0;
	border: 1px solid #eff3f8;
	transition: .5s;
	color: #0473db;
	background-color: transparent;
}

.thumbnail-small:hover {
	background: #0473db;
	color: #ffffff;
}

.thumbnail-small [class*='badge'] {
	position: absolute;
	top: 0;
	left: 5px;
	border-right: 4px;
	z-index: 2;
	font-size: 16px;
}

.thumbnail-small-image {
	position: relative;
}

.thumbnail-small-image img {
	width: 100%;
	height: auto;
}

.thumbnail-small-caption {
	position: relative;
	padding: 10px 8px;
}

.thumbnail-small-header {
	position: relative;
	z-index: 1;
	font: 300 12px/18px "Lato", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

@media (min-width: 992px) {
	.desktop .thumbnail-small-image {
		transition: .25s all ease;
	}
	.desktop .thumbnail-small:hover .thumbnail-small-caption:after {
		bottom: 0;
		opacity: 1;
	}
	.desktop .thumbnail-small:hover .thumbnail-small-header {
		color: #ffffff;
	}
	.desktop .thumbnail-small:hover .thumbnail-small-image:after {
		opacity: 0;
	}
}
