/**
* 2007-2019 PrestaShop
*
* NOTICE OF LICENSE
*
* This source file is subject to the Academic Free License (AFL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/afl-3.0.php
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to license@prestashop.com so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to http://www.prestashop.com for more information.
*
*  @author DMConcept <support@dmconcept.fr>
*  @copyright 2015 DMConcept
*  @license   http://opensource.org/licenses/afl-3.0.php  Academic Free License (AFL 3.0)
*  International Registered Trademark & Property of PrestaShop SA
*
* Don't forget to prefix your containers with your own identifier
* to avoid any conflicts with others containers.
*/
@import url('https://fonts.googleapis.com/css2?family=Nunito:wght@300;400;500;600;700&family=Ubuntu:wght@300;400;500;700&display=swap');
/********************
      PRODUCT
********************/
#image-block, #image-block-viewer2d{
	margin-bottom: 10px;
}

.pb-left-column #thumbs_list{
	width: 200px;
}

.pb-left-column #image-block #view_full_size .span_link, .pb-left-column #image-block-viewer2d #view_full_size-viewer2d .span_link{
	z-index: 5000;
}

.pb-left-column #image-block img, .pb-left-column #image-block-viewer2d img{
	background: none !important;
}

/********************
    CONFIGURATOR
********************/
#configurator_preview{
    z-index : 6000;
}
#configurator_preview .page-subheading{
    color: #0084bf;
    font-weight: 700;
    margin-bottom: 5px;
}
#configurator_preview.loading:not(.scroll-to-fixed-fixed) {
	position: relative !important;
}
@media(max-width: 992px) {
	#configurator_preview_clear::before, #configurator_preview_clear::after {
		content: " ";
		display: table;
	}
	#configurator_preview_clear::after {
		clear: both;
	}
	#configurator_preview_clear::before, #configurator_preview_clear::after {
		content: " ";
		display: table;
	}
}

#configurator_preview{
    width: 100%;
}

#configurator_block .error-step p {
	font-weight: bold;
	color: #DF1515;
}

#configurator_block .info_text p{
    color:#232323;
    margin-top: -10px;
}
#configurator_block .no-info-text-center .info_text {
    text-align: left;
}
#configurator_block .info-step p {
	font-weight: bold;
	color: #2fb5d2;
}

#configurator_block .step_list label.title {
    margin-bottom: 15px;
    display: block;
    /* //float: left; */
    padding-top: 5px;
}

.step_title {
    font-size: 1rem;
    font-weight: 600;
    line-height: 1rem;
    margin-bottom: 0;
    padding: 7px 0;
    text-transform: uppercase;
}

#configurator_block .step_list label .step_title .material-icons {
    margin-left:-30px;
}

#configurator_block input[type=number]::-webkit-outer-spin-button
#configurator_block input[type=number]::-webkit-outer-spin-button, 
#configurator_block input[type=number]::-webkit-inner-spin-button {
    -webkit-appearance: inner-spin-button !important;
}


.dmicons:after{
    content: "";
    background: url(../img/icon/chevron_right.png) no-repeat 0px 0px / 10px 10px;
    display: block;
    position: absolute;
    z-index: 1;
    width: 10px;
    height: 10px;
    left: -12px;
    top: 10px;
}

#configurator_block sup{
    font-weight: bold;
    color: #DF1515;
    font-size: 10px;
    top: 0px;
    display: contents;
}

#configurator_block .display-step-amount {
    background: #174679 none repeat scroll 0 0;
    border: 1px solid #c8c8c8;
    border-radius: 3px;
    color: #fff;
    display: inline-block;
    font-size: 12px;
    
    font-weight: 600;
    top: 12px;
    right: 70px;
    padding: 3px;
    position: absolute;
    min-width: 100px;
    text-align: center;
}

#configurator_block .page-heading{
	margin-top: 0;
}

#configurator_block .page-heading .required{
    text-transform: none;
    font-size: 14px;
    font-weight: normal;
}

#configurator_block .step_list div > span{
    top: 0;
}

#configurator_block .info,
#configurator_block .info-fb{
    cursor: pointer;
    padding: 7px 4px;
    font-size: 24px;
    line-height: 30px;
    position: absolute;
    top: 5px;
    right: 40px;
    font-weight: 400;
}
#configurator_block .option .info-fb{
    position: initial;
    line-height: 20px;
}

#configurator_block .option_block{
    background: transparent;
    cursor: pointer;
    float: left;
    font-size: 14px;
    margin-bottom: 35px;
    margin-right: 20px;
    position: relative;
    text-align: center;
}


#configurator_block .option_block .configurator-zoom{
	position: absolute;
	background: #000;
	top: 0;
	left: 0;
	color: #fff;
	font-size: 16px;
	padding: 4px 5px;
	cursor: pointer;
	display: none;
}

#configurator_block .option_block:hover .configurator-zoom{
	display: block;
}

#configurator_block .option_block.color:hover .configurator-zoom{
	display: none;
}

#configurator_block .quantity_wanted input{
    margin: -1px 0 auto;
    /*max-width: 65px;*/
    text-align: center;
}
#configurator_block .custom .quantity_wanted input{
    max-width: 175px;
}

#configurator_block .quantity_wanted input.qty-inline{
	margin: 0;
	display: inline-block;
}

#configurator_block .option label{
	cursor: pointer;
	display: contents;
}

#configurator_block .option .quantity_wanted{
    display: inline-block;
    position: relative;
    top: 10px;
	margin: 0;
}

#configurator_block .option_block .quantity_wanted{
	margin-bottom: 0;
}

#configurator_block .label.totalprice {
	font-size: 92%;
}

#configurator_block .option_block .label.totalprice {
	margin-top: 15px;
}

#configurator_block .option_block.custom.selected .label.totalprice {
	margin-top: 11px;
}

#configurator_block .option_block.colortexture .label.totalprice {
	max-width: 113px;
}

#configurator_block .option_block .option_block_content{
	position: relative;
	margin: 0 auto;
}

#configurator_block .option_block .option_block_content .label-container {
    height: 40px;
    max-height: 40px;
    min-width: fit-content;
    margin-left: auto;
}

#configurator_block .option_block .option_block_content .label{
    /*display: none;*/
    margin-left: 0;
    margin-top: 5px;
    /*position: absolute;
    right: 25%;
    top: inherit;
    bottom: -35px;*/
}
#configurator_block .option_block .option_block_content .label.label-name {
    bottom: -28px;
    text-align: center;
    left: 0;
    right: 0;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    color: #828282;
}
#configurator_block .option_block.selected .option_block_content .label.label-name {
    color: #373737;
}

#configurator_block .option_block .option_block_content .label:empty {
    display: none;
}

#configurator_block .option_group .label{
	padding: 3px;
}
#configurator_block .color-name{
    font-size: 10px;
    max-width: 40px;
    color: #464D3F;
}

#configurator_block .option_group.disabled::after {
    content: '';
    background: #000;
    opacity: 0.1;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 99999;
    cursor: no-drop;
}

#configurator_block .option_block.colortexture .option_block_content .label{
    bottom: 1px;
    font-size: 10px;
    left: 1px;
    margin: 0;
    position: absolute;
    right: 1px;
    top: auto;
    z-index: 1;
    background: white;
    padding-right:26px;
    font-weight: bold;
    color: #464D3F;
}

#configurator_block .option_block.colortexture.selected .option_block_content .label{
    bottom: 0;
    left: 0;
    right: 0;
}

#configurator_block .step_group .table .row-title{
    display: block;
    text-align: right;
}

#configurator_block .step_group .table .col-title{
    display: block;
    text-align: left;
}

#configurator_block .step_group .table thead > tr > td,
#configurator_block .step_group .table tbody > tr > td.table-cell{
    text-align: center;
    /*remove padding from bootstrap in order to have centered-text*/
    padding-left: 8px;
    vertical-align: middle;
    line-height: 9px;
}

#configurator_block .step_group td.selected{
    background-color: #ddf9e1;
    color: #35b33f;
}

#configurator_block .step_group td.table-cell{
    cursor: pointer;    
}
#configurator_block .option_block.selected .option_block_content{
    border: 1px solid #D1D1D1;
}


#configurator_block .option_block.selected .option_block_content::after {
    background:  url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAADHSURBVDhP3ZLRDYJAEAWvBEqgBO2AEizBEiiBDizBErQDStAOLIECSMB5sBdWBHP4p5O8xNt7OyQXw//Q931GKjt+h0kuRNQ23gaLXjLQdd3VrtNg500CDTlaJQSsuf1chHJO7tp0SHKwylAqbTiZHcx35EE8ixLPdAmcJdGSp2nbdm+VEYbn8e6Fwu4KMpfcyPIzcDF/QFGRdEmEQj1U15Eks/pnKK7JNE+TCJWJvuzRG6ZLIloiUXYi2yURLfMHLe34k4TwBD47iTTzO+NyAAAAAElFTkSuQmCC');
    border-radius: 30px;
    bottom: -7px;
    color: #174679;
    content: " ";
    display: block;
    font-family: "FontAwesome";
    font-size: 25px;
    position: absolute;
    top: -8px;
    right: -10px;
    z-index: 1;
    height: 17px;
    width: 17px;
    background-repeat: no-repeat;
    border: 2px solid;
    background-color: #174679;
    background-position: center center;
    background-size: 11px;
}

.form-group.form-ok.quantity_wanted input.qty{
    background: none;
    background-color: #ddf9e1;
    /*padding: 3px 5px;*/
}
input[type='radio'], input[type='checkbox'] {
    filter: hue-rotate(330deg) !important;
}
.form-group.form-error.quantity_wanted  input.qty{
    background: none;
    background-color: #fff1f2;
    padding: 3px 5px;
}


#configurator_block .option_block.colortexture .option_block_content{
    height: fit-content;
    width: fit-content;
    border-radius: 2px;
}

#configurator_block .option_block.colortexture img{
	width: 100%;
	height: 100%;
}

#configurator_block .option_block.custom{
    max-height: 190px;
    width: 125px;
}

#configurator_block .option_block .option_img > img{
    width: auto;
    margin-bottom: 5px;
}
#configurator_block .grid-radio-button .step_options{
    display: grid;
    grid-template-columns: repeat(6, 6fr);
    margin-bottom: 20px;
    text-align: left;
}
#configurator_block .option_block.colortexture .option_img{
	width: 40px;
	height: 40px;
    border-radius: 2px;
    border: 1px solid #00000024;
}
#configurator_block .option_block.texture .option_img{
	width: 100px;
	height: 100px;
    border-radius: 2px;
    border: 1px solid #00000024;
}

#configurator_block .option_block.selected .option_img{
    border: none;
}

#configurator_block .option_block.custom .option_img{
	height: 120px;
	overflow: hidden;
}

#configurator_block .option_block.custom .option_block_content{
    border: 1px solid #D1D1D1;
    padding: 10px 15px;
    border-radius: 2px;
    /*margin-bottom: 60px;*/
    position: relative;
    background-color: #fff;
}

#configurator_block .option_block.selected .option_block_content{
    border-radius: 2px;
    border: 0;
}

#configurator_block .step-color-texture .option_block/*, #configurator_block .step-color-texture .option_block .option_img*/ {
    min-height: auto;
    width: auto;
}

#configurator_block .option_block img{
    margin: 0 auto;
	max-height: 100%;
}

#configurator_block div.checker{
    display: inline-block;
}

#configurator_block .step_options hr{
    border-style: dashed none none;
}

#configurator_block .step_options.collapsing,
#configurator_block .step_options.in{
    padding-left: 25px;
}

#configurator_block .step_options.in{
    border-left: 2px solid #174679;
}

/********************
    PREVIEW
********************/
#configurator_block > .col-md-3{
    position: static;
}
#configurator_preview .dl-horizontal dt{
    text-align: left;
    width: 125px;
}
#configurator_preview .dl-horizontal dd{
    margin-left: 130px;
}
#configurator_preview .dl-final-price dt{
    margin-top: 4px;
    
}
#configurator_preview #final_price,
#configurator_preview #old_price{
    font-weight: bold;
	display: inline-block;
}
#configurator_preview #final_price{
    font-size: 30px;
    color: #0098ab;
    margin-right: 23px;
}
#configurator_preview .tax-label{
    position: absolute;
    top: -7px;
    right: 0;
}
#configurator_preview #old_price{
	text-decoration: line-through;
}
#configurator_preview .list-group {
    max-height: 300px;
    overflow: auto;
}
@media(max-width: 992px) {
    #configurator_preview #configurator-progress { display:none; }
    #configurator_preview .list-group { max-height: 100px; }
    #configurator_preview .list-group .list-group-item { padding:0px 10px; }
    #configurator_preview .list-group .list-group-item strong { display:inline-block; }
}

#configurator_preview .advantage{
	color: #b53930;
}
#configurator_preview dt.advantage{
	white-space: normal;
	margin-top: -5px;
}

#configurator_preview { padding:20px 20px 0 20px; }
#configurator_preview .dl-final-price dt { display:inline-block; width:fit-content;font-weight: 700; }
#configurator_preview .dl-final-price dd { display:inline-block; width:fit-content; margin:0; }

/********************
    PRICES BLOCK
********************/
.button.configure_link {
	font: 700 17px/21px Arial, Helvetica, sans-serif;
	color: #fff;
	text-shadow: 1px 1px rgba(0, 0, 0, 0.2);
	padding: 0;
	border: 1px solid;
	border-color: #0079b6 #006fa8 #012740 #006fa8; 
	margin: 0 7px 10px;}
.button.configure_link span {
    border: 1px solid;
    border-color: #06b2e6;
    padding: 10px 14px;
    display: block;
    background: #009ad0;
    background: -moz-linear-gradient(top, #009ad0 0%, #007ab7 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #009ad0), color-stop(100%, #007ab7));
    background: -webkit-linear-gradient(top, #009ad0 0%, #007ab7 100%);
    background: -o-linear-gradient(top, #009ad0 0%, #007ab7 100%);
    background: -ms-linear-gradient(top, #009ad0 0%, #007ab7 100%);
    background: linear-gradient(to bottom, #009ad0 0%, #007ab7 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#009ad0', endColorstr='#007ab7',GradientType=0); }
.button.configure_link:hover {
    border-color: #01314e #004b74 #0079b6 #004b74; }
.button.configure_link:hover span {
	filter: none;
	background: #0084bf; }

#buy_block .configure_link{
    width: 80%;
    text-align: center;
    display: block;
    margin: 15px auto;
}

.our_price_display .from_price{
    display: block;
}

#quantity-configurator-label { display:inline-block; text-align:left; margin-top: 10px; }
.configurator-qty { display:inline-block; width:calc(100% - 100px); float:right; }
.configurator-qty .form-group { margin-bottom:5px; }
.configurator-add button { width:fit-content; margin-bottom: 15px; }
.configurator-add .tab-action-next-preview{
    display: none !important;
}


/********************
    CART SUMMARY
********************/
#order .cart_description ul.configurator li strong{
    color: #525252;
}

/********************
    LOADER
********************/
.loading{
	position: relative;
}

.loading:before{
	content: "";
	display: block;
	background-color: rgb(255, 255, 255);
	background-color: rgba(255, 255, 255, 0.5);
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 9000;
	background-image: url("../img/loader.gif");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}

/********************
    PROGRESS BAR
********************/
#configurator-progress{
    height: 80px;
    margin: 25px auto;
    position: relative;
    width: 80px;
}
#configurator-progress:after{
	content: "";
	background: url('../img/progress-bg.png') no-repeat 0px 0px / 100px 100px;
	display: block;
	position: absolute;
	z-index: 1;
	width: 100px;
	height: 100px;
	top: -10px;
	left: -10px;
}
#configurator-progress strong,
#configurator-progress canvas{
	position: relative;
	z-index: 2;
	color: #8b7f76;
	text-shadow: 0px 1px 30px rgba(250, 245, 239, 0.5);
}
#configurator-progress strong{
    font-size: 25px;
    left: 0;
    position: absolute;
    text-align: center;
    top: 29px;
    width: 100%;
}

/********************
    TABS
********************/
#configurator-tabs {
    margin-bottom: 24px;
    margin-top: 24px;
    font-size: 0;
}

#configurator-tabs li:hover,
#configurator-tabs li:active,
#configurator-tabs li:focus {
    text-decoration: none;
}

#configurator-tabs li[data-selected="true"] ~ li{
    background: transparent;
    color: #828282;
    border-bottom: 8px solid #0098ab;
    
}

#configurator-tabs li[data-selected=true]::after, #configurator-tabs li:last-of-type::after {
    content: "" !important;
}
#configurator-tabs li[disabled] {
    background-image: url(../img/background-arrow\ -fonce.svg);
    background-size: cover;
    background-position: right;
    color:white;
}
#configurator-tabs li[disabled] {
    opacity: 0.5;
    cursor: default;
}
#configurator_block.tabs {
    margin:0;
}
.label{
    color: #838383;
}
.accordion-opened { border-color: #3276b1; }
.configurator-tab-page { cursor: pointer; font-weight: 600; font-size: 15px; }
.accordion-opened .configurator-tab-page { background: #3276b1; color: #fff; }
.configurator-tab-page i { transform: rotate(90deg); }
.accordion-opened .configurator-tab-page i, .title[aria-expanded="true"] .navigdown{ 
    transform: rotate(-90deg) translateY(-6px);
    transition: 1s;
    color: #174679;
}
.accordion-opened .configurator-tab-page i, .title[aria-expanded="true"] .step_title, .accordion-opened .configurator-tab-page i, .title[aria-expanded="true"] .label-info{ 
    color: #174679;
    font-weight: 700;
}
.configurator-accordions-actions { text-align: center; margin: 1rem; }

.accordioncontent{
    width: 100%;
} 
.navigdown{
    transform: rotate(90deg);
    transition: 1s;
    margin: 10px 4px 2px 4px;
    line-height: 30px;
}

#configurator_block label span.label-default {
    /*border:1px solid rgba(0,0,0,.15);*/
    
    font-style: normal;
    border-radius: 3px;
    font-size: 12px;
    font-weight: 600;
    background: #174679;
    color:white;
    display:inline-block;
    margin-left:5px;
    padding: 0 3px !important;
}

#configurator_block h1 span {
    text-transform: none;
    font-weight: normal;
    font-size: 0.9375rem;
    display: inline-block;
    float: right;
    height: 1.5rem;
    line-height: 1.6rem;
}

#configurator_block .form-group.form-error .form-control, .form-group.form-ok .form-control {
    padding-right: 30px;
}

#configurator_block .form-group.form-ok input, .form-group.form-ok textarea {
    border: 1px solid #1D941B;
    color: #1D941B;
    background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAAOCAYAAAAi2ky3AAAAiElEQVQokaXPwQ3DMAgF0D9LVugKhItlxvBOHQBbynBeITm0qSKRpOAg/dvnCYDBYZXCml6j+wCAucnCTVauuZMmeobsqbmHLzPIHpXyK7FKIU1TFJmbLLb0+dlgMeTw8xFzIQDANXdT/GJuBABIE51iFzlFotgt4sVcyD8shFxhQ4jF8tu7swGui+otf3QUOQAAAABJRU5ErkJggg==) 98% no-repeat #FFFFFF;
}
   

#configurator_block .quantity_wanted.form-group.form-ok input:focus,
#configurator_block .quantity_wanted.form-group.form-error input:focus{
    outline: 0;
}

#configurator_block .form-group.form-error input, .form-group.form-error textarea {
    border: 1px solid #DF1515;
    color: #DF1515;
    background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAAj0lEQVQokZWRsQ2AMAwEvVLsFuEUzMIKzMIKrMBO6JkAGiJMYiOI5CaXK3Imug5SP4E7oeCAdWw4RJdd8gHWDSkPjeTxclmmll3OnRBYNwusXEuGj4SUB0+OBqLL/YeP8kP6KruSSb6GolPbrRcF+yW5Mljn4NEarirc4xUiCobUTw2s673yAsE6u+EKN9IJydM/ZmaVOVAAAAAASUVORK5CYII=) 98% no-repeat #FFFFFF;
}

#configurator_block .input-group-addon {
    padding: 6px 12px;
    font-size: 13px;
    font-weight: normal;
    line-height: 1;
    text-align: center;
    background-color: #fff;
    border: 1px solid #6A6A6A;
    border-radius: 2px;
}

#configurator_block .option_input.form-group {
    height: auto;
}

#configurator_block .step_group.form-group {
    height: auto;
    padding-bottom: 30px;
}

.title .material-icons {
	float: right;
}

#configurator_block input {
    background: white;
    border: 1px solid #6A6A6A;
    border-radius: 2px;
    margin-left: -1px;
}
#configurator_block input[type="checkbox"], #configurator_block input[type="radio"] {
    top: 1px;
}
#configurator_block .color, .custom-checkbox input[type="checkbox"] + span.color {
    /* width:100px; */
    height:auto;
    margin-right: 2px;

}

#configurator_block .hidden {
    display: none;
}


#configurator_block .option_block.option_group.colortexture.color.selected .option_block_content{
    border: none;
}

#configurator_block .color:hover {
	/* border: 0px; */
	outline: 0;
	/* margin-top: 6px; */
	border: 0px solid;
	/* margin-top: 5px; */
}

#configurator_block .option_block.color.selected .option_img {
    width: 40px;
    border: 1px solid #00000024;
    box-shadow: inset 0px 4px 4px rgb(0 0 0 / 5%);
}
#configurator_block .option_block.texture.selected .option_img {
    outline: 1px solid #174679;
}

#configurator_block .color,#configurator_block .custom-checkbox input[type="checkbox"] + span.color {
    border:inherit;
    margin-right: 24px;
    border-radius: 2px;
}



#configurator_block .step_group {
    border-bottom:1px solid #d1d1d1;
    padding-left:10px;
    padding-bottom:10px;
    position: relative;
}

#configurator_block .step_group.info-on-this-step {
    border-color: #2fb5d2;
}

#configurator_block .step_group.error-on-this-step {
    border-color: #DF1515;
}



#configurator_block .step_group.info-on-this-step label.title .step_title .material-icons,
#configurator_block .step_group.error-on-this-step label.title .step_title .material-icons {
    color: white;
}

#configurator_block .step_group {
    margin-bottom: 15px;
}

#add_configurator_to_cart { padding: .5rem .7rem; }
#add_configurator_to_cart i { margin-right: 0; }
#add_configurator_to_cart span { font-size: .9rem; }
#tab-action-next-preview { margin-top: 1rem; }


/* CONFIGURATOR STEP ERROR */
.configurator_step_error { background: url(../img/icon/form-error.png) no-repeat; width: 14px; display: inline-block; height: 14px; margin-right: 5px; }


/* UPLOAD - WEBCAM */
.step_group .uploader-webcam-block { position:relative; }
.step_group .uploader-webcam-block .uplaoder-webcam-actions { position:absolute; width:100%; text-align:center; bottom:25px; z-index:10; }
.step_group .uploader-webcam-block .uplaoder-webcam-actions .uploader-webcam-picture-btn { font-size: 40px; border-radius: 50%; padding: 10px 30px; }

.step_group .uploader-webcam-block.preview-on .uplaoder-webcam-actions .uploader-webcam-picture-btn { display:none; }
.step_group .uploader-webcam-block .webcam-preview { position: absolute; left: 0; width: 100%; }
.step_group .uploader-webcam-block.preview-on .uplaoder-webcam-actions .btn { padding: 5px 20px; font-size: 30px; }

.step_group .uploader-webcam-block.preview-off .uplaoder-webcam-actions .btn { display:none; }
.step_group .uploader-webcam-block.preview-off .uplaoder-webcam-actions .uploader-webcam-picture-btn { display:inline-block; }
.step_group .uploader-thumb { max-height: 50px; padding: 0 10px 0; }


/* UPLOAD - PROGRESS */
.step_group .configurator-progress { height: .5rem; background: #f6f6f6; margin-top: .5rem; }
.step_group .configurator-progress .progress-bar { height: .5rem; background: #0087ff; }
.step_group .configurator-progress.configurator-upload-finished .progress-bar { background: #b1df9e; }
.step_group .alert-success .configurator-progress.configurator-upload-finished { display: none; }


/* STEP PRODUCTS */
.option_block .option_block_content .product-name { height: 80px; overflow: hidden; display: block; font-size: 13px; }


/* VIEWER 2D */
.dmviewer2d-dropzone { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 99999 !important; }
.dmviewer2d-dropzone-item { border-radius: 50%; display: block; position: absolute; border: rgba(0,100,200,0.5) dotted 1px; background: rgba(0,100,200,0.05); }
.dmviewer2d-dropzone-item img { vertical-align: top; }
.dmviewer2d-dropzone-item-hover, .dmviewer2d-dropzone-item-selected { display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.dmviewer2d-dropzone-hover { background: rgba(255,0,0,0.2) }
.dmviewer2d-step-dropzone .option_block .option_img { overflow: initial !important; }
.dmviewer2d-step-dropzone .option_block .option_img .ui-draggable.ui-draggable-dragging { z-index: 10000; width: 18px !important; }
.dmviewer2d-step-dropzone .quantity_wanted { display: none !important; }

.configurator-custom-left-column .configurator-product-cover .images-container .product-cover { display: block; }
.configurator-custom-left-column .viewer2d-cover-container { display: none; }
.configurator-custom-left-column #viewer2d-back-to-cover { display: block; }
.configurator-custom-left-column #viewer2d-back-to-cover button { margin: .5rem auto; display: inherit; }
.configurator-custom-left-column[data-configurator-view="2d"] .configurator-product-cover .images-container .product-cover { display: none; }
.configurator-custom-left-column[data-configurator-view="2d"] .viewer2d-cover-container { display: block; }
.configurator-custom-left-column[data-configurator-view="2d"] #viewer2d-back-to-cover { display: none; }

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

/* QUANTITY */
.configurator-quantity-minus, .configurator-quantity-plus {
    padding: .625rem .7rem !important;
}
.quantity_wanted input::-webkit-outer-spin-button,
.quantity_wanted input::-webkit-inner-spin-button {
    /* display: none; <- Crashes Chrome on hover */
    -webkit-appearance: none;
    margin: 0; /* <-- Apparently some margin are still there even though it's hidden */
}
.quantity_wanted input[type=number] {
    -moz-appearance:textfield; /* Firefox */
}
.btn-configurator {
    color: #000 !important;
    background: #ddd !important;
}

.configurator-ral-list li{
    float: left;
    width: 100px;
    padding: 10px;
}

.configurator-ral-attribute{
    width: 80px;
    height: 50px;
    cursor: pointer;
}

#configurator_block input[readonly=readonly] {
    background-color: #f6f6f6;
    cursor: pointer;
}

#configurator_block .btn-configurator-ral {
    cursor: pointer;
    background: #2fb5d2;
    color: white;
    font-weight: bold;
}

/* BADGE REDUCTION */
.badge-reduction {
    background-color: #f39d72;
    font-weight: 700;
    padding: .3125rem .4375rem;
    text-transform: uppercase;
    color: #fff;
    font-size: 1rem;
}

.uppercaseName input[type=text] {
    text-transform: uppercase;
}

#configurator_block .display_none .step_options {
    display:none;
}

#configurator_preview_container{
    position: relative;
    bottom: 0px;
    width: 100%;
    background: #FFF;
    /*z-index: 2000;*/
    border-left: 0px;
}
#configurator_preview .summary-btn{
    font-size: 14px;
    font-weight: 700;
    text-decoration: underline;
}
#configurator_preview ul li span{
    font-size: 16px;
}

.step_display_none{
	display:none !important;
}

.Step_title .step_options{
	display: none;
}

.option_display_none .step_options {
display: none !important;
}

.h2-configurator{
    
    font-weight: 700;
    font-size: 24px;
}

.accordion-opened .configurator-tab-page {
	background: #174679;
	color: #fff;
}
.product-information {
    font-size: 22px;
    color: #363A42;
    background-color: #fff;
    height: 100%;
}
.tabs, .card-header{
    background: #f8f8f8;
    font-size: 24px;
    font-weight: 500;
    color: #828282;
}
.tabs{
    padding: 0;
}
.card-header > .material-icons{
    float: right;
}

input, small {
    background: transparent;
    color: #373737;
    
    font-size: 16px;
    font-weight: 700;
    text-transform: inherit;
    border-radius: 5px;
    display: inline-flex;
    align-items: center;
}

.card-body{
    background-color: #f8f8f8;
}
.step_title {
	font-size: 18px;
	font-weight: 700;
    line-height: 30px;
	padding: 7px 0;
    color: #828282;
	text-transform: none;
    float: left;
    
    width: auto;
    text-align: left;
}
.step_title i{
    margin-top: -3px;
}
.dmicons{
    display: none;
}

.navigdown{
    color: #838383;
}
.configurator-tabs-actions.text-center, .configurator-steps-actions.text-center {
    text-align: center;
}
.configurator-tabs-actions.text-center, .configurator-tabs-actions.text-center .btn, .configurator-tabs-actions.text-center .btn span {
    height: 0px;
    font-size: 0px;
    line-height: 0px;
    padding: 0 !important;
    margin: 0;
}
.configurator-steps-actions.text-center {
    margin-top: 10px;
    /*visibility: hidden;*/
    padding: 0px;
    margin-bottom: 20px;
}
p{
    color: #363A42;
    
    font-weight: 400;
    font-size: 16px;
}
.configurator-tab-page{
    position: relative;
    font-weight: 400;
    font-size: 20px;
    font-size: 16px;
    
    border-bottom: 8px solid #174679;
}

#configurator-tabs ul{
    margin-bottom: 0;
    height: 100%;
    display: flex;
}
.configurator-tabs-actions #tab-action-next, .configurator-steps-actions #tab-action-next{
    border: 1px solid #0098AB;
    background-color: #0098AB;
    color: white;
    text-transform: capitalize;
    font-size: 14px;
    font-weight: 500;
    padding: 8px 24px !important;
    transition: 0.3s;
}
.configurator-tabs-actions #tab-action-next, .configurator-steps-actions #tab-action-next:hover{
    border: 1px solid #0098AB !important;
    background-color: #fff !important;
    color: #0098AB !important;
}
.configurator-steps-actions #tab-action-previous{
    background-color: white;
    color: #000;
    border: 1px solid #000;
    text-transform: capitalize;
    font-size: 14px;
    font-weight: 500;
    transition: 0.3s;
    
}
.configurator-steps-actions #tab-action-previous:hover{
    background-color: #000;
    color: white;
    border: 1px solid #000;
    
}
#nometape{

    background-color: #F1F1F1;
    color: #363A42;
    font-size: 24px !important;
    
    text-transform: none !important;
    text-align: center;
    line-height: 36px;
}
/************************
    MODIFICATION PRIX
************************/
#tab-action-next-preview {
    margin-top: 0;
}
.configurator-add{
    text-align: right;
}
.configurator-add button, .add-to-quote, .btn-block{
    width: 100%;
    display: inline-block;
}
#add-to-quote-tpl{
    width: fit-content;
    display: inline-block;
    margin-right: 16px;
}
.dl-final-price{
    
    font-size: 20px;
    color: #000;
    width: 100%;
    text-align: right;
    position: relative;
}
dt{
    font-weight: 400;
}
.pricefinal{
    width: fit-content;
    float: right;
    margin-left: 20px;
    margin-top: -5px;
}

.description_config {
	position: fixed;
	bottom: 10px;
	left: 10vw;
    z-index: 100;
    width: calc(80vw - 59px);
}
.configurator-tabs-actions .btn-default, .configurator-steps-actions .btn-default{
    color: #373737 !important;
    text-transform: capitalize;
}
.configurator-tabs-actions {
    visibility: none;
}
#tab-action-next-preview{
    border: 1px solid #000;
    display: none !important;
}
.add-to-quote span{
    font-size: 16px !important;
}
.btn{
    padding: .5rem 1rem !important;
    border-radius: 0 !important;
}
.btn .material-icons{
    vertical-align: middle;
    margin: 0px;
    margin-right: 5px;
}


/* Mise en page Header */
.headerconfig{
    width: 100%;
    height: 60px;
    background-color: #363A42;
    align-items: center;
    justify-content: center;
    display: flex;
}
.header_icon{
    position: absolute;
    font-family: 'Ubuntu', sans-serif;
    font-size: 16px;
    line-height: 30px;
    font-weight: 400;
}
.header_icon i, .header_icon{
    color: #fff !important;
}
.header_title{
    margin-bottom: 0;
    font-family: 'Ubuntu', sans-serif;
    font-size: 24px;
    line-height: 30px;
    font-weight: 400;
    color: #fff;
    text-transform: uppercase;
}
.shoppingcart{
    right: 32px;
}
.person{
    right: 81px;
}
.quit{
    right: 134px;
    border: 1px solid #fff;
    border-radius: 2px;
    padding: 0px 5px;
    color: #fff;
}


/* Modification partie gauche */
.product-flags{
    display: none;
}
.tabs .nav-tabs .nav-link.active {
    color: #363A42;
    border: none;
      border-bottom-color: currentcolor;
      border-bottom-style: none;
      border-bottom-width: medium;
    border-bottom: #174679 3px solid;
}
.btn-outline-primary:hover, .btn-outline-primary:active, .btn-outline-primary:focus, .btn-outline-primary:active:focus {
    color: #373737;
    background-color: #F1F1F1;
    border-color: #373737;
}
.nav-link{
    
    font-weight: 700;
    font-size: 24px;
}
.tabs .nav-tabs{
    background-color: #fff;
}
.nav-tabs .nav-item + .nav-item {
    margin-left: 0;
}
.option_group input[type="radio"], .option_group input[type="checkbox"]{
    position: relative;
    top: -1px;
}
.collapse.in {  display: block !important;
}
.add-to-quote:hover, .add-to-quote.disabled:hover, .add-to-quote:disabled:hover, .add-to-quote:focus, .add-to-quote.disabled:focus, .add-to-quote:disabled:focus, .add-to-quote :active, .add-to-quote.disabled :active, .add-to-quote:disabled :active{
	background: #E2581C !important;
    color: #fff !important;
}
.product-images > li.thumb-container > .thumb.selected, .product-images > li.thumb-container > .thumb:hover{
    border: 1px solid #174679;
    
}
.thumb.js-thumb{
    border-radius: 5px;
    border: 1px solid #d1d1d1;
}
.taxes{
    font-size: 20px;
    font-weight: 400;
    margin-right: 10px;
}
@media only screen and (max-width: 1023px) {
    .gauche{
        width: 100%;
        padding: 10px 0px;
        margin-top: 20px;
        height: 100%;
    }
    .droite{
        width: 100%;
        padding: 0;
        height: fit-content;
        margin-bottom: 50px;
    }
    .header_title{font-size: 16px;}
    .headerconfig{
        position: fixed;
        top: 0;
        z-index: 2001;
    }
    .step_list{
        height: fit-content !important;
        width: 100%;
    }  
    .h1 {
        font-size: 20px;
        text-align: left;
        padding: 15px;
        font-weight: 400;
    }
    #viewer2d-back-to-cover .btn-sm {
        position: fixed;
        bottom: 10px;
        left: 10vw;
        right: 25%;
        z-index: 101;
        width: 80vw;
    }
    .pricefinal{
        margin-top: 0px;
        font-size: 24px;
    }
    html{
        overflow-x: hidden;
    } 
    .step_title{
        font-size: 14px;
    }
    #product #content{
        margin-right: 0 !important;
    }
}

.steplist{
    padding-bottom: 50px;
}

.fancybox-skin, .fancybox-inner{
    width: auto !important;
    height: auto !important;
}
.fancybox-skin, .fancybox-inner .h1{
    background: none;
    border: none;
}
.fancybox-wrap.fancybox-desktop.fancybox-type-html.fancybox-opened{
    width: 60% !important;
    height: 80% !important;
    top: 10% !important;
    left: 20% !important;
}
.fancybox-wrap.fancybox-desktop.fancybox-type-html.fancybox-opened .fancybox-skin{
    padding: 15px 5% !important;
}

#checkout #configurator-tabs li::after{
    all: unset !important;
}
#checkout #configurator-tabs {
    border: none;
}
.moreoption{
    width: 47px;
    height: 40px !important;
    left: inherit;
    right: 10vw;
    padding: .5rem !important;
    background: #373737;
    border-color: 1px solid #373737;
}
.btn_mobile_add{
    position: fixed;
    top: calc(100vh - 170px);
    right: 10vw;
    min-width: 250px;
    margin: 0;
    padding: 0;
    z-index: 100;
}
.btn_mobile_add .btn{
    width: 100%;
    background: transparent;
    color: #000;
    border-color: #d1d1d1;
    border-radius: 0px;
    text-align: left;
}
.btn_mobile_add .btn span{
    
    font-size: 16px;
    font-weight: 400;
}

.btn_mobile_add h3{
    text-align: center;
}

.headerconfig .header_icon.shoppingcart:before{
    content: attr(data-counter);
    display: block;
    position: absolute;
    min-width: 1.6em;
    height: 1.6em;
    line-height: 1.5em;
    top: -0.7em;
    right: -0.7em;
    border-radius: 100%;
    color: #fff;
    background-color: #FF783D;
    text-align: center;
    font-size: 10px;
}

.product-container .gauche .producttitle{
    
    font-style: normal;
    font-weight: 400;
    font-size: 24px;
    line-height: 30px;
    /* or 125% */

    display: flex;
    align-items: center;
    letter-spacing: -0.02em;
    font-feature-settings: 'calt' off;

    color: #363A42;
}
#product .fa-play::before
{
    margin-top: 2px !important;
    margin-right: 5px !important;
}
.step_group.validated .step_title::before
{
    content: "\2714";
}
.step_group.validated .collapsed .step_title {
    color: #464D3F;
}
.configurator-tabs-actions {
    visibility: hidden;
    height: 0px !important;
    margin: 0 !important;
}


/* --- Cover --- */
.configurator-product-cover {
    padding-left: 20px;
    padding-right: 20px;
}
.configurator-product-cover .product-cover {
  display: flex;
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
}
.configurator-product-cover .scroll-box-arrows {
  position: relative;
}
.configurator-product-cover .scroll-box-arrows i {
  bottom: 60px;
}
#viewer2d-download-preview {
    display: flex;
}
#viewer2d-download-preview button {
    margin: auto;
}

#product .tab-content{
    background: white;
}
#additional-products section .products {
    margin: 0;
}
#additional-products section .products > .col, #additional-products section .products > [class*="col-"] {
    padding: 0rem;
    padding-left: 10px;
    padding-right: 10px;
}
#additional-products section .products .js-product.product{
    margin-bottom: 20px;
}
#additional-products section .products .product .product-miniature {
    height: 100%;
}
#additional-products section .products .product .product-miniature .thumbnail-container {
    margin-bottom: 0;
}
#additional-products section .products .product .product-miniature .product-description {
    padding-bottom: 25px;
    position: initial;
}
#additional-products section .products .product .product-miniature .product-description .product-price-and-shipping {
    position: absolute;
    bottom: 5px;
    width:100%;
}
#additional-products > section {
    margin-top: 0 !important;
}
#additional-products section .products .product-miniature .thumbnail-container:hover .product-description::after,
#additional-products section .products.product-miniature .thumbnail-container:focus .product-description::after {
    border: none;
}
#additional-products section.featured-products > h2 {
    text-transform: uppercase !important;
    
    margin-bottom: 0.5rem;
    font-weight: 700;
    line-height: 1.1;
    color: inherit;
    font-size: 1rem;
}
/* Modal content */ 
#product .modal-body li{
    font-size: 18px;
    margin-bottom:10px;
}
#product .modal-body li:first-child{
    margin-top: 10px;
}
#product .modal-body li a {
    color: #000;
}

/* Responsive jusqu'à 1024px de la barre d'avancement du configurateur */

@media (max-width: 1600px) 
{
    .configurator-tab-page {
        font-size: 16px;
    }
}
@media (max-width: 1400px)
{
    .configurator-tab-page {
        font-size: 12px;
    }
}
@media screen and (max-width: 1200px)
       and (min-width: 1024px)
{
    .header_title{
        font-size: 20px;
    }
}
@media screen and (max-width: 650px) {

    #configurator_block .grid-radio-button .step_options{
        display: grid;
        grid-template-columns: repeat(4, 6fr);
        margin-bottom: 20px;
        text-align: left;
    }
    
}
@media (max-width: 425px){
    #configurator_block .grid-radio-button .step_options{
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        margin-bottom: 20px;
        text-align: left;
    }
}
@media (max-width: 400px){
    #product .product-container h1 {
        margin-top: 0px !important;
    }
    .header_title{
        font-size: 12px;
    }
    #product .tabs .nav-tabs .nav-link{
        font-size: 12px !important;
    }
}
/* Modal config refonte */ 

#configuratorPreviewModalConfirmation .table th, #configuratorPreviewModalConfirmation .table td{
    color: #000;
    font-size: 14px;
    
}
#configuratorPreviewModalConfirmation .modal-footer .row .col-sm-6 {
    text-align: center;
}
#configuratorPreviewModalConfirmation .modal-content .modal-title{
    color: #000;
    font-size: 16px;
    
}

/* input disabled */ 
#configurator_block input[type="number"]:disabled{
    background-color: #dfdfdf !important;
}

/* configurator_block */
#configurator_block #configurator-tabs{
    display: none;
}
#configurator_block{
    background: #fff;
}


div.selector{
    width: fit-content !important;
}
div.selector span{
    width: fit-content !important;
    white-space: inherit !important;
}
#configurator_preview_buttons .tax-rate-shown{
    text-align: right;
   
}
#configurator_preview_buttons .tax-rate-shown p{
    font-size: 20px;
    font-weight: 600;
    color: #363A42;
    letter-spacing: -0.02em;
    line-height: 20px;
}

#configurator_block .mini-texture .option_block.texture .option_img {
	width: 40px;
	height: 40px;
}
#configurator_block .mini-texture .option_block .option_img > img {
    width: 40px;
}
/* product-step */ 

#configurator_block .product-step .accordioncontent .step_options{
    display: grid;
    grid-template-columns: repeat(1fr, 1);
}
#configurator_block .product-step .option_block.custom .option_block_content{
    border: 0;
    pad: 0;
    border-radius: 2px;
    margin: 0;
    position: relative;
    background-color: #fff;
    display: flex;
    width: 100%;
}
#configurator_block .product-step .option_block{

    margin-right: 0;
    position: relative;
    text-align: center;
    display: flex;
    border: 1px solid black;
    width: 100%;
}
#configurator_block .product-step .option_block.custom .option_img{
    height: 80%;
    align-self: center;
}
#configurator_block .product-step .option_block .option_img > img{
    width: inherit;
}
#configurator_block .product-step .option_block .quantity_wanted{
    display: none !important;
}
#configurator_block .product-step .option_group .label.amount{
    /* position: absolute;
    top: 19px;
    right: 20px; */
    font-size: 18px;
    font-weight: 800;
    color: #0098ab;
    margin-top: 16px;
    min-width: fit-content;
    display: flex;
    flex-direction: column;

}
#configurator_block .product-step .option_block.selected .option_block_content::after{
    height: 30px;
    width: 30px;
    left: -15px;
    top: -8px;
    background-size: 15px;
}
.product-step .option_block .option_block_content .product-name{
    height: min-content;
    font-size: 18px;
   
}
.product-step .pack-product-info{
    padding: 11px;
    max-width: 75%; 
    height: auto;
    text-align: left;
}
#configurator_block .product-step .pack-product-info .desc-prod{
    text-align: justify;
    margin-top: 15px;
}
#product .content-product{
    margin-bottom: 30px;
}
@media screen and (max-width: 1581px) {
    #configurator_block .product-step .pack-product-info .desc-prod{
        display: -webkit-box;
        -webkit-line-clamp: 4;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }
}
@media screen and (max-width: 969px){
    .product-step .pack-product-info{
        max-width: 70%;
    }
    .product-step .option_block .option_block_content .product-name{
        font-size: 16px;
    }
    #configurator_block .product-step .option_group .label.amount{
        font-size: 16px;
    }
    #configurator_block .product-step .pack-product-info .desc-prod{
        font-size: 14px;
    }
}@media screen and (max-width: 1181px){
    #configurator_block .step_options{
        text-align: left !important;
    }
}
@media screen and (max-width: 768px) {
    #configurator_preview{
        padding: 0;
        padding-top: 20px;
    }

    .product-actions .col-md-12.col-lg-8,.product-actions .col-md-12.col-lg-4 {
        padding: 0;
    }
    #configurator_block .product-step .option_block.custom .option_img{
        height: 120px;
        align-self: center;
    }
    #configurator_block .product-step .option_block .option_img > img{
        width: 120px;
    }
    .product-step .pack-product-info{
        max-width: 60%;
        align-self: center;
    }
    #configurator_block .accordioncontent .col-xs-12{
        padding: 0;
    }
    #configurator_block .product-step .pack-product-info .desc-prod{
        display: none;
    }
    #configurator_block .product-step .option_group .label.amount{
        margin: 0;
        align-self: center;
    }
    
    
}
@media screen and (max-width: 620px) {
    #product #configurator-tabs{
        display: none;
    }
}
@media screen and (max-width: 425px) {
    #configurator_block .product-step .option_block.custom .option_img{
        height: 80px;
    }
    #configurator_block{
        text-align: left;
    }
    #configurator_block .product-step .option_block .option_img > img{
        width: 80px;
    }
    .product-step .pack-product-info{
        max-width: 60%;
        align-self: center;
    }
    .navigdown{
        display: none;
    }
    .step_title {
        font-size: 16px;
    }
    #configurator_block .big-square-image  .option_block{
        margin-bottom: 50px;
    }
    #configurator_block .step-color-texture{
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }
    #configurator_block .step_options{
        padding: 5px;
    }
    #configurator_block .big-square-image .step-color-texture
    {
        display: grid;
        grid-template-columns: repeat(1, 1fr);
    }
    #configurator_block .option_block{
        margin-right: 0;
    }
    #configurator_block .step_group.form-group{
        padding: 0;
        padding-bottom: 50px;
    }
    .product-step .option_block .option_block_content .product-name{
        font-size: 12px;
    }
    #configurator_block .pack-product-info p{
        font-size: 12px;

    }
    #configurator_block .product-step .option_group .label.amount{
        font-size: 12px;
    }
    #configurator_block .accordioncontent .col-xs-12{
        padding: 0;
    }

    #configuratorPreviewModalConfirmation .modal-footer .row .col-sm-6{
        margin-top: 10px;
    }
    #blockcart-modal .btn-primary, .btn-secondary, .btn-tertiary{
        margin-left: auto;
        margin-right: auto;
    }
}

.hidden-desktop{
    z-index: 1;
}
.modal-content{
    z-index: 10000;
}

.bloqued_step .step_options,
.bloqued_step .configurator-steps-actions {
    display: none;
}
.bloqued_step .step_title{
    color: #d0121aed !important;
}

.bloqued_step .info_text p{
    font-size: 20px;
}

