/* GENERIC */

.cursor-pointer{
  cursor:pointer;
}

.hidden{
  display:none !important;
}

.justify-content-between{
  justify-content: space-between;
}

.mb-30{
  margin-bottom:30px; !important
}
.mb-40{
  margin-bottom:40px !important;
}

.mt-10{
    margin-top: 10px !important;
}
.mt-40{
    margin-top: 40px !important;
}

.pb-40{
  padding-bottom:40px !important;
}

.pb-10{
  padding-bottom:10px !important;
}

.ms-25{
  margin-left:25px !important;
}
.mb-25{
  margin-bottom:25px !important;
}
.mt-25{
  margin-top:25px !important;
}
.ps-25{
  padding-left:25px !important;
}

.text-black{
  color: #000  !important;;
}

.background-white{
  background-color:#fff !important;
}

.fw-bold{
  font-weight: 700;
}

.border-top-1{
  border-top: 1px solid #CCCCCC !important;
}

.border-bottom-1{
  border-bottom: 1px solid #CCCCCC !important;
}

/*SPECIFIC*/

.profile-configurator{
  padding: 60px;
}

.profile-configurator h2{
  margin-bottom: 0;
}

.configurator-card-container{
  display:flex;
  gap: 20px;
  flex-wrap:wrap;
}

.configurator-card{
  display: flex;
  padding: 30px 20px 20px 20px;
  flex-direction: column;
  align-items: center;
  border: 1px solid #CCC;
  background: #fff;
  width: 190px;
  position:relative;
}

.configurator-card.active{
  border: 2px solid #3A78B9;
  background: rgba(58, 120, 185, 0.10);
}

.configurator-card.active::after{
  content:'';
  width: 22px;
  height: 22px;
  background-image: url('https://144410004.fs1.hubspotusercontent-eu1.net/hubfs/144410004/configurator-assets/tick-arrow.svg');
  position: absolute;
  top: 14px;
  right: 14px;
}

.configurator-card-description{
  margin-top: 15px;
  margin-bottom: 10px;
  text-align: center;
}

#products-search-result .configurator-card-description{
  font-weight: 700;
  color: #000;
}

.profile-configurator .accordion {
  background-color: #fff;
  color: #444;
  cursor: pointer;
  padding: 18px 0;
  width: 100%;
  border: none;
  text-align: left;
  outline: none;
  font-size: 15px;
  transition: 0.4s;
}

.accordion-info, .accordion-info a{
  color: #87909E;
  font-size: 14px;
  font-style: normal;
  text-decoration-line: underline;
}
.accordion-info a{
  margin-left:0;
}

.profile-configurator .panel {
  background-color:  #fff;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.2s ease-out;
}

#profile-type-accordion.active svg, #measurement-accordion.active svg{
  -webkit-transform: rotateX(180deg);
    transform: rotateX(180deg);
}

#measurement-step .form-container{
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-bottom:20px;
}

.configurator-button{
  background-color: #3a78b9 !important;
  display: flex;
  height: 56px;
  padding: 20px 30px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 25px;
  flex-shrink: 0;
  border-radius: 4px;
  background: #3A78B9;
  color: #fff;
  border:none;
  cursor: pointer;
  width: fit-content !important;
  color: #fff !important;
}

#no-results-found{
  display: flex;
  justify-content: space-between;
  padding: 30px;
  align-items: center;
  color: #fff;
}

.go-to-link{
  height: auto;
  text-decoration:none;
}

button.disabled h2, button.disabled div, button.disabled a {
    color: #c1c2c4;
}
.product-info {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.product-info p {
  margin-bottom: 0;
}


/*MODAL*/
.popup-modal {
  display: none; 
  position: fixed;
  z-index: 1;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgb(0,0,0); 
  background-color: rgba(0,0,0,0.4);
}

.popup-modal .modal-content {
  display: block;
  background-color: #fefefe;
  margin: 5% auto;
  padding: 20px;
  border: 1px solid #888;
  width: 80%;
}

.popup-modal .close {
  color: #aaa;
  float: right;
  font-size: 28px;
  font-weight: bold;
}

.popup-modal .close:hover,
.popup-modal .close:focus {
  color: black;
  text-decoration: none;
  cursor: pointer;
}

.quantity-input-error{
  color: #ff2b1c;
  display: block;
}

@media (max-width: 768px) {
    #no-results-found {
        flex-direction: column;
        text-align: center;
    }
}

@media(max-width:675px){

    #measurement-step .form-container{
        flex-direction:column;
    }
    
    #measurement-container input{
        width:100%;
    }
}

@media (max-width:520px){
  .configurator-card{
    width:110px;
  }
  
  .search-result-product{
    width:100%;
  }
  
  .profile-configurator h2{
    font-size:1.5rem;
  }
  
  .profile-configurator{
    padding:20px;
  }
}

@media (max-width:360px){
  .configurator-card{
    width:110px;
  }
  .search-result-product{
    width:100%;
  }
}