.homologues--wrapper {
  position: relative;
  display: flex;
  grid-template-columns:300px auto;
  flex-direction: row-reverse;
  max-width: 1400px;
  margin: 40px auto;
  font-family: 'Lato', sans-serif;
  border-radius: 8px;
  overflow: hidden
}

.homologues--wrapper .homologues--loader {
  background: #c2c2c259;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 9999;
  width: 100%;
  height: 100%;
  position: absolute;
  cursor: wait
}

.homologues--wrapper .homologues--steps {
  background: #F6F6F6;
  padding: 0 10px;
  width: 40%
}

.homologues--wrapper .homologues--steps .product--name {
  color: #7583ff;
  text-transform: uppercase;
  font-size: 16px;
  font-weight: bold;
  margin: 10px 0
}

.homologues--wrapper .homologues--steps .product--shortdescription {
  color: #5f5f5f;
  font-size: 14px;
  margin: 10px 0
}

.homologues--wrapper .homologues--synthesis {
  width: 60%;
  background: #f6f6f6
}

.homologues--wrapper .homologues--synthesis .preview {
  width: 100%;
  position: relative;
}

.homologues--wrapper .homologues--synthesis .preview img {
  width: auto;
  height: auto;
  margin: auto;
  max-height: 393px;
  bottom: 53px;
  position: absolute
}

.homologues--wrapper .homologues--synthesis .homologues--synthesis-row {
  display: flex;
  padding: 4px;
  background: #e0e0e0;
  justify-content: space-between;
  color: red;
  font-size: 12px;
  font-family: system-ui
}

.homologues--wrapper .homologues--synthesis .homologues--synthesis-row .price {
  font-weight: 600
}

.homologues--synthesis-line {
  background: transparent;
  width: 100%;
  display: flex;
  justify-content: flex-end;
  padding-right: 10px;
  padding-bottom: 10px;
  padding-top: 10px
}

.homologues--synthesis-line .homologues--synthesis-total {
  background: #e7e9ff;
  width: 151px;
  display: flex;
  padding: 10px 12px;
  margin: 6px;
  border-radius: 4px;
  justify-content: flex-end;
  color: #7583ff;
  font-weight: 700;
  line-height: 18px;
  flex-wrap: wrap;
}

.homologues--synthesis-line .homologues--synthesis-quantity {
  margin: 0px 5px;
  padding: 6px 0;
  position: relative;
  width: 77px
}

.homologues--synthesis-line .homologues--synthesis-quantity label {
  float: inherit;
  display: block;
  height: 39px;
  position: relative
}

.homologues--synthesis-line .homologues--synthesis-quantity label span.quantity-btn {
  background: #7583ff;
  padding: 11px 6px;
  border-radius: 4px;
  color: white;
  font-weight: 700
}

.homologues--synthesis-line .homologues--synthesis-quantity input.homologues--synthesis-quantity-input {
  position: absolute;
  z-index: 3;
  left: 0;
  right: 0;
  margin: auto;
  width: 41px;
  height: 43px;
  top: -4px;
  border: 0;
  text-align: center;
  border-radius: 4px;
  font-weight: 700;
  color: #218a80;
  outline: 0;
  padding: 0
}

.homologues--synthesis-line .homologues--synthesis-quantity input.homologues--synthesis-quantity-input::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0
}

.homologues--synthesis-line .homologues--synthesis-quantity input.homologues--synthesis-quantity-input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0
}

.homologues--synthesis-line .homologues--synthesis-quantity input.homologues--synthesis-quantity-input[type=number] {
  -moz-appearance: textfield
}

.homologues--synthesis-line .homologues--synthesis-add-to-cart {
  background: #7583ff;
  color: white;
  border: 0;
  padding: 12px 30px;
  text-transform: uppercase;
  border-radius: 3px;
  font-size: 14px;
  font-weight: 600;
  margin: 6px;
  cursor: pointer;
  line-height: 15px
}

.homologues--synthesis-line .homologues--synthesis-add-to-cart:hover {
  background: #2cadff
}

span.law_vmr {
  position: absolute;
  right: 0;
  padding: 7px;
  z-index: 1;
  font-size: 10px;
  opacity: 1;
  text-align: right;
  color: white;
  line-height: 11px;
  font-weight: 300
}

span.quantity-btn.quantity-btn-less {
  position: absolute;
  left: -1px;
  bottom: 0;
  padding-right: 11px !important
}

span.quantity-btn.quantity-btn-add {
  position: absolute;
  z-index: 1;
  right: -2px;
  bottom: 0;
  padding-left: 11px !important
}

.quantity-btn:hover {
  background: #29b4a7 !important;
  cursor: pointer
}

.homologues--step {
  display: block;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  overflow: hidden;
  padding: 0 5px 5px 5px;
  position: relative
}

.homologues--step:not(.active) {
  opacity: .5
}

.homologues--step:not(.active) .homologues--step-substep {
  display: none
}

.homologues--step:not(.active) .steps-navs {
  display: none
}

.homologues--step-name {
  padding: 5px;
  padding-left: 15px;
  font-weight: bold;
  color: #7583ff;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 13px
}

.homologues--step-name:hover {
  cursor: pointer;
  background: #ebebeb
}

.homologues--step-substeps {
  width: calc(100% - 20px);
  width: 100%;
  padding: 0 0 0 20px;
  position: relative
}

.homologues--step-substeps:after {
  content: "";
  position: absolute;
  background: #7583ff;
  width: 2px;
  height: 100vh;
  top: 0;
  left: 11px;
  z-index: 0
}

.homologues--step-substep {
  width: 100%;
  margin-bottom: 20px;
  position: relative
}

.steps-navs {
  display: flex;
  width: 100%;
  flex-wrap: nowrap;
  justify-content: flex-end
}

.steps-navs button {
  background: #7583ff;
  color: white;
  border: 0;
  padding: 8px 13px;
  text-transform: uppercase;
  font-size: 12px;
  border-radius: 3px
}

.homologues--step-substep-name {
  font-weight: 400;
  align-items: center;
  justify-content: space-between;
  font-size: 12px;
  display: block;
  color: #7583ff;
  text-transform: uppercase
}

.homologues--step-substep-name select {
  width: 200px
}

.homologues--step-substep-name input {
  width: 410px !important;
  background: white !important
}

.homologues--step-substep-name select.substep-type {
  border: 0;
  background: transparent;
  padding: 5px;
  border-radius: 0
}

.homologues--step-substep-options {
  display: grid
}

.homologues--step-substep-options.view_select {
  grid-template-columns:repeat(1, 1fr)
}

.homologues--step-substep-options.view_grid {
  grid-template-columns:repeat(5, 1fr)
}

.homologues--step-substep-options.view_fields {
  grid-template-columns:repeat(1, 1fr)
}

.homologues--step-substep-options.homologues--step-substep-options-variants.view_grid {
  grid-template-columns:repeat(1, 1fr)
}

.homologues--step-substep-options.homologues--step-substep-options-variants.view_grid .variants {
  display: grid;
  grid-template-columns:repeat(8, 1fr)
}

.homologues--step-substep-option-subvariants-group {
  margin-bottom: 5px;
  width: calc(100% - 25px)
}

.homologues--step-substep-option-subvariants-group .homologues--step-substep-option-subvariants.view_grid {
  display: grid;
  width: calc(100% - 15px);
  grid-template-columns:repeat(6, calc(100% / 6))
}

.homologues--step-substep-option-subvariants-group .name {
  font-weight: 400;
  align-items: center;
  justify-content: space-between;
  font-size: 12px;
  display: block;
  color: #3d3d3d;
  text-transform: uppercase;
  margin-bottom: 4px
}

.option_required {
  border-left: 3px solid #23beaf;
  background: #eeeeee;
  border-radius: 3px;
  padding: 5px 0
}

.homologues--step-substep-option-item {
  text-align: center
}

.homologues--step-substep-option-item .radio-container {
  margin-bottom: 3px;
  display: block
}

.homologues--step-substep-option {
  padding: 0 5px;
  flex: 0 0 21%;
}

.homologues--step-substep-option .product-card {
  background: #fafafa;
  padding: 5px;
  border: 1px solid #ebebeb;
  display: flex;
  border-radius: 2px;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  cursor: pointer
}

.homologues--step-substep-option .product-card .product-name {
  font-weight: 600
}

.homologues--step-substep-option .product-card .product-image {
  width: 30px;
  height: 30px;
  float: left;
  background-position: center !important;
  background-size: contain !important;
  border-radius: 6px;
  margin-right: 8px;
  color: white;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold
}

.homologues--step-substep-option .first-row {
  position: relative
}

.homologues--step-substep-option .first-row .delete-option {
  position: absolute;
  top: 0;
  right: 0;
  background: red;
  width: 20px;
  height: 20px;
  display: flex;
  justify-content: center;
  align-items: center
}

.homologues--step-substep-option .radio-image {
  width: 75px;
  cursor: pointer;
  -webkit-mask-image: url(/modules/Homologues/views/img/mask.svg);
  mask-image: url(/modules/Homologues/views/img/mask.svg);
  -webkit-mask-size: 78px;
  mask-size: 78px;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat
}

.homologues--step-substep-option .radio-image:hover {
  transform: scale(1.03)
}

.homologues--step-substep-option .radio-hidden {
  position: absolute;
  visibility: hidden
}

.homologues--step-substep-option .radio-hidden:checked ~ .radio-image {
  opacity: 0.6;
  transform: scale(1.1)
}

.homologues--step-substep-option .radio-container {
  height: 111px;
  display: grid
}

.homologues--step-substep-option .twice-col select {
  width: 75%;
  border: 0 !important
}

.homologues--step-substep-option .twice-col input {
  width: 25%;
  border: 0 !important
}

.homologues--step-substep-option .homologues--step-substep-option-field {
  display: flex
}

.homologues--step-substep-option .homologues--step-substep-option-field input {
  max-width: 100%;
  min-width: 50%;
  padding: 5px;
  margin: 5px 0
}

.homologues--step-substep-option > input {
  border: 0 !important;
  background: #f1f1f1 !important
}

.homologues--step-substep-option-variant .radio-image {
  width: 45px;
  height: 45px;
  cursor: pointer;
  -webkit-mask-image: url(/modules/Homologues/views/img/mask.svg);
  mask-image: url(/modules/Homologues/views/img/mask.svg);
  -webkit-mask-size: 47px;
  mask-size: 47px;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat
}

.dashed-flex {
  border: 1px dashed #bfbfbf;
  border-radius: 7px;
  background: #fcfcfc;
  display: flex;
  align-items: center;
  color: #858585;
  justify-content: center;
  text-transform: uppercase;
  font-size: 11px;
  padding: 8px;
  margin: 7px;
  width: calc(100% - 14px)
}

.search-product {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 400px;
  height: 400px;
  margin: auto;
  background: white;
  z-index: 99999;
  padding: 15px;
  border: 1px solid #e4e4e4;
  border-radius: 3px;
  overflow: scroll
}

.search-product .result-line {
  border-bottom: 1px solid #e7e7e7;
  padding: 4px;
  display: flex;
  justify-content: space-between
}

.search-product .result-line:hover {
  background: #f2f2f2;
  cursor: pointer
}

.save-conf-btn {
  position: fixed;
  bottom: 0;
  right: 0;
  background: #2196f3;
  margin: 27px;
  z-index: 999999;
  font-size: 13px;
  padding: 14px 34px;
  font-weight: 600;
  text-transform: uppercase;
  color: white;
  border-radius: 3px;
  text-align: center;
  cursor: pointer
}

.debug {
  background: black;
  color: white;
  font-family: monospace;
  font-size: 10px;
  padding: 3px;
  margin: 5px 0;
  text-align: right
}

.button-nav {
  display: flex;
  justify-content: space-between;
  background: #eaeaea;
  align-items: center
}

.button-nav button {
  background: #7583ff;
  border: 0;
  padding: 6px 12px;
  color: white
}

.homologues--step-index-bullet {
  background: #F5F5F5;
  border-radius: 100%;
  width: 25px;
  height: 25px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 12px;
  border: 2px solid #7583ff;
  color: #7583ff;
  position: absolute;
  z-index: 1;
  left: -2px
}

.hide {
  display: none
}

select.homologues--step-substep-option {
  padding: 9px;
  text-transform: uppercase;
  background: white;
  border-radius: 2px;
  margin: 2px 5px;
  width: calc(100% - 10px);
  border: 1px solid #f3f3f3;
  font-size: 12px;
  outline: none;
  color: #7583ff;
  font-weight: 700
}

label.radio-container .name {
  color: grey;
  font-size: 10px;
  padding: 5px 0px 0;
  text-align: center;
  line-height: 12px !important
}
.substep-description, .substep-description * {
  color: grey;
  font-size: 10px;
  padding: 5px 0px 0;
  text-align: center;
  line-height: 12px;
  text-align: left;
}

.product-pinedCart {
  display: none
}

.homologues--steps .view_grid {
  display: flex;
  flex-wrap: wrap;
}

button.next-step.disabled {
  pointer-events: none;
}

button.next-step[disabled="disabled"]
{
  background-color: grey;
}


.labelOption {
  max-width: 50%;
  padding-top: 20px;
  margin-right: 5px;
}

/* Use for prevent header overflow */
#long-description-homologue, #homologues-steps{
  margin-top: -120px;
  padding-top: 120px;
}

.options-radio .container-option-radio > label{
  text-align: left;
}


.options-radio .container-option-radio input{
  vertical-align: middle;
  height: auto;
  box-shadow: none;
  margin-right: 5px;
}

.options-radio .container-option-radio input[type="radio"]:checked:before, 
.options-radio .container-option-radio input[type="radio"]:checked:after{
  content: none;
}

span.radio-name, .radio-description p {
  font-size: 12px;
  font-weight: 400;
}
