@font-face {
	font-family: 'bootstrap-icons';
	font-display: swap;
	src: url('assets/bootstrap-icons.woff2') format('woff2'),
		url('assets/bootstrap-icons.woff') format('woff');
}


@keyframes FadeIn {
	0% { opacity: 0 }
	100% { opacity: 1 }
}
@keyframes FadeOut {
	0% { opacity: 1 }
	100% { opacity: 0 }
}


/* Theme: Black&White */
:root {
	--ai-bg: #FFF;
	--ai-bg-alt: #F6F6F6;
	--ai-primary: #282828;
	--ai-primary-alt: #282828;
	--ai-secondary: #505050;
	--ai-secondary-alt: #505050;
	--ai-tertiary: #CCC;
	--ai-tertiary-alt: #F6F6F6;
	--ai-danger: #A00000;
	--ai-success: #006000;
	--ai-warning: #FFA500;
	--ai-radius: 0;
	--ai-radius-round: 50%;
	--ai-product-image-ratio: 3/4;
}

.aimeos {
	clear: both;
	text-align: start;
}

.aimeos .content-block {
	margin: 4rem 0;
}

.aimeos .show > .btn-primary.dropdown-toggle:focus {
	box-shadow: none;
}

.aimeos .form-control:invalid {
	border: 1px solid var(--ai-danger);
}

.aimeos .input-lg {
	height: auto;
}

.aimeos input:focus,
.aimeos textarea:focus {
	outline: none;
}

.aimeos input:disabled,
.aimeos select:disabled
.aimeos textarea:disabled,
.aimeos .form-control:disabled,
.aimeos .form-select:disabled {
	color: var(--ai-tertiary);
	border-color: var(--ai-bg-alt);
	background-color: var(--ai-bg-alt);
}

.aimeos .button-group {
	text-align: center;
	padding: 1rem 0;
}

.aimeos .button-group .btn {
	margin: 0.25rem;
}

.aimeos .info-list {
	color: var(--ai-success);
	padding: 0.5rem;
	margin-bottom: 2rem;
	list-style: none;
}

.aimeos .attr-list .custom-checkbox,
.aimeos .form-list .custom-checkbox {
	margin: 7px 0;
}

.aimeos li.attr-item,
.aimeos li.form-item {
	list-style: none;
	padding: 0;
	margin: 0;
	margin-bottom: 0.5rem;
}

.aimeos li.attr-item .name:after {
	content: ": ";
}

.aimeos .address .form-list .form-item {
	display: none;
}

.aimeos .address .form-list .mandatory,
.aimeos .address .form-list .optional {
	align-items: center;
	display: grid;
}

.aimeos .address .form-list .mandatory label:after {
	content: "*";
}

.prototype {
	display: none !important;
}

.aimeos img.lazy-image {
	background-image: url(assets/spinner.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

.aimeos .loading {
	background-image: url(assets/spinner.svg);
	background-repeat: no-repeat;
	background-position: center;
}

.aimeos-spinner {
	background-image: url(assets/spinner.svg);
	background-repeat: no-repeat;
	background-position: center;
	position: fixed;
	z-index: 10000;
	height: 100%;
	width: 100%;
	left: 0;
	top: 0;
}

.aimeos-overlay,
.aimeos-overlay-offscreen {
	background-color: rgba(0, 0, 0, .4);
	position: fixed;
	display: none;
	z-index: 1500;
	height: 100%;
	width: 100%;
	bottom:0;
	right:0;
	left: 0;
	top:0;
}

.aimeos-overlay-offscreen {
	z-index: 1020;
}

.aimeos-overlay.show,
.aimeos-overlay-offscreen.show {
	display: block;
}

.aimeos-container {
	position: absolute;
	z-index: 1501;
	opacity: 1;
	border: 1px solid var(--ai-tertiary);
	background-color: var(--ai-bg);
	max-width: 65rem;
	width: 98%;
	padding: 1%;
}

.aimeos-container .btn-close {
	display: block;
	cursor: pointer;
	margin-inline-start: auto;
}

.content .imagelist-default img {
	width: 100%;
	height: auto;
	position: relative;
	margin: 0 auto;
}

/* content-list section */

/*---------------------------------- Footer ----------------------------------*/

footer h2 {
	font-size: 1.3rem;
    font-weight: 500;
	margin-bottom: 1rem;
}

footer p {
	transition: color .3s;
	margin-bottom: 0;
}

footer p a {
	color: var(--ai-bg);
}

footer p a:hover {
	color: var(--ai-tertiary);
	transition: color .3s;
	text-decoration: none;
}

footer .logo {
	margin-bottom: 1rem;
	display: block;
}


.footer-right .social .facebook:before,
.footer-right .social .twitter:before,
.footer-right .social .instagram:before,
.footer-right .social .youtube:before{
	position: relative;
	font: normal normal normal 14px/1 bootstrap-icons;
	font-size: 100%;
	display: inline-block;
	text-decoration: none;
	vertical-align: middle;
	background: none;
	border: none;
	margin-right: .5rem;
}

.footer-right .social .facebook:before {
	content:"\f344";
}

.footer-right .social .twitter:before {
	content:"\f5ef";
}

.footer-right .social .instagram:before {
	content:"\f437";
}

.footer-right .social .youtube:before {
	content:"\f62b";
}

/*----------------------------- Profile Navbar --------------------------------*/

.navbar-nav .nav-item > .nav-link > span {
	display: none;
}

.navbar-nav .login > .nav-link,
.navbar-nav .register > .nav-link,
.navbar-nav .profile > .nav-link {
	padding: 0.75rem;
}

.navbar-nav .login > .nav-link::before,
.navbar-nav .register > .nav-link::before,
.navbar-nav .profile > .nav-link::before {
	font: normal normal normal 14px/1 bootstrap-icons;
	text-decoration: none;
	font-size: 165%;
	color: var(--ai-bg);
	display: block;
	position: relative;
	text-align: center;
}

.navbar-nav .login > .nav-link::before,
.navbar-nav .profile > .nav-link::before {
	content: "\f4e1";
}

.navbar-nav .login > .nav-link::after {
	display: none;
}

.navbar-nav .register > .nav-link::before {
	content: "\f4dd";
}

.navbar-nav .dropdown-menu,
.navbar-nav .nav-link {
	color: var(--ai-bg);
}

.navbar-nav .dropdown-item:focus, .dropdown-item:hover {
	background-color: var(--ai-secondary);
}

/* Product */
:not(.cms-page) .product-list .product {
    display: flex;
    flex-direction: column;
    vertical-align: top;
    position: relative;
    height: 100%;
}

:not(.cms-page) .product-list:not(.slider-container) {
    display: grid;
    align-items: start;
    gap: calc(var(--spacing)*4);
    grid-template-columns: repeat(2,minmax(0,1fr));
    margin: calc(var(--spacing)*4)  0;
}

@media (min-width: 48rem) {
    :not(.cms-page) .product-list:not(.slider-container) {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }
    .content-block .product-list:not(.slider-container) {
        grid-template-columns: repeat(3,minmax(0,1fr));
    }
}

@media (min-width: 64rem) {
	:not(.cms-page) .product-list:not(.slider-container) {
        grid-template-columns: repeat(3,minmax(0,1fr));
    }
    .content-block .product-list:not(.slider-container) {
        grid-template-columns: repeat(4,minmax(0,1fr));
    }
}

@media (min-width: 96rem) {
	:not(.cms-page) .product-list:not(.slider-container) {
        grid-template-columns: repeat(4,minmax(0,1fr));
	}
	.content-block .product-list:not(.slider-container) {
        grid-template-columns: repeat(5,minmax(0,1fr));
	}
}

.aimeos .product {
	color: var(--ai-primary);
}

.aimeos .product .badges {
	position: absolute;
	text-align: start;
	z-index: 2;
}

.aimeos .product .badge-item {
	letter-spacing: 1.5px;
	padding: .1rem .5rem;
	font-size: 100%;
	display: none;
}

.aimeos .product.new .badge-item.new {
	background-color: var(--ai-primary);
	display: block;
}

.aimeos .product.sale .badge-item.sale {
	background-color: var(--ai-danger);
	display: inline-block;
	padding: .1rem .5rem;
	font-weight: bold;
}

/* product media */

.product .swiffy-slider {
	--swiffy-slider-item-ratio: var(--ai-product-image-ratio);
}

.aimeos .list .product .media-list .media-item:first-of-type,
.aimeos .product-list .media-list .media-item:first-of-type {
	z-index: 1;
	opacity: 1;
	transition: opacity .3s linear;
}

.aimeos .list .product .media-list.multiple:hover .media-item:first-of-type,
.aimeos .product-list .media-list.multiple:hover .media-item:first-of-type {
	transition: opacity .3s linear;
	opacity: 0;
}

.aimeos .list .product div.list-column:first-of-type .media-list,
.aimeos .product-list div.list-column:first-of-type .media-list {
	padding-top: calc( 100% / (var(--ai-product-image-ratio)));
	position: relative;
	display: block;
	content: "";
}

.aimeos .list .product div.list-column:first-of-type .media-item,
.aimeos .product-list div.list-column:first-of-type .media-item {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: block;
	object-fit: contain;
}

.aimeos .list .product div.list-column:first-of-type .media-item > img,
.aimeos .product-list div.list-column:first-of-type .media-item > img {
	max-height: 100%;
	width: 100%;
}

/* ratings + supplier */

.product .rate {
	margin-inline-start: auto;
	display: block;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    opacity: .7;
}

.product .rate:before {
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="%23ffa500" class="size-5"><path fill-rule="evenodd" d="M10.868 2.884c-.321-.772-1.415-.772-1.736 0l-1.83 4.401-4.753.381c-.833.067-1.171 1.107-.536 1.651l3.62 3.102-1.106 4.637c-.194.813.691 1.456 1.405 1.02L10 15.591l4.069 2.485c.713.436 1.598-.207 1.404-1.02l-1.106-4.637 3.62-3.102c.635-.544.297-1.584-.536-1.65l-4.752-.382-1.831-4.401Z" clip-rule="evenodd" /></svg>');
    display: inline-block;
    content: "";
    width: 13px;
    height: 13px;
}

.aimeos .product .catalog-detail-basic .rating {
	text-align: start;
	line-height: 1;
}

/* price list */

.aimeos .product .price-item {
	display: none;
}

.aimeos .product .price-item:first-of-type {
	display: block;
	font-weight: bold;
}

.aimeos .product .price-item:first-of-type .original {
	text-decoration: line-through;
	font-size: 90%;
    opacity: .6;
    font-weight: 500;
    margin-left: 5px;
}

.aimeos .product .price-item:first-of-type .quantity,
.aimeos .product .price-item:first-of-type .rebate,
.aimeos .product .price-item:first-of-type .costs,
.aimeos .product .price-item:first-of-type .taxrate {
	display: none;
}

.aimeos .product .price-item .rebatepercent {
	position: absolute;
	display: inline-block;
	background-color: var(--ai-danger);
	color: var(--ai-bg);
	padding: 0.2rem 2%;
	z-index: 2;
	left: 5%;
	top: 3%;
	line-height: 1;
    border-radius: var(--radius-md);
}

[dir="rtl"] .aimeos .product .price-item .rebatepercent {
	right: unset;
	left: 0;
}

.aimeos .product .price-item.default .value {
	font-size: 140%;
	font-weight: 600;
	line-height: 1;
}
.aimeos .product .price-item.default .value.sale {
    color: var(--ai-danger);
}

/* text list */

.aimeos .product a {
	text-decoration: none;
}

.aimeos .product a:focus {
	outline: none;
}

.aimeos .product .text-list {
	display: block;
	color: var(--ai-secondary);
	margin-top: 0.5rem;
	overflow: hidden;
}

.aimeos .product .text-list .name,
.aimeos .product .text-list .text-item {
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
	line-height: 1;
}

.aimeos .product .text-list .text-item {
	margin: 0.5rem 0;
}

.aimeos .product .text-list .name {
	font-size: 110%;
	padding: 0;
	margin: 0;
	margin-bottom: 0.5rem;
}

/* Stock level */
.aimeos .product .stockitem {
	display: none;
}

.aimeos .product .stock-actual .stockitem {
	display: inline-block;
    font-size: var(--text-xs);
    line-height: var(--text-xs--line-height);
}

.aimeos .product .stocktext {
	display: none;
}

.aimeos .product .stock-unlimited,
.aimeos .product .stock-high {
	color: var(--ai-success);
}

.aimeos .product .stock-low {
	color: var(--ai-warning);
}

.aimeos .product .stock-out {
	color: var(--ai-danger);
}
