/* Default tab style */

@font-face {
	font-weight: normal;
	font-style: normal;
	font-family: 'stroke7pixeden';
	src: url('../fonts/stroke7pixeden/stroke7pixeden.eot?u58ytb');
	src: url('../fonts/stroke7pixeden/stroke7pixeden.eot?#iefixu58ytb') format('embedded-opentype'),
		url('../fonts/stroke7pixeden/stroke7pixeden.woff?u58ytb') format('woff'),
		url('../fonts/stroke7pixeden/stroke7pixeden.ttf?u58ytb') format('truetype'),
		url('../fonts/stroke7pixeden/stroke7pixeden.svg?u58ytb#stroke7pixeden') format('svg');
}

.tabs {
	position: relative;
	overflow: hidden;
	margin: 0 auto;
	width: 100%;
	font-weight: 300;
	font-size: 1.25em;
	background-color: #fefefe;
}

/* Nav */
.tabs nav {
	text-align: center;
	background-color: #f3f4f4;

}

.tabs nav ul {
	position: relative;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	margin: 0 auto;
	padding: 0;
	list-style: none;
	-ms-box-orient: horizontal;
	-ms-box-pack: center;
	-webkit-flex-flow: row wrap;
	-moz-flex-flow: row wrap;
	-ms-flex-flow: row wrap;
	flex-flow: row wrap;
	-webkit-justify-content: center;
	-moz-justify-content: center;
	-ms-justify-content: center;
	justify-content: center;
}

.tabs nav ul li {
	position: relative;
	z-index: 1;
	display: block;
	margin: 0;
	text-align: center;
	-webkit-flex: 1;
	-moz-flex: 1;
	-ms-flex: 1;
	flex: 1;
	display: flex;
	align-items: center;
	font-size: 1rem;
	justify-content: center;
}

.tabs nav ul li.tab-current:before {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 0;
	border-bottom: 4px solid var(--color-primary);
	animation: border_appear 0.5s linear forwards;
	/* Current tab: border grows from 0% to 100% */
}


.tabs nav ul li:not(.tab-current):before {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 0;
	/* Start from 0% for the disappearing tab */
	border-bottom: 4px solid var(--color-primary);
	animation: border_disappear 0.5s linear forwards;
	/* Animation for non-current tab */
}


@keyframes border_appear {
	0% {
		width: 0%;
		/* Start from 0% */
	}

	100% {
		width: 100%;
		/* Expand to full width */
	}
}

@keyframes border_disappear {
	0% {
		width: 0%;
		/* Start from 0% */
		opacity: 1;
		/* Fully visible */
	}

	100% {
		width: 100%;
		/* Expand to 100% but fade out */
		opacity: 0;
		/* Fully invisible */
	}
}

.not-current-tab:before {
	border-bottom: none !important;

}

.not-current-content {
	display: none !important;
}

.tabs nav a {
	position: relative;
	display: block;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	line-height: 2.5;
	font-size: 28px;
}

.tabs nav a span {
	vertical-align: middle;
	font-size: 22px;
}

.tabs nav li.tab-current a {
	color: #74777b;
}

.tabs nav a:focus {
	outline: none;
}

/* Icons */
.icon::before {
	z-index: 10;
	display: inline-block;
	margin: 0 0.4em 0 0;
	vertical-align: middle;
	text-transform: none;
	font-weight: normal;
	font-variant: normal;
	font-size: 1.3em;
	font-family: 'stroke7pixeden';
	line-height: 1;
	speak: none;
	-webkit-backface-visibility: hidden;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.icon-upload::before {
	content: "\e68a";
}

.icon-tools::before {
	content: "\e60a";
}

.icon-plane::before {
	content: "\e625";
}

.icon-joy::before {
	content: "\e6a4";
}

.icon-plug::before {
	content: "\e69a";
}

.icon-home::before {
	content: "\e648";
}

.icon-gift::before {
	content: "\e652";
}

.icon-display::before {
	content: "\e65e";
}

.icon-date::before {
	content: "\e660";
}

.icon-config::before {
	content: "\e666";
}

.icon-coffee::before {
	content: "\e669";
}

.icon-camera::before {
	content: "\e66f";
}

.icon-box::before {
	content: "\e674";
}

/* Content */
.content-wrap {
	position: relative;
}

.content-wrap section {
	display: none;
	margin: 0 auto;

}

.content-wrap section.content-current {
	display: block;
}



/* Fallback */
.no-js .content-wrap section {
	display: block;
	padding-bottom: 2em;
	border-bottom: 1px solid rgba(255, 255, 255, 0.6);
}

.no-flexbox nav ul {
	display: block;
}

.no-flexbox nav ul li {
	min-width: 15%;
	display: inline-block;
}

@media screen and (max-width: 58em) {
	.tabs nav a.icon span {
		display: none;
	}

	.tabs nav a:before {
		margin-right: 0;
	}
}

.tabs nav {
	background-color: #f3f4f4;
}

.tabs nav ul {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	gap: 1rem;
	align-items: center;
}

.tabs nav ul li {
	display: flex;
	align-items: center;
	font-size: 1rem;
}

nav ul li a {
	text-decoration: none;
	display: flex;
	align-items: center;
	gap: 0.5rem;
}

nav ul li a .fa {
	font-size: 1.8rem;
	/* Adjust size of icons */
}

nav ul li a span {
	margin-left: 1.8rem;
	/* Space between icon and text */
}