@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.7.2/font/bootstrap-icons.css");

.main.configurator .inner .inner-wrap .main-content .main-content-box {
    background: transparent;
}

.main.configurator .inner .inner-wrap .main-content .main-content-box .main-content-head {
    border:  none;
}

.main.configurator .group-block {
    display: block;
}

.main.configurator .group-block .group-title {
    display: block;
    font-size: 18px;
    text-transform: uppercase;
    margin: 40px 0 0 20px;
	font-weight: bold;
	margin-left: 20px;
}

.main.configurator .group-block .group-holder {
    display: block;
    margin: 8px 0 24px 0;
    padding: 24px 0;
    border-radius: 20px;
    background: #fff;
    box-shadow:  16px 16px 31px #d1d2d3;
}

.main.configurator .group-block .group-holder.setups {
	background: transparent;
	box-shadow: unset;
}

.main.configurator .group-block .group-holder .section-block, .main.configurator .group-block .group-holder .setup-block {
	padding: 14px 24px;
	transition: all .2s ease-in-out;
	cursor: pointer;
}

.group-holder .section-block {
	border-top: 1px solid rgba(0,0,0,.1);
}

.group-holder .section-block:first-child {
	border-top: none;
}

.main.configurator .group-block .group-holder .setup-block {
	cursor: default;
}

.main.configurator .group-block .group-holder .section-block ~ .section-errors {
	transition: all .2s ease-in-out;
}

.main.configurator .group-block .group-holder .section-block:hover, .main.configurator .group-block .group-holder .section-block.active, .main.configurator .group-block .group-holder .section-block:hover + .section-errors {
	background: #f6f7f8;
}

.main.configurator .group-block .group-holder .section-block .section-title {
	height: 32px;
	margin: 14px 0;
	cursor: pointer;
}

.main.configurator .group-block .group-holder .section-block .section-title .title {
	height: 32px;
	display: inline-block;
	vertical-align: middle;
	font-weight: bold;
	text-transform: uppercase;
	color: #212121;
	font-size: 12px;
	letter-spacing: 1px;
}

.main.configurator .group-block .group-holder .section-block .section-title img:not(.product-image) {
	max-height: 100%;
	width: auto;
	vertical-align: top;
	margin-right: 20px;
	margin-top: 2px;
}

.main.configurator .group-block .group-holder .section-block .section-title i {
    font-size: 24px;
    cursor: pointer;
}

.main.configurator .group-block .group-holder .section-block .section-title i.state {
    width: 20px;
    margin-right: 20px;
    color: #8a8a8a;
}

.main.configurator .group-block .group-holder .section-block .section-title i.state.required {
    color: #ff5e5e;
}

.main.configurator .group-block .group-holder .section-block .section-title i.section-control {
    float: right;
    color: #ac64ff;
}

.main.configurator .group-block .group-holder .section-block .section-title i.section-control.open-section {
	transition: all .3s ease-in-out;
}

.main.configurator .group-block .group-holder .section-block.active .section-title i.section-control.open-section {
    transform: rotateX(180deg);
}

.main.configurator .group-block .group-holder .subsection:not(.always-on) {
	display: none;
}

.main.configurator .group-block .group-holder .subsection {
	background: #fdfdfd;
}

.main.configurator .group-block .group-holder .subsection:hover {
	background: #f6f7f8;
}

.modal-page {
	position: absolute;
	top: 0;
	z-index: 999;
	width: 100%;
	min-height: 100%;
	overflow-x: hidden;
	background: #f6f7f8;
	display: none;
}

.modal-page-setups {
	position: absolute;
	top: 0;
	z-index: 999;
	width: 100%;
	min-height: 100%;
	overflow: hidden;
	background: #f6f7f8;
	display: none;
}

.modal-page-info {
	position: absolute;
	top: 0;
	z-index: 999;
	width: 100%;
	min-height: 100%;
	overflow: hidden;
	background: #f6f7f8;
	display: none;
}

.modal-page-close i::before, .filters-close i::before {
	font-size: 32px;
	transform: rotate(45deg);
	position: absolute;
	right: 20px;
	top: 0;
	opacity: .8;
	cursor: pointer;
	color: #ac64ff!important;
}

.filters-close i::before {
	right: 2px;
    top: -20px;
}

.section-block:hover img:not(.product-image) {
	-webkit-animation: bounce-top 0.9s both;
	        animation: bounce-top 0.9s both;
}

@-webkit-keyframes bounce-top {
  0% {
    -webkit-transform: translateY(-20px);
            transform: translateY(-20px);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
    opacity: 1;
  }
  24% {
    opacity: 1;
  }
  40% {
    -webkit-transform: translateY(-18px);
            transform: translateY(-18px);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  65% {
    -webkit-transform: translateY(-8px);
            transform: translateY(-8px);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  82% {
    -webkit-transform: translateY(-6px);
            transform: translateY(-6px);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  93% {
    -webkit-transform: translateY(-4px);
            transform: translateY(-4px);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  25%,
  55%,
  75%,
  87% {
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
  }
  100% {
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
    opacity: 1;
  }
}
@keyframes bounce-top {
  0% {
    -webkit-transform: translateY(-20px);
            transform: translateY(-20px);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
    opacity: 1;
  }
  24% {
    opacity: 1;
  }
  40% {
    -webkit-transform: translateY(-18px);
            transform: translateY(-18px);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  65% {
    -webkit-transform: translateY(-8px);
            transform: translateY(-8px);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  82% {
    -webkit-transform: translateY(-6px);
            transform: translateY(-6px);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  93% {
    -webkit-transform: translateY(-4px);
            transform: translateY(-4px);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  25%,
  55%,
  75%,
  87% {
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
  }
  100% {
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
    opacity: 1;
  }
}


.product-holder {
	height:  100px;
	position: relative;
}

.product-holder div {
	display: inline-block;
}

.product-holder div.image {
	height: 180px;
	width: 180px;
	padding: 0 32px;
}

.product-holder div.image img {
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 100%;
	margin: auto;
}

#ajax-content .wrapper {
	display: grid;
	grid-template-columns: minmax(250px, 300px) minmax(200px, 1fr);
}

#ajax-content .wrapper > div {
	padding: 15px;
}

#ajax-content .header {
	grid-column: auto / span 2;
}

#ajax-content .filters-block {
	grid-column: auto / span 1;
	border-right: 1px solid rgba(0,0,0,.1);
}

#ajax-content .products-block {
	grid-column: auto / span 1;
}

#ajax-content .wrapper .products-block .product-holder {
	display: grid;
	grid-template-columns: minmax(max-content, 120px) minmax(200px, 1fr) 100px;
	grid-template-areas:
       "............. product-title  ............."
       "product-image short-description action-column";
    height: auto;
    margin-bottom: 40px;
}

#ajax-content .wrapper .products-block .product-holder .title {
	grid-area:  product-title;
	font-weight: bold;
	cursor: pointer;
	padding-right: 24px;
	position: relative;
}

#ajax-content .wrapper .products-block .product-holder .title i {
	font-size: 16px;
	position: absolute;
	right: 0;
	transition: .3s ease-in-out;
}

#ajax-content .wrapper .products-block .product-holder .title.active i {
	font-size: 16px;
	position: absolute;
	right: 0;
	transform: rotateX(180deg);
	color: #ac64ff!important;
}

#ajax-content .wrapper .products-block .product-holder .image {
	grid-area:  product-image;
	cursor: default;
	display: flex;
  	align-items: center;
  	justify-content: center;
}

#ajax-content .wrapper .products-block .product-holder .description .description-initial {
	color:  #444444;
}

#ajax-content .wrapper .products-block .product-holder .description {
	grid-area:  short-description;
	cursor: default;
	margin-top:  36px;
}

#ajax-content .wrapper .products-block .product-holder .description .description-full {
	display: none;
	width: 100%;
	margin-top: 10px;
}

#ajax-content .wrapper .products-block .product-holder .description.active .description-full {
	display: block;
	margin-top: 18px;
}

#ajax-content .wrapper .products-block .product-holder .description .description-full .full-option {
	display: block;
	width: 100%;
	font-size: 0;
	margin: 8px 0;
	padding: 4px;
}

#ajax-content .wrapper .products-block .product-holder .description .description-full .full-option:nth-child(odd) {
	background: #d9d9d9;
}

#ajax-content .wrapper .products-block .product-holder .description .description-full .full-option .option-label, #ajax-content .wrapper .products-block .product-holder .description .description-full .full-option .option-value {
	display: inline-block;
	width: 50%;
	font-size: 14px;
}

#ajax-content .wrapper .products-block .product-holder .description .description-full .full-option .option-label {
	font-weight: bold;
}

#ajax-content .wrapper .products-block .product-holder .description .description-additional {
	margin-top: 8px;
	color: #919191;
}

#ajax-content .wrapper .products-block .product-holder .description .price {
	margin-bottom: 8px;
	font-weight: bold;
	letter-spacing: 1px;
}

#ajax-content .wrapper .products-block .product-holder .action-column {
	grid-area:  action-column;
	align-self: center;
	font-size: 28px;
	text-align: center;
	cursor: pointer;
}

.filter-holder {
	margin-bottom: 40px;
}

.filter-holder .filter-title {
	margin-bottom: 12px;
	font-weight: bold;
	cursor: default;
}

.filter-holder .filter-option {
	margin: 8px 0;
	cursor: pointer;
	text-transform: capitalize;
}

.filter-holder .filter-option.disabled {
	cursor: default;
	opacity: .5;
}

.filter-holder .filter-option:before {
	content: "\f28a";
	padding-right: 8px;
	font-family: bootstrap-icons !important;
	vertical-align: bottom;
}	

.filter-holder .filter-option.checked:before {
	content: "\f26b";
}

#price-slider.noUi-target {
	height:  4px;
	border: none;
	box-shadow: none;
	background: #d5d5d5;
	width: calc(100% - 16px);
	margin-left: 8px;
}

#price-slider .noUi-connect {
    background: #848484;
}

#price-slider .noUi-handle {
    height: 16px;
    width: 16px;
    top: -6px;
    right: -8px; /* half the width */
    border-radius: 8px;
    cursor: pointer;
    background: #444;
    border: none;
    box-shadow: none;
}

#price-slider .noUi-handle::before, #price-slider .noUi-handle::after {
	display: none!important;
} 

.price-inputs-holder {
	display: flex;
}

.price-input {
	display: flex;
	margin-bottom: 24px;
}

.price-input label {
	padding: 0 8px;
	line-height: 30px;
}

.price-input input {
	margin-bottom: 0;
	height: 32px;
	box-shadow: none;
}

.category-products, .data-section, .category-filters, .sort-input {
	display: none!important;
}

.sort-block {
	font-weight: bold;
	padding-bottom: 14px;
	margin-bottom: 32px;
	border-bottom: 1px solid rgba(0,0,0,.1);
}

.sort-block span {
	padding: 0 0 0 18px;
	font-weight: normal;
	color:  #9a9a9a;
	cursor: pointer;
	transition: .3s ease-in-out;
}

.sort-block span.active, .used-filters .used-filter-option {
	color:  #444;
	transition: .3s ease-in-out;
}

.sort-block span:hover, .used-filters .used-filter-option:hover {
	color: #6a6a6a;
}

.sort-block span i {
	margin-right:  8px;
}

.used-filters {
	margin-bottom: 24px;
	border-bottom: 1px solid rgba(0,0,0,.1);
	padding-bottom: 16px;
}

.used-filters .used-filter-label {
	font-weight: bold;
	margin-bottom: 12px;
}

.used-filters .used-filter-option {
	margin:  8px 0;
	cursor: pointer;
}

.used-filters .used-filter-option i {
	margin-right: 8px;
}

.used-filter-label {
	margin-top: 14px;
}

.used-filter-label:first-child {
	margin-top: 0px;
}

.main.configurator .group-block .group-holder .section-block.selected.success .section-title i.state {
	color: #8AFF8A;
}

.main.configurator .group-block .group-holder .section-block.selected.success .section-title i.state::before {
	content: "\f26a";
}

.main.configurator .group-block .group-holder .section-block.selected.error .section-title i.state {
	color: #ff5e5e;
}

.main.configurator .group-block .group-holder .section-block.selected.error .section-title i.state::before {
	content: "\f332";
}

.main.configurator .group-block .group-holder .section-block.selected .section-title i.section-control {
	color: #ff5e5e;
}

.main.configurator .group-block .group-holder .section-block.selected .section-title i.section-control::before {
	content: "\f28f";
}

.selected-product {
	display: inline-block;
	vertical-align: super;
	height: 100%;
	float: right;
}

.selected-product i {
	margin-left: 12px;
}

.selected-product img {
	max-height: 100%;
	margin: 0 20px;
}

.selected-product .product-title, .selected-product .product-title a {
	display: inline-block;
	vertical-align: bottom;
	font-weight: bold;
	color: #5a5a5a;
	line-height: 32px;
	vertical-align: unset;
}

.selected-product .product-title span.price {
	color: #444;
	padding: 0 14px;
	font-size: 16px;
}


.section-errors {
	padding: 0 24px 24px 24px;
	color: #ff5e5e;
}

.section-errors .section-errors-title {
	font-weight: bold;
}

.section-errors > .section-errors-messages:not(:last-child) {
	margin-bottom: 8px;
}

input.setup-title:disabled {
	cursor: default;
}

input.setup-title, input.setup-title:focus, input.setup-title:active, input.setup-title:disabled {
	display: inline-block;
	width: auto;
	width: auto;
	min-width: calc(100% - 100px);
	border: 0;
	box-shadow: none;
	background: transparent;
	font-size: 18px;
	text-transform: uppercase;
	font-weight: bold;
	padding-left: 20px;
	color: #122538;
	margin-bottom: 0;
	padding-bottom: 0;
}

.setup-header {
	margin-left: 20px;
	margin-top: 50px;
}

.setup-header i {
	font-size: 22px;
	cursor: pointer;
	transition: .3s ease-in-out;
}

.setup-header i.edit-title.active:before {
	content: "\f196";
}

.setup-header i.edit-title.active ~ input {
	text-decoration: underline;
}

.setup-item {
	display: inline-block;
	cursor: pointer;
	margin-bottom: 24px;
}

.setup-item img.setup-image {
	opacity: .4;
	max-width: 50px;
	margin: 0 12px;
}

.setup-item.active img.setup-image {
	opacity: .7;
}

.setup-holder .setup-item i.success {
	color: #8AFF8A;
}

.setup-holder .setup-item i.error {
	color: #ff5e5e;
}

.setup-holder .setup-item {
	position: relative;
}

.setup-holder .setup-item i {
	position: absolute;
	top: 40px;
	right: 0;
}

.setup-item .qty-holder {
	position: absolute;
	top: 26px;
	right: 0;
	border-radius: 50%;
	width: 14px;
	height: 14px;
	background: #444;
	color: #fff;
	font-size: 8px;
	font-weight: bold;
	text-align: center;
	line-height: 14px;
}

.section-block.has-children i.state {
	opacity: 0;
}

.qty-selector {
	vertical-align: bottom;
	margin-right: 18px;
}

.selected-product .qty-selector .qty-holder {
	width: 30px;
	text-align: center;
	display: inline-block;
	font-weight: bold;
	vertical-align: text-bottom;
}

.selected-product .qty-selector i {
	margin: 0;
}

.selected-product .qty-selector i.disabled {
	opacity: .5;
}

.selected-product .product-image {
	opacity: 0;
	margin: 0;
	display: none;
}

.error {
	color: unset!important;
}

.setup-holder .controls-holder {
	padding: 0 12px;
	text-align: right;
}

.buy-setup {
    display: inline-block;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: #ac64ff;
    padding: 11px 11px 12px;
    color:  #fff;
    border-radius: 15px 0;
    -webkit-transition: all .2s ease-in;
    transition: all .2s ease-in;
    font-weight: bold;
    text-transform: uppercase;
    margin-left: 14px;
}

.buy-setup i {
	font-size: 18px;
	padding: 0 4px;
}

.setup-holder .controls-holder .buy-setup:hover, .setup-holder .controls-holder .buy-setup:active, .setup-holder .controls-holder .buy-setup:focus {
    color:  #fff;
}

.setup-holder .controls-holder .delete-setup, .setup-holder .controls-holder .reset-setup {
	color: #ff5e5e;
	font-size: 20px;
}

.setup-item i.error {
	color: #ff5e5e!important;
}

.setup-holder .controls-holder .control-links, .control-links {
	padding: 0 14px;
	color: #5a5a5a;
	font-weight: bold;
}

i.control-links {
	font-size: 20px;
}

.summary-block .control-links {
	margin-right: 8px;
	padding: 0 4px;
	cursor: pointer;
}

.setups-list-container {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-auto-rows: 1fr;

}

.setups-list-item-wrapper {
  padding: 0 14px;
  font-size: 30px;
  text-align: center;
  margin: 14px 0;
}

.setups-list-item {
	background: #fff;
    box-shadow:  1px 1px 3px #d1d2d3;
    border-radius: 14px;
    padding: 24px;
    text-align: left;
  	height: 100%;
  	display: flex;
	flex-direction: column;
}

.setups-list-item .summary-block {
	margin-top: auto;
	padding-top: 24px;
	font-size: 14px;
	text-align: right;
}

.setups-list-item .summary-block a:hover, .setups-list-item .summary-block a:focus, .setups-list-item .summary-block a:active {
	color: #fff;
}

.setups-list-item h5 {
	display: inline-block;
	text-transform: uppercase;
	font-weight: bold;
	font-size: 16px;
	color: #444;
}

.setups-list-item h5 ~ span {
	font-size: 14px;
	opacity: .6;
}

.configuration-product img {
	max-width: 50px;
	display: block;
	vertical-align: top;
	text-align: center;
	margin: 20px auto 10px;
}

.configuration-product .configuration-product-title, .configuration-product .configuration-product-price {
	display: block;
	font-size: 14px;
	padding-left: 14px;
	vertical-align: bottom;
	text-align: center;
	font-weight: bold;
	color: #444;
}

.configuration-product {
	margin: 14px 0;
}

.configuration-product .configuration-product-price {
	margin-top: 14px;
	font-size: 16px;
}

.configuration-product-code {
	color: #444;
	font-size: 12px;
	opacity: .6;
	display: block;
}


.setup-total {
	margin-right: 14px;
	font-size: 22px;
	font-weight: bold;
	color: #ac64ff;
	display: inline-block;
}

.summary-block .buy-setup {
	margin-left: 8px;
}

.controls-holder .setup-total {
	float: left;
	line-height: 50px;
}





.md-visible {
	display: none;
}

.sm-visible {
	display: none;
}

.control-links-block {
	display: inline-block;
}

.publish-setup {
	background: #000;
	padding: 8px 14px;
	color: #fff;
	width: 300px;
	position: fixed;
	bottom: 10px;
	right: 10px;
	text-align: center;
	cursor: pointer;
}

.save-additional-desc {
	background: #000;
	padding: 8px 14px;
	color: #fff;
	width: 300px;
	text-align: center;
	cursor: pointer;
}

.product-holder .action-column.disabled {
	opacity: .5;
}

.out-of-stock-icon {
	color: orange;
	position: absolute;
    top: -16px!important;
    right: 0;
}


.action-column i {
	color: #ac64ff!important;
}

.out-of-stock {
	color: #fff;
	background-color: #212121;
	padding: 0 10px;
	display: inline-block;
	margin-left: 8px;
	vertical-align: bottom;
	font-weight: 400;
	border-radius: 15px 0;
}

.swal-wide {
	width: 500px;
	max-width: 80%;
}

.product-body {
	padding: 15px;
	display: none;
}

.virtual-product-wrapper {
    display: grid;
    grid-template-columns: minmax(200px, 25%) minmax(200px, 1fr) 100px;
    grid-template-areas:
        "virtual-product-image virtual-product-content virtual-action-column";
    height: auto;
    row-gap: 20px;
}

.virtual-product-wrapper > div {
	align-self: center;
	justify-self: center;
	padding: 30px;
}

.virtual-product-wrapper .virtual-product-content .body {
	font-size: 14px;
	color: #212121;
	line-height: 24px;
}

.virtual-product-wrapper .virtual-product-content .price {
	font-size: 18px;
	font-weight: bold;
	color: #212121;
	line-height: 24px;
	margin-bottom: 14px;
}

.virtual-product-wrapper .virtual-action-column i {
	font-size: 28px;
	color: #ac64ff!important;
	cursor: pointer;
}

.product-body img {
	max-width: 100%;
}





.hide-section {
	display: none!important;
}

.setups-list-item .configuration-wrapper {
	height: 400px;
	overflow-y: auto;
	overflow-x: hidden;
}

.info-block {
	text-align: left;
	margin-left: 4px;
}

.info-block .info-link {
	margin-left: 14px;
	font-weight: bold;
	opacity: .7;
	cursor: pointer;
}

.info-block .info-link i {
	margin-right: 8px;
	font-size: 18px;
}

.info-body {
	padding: 24px;
}

.info-modal-form {
	margin-top: 50px;
	font-size: 0;
}

.info-modal-form .form-item {
	padding: 14px;
}

.info-modal-form .form-item.half {
	width: 50%;
	display: inline-block;
	vertical-align: top;
}

.selectize-control.single .selectize-input, .selectize-control.single .selectize-input input {
	padding: 0 8px;
	height: 46px;
}

.info-modal-form .form-item.block {
	display: block;
}

.info-modal-form input, .info-modal-form textarea {
	font-weight: bold;
	color: #444;
	letter-spacing: 1px;
	font-size: 12px;
}

.info-modal-form textarea {
	padding: 15px!important;
}

.info-modal-form select {
	height: 45px;
	margin-bottom: 0;
	padding-left: 15px;
}

.info-modal-form select option {
	margin: 8px 4px;
	display: block!important;
}

.info-modal-form select, .info-modal-form select option {
	font-weight: bold;
	color: #444;
	letter-spacing: 1px;
	text-transform: uppercase;
	font-size: 12px;
}

.submit-form {
	height: 46px;
    background: #ac64ff;
    color: #fff;
    width: 300px;
    margin-top: 24px;
    margin-left: 15px;
    border-radius: 15px 0;
    cursor: pointer;
    -webkit-transition: all .2s ease-in;
    transition: all .2s ease-in;
    font-size: 14px;
    line-height: 46px;
    text-align: center;
    font-weight: bold;
    text-transform: uppercase;
}

.summary-block p.additional-desc {
    text-align: left;
    color: #444!important;
    font-size: 14px!important;
    font-weight: bold!important;
    line-height: 26px!important;
}

.info-body .step {
	padding: 15px;
	text-align: center;
}

.info-body .step img {
	margin-bottom: 24px;
	max-width: 90%;
	margin: 0 auto;
}

.info-body .step .info-holder {
	width: 50%;
	min-width: 200px;
	margin:  0 auto;
	text-align: center;
}


.info-body .step p {
	font-size: 16px!important;
	color:  #444!important;
	line-height: 24px!important;
	font-weight: bold!important;
	margin-bottom: 24px;
}

.info-body .step:not(.active) {
	display: none;
}

.info-body .step .nav {
	display: inline-block;
	width: auto;
	max-width: 150px;
	background-color: #444;
	margin: 0 auto;
	padding: 10px 20px;
	color: #fff;
	cursor: pointer;
	font-weight: bold;
	text-transform: uppercase;
	font-size: 12px;
	transition: .3s ease-in-out;
}

.info-body .step .nav:hover {
	opacity: .7;
}

.modal-page-info.transparent .group-block .group-holder {
	background: transparent;
	box-shadow: unset;
}

.inner .inner-wrap .main-content .main-content-box .main-content-head #ajax-content .product-holder .image img {
	padding: 8px;
}

.scrollbar-track.scrollbar-track-x.show {
	display: none!important;
}

.setup-order {
	width: 50px!important;
    text-align: center;
    border-radius: 50%!important;
    height: 50px!important;
    border: unset!important;
    box-shadow: unset!important;
}

.preloader.preloader--content {
    background-color: rgba(172, 100, 255, 1)!important;
    background-image: none!important;
}

.search-block {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    padding-right: 100px;
    margin-bottom: 24px;
}

#search_query {
    margin: 0!important;
}

.search_button {
    background: #ac64ff;
    margin: 0;
    height: 39px;
    line-height: 39px;
    display: block;
    padding: 0 30px;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    font-size: 14px;
    font-family: OpenSansSemibold;
    font-stretch: normal;
    font-style: normal;
    letter-spacing: .38px;
    color: #fff;
    text-transform: uppercase;
    border-radius: 0 2px 2px 0;
    cursor: pointer;
    -webkit-transition: all .2s ease-in;
    transition: all .2s ease-in;
}

@media (min-width: 769px) and (max-width: 1199px) {
	.md-hidden {
		display: none;
	}

	.md-visible {
		display: block;
	}

	.control-links-block {
		text-align: left;
		margin: 14px 0;
		display: block;
	}

	.control-links-block a.control-links {
		padding-left: 0!important;
	}

	.control-links {
		clear: left;
	}

	.main.configurator .group-block .group-holder .section-block.selected .section-title .title {
		display: none;
	}

	.selected-product .product-title span.price {
		font-size: 14px;
	}

	.selected-product .product-title, .selected-product .product-title a {
		font-size: 12px;
	}

	.selected-product i {
		margin-left: 0;
	}

	.selected-product .qty-selector .qty-holder {
		width: 20px;
		font-size: 12px;
	}

	.main.configurator .group-block .group-holder .section-block .section-title .qty-selector i {
		font-size: 18px;
	}

	.main.configurator .group-block .group-holder .section-block .section-title .qty-selector {
		margin-right: 4px;
		vertical-align: middle;
	}

	.main.configurator .group-block .group-holder .section-block, .main.configurator .group-block .group-holder .setup-block {
		padding: 14px;
	}

	.selected-product .product-title, .selected-product .product-title a {
		line-height: 36px;
	}

	.section-errors {
		padding: 0 14px 14px 14px;
	}

	#ajax-content .wrapper {
		display: grid;
		grid-template-columns: minmax(150px, 200px) minmax(200px, 1fr);
	}

	.filter-holder .filter-option, .price-input input, .sort-block span, .used-filters .used-filter-option {
		font-size: 12px;
	}

	.filter-holder .filter-option:before {
		padding-right: 4px;
	}

	.product-holder div.image {
		width: 120px;
		height:  120px;
	}

	#ajax-content .wrapper .products-block .product-holder .title {
		font-size: 14px;
		line-height: 20px;
	}

	#ajax-content .wrapper .products-block .product-holder .description .description-initial {
		font-size: 12px;
	}

	#ajax-content .wrapper .products-block .product-holder {
	    grid-template-columns: minmax(120px, 120px) minmax(250px, 1fr) 75px;
	}

	.modal-page-close i::before {
		top: -20px;
		right: 4px;
	}
}

@media (max-width: 768px) {

	.info-block {
		margin-left: 2px;
	}

	.setups-list-item .summary-block .buy-setup {
		margin-top: 24px;
	}

	.info-block .info-link {
		display: block;
		margin-bottom: 8px;
	}

	.info-body .step .info-holder {
	    width: 100%;
	    min-width: 200px;
	    margin: 0 auto;
	    text-align: center;
	}

	.inner .inner-wrap .main-content .main-content-box .main-content-head p {
	    margin-bottom: 24px!important;
	}

	.info-modal-form .form-item.half {
		width: 100%;
		display: block;
	}

	.submit-form {
		width: 100%;
		margin:  0;
	}

	.arcontactus-widget.left .arcontactus-message-button {
		display: none;
	}

	.sm-visible {
		display: block;
	}

	.sm-hidden {
		display: none!important;
	}

	.control-links-block {
		text-align: left;
		margin: 14px 0;
		display: block;
	}

	.control-links-block a.control-links {
		padding-left: 0!important;
		padding-right: 0!important;
		display: block;
		margin: 8px 0;
		text-align: right;
	}

	.main.configurator .group-block .group-holder .section-block .section-title {
		height: auto;
		overflow: auto;
	}

	.main.configurator .group-block .group-holder .section-block .section-title img:not(.product-image) {
		max-height: 32px;
		margin-right: 8px;
	}

	.control-links {
		clear: left;
	}

	.selected-product .product-title span.price {
		font-size: 14px;
		display: inline-block;
		padding: 0;
	}

	.controls-holder .setup-total {
		display: block;
		width: 100%;
	}

	.setup-item img.setup-image {
		max-width: 38px;
	}

	.setup-holder .setup-item i {
		top: 28px;
	}

	.setup-item .qty-holder {
		top: 16px;
	}

	.selected-product .product-title, .selected-product .product-title a {
		font-size: 12px;
		vertical-align: text-top;
	}

	.selected-product .product-title, .selected-product {
		float: unset;
		width: 100%;
	}

	.selected-product i {
		margin-left: 0;
	}

	.selected-product .qty-selector .qty-holder {
		width: 20px;
		font-size: 12px;
	}

	.main.configurator .group-block .group-holder .section-block .section-title .qty-selector i {
		font-size: 18px;
	}

	.main.configurator .group-block .group-holder .section-block .section-title .qty-selector {
		margin-right: 4px;
		vertical-align: middle;
	}

	.main.configurator .group-block .group-holder .section-block, .main.configurator .group-block .group-holder .setup-block {
		padding: 14px;
	}

	.main.configurator .group-block .group-holder .section-block .section-title .title {
		font-size: 10px;
		line-height: 26px;
	}

	.selected-product .product-title, .selected-product, .main.configurator .group-block .group-holder .section-block.selected .section-title i.section-control {
		margin-top: 14px;
	}

	.selected-product .product-title, .selected-product .product-title a {
		line-height: 20px;
		max-width: calc(100% - 26px);
	}

	.main.configurator .group-block .group-holder .section-block .section-title i.state {
		margin-right: 10px;
	}

	.main.configurator .group-block .group-holder .section-block .section-title i {
		font-size: 20px;
	}

	.section-errors {
		padding: 0 14px 14px 14px;
	}

	#ajax-content .wrapper {
		display: block;
	}

	#ajax-content .wrapper .filters-block {
		display: none;
		position: absolute;
		z-index: 3;
		background-color: #fff;
		opacity: 0;
		transition: .3s ease-in-out;
	}

	#ajax-content .wrapper .filters-block.active {
		display: block;
		opacity: 1;
		transition: .3s ease-in-out;
	}

	.filter-holder .filter-option, .price-input input, .sort-block span, .used-filters .used-filter-option {
		font-size: 12px;
	}

	.filter-holder .filter-option:before {
		padding-right: 4px;
	}

	.product-holder div.image {
		width: 300px;
		height:  300px;
	}

	#ajax-content .wrapper .products-block .product-holder .title {
		font-size: 14px;
		line-height: 20px;
		margin-bottom: 14px;
	}

	#ajax-content .wrapper .products-block .product-holder .description .description-initial {
		font-size: 12px;
	}

	#ajax-content .wrapper .products-block .product-holder {
	    grid-template-columns: minmax(120px, 120px) minmax(250px, 1fr) 75px;
	}

	.modal-page-close i::before {
		top: -20px;
		right: 4px;
	}

	.setups-list-container {
	    display: block;
	}

	.setups-list-item-wrapper {
		padding: 0;
	}

	#ajax-content .wrapper .products-block .product-holder {
		display: grid;
		grid-template-columns: minmax(max-content, 120px) minmax(200px, 1fr) 100px;
		grid-template-areas:
	       "product-title product-title  product-title"
	       "product-image product-image  product-image"
	       "action-column action-column  action-column"
	       "short-description short-description short-description";
	    height: auto;
	    margin-bottom: 40px;
	}

	.product-holder div.image {
		padding: 0;
	}

	#ajax-content .wrapper .products-block .product-holder .description {
		margin-top: 14px;
	}

	#ajax-content .wrapper .products-block .product-holder .action-column {
		text-align: center;
	}

	.main.configurator .group-block .group-holder {
		border-radius: 10px;
	}

	.sort-block span {
		display: block;
		padding: 0;
		margin-top: 8px;
	}

	.filters-toggle {
		background: #444;
		color: #fff;
		font-weight: bold;
		text-transform: uppercase;
		padding: 8px 14px;
		position: fixed;
		left: 10px;
		bottom: 0;
		z-index: 1;

	}

	.product-holder div.image img {
		max-width: 100%;
		max-height: 100%;
	}

	.virtual-product-wrapper {
		display: block;
	}

	img.virtual-product-image {
		max-width: 80%;
		margin: 0 auto;
	}

	.virtual-product-wrapper > div {
		padding: 15px;
	}

	.virtual-product-image, .virtual-product-content, .virtual-action-column {
	    display: block!important;
	}

	.virtual-action-column {
		text-align: center;
		/*margin-top: 14px;*/
	}

	.info-body .step img {
		max-width: 100%;
	}

	.info-body {
		padding: 0;
	}

	.info-body h5 {
		padding: 15px;
	}

	.inner .inner-wrap .main-content .main-content-box .main-content-head p {
		font-size: 14px!important;
	}

	.modal-page.configurator .main-content-head {
		position: absolute;
		top: 0;
		width: 100%;
	}

	.inner .inner-wrap .main-content .main-content-box .main-content-head #ajax-content .product-holder .image img {
		padding: 24px!important;
	}

	#ajax-content .wrapper .products-block .product-holder .action-column {
		font-size: 48px;
	}

	.search-block {
		padding-right: 0;
		margin-top: 24px;
	}

	.product-holder.active div.image {
		display: none!important;
	}

	#ajax-content .wrapper .products-block .product-holder .image {
	    margin: 0 auto;
	}

}


.product-holder:not(.active) .title .full {
	display: none;
}

.product-holder.active .title .short {
	display: none;
}
