:root {
	--cnt-icon-font: "Font Awesome 6 Pro";
}

body {
	font-family: var(--body-font-family);
	font-size: 16px;
	line-height: 1.5;
	color: #3e3e3e;
	background-color: #fff;
}

h1, h2, h3, h4, h5, h6 {
	color: #3e3e3e;
}

.iframe-container {
	position: relative;
	width: 100%;
	padding-bottom: 56.25%;
	height: 0;
}

.iframe-container iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

iframe {
	display: block;
}

.slider-shadow {
	padding: 8px;
	width: calc(100% - 16px) !important;
    height: calc(100% - 16px) !important;
    min-height: calc(100% - 16px) !important;
}

.slider-shadow > div {
	box-shadow: 0 1px 5px 1px rgb(0, 0, 0, 0.2);
}

.grow-div {
	flex-grow: 1;
}

ul {
	list-style-type: square;
}

.form-label.needed::after,
p.needed::before {
	content: "*";
	color: red;
	display: inline-block;
	vertical-align: top;
}

.form-label.needed::after {
	margin-left: 0.25rem;
}

p.needed::before {
	margin-right: 0.25rem;
}

.site-grid {
	margin-bottom: 1rem;
	overflow-x: hidden;
}

hr.with-logo {
	position: relative;
    overflow: unset;
    opacity: 1;
    margin: 3rem 0;
	background-color: rgb(62, 62, 62, 0.2);
}

hr.with-logo::after {
	content: "";
    width: 40px;
    height: 38px;
	padding: 0 5px;
    position: absolute;
    display: block;
    top: calc(100% - 19px);
    left: calc(50% - 20px);
    background: url(../../../images/logo/czech-jewelry-logo-hr.svg) no-repeat center center, #fff;
	background-size: 30px 38px;
}

/** 
*   Fixes
**/

.eshop-container .row {
	--gutter-x: 1em;
}

.eshop-container .row.gx-0 {
	--gutter-x: 0;
}

.eshop-container .row.gx-1 {
	--gutter-x: 0.25rem;
}

.eshop-container .row.gx-2 {
	--gutter-x: 0.5rem;
}

.eshop-container .row.gx-3 {
	--gutter-x: 1rem;
}

.eshop-container .row.gx-4 {
	--gutter-x: 1.5rem;
}

.eshop-container .row.gx-5 {
	--gutter-x: 3rem;
}

.list-results {
	list-style: none;
	padding: 0;
	margin: 0;
	max-height: 50vh;
	overflow: auto;
}

.review-responsive {
	max-height: 700px;
	overflow: auto;
}

/** 
*   Header
**/

.header,
.container-header {
	background: #000;
}

.header .container_search {
	flex-grow: 1;
    padding: 0 3rem;
}

.container_other {
	display: flex;
	align-items: center;
}

.container_language-settings {
	display: flex;
	align-items: center;
}

.container_other .navbar {
	margin-top: 0;
}

.header .mod-languages button {
	background: none;
	border: none;
	padding: 0;
	margin: 0;
	display: flex;
	align-items: center;
	margin-left: 1rem;
	color: #fff;
	font-size: 0;
}

.header #eshop_result {
    background: #fff;
    border: solid 1px #ccc;
    display: block;
	top: calc(100% - 1px);
}

.header .mod-languages button.dropdown-toggle::after {
	font-size: 16px;
}

.header .mod-languages a {
	display: flex;
	align-items: center;
	padding: 0.25rem 0.5rem;
}

.header .mod-languages a img {
	margin-right: 0.5rem;
}

div.mod-languages ul.lang-block li {
	padding: 0;
}

div.mod-languages ul li.lang-active {
	background-color: #f2f2f2;
}

div.mod-languages .dropdown-menu {
	right: 0;
}

.header .eshop-content {
	right: 0;
	min-width: 350px;
	box-shadow: 2px 2px 4px rgb(0, 0, 0, 0.08);
	position: absolute;
	background: #fff;
	padding: 8px;
	color: #000;
}

.eshop-mini-cart-info {
	font-size: 0.875rem;
	line-height: 1.2;
}

#eshop-cart .btn {
	color: #fff;
}

.eshop-mini-cart-info td {
	padding: 0.5rem 0.25rem;
	vertical-align: middle;
}

.eshop-mini-cart-info .eshop-remove-item img {
	display: block;
}

.eshop-mini-cart-info .eshop-image img {
	border: none;
	display: block;
}

.eshop-mini-cart-info .eshop-quantity {
	margin: 0;
	display: table-cell;
}

.container-topbar .mod-menu {
	margin-left: -1rem;
}

.container-topbar .mod-menu li,
.container-topbar .mod-menu li + li {
	padding: 0;
	margin-left: 1rem;
}

.container-topbar .mod-menu li::after {
	display: none;
}

.container-topbar .mod-menu li a {
	color: #fff;
	display: flex;
    align-items: center;
}

.container-topbar .mod-menu li a:hover {
	color: #fff;
}

.container-topbar .mod-menu li a:hover i,
.container-topbar .mod-menu li a:hover span[class*=fa-] {
	color: var(--cnt-color-primary);
}


.container-header .mod-menu .fa-whatsapp {
	padding: 4px !important;
	color: #fff;
	border-radius: 2px;
	margin-right: 8px;
}

.container-topbar .mod-menu li a.whatsup:hover span[class*=fa-] {
	color: #d8a361;
}

.container-topbar .mod-menu li a.whatsup:hover {
	color: #fff;
}

.header .mod-languages button img {
	margin-right: 0;
}

.header .mod-languages button:hover {
	color: var(--cnt-color-primary);
}


.header .eshop-search {
	width: max-content;
	position: relative;
}

.header .eshop-search::after {
	font-family: var(--cnt-icon-font);
	content: "\f002";
	display: inline-block;
	width: 26px;
	height: 26px;
	position: absolute;
	z-index: 3;
	right: 0;
	top: 4px;
	font-size: 20px;
}


.header .product_search {
	max-width: 250px;
    padding: 0.4rem 2rem 0.4rem 0.8rem;
    border-radius: 0;
    background: none;
    color: #fff;
    border: none;
    border-bottom: solid 1px #fff;
    padding-left: 0;
}

.header .product_search::-webkit-input-placeholder { /* Edge */
	color: #fff;
}
  
.header .product_search:-ms-input-placeholder { /* Internet Explorer 10-11 */
	color: #fff;
}
  
.header .product_search::placeholder {
	color: #fff;
}

.header .product_search.eshop-loadding {
	background: url("../../../images/loader.gif") no-repeat scroll right 8px transparent !important;
}

.header #eshop_result,
.header #eshop_result a {
	color: #3e3e3e;
}

.header #eshop_result li {
	line-height: 1.4;
	font-size: 0.875rem;
	display: flex;
	align-items: flex-start;
	padding: 0.5rem 0;
}

.header #eshop-cart .eshop-items {
	position: relative;
}

.header #eshop-cart .cart_image {
	min-height: 32px;
}

.header #eshop-cart .eshop-items a {
	display: block;
	padding: 6px 4px 6px 4px;
	text-align: center;
	min-width: 70px;
}

.header #eshop-cart .eshop-items a .cart_image > i {
	font-size: 32px;
	color: var(--cnt-color-primary);
}

.header #eshop-cart .eshop-items a span {
	background: none;
	padding-right: 0;
	font-size: 0.875rem;
    font-weight: 300;
}

.header #eshop-cart .eshop-items a .cart-count {
	position: absolute;
	padding: 0px 0.3rem;
	right: 0;
	top: 0;
	background: var(--cnt-color-primary);
	border-radius: 50%;
	font-size: 0.75rem;
}

.header #eshop_result img {
	margin: 0;
	margin-right: 15px;
	border: none;
}

.header #eshop_result a {
	color: var(--cnt-color-link);
	font-weight: 700;
}

.header .navbar-brand {
	padding: 0;
}

.container-header .navbar-brand img,
.container-header .navbar-brand svg {
	width: 160px;
	min-width: 160px;
}

.container-header .navbar-brand svg {
	height: 48px;
}

.header {
	border-bottom: solid 2px #fff;
}

.header .container_brand,
.header .container_search,
.header .container_other,
.header .container_language-settings {
	padding-top: 0.5rem;
	padding-bottom: 1rem;
}

.header .container-topbar .grid-child,
.header .container-below-top .grid-child {
	align-items: center;
}

.header .container-topbar .grid-child {
	flex-wrap: wrap;
}

.header .container_menu {
	flex-grow: 1;
}

.header .container-below-top {
	position: relative;
}

.header .header-line {
	width: 100%;
	position: relative;
	border-top: solid 1px #fff;
}

.header .header-line::before {
	content: "";
	background-color: #fff;
	display: block;
	height: 1px;
	position: absolute;
	top: -1px;
	left: 0;
	right: 0;
	left: calc(-50vw + 660px - 0.5rem);
    right: calc(-50vw + 660px - 0.5rem);
}

.header .cnt-mobile-btn,
.header .cnt_mobile-btn_search,
.header #mobile-button-search-close-trigger {
	display: none;
}

.header .container-below-top {
	padding-top: 0.5rem;
}

.container-header .mod-menu img {
	max-width: 16px;
	max-height: 16px;
	margin-right: 0.5rem;
}

.container-header .mod-menu > li.active::after,
.container-header .mod-menu > li:hover::after {
	background: var(--cnt-color-primary);
	opacity: 1;
	height: 1px;
}

.container-header .mod-list li.active > a {
	color: var(--cnt-color-primary);
}

.container-header .main-menu li:nth-last-child(3) {
	margin-left: auto;
}

.main-menu li a.bigger {
	font-size: 1.25rem;
}

#currency  {
	margin-left: 0.5rem;
}

#currency .dropdown-toggle {
	color: #fff;
	border: none;
	background: none;
	margin: 0;
}

#currency a {
	color: #22262a;
    padding: 0.25rem 1rem;
	border: none;
	margin: 0;
}

/** 
* breadcrumb
**/

.container-breadcrumbs {
	margin: 1.5rem 0;
}

.breadcrumb {
	background-color: initial;
}

.breadcrumb .mod-breadcrumbs__here {
	display: none;
}

/** 
*   Product page
**/

.product-info .img-thumbnail {
	border: none;
}

.product-info .product-image-gallery p {
	margin-bottom: 0;
}

.product-info .image-additional {
	margin-top: 1px;
	margin-left: 0;
}

.product-info #main-image-area .product-image {
	position: relative;
	display: block;
}

.product-info #main-image-area .product-image::after {
	content: "\f00e";
	display: block;
	position: absolute;
	right: 0;
	top: 0;
	width: 38px;
	height: 38px;
	color: #000;
	background: #efefef;
	border-bottom-left-radius: 4px;
	font-family: var(--cnt-icon-font);
    display: flex;
    align-items: center;
    justify-content: center;
}

.product-info .product-price {
	border: none;
	margin-top: 1.5rem;
}

.product-info .price-description {
	display: none;
}

.product-info .product-desc {
	border: none;
	padding: 0;
	margin-bottom: 10px
}

.product-info .product-cart {
	border-top: solid 1px #4b5056;
    border-bottom: solid 1px #4b5056;
	position: relative;
	margin-bottom: 30px;
}

.product-info .product-cart::after {
	content: "";
	width: 40px;
	height: 38px;
	position: absolute;
	display: block;
	top: calc(100% - 19px);
	left: calc(50% - 20px);
	background: url('../../../images/logo/czech-jewelry-logo-hr.svg') no-repeat center center, #fff;
	background-size: 30px 38px;
}

.product-cart label.btn {
	color: inherit;
}

.product-info .page-header h1 {
	margin-bottom: 1rem;
	color: var(--cnt-color-primary);
	font-weight: 300;
    font-size: 200%;
}

.list-social li i {
	font-size: 1.625rem;
}

.list-social li a {
	text-decoration: none;
}

.related_products .product a {
	text-decoration: none;
	display: block;
	text-align: center;
}

.related_products .product .image {
	margin-bottom: 0.75rem;
}

.related_products .product .price {
	margin-bottom: 0.5rem;
	color: #3e3e3e;
}

.related_products .product .name {
	font-size: 1rem;
	color: #3e3e3e;
}

.related_products .product a::after {
	content: "";
	width: 50px;
	height: 2px;
	display: block;
	margin: 1rem auto 0 auto;
	background: var(--cnt-color-primary);
}

.video_container {
	position: relative;
}


#colorbox .cart-info,
#colorbox .quote-info {
	margin: 0;
}

#colorbox .ask-question-intro {
	padding-left: 0;
}


/** 
*   category
**/

.eshop-sub-categories-list {
	display: none;
}

.moduletable.submenu .mod-menu {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	flex-direction: row;
	margin: 2rem 0 2rem -1rem;
}

.moduletable.submenu .mod-menu li {
	margin-left: 1rem;
	margin-top: 0.5rem;
	margin-bottom: 0.5rem;
}

.moduletable.submenu .mod-menu li a,
.moduletable.submenu .mod-menu li span {
	color: #3e3e3e;
	border: solid 1px rgba(0, 0, 0, 0.05);
	transition: border 0.3s;
	padding: 0.5rem 1rem;
    min-height: 60px;
    display: flex;
    align-items: center;
}

.moduletable.submenu .mod-menu li a img,
.moduletable.submenu .mod-menu li span img {
	margin-right: 10px;
	max-width: 80px;
	max-height: 40px;
	width: auto;
	height: auto;
	display: block;
}

.moduletable.submenu .mod-menu li.current a,
.moduletable.submenu .mod-menu li.current span {
	border-color: #000;
}

.moduletable.submenu .mod-menu li a:hover,
.moduletable.submenu .mod-menu li span:hover {
	text-decoration: none;
	border-color: #000;
}

.moduletable.submenu > h3 {
	display: none;
}

.moduletable.submenu .mod-menu li a {
	font-size: 1.125rem;
}

.ajax-block-product {
	transition: none;
}

.eshop-product-container .eshop-image-block .img-thumbnail {
	border: none;
}

.eshop-product-container {
	padding: 1rem;
	transition: box-shadow 0.3s;
}

.eshop-product-container .eshop-info-block h5 a {
	color: #3e3e3e;
	text-decoration: none;
}

.eshop-product-container .eshop-product-price {
	margin-top: 1rem;
}

.eshop-product-container .eshop-product-price .price,
.eshop-product-container .eshop-product-price .eshop-sale-price {
	font-size: 20px;
}

.eshop-product-container .eshop-product-price .eshop-base-price {
	font-size: 0.875rem;
}

.eshop-product-container .eshop-info-block h5 {
	font-size: 0.875rem;
	font-weight: 400;
}

.eshop-product-container .eshop-info-block h5::after {
	content: "";
	margin: 1rem auto 0 auto;
	width: 100%;
	height: 2px;
	max-width: 80px;
	background: var(--cnt-color-primary);
	transition: max-width 0.3s;
	display: block;
}

.eshop-product-container .eshop-product-desc {
	display: none;
}

.eshop-product-container .eshop-buttons {
	display: none;
}

@media (hover) {
	.eshop-product-container:hover {
		box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.4);
	}

	.eshop-product-container:hover .eshop-info-block h5::after {
		max-width: 100%;
	}
}

.sidebar-left.card {
	border: none;

}

.sidebar-left.card .card-header {
	display: none;
}

.sidebar-left.card .card-body {
	padding: 0;
}

.btn-filter {
	display: none;
}

.filter-main .filter-active {
	margin-top: 1rem;
	position: relative;
	z-index: 10;
}

.filter-main .filter-active #modified-inputs {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}

.filter-main .filter-active #modified-inputs > div {
	background: #f2f2f2;
	padding: 0.15rem 0.5rem;
	border-radius: 10px;
	display: flex;
	align-items: center;
	margin-right: 0.5rem;
	margin-top: 0.25rem;
	margin-bottom: 0.25rem;
	font-size: 0.875rem;
}

.filter-main .filter-active #modified-inputs > div button {
	border: none;
	background: none;
	padding: 0;
	margin: 0;
	margin-left: 0.5rem;
}

#eshop-main-container .page-header.page-title:empty {
	display: none;
}

.sortby-module {
	padding: 0 1rem;
}

.filter-main {
	margin-top: 2rem;
}

.filter-top {
	display: flex;
	align-items: center;
	width: 100%;
}

.filter-top .name {
	display: flex;
	align-items: center;
	position: absolute;
    left: 0;
    z-index: 5;
    background: #fff;
	padding-right: 30px;
}

.filter-top .name p {
	margin-bottom: 0;
}

.filter-top .filter-separator {
	flex-grow: 1;
	height: 1px;
	position: relative;
	background: #3e3e3e;
}


.filter-top #category-filter-top {
	position: absolute;
    right: 0;
    z-index: 5;
    background: #fff;
	padding-left: 30px;
	min-width: 50px;
}

.filter-top .eshop-product-sorting,
.filter-top .eshop-product-show {
	display: flex;
	align-items: center;
}

.filter-top .eshop-product-show {
	margin-left: 14px;
}

.filter-top .eshop-product-sorting b,
.filter-top .eshop-product-show b {
	font-weight: 400;
	margin-right: 0.5rem;
	font-size: 0.875rem;
	flex-shrink: 0;
	padding-top: 0;
	float: none;
}

.filter-top .eshop-product-sorting select,
.filter-top .eshop-product-show select {
	font-size: 0.875rem;
	padding: 0;
	background: url(../../../images/select-bg.svg) no-repeat right center/80rem;
	background: none;
    border: none;
    box-shadow: none;
	-webkit-appearance: auto;
	appearance: auto;
}

.filter-top .filter-separator::after {
	content: "";
    width: 50px;
    height: 58px;
    position: absolute;
    display: block;
    top: calc(100% - 29px);
    left: calc(50% - 25px);
    background: url(../../../images/logo/czech-jewelry-logo-hr.svg) no-repeat center center, #fff;
    background-size: contain;
}

form[name="advancedSearchForm"] .eshop-filter {
	padding: 1rem;
}

form[name="advancedSearchForm"] .eshop-filter .panel-collapse {
	border: none;
	padding: 0;
}

form[name="advancedSearchForm"] .eshop-filter > a {
	background: none;
	text-decoration: none;
	padding: 0;
	margin-bottom: 0.5rem;
	font-weight: 400;
	color: #000;
}

form[name="advancedSearchForm"] #accordion > .eshop-filter + .eshop-filter {
	border-top: solid 1px rgba(0, 0, 0, 0.4);
	margin-top: 0.5rem;
}

form[name="advancedSearchForm"] .eshop-filter > a .filter-head-icon {
	display: none;
}

form[name="advancedSearchForm"] .eshop-filter .eshop-filter-reset-all {
	border: none;
}

form[name="advancedSearchForm"] .eshop-filter .panel-collapse .panel-body li {
	padding-left: 0;
	padding-right: 0;
	border: none;
	padding-top: 6x;
    padding-bottom: 6px;
}

form[name="advancedSearchForm"] .eshop-filter .panel-collapse .panel-body li:last-of-type {
	padding-bottom: 0;
}

form[name="advancedSearchForm"] input[type="text"] {
	font-size: 1rem;
	padding: 0.3rem 0.6rem;
}

form[name="advancedSearchForm"] input[type="text"]:read-only {
	padding: 0;
	background: none;
	border: none;
}

form[name="advancedSearchForm"] .input-group-text {
	padding: 0.3rem 0.6rem;
}

form[name="advancedSearchForm"] .eshop-filter .badge-info {
	background: #eaedf0;
	color: #000;
	border: 1px solid #ced4da;
	display: none;
}

form[name="advancedSearchForm"] .eshop-filter .badge-info:after {
	border-right-color: var(--cnt-color-primary);
	display: none;
}

form[name="advancedSearchForm"] .eshop-filter .radio,
form[name="advancedSearchForm"] .eshop-filter .checkbox {
	font-size: 1rem;
	display: flex;
	align-items: center;
}

form[name="advancedSearchForm"] .eshop-filter .radio .check-text,
form[name="advancedSearchForm"] .eshop-filter .checkbox .check-text {
	flex-grow: 1;
}

form[name="advancedSearchForm"] .eshop-filter .radio input,
form[name="advancedSearchForm"] .eshop-filter .checkbox input {
	margin-right: 0.5rem;
	width: 1.5em;
	height: 1.5em;
	background-color: #eaedf0;
	border: none;
	border-radius: 0;
	margin-top: 0;
}

form[name="advancedSearchForm"] .eshop-filter .checkbox .form-check-input:checked {
	background-color: #eaedf0;
	border-color: #eaedf0;
	background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj48IS0tISBGb250IEF3ZXNvbWUgUHJvIDYuMS4xIGJ5IEBmb250YXdlc29tZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tIExpY2Vuc2UgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbS9saWNlbnNlIChDb21tZXJjaWFsIExpY2Vuc2UpIENvcHlyaWdodCAyMDIyIEZvbnRpY29ucywgSW5jLiAtLT48cGF0aCBkPSJNMCAwSDUxMlY1MTJIMFYweiIgLz48L3N2Zz4=");
	background-size: 16px 16px;
}

form[name="advancedSearchForm"] .eshop-filter .panel-collapse .panel-body {
	font-size: 1rem;
}

form[name="advancedSearchForm"] .noUi-connect {
	background: var(--cnt-color-primary);
}

form[name="advancedSearchForm"] .noUi-handle {
	border: none;
    border-radius: 50%;
    background: #000;
    cursor: default;
    box-shadow: none;
}

form[name="advancedSearchForm"] .noUi-horizontal .noUi-handle {
	width: 18px;
}

form[name="advancedSearchForm"] .noUi-active {
	box-shadow: none;
}

form[name="advancedSearchForm"] .noUi-handle:before,
form[name="advancedSearchForm"] .noUi-handle:after {
	display: none;
}

form[name="advancedSearchForm"] .noUi-horizontal {
	height: 6px;
}

form[name="advancedSearchForm"] .noUi-target {
	padding: 0;
}

form[name="advancedSearchForm"] .noUi-horizontal .noUi-handle {
	top: -7px;
}


/** 
*   joomla ttab
**/

joomla-tab {
	border-bottom: solid 1px #000;
    margin-bottom: 40px;
    padding-bottom: 30px;
	position: relative;
}

joomla-tab[view=accordion] {
	border-bottom: none;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	box-shadow: none;
}

joomla-tab[view=accordion] button {
	order: 1;
	width: auto;
	display: inline-block;
	background: none;
	text-transform: uppercase;
	border-bottom: solid 2px #000;
	padding: 4px;
	box-shadow: none;
	margin-left: 15px;
	margin-top: 2px;
	margin-bottom: 2px;
}

joomla-tab[view=accordion] joomla-tab-element[active] {
	border-bottom: none;
}

joomla-tab[view=accordion] joomla-tab-element {
	order: 2;
	width: 100%;
}

joomla-tab[view=accordion] .accordion-title {
	display: flex;
	align-items: center;
	justify-content: center;
}

joomla-tab[view=accordion] button[aria-expanded="true"] {
	color: var(--cnt-color-primary);
	border-color: var(--cnt-color-primary);
	background: none !important;
}

joomla-tab[view=tabs]>div[role=tablist] {
	background: none;
	border: none;
	box-shadow: none;
	border-bottom: solid 2px #000;
    overflow: initial;
}

joomla-tab button[role=tab] {
	box-shadow: none;
	border-bottom: solid 2px transparent;
	padding: 3px;
	margin-right: 20px;
	text-transform: uppercase;
	font-size: 1.5rem;
	font-weight: 300;
	position: relative;
    top: 2px;
    z-index: 2;
}

joomla-tab button[role=tab] + button[role=tab] {
	margin-left: 30px;
}

joomla-tab button[role=tab][aria-expanded=true],
joomla-tab button[role=tab][aria-selected=true] {
	box-shadow: none;
	border-color: var(--cnt-color-primary);
	color: var(--cnt-color-primary);
	background: none;
}

joomla-tab button[aria-expanded=true]:after, 
joomla-tab button[aria-selected=true]:after {
	display: none;
}

joomla-tab button[role=tab][aria-expanded=true]::before,
joomla-tab button[role=tab][aria-expanded=true]::after,
joomla-tab button[role=tab][aria-selected=true]::before,
joomla-tab button[role=tab][aria-selected=true]::after {
	content: "";
	position: absolute;
	background: #fff;
	display: block;
	bottom: -4px;
	height: 44px;
    width: 30px;
    z-index: 3;
    opacity: 1;
}

joomla-tab button[role=tab][aria-expanded=true]::before,
joomla-tab button[role=tab][aria-selected=true]::before {
	left: -30px;
}

joomla-tab button[role=tab][aria-expanded=true]::after,
joomla-tab button[role=tab][aria-selected=true]::after {
	left: initial;
	right: -30px;
}

joomla-tab button[role=tab]:nth-of-type(1)::before {
	display: none;
}

joomla-tab button[aria-expanded=true]:after,
joomla-tab button[aria-selected=true]:after {
	display: none;
}

joomla-tab > joomla-tab-element {
	border: none;
	background-color: transparent;
	padding: 30px 0 15px 0;
	box-shadow: none;
}

/** 
*   forms
**/

.form-control:focus {
	border-color: var(--cnt-color-primary);
}

.form-control.input-xlarge {
	max-width: initial;
}

/** 
*   checkout
**/

.checkout-content {
	padding: 1rem 0.5rem;
}

/** 
*   colorbox styling
**/

#colorbox #cboxContent h1 {
	background: none;
	padding: 0;
	margin: 0;
	margin-top: 10px;
	margin-bottom: 20px;
	font-size: 1.5rem;
}

/** 
*   buttons
**/

.btn {
	letter-spacing: 1px;
	padding: 0.7rem 1rem;
	font-weight: 500;
}

.btn:focus {
	box-shadow: none !important;
}

.btn-sm {
	padding: 0.25rem 0.5rem;
    font-size: 0.875rem;
    border-radius: 0.2rem;
}

.btn-cart-add::after {
	content: "\f291";
	font-family: var(--cnt-icon-font);
	color: inherit;
	display: inline-block;
	margin-left: 0.6rem;
}
.btn-outline-secondary {
	border-color: #000;
	color: #000000;
	font-size: 0.875rem;
}

.btn-outline-secondary:hover {
	color: white;
	background-color: var(--cnt-color-primary);
	border-color: var(--cnt-color-primary);
}

/** 
*   Footer
**/

.footer {
	background: #000;
	color: #fefefe;
	margin-top: 0;
}

.footer h1,
.footer h2,
.footer h3,
.footer h4,
.footer h5 {
	color: #fefefe;
}

.footer .grid-child {
	align-items: flex-start;
	border-top: solid 1px #fff;
	position: relative;
    margin-top: 60px;
    padding-top: 50px;
}

.footer .grid-child::after {
	content: "";
	width: 252px;
	height: 76px;
	padding: 0 15px;
	position: absolute;
	display: block;
	bottom: calc(100% - 38px);
	left: calc(50% - 126px);
	background: url('../../../images/logo/czech-jewelry-logo.svg') no-repeat center center, #000;
	background-size: 222px 76px;
}

.footer .footer.no-card {
	margin-top: 0;
}

.fw-500 {
	font-weight: 500;
}

/** 
*   Popis
**/

.file-pdf,
.file-word,
.file-excel,
.file-powerpoint,
.file-image,
.file-text {
	position: relative;
	display: flex;
	align-items: center;
	width: max-content;
	text-decoration: none;
	color: #4f4f56;
}

.file-pdf:hover,
.file-word:hover,
.file-excel:hover,
.file-powerpoint:hover,
.file-image:hover,
.file-text:hover {
	color: var(--cnt-color-primary);
}

.file-pdf::before,
.file-word::before,
.file-excel::before,
.file-powerpoint::before,
.file-image::before,
.file-text::before {
	font-family: var(--cnt-icon-font);
	color: var(--cnt-color-primary);
	display: inline-block;
	margin-right: 0.5rem;
	font-size: 1.75rem;
	opacity: 0.8;
	font-weight: 300;
}

.file-pdf::before {
	content: "\f1c1";
}

.file-word::before {
	content: "\f1c2";
}

.file-excel::before {
	content: "\f1c3";
}

.file-powerpoint::before {
	content: "\f1c4";
}

.file-image::before {
	content: "\f1c4";
}

.file-text::before {
	content: "\f15c";
}

/*Table*/

.cnt-table thead th {
	background: var(--cnt-color-grey);
}

.cnt-table thead:first-of-type th {
	border-top-left-radius: 0.5rem;
	border-top-right-radius: 0.5rem;
}

.back-to-top-link {
	text-decoration: none;
    background: var(--cnt-color-primary);
    padding: 0.25rem 0.5rem;
    color: #fff;
}

.back-to-top-link:hover {
	border-color: var(--cnt-color-hover);
	background: var(--cnt-color-hover);
}

.link {
	color: #3e3e3e;
	text-decoration: underline;
}

.link:hover {
	text-decoration: none;
}

.table-bs-responsive.table_basket_popout ,
.eshop-mini-cart-info {
	max-height: 40vh;
	overflow: auto;
}

.eshop-mini-cart-info {
	max-height: 20vh;
}

.table-bs-responsive.table_basket_popout .table_basket th {
	position: sticky;
	top: 0;
}

.table_basket {
	border-collapse: collapse;
	width: 100%;
}

.table_basket a {
	text-decoration: none;
	color: #3e3e3e;
}

.table_basket .eshop-quantity {
	margin: 0;
	display: flex;
	align-items: center;
	justify-content: center;
}

.table_basket thead th {
	border-bottom: 1px solid #dddddd;
	padding-top: 0;
	background: #fff;
}

.table_basket th,
.table_basket td {
	border-bottom: 1px solid #dddddd;
	padding: 0.5rem 0.5rem;
}

.table_basket th {
	font-weight: 400;
}

.table_basket .img-thumbnail {
	background: none;
	border-radius: 0;
	border: none;
	padding: 0;
}

.table_basket .table_basket_image a {
	display: flex;
	align-items: center;
	justify-content: center;
}

.cart_total-price {
	text-align: right;
}

.cart_total-price .price {
	display: flex;
	align-items: center;
	justify-content: flex-end;
}

.cart_total-price .price + .price {
	margin-top: 0.25rem;
}

.cart_total-price .price .price-amount {
	width: 150px;
	font-size: 1.25rem;
}

.coupon_container .coupon_main {
	display: flex;
	align-items: center;
    width: 100%;
    padding: 0.2rem 0.2rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #22262a;
    background-color: white;
    background-clip: padding-box;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
	border-radius: 4px;
}

.coupon_container .coupon_main input {
	border: 1px solid #ced4da;
	max-width: 250px;
}

.coupon_container .coupon_main input:focus {
	outline: none;
}

.coupon_container .coupon_main button {
	flex-shrink: 0;
    padding: 0.64rem 0.5rem;
    margin-bottom: 0;
    margin-left: 0.5rem;
}

/*Icon fixes*/
.input-password-toggle .icon-fw {
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	display: inline-block;
	font-style: normal;
	font-variant: normal;
	line-height: 1;
	text-rendering: auto;
	font-family: var(--cnt-icon-font);
	font-weight: 400;
}

.input-password-toggle .icon-fw.icon-eye::before {
	content:"\f06e";
}

.input-password-toggle .icon-fw.icon-eye-slash::before {
	content:"\f070";
}


.cnt-form .errorMessage,
.cnt-form .successMessage,
.cnt-form .neededMessage {
	padding: 1rem;
    margin-bottom: 1rem;
    font-weight: 700;
    border-radius: 0.25rem;
}

.cnt-form .errorMessage,
.cnt-form .neededMessage {
    background: #a51f18;
    color: #fff;
}

.cnt-form .successMessage {
    background: #75972d;
    color: #fff;
}

button.load-more {
	padding: 0;
	margin: 0;
	background: none;
	border: none;
	color: #636363;
	transition: color 0.3s;
}

button.load-more i {
	font-size: 1.75rem;
}

button.load-more span {
	display: block;
	text-align: center;
}

button.load-more:hover {
	color: var(--cnt-color-primary);
}

.checkout-content .payment-image {
	display: block;
	margin-top: 4px;
}

.checkout-content .payment-image img {
	max-width: 250px;
	max-height: 24px;
	display: block;
}

/*checkout*/

.checkout-progress {
	counter-reset: progress;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 5rem;
	position: relative;
}

.checkout-progress .step {
	text-align: center;
	font-size: 0.875rem;
	display: flex;
	align-items: center;
	flex-direction: column;
	padding: 0.25rem 0.5rem;
	position: relative;
	z-index: 3;
	text-decoration: none;
	color: #3e3e3e;
	pointer-events: none;
}

.checkout-progress .step.enabled {
	pointer-events: all;
}

.checkout-progress .step .number-container {
	width: 50px;
	height: 30px;
	margin-bottom: 0.5rem;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #fff;
	position: relative;
}

.checkout-progress .step::before {
	right: 0;
	width: 100%;
	height: 1px;
	background: #ccc;
	content: "";
	display: block;
	position: absolute;
	top: 18px;
	right: 0;
	z-index: -1;
}

.checkout-progress .step:first-of-type::after,
.checkout-progress .step:last-of-type::after {
	content: "";
	display: block;
	position: absolute;
	background: #fff;
	height: 2px;
	top: 18px;
	width: 50%;
	z-index: -1;
}

.checkout-progress .step:first-of-type::after {
	left: 0;
}

.checkout-progress .step:last-of-type::after {
	right: 0;
}

.checkout-progress .step .number {
	width: 30px;
	height: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: solid 1px #ccc;
	font-weight: 700;
	border-radius: 50%;
	background: #fff;
}

.checkout-progress .step.active .number {
	background: var(--cnt-color-primary);
	border-color: var(--cnt-color-primary);
	color: #fff;
}

#checkout-options #login .forgot-username,
#checkout-options #login .forgot-password,
.com-users-login .com-users-login__reset,
.com-users-login .com-users-login__remind {
	color: #5f5f5f;
	font-size: 0.875rem;
	text-decoration: none;
}

#checkout-options #login .forgot-username:hover,
#checkout-options #login .forgot-password:hover,
.com-users-login .com-users-login__reset:hover,
.com-users-login .com-users-login__remind:hover {
	color: var(--cnt-color-primary);
}

/*Slick slider*/
.slick-track {
	display: flex;
	align-items: stretch;
	justify-content: flex-start;
	margin-left: 0;
	margin-right: 0;
}

.slick-track:before, .slick-track:after {
	display: none;
}

.slick-slide {
	float: none;
	min-height: 100%;
	height: inherit !important;
}

.slick-slide > div {
	height: 100%;
}

.slick-prev, .slick-next {
	z-index: 10;
	width: 32px;
	height: 32px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 0;
	background: none;
	color: #3e3e3e;
}

.slick-prev {
	left: -50px;
}

.slick-next {
	right: -50px;
}

.slick-prev::before, .slick-next::before {
	font-size: 2.5rem;
	display: inline-block;
	width: 32px;
	height: 32px;
	content: "";
}

.slick-prev:hover, .slick-next:hover {
	color: var(--cnt-color-hover);
}

.slick-prev::before {
	background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAzMiAzMiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxwYXRoIGQ9Ik0xMS40MzMgMTUuOTkyTDIyLjY5IDUuNzEyYy4zOTMtLjM5LjM5My0xLjAzIDAtMS40Mi0uMzkzLS4zOS0xLjAzLS4zOS0xLjQyMyAwbC0xMS45OCAxMC45NGMtLjIxLjIxLS4zLjQ5LS4yODUuNzYtLjAxNS4yOC4wNzUuNTYuMjg0Ljc3bDExLjk4IDEwLjk0Yy4zOTMuMzkgMS4wMy4zOSAxLjQyNCAwIC4zOTMtLjQuMzkzLTEuMDMgMC0xLjQybC0xMS4yNTctMTAuMjkiCiAgICAgICAgICBmaWxsPSIjMDAwMDAwIiBvcGFjaXR5PSIxIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiLz4KPC9zdmc+");
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}

.slick-next::before {
	background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAzMiAzMiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxwYXRoIGQ9Ik0xMC43MjIgNC4yOTNjLS4zOTQtLjM5LTEuMDMyLS4zOS0xLjQyNyAwLS4zOTMuMzktLjM5MyAxLjAzIDAgMS40MmwxMS4yODMgMTAuMjgtMTEuMjgzIDEwLjI5Yy0uMzkzLjM5LS4zOTMgMS4wMiAwIDEuNDIuMzk1LjM5IDEuMDMzLjM5IDEuNDI3IDBsMTIuMDA3LTEwLjk0Yy4yMS0uMjEuMy0uNDkuMjg0LS43Ny4wMTQtLjI3LS4wNzYtLjU1LS4yODYtLjc2TDEwLjcyIDQuMjkzeiIKICAgICAgICAgIGZpbGw9IiMwMDAwMDAiIG9wYWNpdHk9IjEiIGZpbGwtcnVsZT0iZXZlbm9kZCIvPgo8L3N2Zz4=");
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}


.slick-slider .slick-slide {
	padding: 4px;
}

.slick-slider .slide-product {
	padding: 0.75rem;
	display: flex !important;
	flex-direction: column;
	height: 100%;
}

.slick-slider .slide-product .image-link {
	flex-shrink: 0;
}

.slick-slider .slide-product:hover  {
	box-shadow: 0px 0px 4px #ccc;
}

.slick-slider .slide-product a {
	text-decoration: none;
	display: block;
	color: #3e3e3e;
}

.slick-slider .slide-product .product-infor {
	margin-top: 1rem;
	flex-grow: 1;
	display: flex;
	flex-direction: column;
}

.slick-slider .slide-product .product-infor .product-name {
	flex-grow: 1;
}

.slick-slider .slide-product .product-infor::after {
	content: "";
	display: block;
	width: 40%;
	height: 1px;
	background: var(--cnt-color-primary);
	margin: 1rem auto 0 auto;
	transition: width 0.3s;
}

.slick-slider .slide-product .price {
	margin-top: 1rem;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
}

.slick-slider .slide-product .price span {
	margin: 0 2px;
}

.slick-slider .slide-product:hover .product-infor::after {
	width: 80%;
}

/*Prices container*/

.prices_container.small {
	font-size: 0.875rem;
}

.prices_container .price_number {
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.2;
	min-width: 130px;
	text-align: right;
	padding-left: 0.5rem;
}

.prices_container.small .price_number {
	font-size: 1rem;
	min-width: 110px;
}

.prices_container .price_container.price-total {
	margin-top: 0.75rem;
}

.prices_container .price_container.price-coupon .price_number {
	color: var(--cnt-color-primary);
}

.loader {
	width: 120px;
	height: 120px;
	border-radius: 50%;
	position: relative;
	animation: rotate 1s linear infinite;
	display: block;
	margin: 40px auto;
}
.loader::before {
	content: "";
	box-sizing: border-box;
	position: absolute;
	inset: 0px;
	border-radius: 50%;
	border: 5px solid var(--cnt-color-primary);
	animation: prixClipFix 2s linear infinite ;
}

@keyframes rotate {
	100%   {transform: rotate(360deg)}
}

@keyframes prixClipFix {
	  0%   {clip-path:polygon(50% 50%,0 0,0 0,0 0,0 0,0 0)}
	  25%  {clip-path:polygon(50% 50%,0 0,100% 0,100% 0,100% 0,100% 0)}
	  50%  {clip-path:polygon(50% 50%,0 0,100% 0,100% 100%,100% 100%,100% 100%)}
	  75%  {clip-path:polygon(50% 50%,0 0,100% 0,100% 100%,0 100%,0 100%)}
	  100% {clip-path:polygon(50% 50%,0 0,100% 0,100% 100%,0 100%,0 0)}
}

.go-back {
	display: flex;
	width: max-content;
	text-decoration: none;
	align-items: center;
}

.go-back i {
	font-size: 2rem;
}

/*Blog styling*/
.com-content-category-blog .blog-items {
	display: grid;
	gap: 1rem;
	grid-template-columns: 1fr 1fr 1fr;
}

.com-content-category-blog .blog-items .blog-item {
	padding: 1rem;
	text-align: center;
	transition: box-shadow 0.3s;
	height: 100%;
	display: flex;
}

.com-content-category-blog .blog-items .blog-item figure {
	float: none !important;
	margin: 0;
	margin-bottom: 1.5rem;
}

.com-content-category-blog .blog-items .blog-item p.readmore {
	margin-bottom: 0;
	margin-top: 1rem;
}

.com-content-category-blog .blog-items .blog-item .page-header {
	margin-bottom: 1rem;
}

.com-content-category-blog .blog-items .blog-item:hover {
	box-shadow: 0px 0px 6px #ccc;
}

.com-content-category-blog .blog-items .blog-item .item-content {
	padding: 0.5rem;
	flex-grow: 1;
	display: flex;
	flex-direction: column;
}

.com-content-category-blog .blog-items .blog-item .item-content .inner-content {
	flex-grow: 1;
}

.com-content-category-blog .blog-items .blog-item .item-content p {
	margin-bottom: 0.5rem;
}

.com-content-category-blog .blog-items .blog-item .item-content a:not(.btn) {
	color: #3e3e3e;
	text-decoration: none;
}

/*account menu*/
.account-menu {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	list-style: none;
	gap: 1rem;
	padding: 0;
	margin-top: 1rem;
}

.account-menu li {
	display: inline-block;
	width: 100%;
}

.account-menu li a {
	padding: 1rem;
	width: 100%;
	display: flex;
	align-items: center;
	text-decoration: none;
	color: #000;
	border: solid 1px #ccc;
}

.account-menu li a:hover,
.account-menu li a.active {
	color: var(--cnt-color-primary);
	border-color: var(--cnt-color-primary);
}

.rate-star {
	background: none;
	margin: 0 !important;
	padding: 0 !important;
	color: #ced4da;
	border: none !important;
}

.rate-star.active {
	color: var(--cnt-color-primary);
}

.product-reviews {
	margin-bottom: 3rem;
}

.product-reviews .no-content {
	border: none;
	padding: 0;
}

.product-reviews .review {
	padding: 30px 0;
	margin: 0;
	border-bottom: solid 1px #929292;
}

.product-reviews .review .author {
	font-size: 1.125rem;
	margin-bottom: 4px;
	color: #000;
}

.product-reviews .review .rating {
	margin-bottom: 18px;
}

/* pagination */

.pagination {
	flex-wrap: wrap;
}

@media all and (max-width: 1420px) {
	.slick-prev {
		left: 0px;
	}

	.slick-next {
		right: 0px;
	}

	.slick-slider {
		padding:  0 55px;
	}

	.slider-reviews {
		padding: 0 30px;
	}
}

@media all and (max-width: 1200px) {
	.header .container_search {
		padding-left: 1rem;
		padding-right: 1rem;
	}

	.header .product_search {
		width: 130px;
	}
}

@media all and (min-width: 992px) {
	.container-header .mod-menu {
		margin-left: -1rem;
    	align-items: center;
	}

	.main-menu {
		padding-right: 1rem;
	}
}

@media all and (max-width: 992px) {
	.com-content-category-blog .blog-items {
		grid-template-columns: 1fr 1fr;
	}

	.header {
		overflow-x: initial;
		position: sticky !important;
		top: 0;
		box-shadow: 0px 4px 6px rgb(0, 0, 0, 0.35);
		border-bottom: solid 1px #fff;
		z-index: 20;
	}

	body.opened-menu header::after {
		display: block;
		position: fixed;
		content: "";
		width: 100%;
		height: 100vh;
		top: 0;
		z-index: -1;
		background: #000;
	}

	.container-header .grid-child {
		padding: 0.5rem 1rem;
	}

	.header .container-topbar {
		position: relative;
	}

	.header .navbar-brand {
		max-width: 160px;
		width: 100%;
	}

	.header .container_brand {
		order: 1;
		flex-grow: 1;
	}

	.header .cnt_mobile-btn_search {
		order: 2;
		display: block;
	}

	.header .cnt-mobile-btn {
		order: 4;
		display: block;
		margin-left: 10px;
	}

	.header .container_brand, .header .container_search, .header .container_other {
		padding: 0;
	}

	.header #mobile-button-search-close-trigger {
		font-size: 40px;
		width: 44px;
		height: 44px;
		display: flex;
		align-items: center;
		justify-content: center;
		margin-bottom: 0;
		margin-left: 16px;
		flex-shrink: 0;
		color: #fff;
	}

	.header #eshop_result {
		width: 100%;
	}

	.header .container-below-top {
		order: 3;
		padding-top: 0;
	}

	.header .hidden_on_mobile {
		display: none;
	}

	.header .hidden_on_mobile.open {
		display: flex;
		width: 100%;
	}

	.header .container_search {
		order: 5;
		display: none;
	}

	.header .container_search.open {
		display: flex;
		align-items: center;
		width: 100%;
		padding: 0.5em 1rem;
		position: absolute;
		background: #000;
		top: 0;
		left: 0;
		right: 0;
		z-index: 20;
		height: 64px;
	}

	.header .eshop-search {
		width: 100%;
	}

	.header .product_search {
		width: 100%;
		max-width: 100%;
	}

	.header .container_other {
		order: 6;
	}

	.header .container_other .mod-menu {
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
		margin-left: 0;
	}

	.header .container_other .mod-menu li,
	.header .container_other .mod-menu li + li {
		margin-left: 0;
	}

	.header .container_other .mod-menu .email,
	.header .container_other .mod-menu .whatsup,
	.header .container_other .mod-menu a {
		font-size: 0;
	}

	.header .container_other .mod-menu .email span,
	.header .container_other .mod-menu .whatsup span,
	.header .container_other .mod-menu span {
		font-size: 1.25rem;
		font-weight: 300;
	}

	.header .container_other .mod-menu a.logout::before {
		content: "\f08b";
		font-family: var(--cnt-icon-font);
		font-size: 1.25rem;
		height: 36px;
		width: 36px;
		font-weight: 300;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.header .container_other .mod-menu .nav-item.item-118 {
		margin-right: auto;
	}

	.header .container_other.open {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		border-top: solid 1px #fff;
		border-bottom: solid 1px rgb(255 255 255 / 50%);
		margin-top: 0.5rem;
		padding-bottom: 1rem;
		padding-top: 1rem;
		padding-left: 0.5rem;
		padding-right: 0.5rem;
		margin-bottom: 1.5rem;
	}

	.header .container_menu {
		order: 6;
		margin-top: 0.5rem;
	}

	.header .container_language-settings {
		order: 7;
		margin-top: 1rem;
		padding-left: 0.5rem;
		padding-right: 0.5rem;
	}

	#currency .dropdown-toggle {
		padding: 0;
	}

	.header #currency {
		margin-left: 0;
	}

	.header .header-line {
		display: none;
	}

	.header #eshop-cart .eshop-items a {
		min-width: initial;
		padding: 6px 14px 6px 6px;
	}

	.header #eshop-cart .cart_image {
		min-height: 24px;
	}

	.header #eshop-cart .eshop-items a .cart_image > i {
		font-size: 24px;
	}

	.header #eshop-cart .eshop-items a span.cart-price {
		display: none;
	}

	.container-header .main-menu li:nth-last-child(3) {
		margin-left: 1rem;
		margin-top: 1.5rem;
		padding-top: 2rem;
		border-top: solid 1px rgb(255 255 255 / 50%);
	}

	.header .main-menu li {
		margin-bottom: 0.5rem;
	}

	.header .main-menu li a {
		font-size: 1.125rem;
		font-weight: 300;
		padding-left: 0.5rem;
		padding-right: 0.5rem;
	}

	.header .main-menu li a.bigger {
		font-weight: 700;
		font-size: 1.25rem;
	}

	.header #mobile-button-search-trigger {
		color: #fff;
		margin-bottom: 0;
	}

	.header #mobile-button-search-trigger i {
		font-size: 20px;
	}

	.header #mobile-button-trigger {
		padding: 0px;
		width: 40px;
		height: 40px;
		margin-bottom: 0;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.header #mobile-button-trigger svg {
		width: 40px;
		height: 40px;
	}

	.header #mobile-button-trigger .line {
		fill: none;
		stroke: #fff;
		stroke-width: 6;
		transition: stroke-dasharray 600ms cubic-bezier(0.4, 0, 0.2, 1),
		  stroke-dashoffset 600ms cubic-bezier(0.4, 0, 0.2, 1);
	}
	.header #mobile-button-trigger .line1 {
		stroke-dasharray: 60 207;
		stroke-width: 4;
	}
	.header #mobile-button-trigger .line2 {
		stroke-dasharray: 60 60;
		stroke-width: 4;
	}
	.header #mobile-button-trigger .line3 {
		stroke-dasharray: 60 207;
		stroke-width: 4;
	}
	.header #mobile-button-trigger.opened .line1 {
		stroke-dasharray: 90 207;
		stroke-dashoffset: -134;
		stroke-width: 4;
	}
	.header #mobile-button-trigger.opened .line2 {
		stroke-dasharray: 1 60;
		stroke-dashoffset: -30;
		stroke-width: 4;
	}
	.header #mobile-button-trigger.opened .line3 {
		stroke-dasharray: 90 207;
		stroke-dashoffset: -134;
		stroke-width: 4;
	}

	.table-bs-responsive {
		width: 100%;
		max-height: none;
		overflow: initial;
	}

	#cboxContent {
		height: auto !important;
	}

	.table_basket th,
	.table_basket td {
		padding: 0.25rem;
		font-size: 0.875rem;
	}

	.table_basket td .eshop-quantity-value {
		font-size: 0.875rem;
		padding: 0.25rem;
		width: 30px !important;
	}

	.btn-filter {
		display: flex;
		width: 100%;
		text-align: left;
		border-radius: 0px;
		transition: transform 0.3s;
	}

	.btn-filter .text {
		flex-grow: 1;
	}

	.btn-filter i {
		font-size: 20px;
		transition: transform 0.3s;
	}

	.btn-filter.opened i.arrow-icon {
		transform: rotate(180deg);
	}

	.filter-top {
		flex-wrap: wrap;
	}

	.filter-top #category-filter-top {
		position: relative;
		top: 0;
		left: 0;
		order: 3;
		padding-left: 0;
		width: 100%;
		margin-top: 1rem;
	}

	.filter-top .filter-separator {
		margin: 0 0 2rem 0;
		width: 100%;
		order: 1;
	}

	.filter-top .name {
		position: relative;
		padding-right: 0;
		order: 2;
		flex-grow: 1;
		display: none;
	}

	.sortby-module {
		padding: 0;
	}

	.filter-top .eshop-product-sorting,
	.filter-top .eshop-product-show {
		width: 100%;
	}

	.filter-top .eshop-product-show {
		margin-left: 0;
	}

	.view-category .container-sidebar-left {
		display: none;
	}

	.view-category .container-sidebar-left.open {
		display: block;
	}

	.container-banner {
		margin-bottom: 0.25rem;
	}

	.footer .grid-child {
		align-items: center;
		text-align: center;
	}

	.account-menu {
		grid-template-columns: 1fr 1fr;
	}

	.pagination {
		justify-content: center;
		margin-left: 0;
		margin-right: 0;
	}

	.pagination .page-link {
		padding: 0.1rem 0.55rem;
		font-size: 14px;
	}

	.pagination .page-item.hidden-on-mobile {
		display: none;
	}
}

@media all and (max-width: 767px) {

	.review-responsive {
		max-height: 500px;
	}

	.header #eshop-cart.open-basket .eshop-content {
		display: none !important;
	}

	table.cnt-table {
		font-size: 0.75rem;
	}

	table.cnt-table th,
	table.cnt-table td {
		padding: 0.25rem;
	}

	table.cnt-table.responsive {
		border: 0;
	}

	table.cnt-table.responsive caption {
		font-size: 1.3em;
	}

	table.cnt-table.responsive thead {
		border: none;
		clip: rect(0 0 0 0);
		height: 1px;
		margin: -1px;
		overflow: hidden;
		padding: 0;
		position: absolute;
		width: 1px;
	}

	table.cnt-table.responsive tr {
		border-bottom: 3px solid #ddd;
		display: block;
		margin-bottom: .625em;
	}

	table.cnt-table.responsive td {
		border-bottom: 1px solid #ddd;
		display: block;
		font-size: .8em;
		text-align: right;
	}

	table.cnt-table.responsive td::before {
		content: attr(data-label);
		float: left;
		font-weight: bold;
		text-transform: uppercase;
	}

	table.cnt-table.responsive td:last-child {
		border-bottom: 0;
	}

	.table_basket.table_responsive {
		font-size: 0.75rem;
		display: block;
		width: 100%;
	}

	.table-bs-responsive.table_basket_popout {
		max-height: 600px;
    	overflow: auto;
	}

	.table-bs-responsive.table_basket_popout .table_basket .basket-col-remove,
	.table-bs-responsive.table_basket_popout .table_basket .basket-col-price,
	.table-bs-responsive.table_basket_popout .table_basket .basket-col-image,
	.table-bs-responsive.table_basket_popout .table_basket .basket-col-quantity {
		display: none;
	}

	.table_basket.table_responsive tbody {
		display: block;
		width: 100%;
	}

	.table_basket.table_responsive th,
	.table_basket.table_responsive td {
		padding: 0.25rem;
	}

	.table_basket.table_responsive {
		border: 0;
	}

	.table_basket.table_responsive caption {
		font-size: 1.3em;
	}

	.table_basket.table_responsive thead {
		border: none;
		clip: rect(0 0 0 0);
		height: 1px;
		margin: -1px;
		overflow: hidden;
		padding: 0;
		position: absolute;
		width: 1px;
	}

	.table_basket.table_responsive tr {
		border-bottom: 3px solid #000;
		display: block;
		margin-bottom: 1em;
		padding-bottom: 1em;
	}

	.table_basket.table_responsive td {
		border-bottom: 1px solid #ededed;
		display: flex;
		justify-content: space-between;
		font-size: .8em;
		text-align: right;
		padding: 0.5rem;
	}

	.table_basket.table_responsive td::before {
		content: attr(data-content);
		font-weight: bold;
		text-transform: uppercase;
	}

	.table_basket.table_responsive td:last-child {
		border-bottom: 0;
	}

	.table_basket.table_responsive .table_basket_image a {
		display: block;
	}

	.table_basket.table_responsive .eshop-quantity {
		justify-content: flex-end;
	}

	.eshop-product-container {
		padding: 0.5rem;
	}

	.container-breadcrumbs {
		margin: 0.75rem 0 0.5rem 0;
	}

	.btn {
		padding: 0.5rem 0.75rem;
		font-size: 0.875rem;
	}

	.moduletable.submenu .mod-menu {
		margin: 0.5rem 0 0.5rem -1rem;
	}

	.moduletable.submenu .mod-menu li {
		width: calc(50% - 1rem);
	}

	.moduletable.submenu .mod-menu li a {
		font-size: 0.875rem;
		padding: 0.25rem 0.5rem;
	}

	.checkout-progress {
		margin-bottom: 1rem;
		flex-wrap: wrap;
		flex-wrap: nowrap;
		justify-content: center;
	}

	.checkout-progress .step {
		width: auto;
		flex-direction: row;
		text-align: left;
	}

	.checkout-progress .step .number-container {
		margin-bottom: 0;
		margin-right: 0.5rem;
	}

	.checkout-progress .step::before,
	.checkout-progress .step:first-of-type::after,
	.checkout-progress .step:last-of-type::after {
		display: none;
	}

	.checkout-progress .step {
		display: none;
	}

	.checkout-progress .step.previous,
	.checkout-progress .step.next,
	.checkout-progress .step.active {
		display: flex;
	}

	.checkout-progress .step.active {
		text-align: center;
		justify-content: center;
		width: calc(100% - 80px);
	}

	.checkout-progress .step.previous .number-container,
	.checkout-progress .step.next .number-container,
	.checkout-progress .step.previous .text,
	.checkout-progress .step.next .text {
		display: none;
	}

	.checkout-progress .step.previous,
	.checkout-progress .step.next {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 40px;
		height: 40px;
		opacity: 0.3;
	}

	.checkout-progress .step.previous::before,
	.checkout-progress .step.next::before {
		width: auto;
		height: auto;
		position: relative;
		top: 0;
		right: 0;
		z-index: 1;
		background: none;
		font-size: 1.5rem;
	}

	.checkout-progress .step.previous.enabled,
	.checkout-progress .step.next.enabled {
		opacity: 1;
	}

	.checkout-progress .step.previous::before {
		content: "\f053";
		font-family: var(--cnt-icon-font);
		display: block;
	}

	.checkout-progress .step.next::before {
		content: "\f054";
		font-family: var(--cnt-icon-font);
		display: block;
	}
}

@media all and (max-width: 500px) {

	.com-content-category-blog .blog-items {
		grid-template-columns: 1fr;
	}

	.filter-top #category-filter-top {
		width: 100%;
		justify-content: center;
		padding-left: 0;
	}

	.filter-top .name {
		justify-content: center;
		margin: 0.5rem 0;
	}

	.filter-top .eshop-product-sorting,
	.filter-top .eshop-product-show {
		width: 100%;
	}

	.account-menu {
		grid-template-columns: 1fr;
	}

	.header .eshop-content {
		min-width: 300px;
	}

	.slider-reviews {
		padding: 0 20px;
	}

	.table-bs-responsive.table_basket_popout,
	.eshop-mini-cart-info {
		max-height: 40vh;
	}
}

@media all and (max-width: 400px) {
	form[name="advancedSearchForm"] input[type="text"] {
		font-size: 0.75rem;
		padding: 0.2rem 0.5rem;
	}
	
	form[name="advancedSearchForm"] .input-group-text {
		padding: 0.2rem 0.5rem;
	}

	.header .eshop-content {
		min-width: 250px;
	}

	#colorbox #cboxContent #cboxLoadedContent {
		padding: 15px;
	}

	.review-responsive {
		max-height: 350px;
	}
}

@media all and (max-width: 350px) {
	.container-header .navbar-brand img,
	.container-header .navbar-brand svg {
		width: 120px;
		min-width: 120px;
	}

	.header .navbar-brand {
		max-width: 120px;
		font-size: 1rem;
	}

	.pagination .page-link {
		padding: 0.1rem 0.35rem;
		font-size: 12px;
	}
}

@media all and (max-width: 305px) {
	.container-header .navbar-brand img,
	.container-header .navbar-brand svg {
		width: 80px;
		min-width: 80px;
	}

	.header .navbar-brand {
		max-width: 80px;
		font-size: 1rem;
	}

	.btn {
		padding: 0.25rem 0.5rem;
	}

	.header #mobile-button-trigger {
		width: 30px;
		height: 30px;
	}

}

@media all and (max-width: 250px) {
	.container-header .navbar-brand img,
	.container-header .navbar-brand svg {
		width: 60px;
		min-width: 60px;
	}

	.header .navbar-brand {
		max-width: 60px;
	}
}

@supports (display: grid) {
	.site-grid {
		display: grid;
		grid-template-areas: ". banner banner banner banner ."". bread bread bread bread ."". top-a top-a top-a top-a ."". top-b top-b top-b top-b ."". side-r side-r side-r side-r ."". side-l side-l side-l side-l ."". comp comp comp comp ."". bot-a bot-a bot-a bot-a ."". bot-b bot-b bot-b bot-b .";
		grid-template-columns: [full-start] minmax(0, 1fr) [main-start] repeat(4, minmax(0, 19.875rem)) [main-end] minmax(0, 1fr) [full-end];
		grid-gap: 0 1em;
	}

	.site-grid>[class^=container-],
	.site-grid>[class*=" container-"] {
		width: 100%;
		max-width: none;
		-webkit-column-gap: 1em;
		-moz-column-gap: 1em;
		column-gap: 1em;
	}

	.site-grid>.full-width {
		grid-column: full-start/full-end;
	}

	@media (min-width: 992px) {
		.site-grid {
			grid-template-areas: ". banner banner banner banner ."". bread bread bread bread ."". top-a top-a top-a top-a ."". top-b top-b top-b top-b ."". side-l comp comp side-r ."". bot-a bot-a bot-a bot-a ."". bot-b bot-b bot-b bot-b .";
		}
	}
}