.calculator-promo__submit button.disabled{
	 background-color: #b3b3b3!important;
	 box-shadow: 5px 5px 15px #ccc!important;
}
  
  /* text field */
    .text-field {
      margin-bottom: 10px;
      margin-top: 20px;
    }

    .text-field__label {
      display: block;
      margin-bottom: 0.25rem;
    }

    .email-mask {
      display: block;
      width: 210px;
      height: 35px;
      font-family: inherit;
      font-size: 16px;
      font-weight: 400;
      line-height: 1.5;
      color: #212529;
      background-color: #fff;
      background-clip: padding-box;
      border: 1px solid #979797;
      border-radius: 5px;
      transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
      -webkit-appearance: none;
      -moz-appearance: none;
      appearance: none;
      padding-left: 40px;
      padding-right: 40px;
    }

    .email-mask[type="search"]::-webkit-search-decoration,
    .email-mask[type="search"]::-webkit-search-cancel-button,
    .email-mask[type="search"]::-webkit-search-results-button,
    .email-mask[type="search"]::-webkit-search-results-decoration {
      -webkit-appearance: none;
    }

    .email-mask::placeholder {
      color: #212529;
      opacity: 0.4;
    }

    .email-mask:focus {
      color: #212529;
      background-color: #fff;
      border-color: #bdbdbd;
      outline: 0;
    }

    .email-mask:disabled,
    .email-mask[readonly] {
      background-color: #f5f5f5;
      opacity: 1;
    }

    /* with floating label */
    .text-field_floating {
      position: relative;
    }

    .text-field_floating .text-field__label {
      position: absolute;
      top: 0;
      left: 0;
      padding: 11px 40px;
      opacity: .65;
      color: #000;
      font-size:14px;
      transition: transform 0.2s;
      will-change: transform;
    }

    .text-field_floating .email-mask::-moz-placeholder {
      color: transparent;
    }

    .text-field_floating .email-mask::placeholder {
      color: transparent;
    }

    .text-field_floating .email-mask:focus~.text-field__label,
    .text-field_floating .email-mask:not(:placeholder-shown)~.text-field__label {
      opacity: 1;
      transform: translateY(-30px) translateX(-22px);
    } 
 
    .text-field_floating::before {
      content: '';
      color: #bdbdbd;
      position: absolute;
      display: flex;
      align-items: center;
      top: 0;
      bottom: 0;
      left: 5px;
      top: 50%;
      transform: translateY(-50%);
      width: 28px;
      background-image: url("data:image/svg+xml,%3Csvg width='28' height='29' viewBox='0 0 28 29' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M6.53341 7.5H21.4667C22.4934 7.5 23.3334 8.34 23.3334 9.36667V20.5667C23.3334 21.5933 22.4934 22.4333 21.4667 22.4333H6.53341C5.50675 22.4333 4.66675 21.5933 4.66675 20.5667L4.67608 9.36667C4.67608 8.34 5.50675 7.5 6.53341 7.5ZM14.0001 15.9L21.4667 11.2333V9.36667L14.0001 14.0333L6.53341 9.36667V11.2333L14.0001 15.9Z' fill='%239FA5B7'/%3E%3C/svg%3E%0A");
      background-repeat: no-repeat;
      background-position: center;
    } 
    
    .text-field_floating .invalid-input-hint{
        position: absolute;
        width: 280px;
        margin-top:7px;
        align-items: center;
        text-align: center;
    }
    
    .forms__input--invalid {
        border: 1px solid red !important;
    }   
    
    .dList01 {
        position: absolute;
        width:280px;
        top: 100%;
        left: 0;
        right: 0;
        z-index: 999999;
        border: 1px solid #ddd;
        border-top: none;
        border-radius: 0 0 5px 5px;
        background-color: #fff;
        list-style-type: none;
        padding: 0;
        margin: 0;
        margin-left:4px;
        display:none;
    }

    .dList01 li {
        padding: 10px;
        cursor: pointer;
        font-size: 14px;
        transition: background-color 0.3s ease;
    }

    .dList01 li:hover {
        background-color: #f4f4f4;
    }

    .text-field_clear_aicon {
      position: absolute;
      display: none;
      align-items: center;
      top: 0;
      bottom: 0;
      right: 0.875rem;
      width: 1rem;
      cursor: pointer;
      color: #bdbdbd;
      transition: color 0.15s ease-in-out;
    }

    .text-field_clear_aicon:hover svg path {
        fill: #ff7f00;
    }    
      
    .text-field_check_aicon {
      position: absolute;
      display: none;
      align-items: center;
      top: 0;
      bottom: 0;
      right: 0.875rem;
      width: 1rem;
      cursor: pointer;
      color: #bdbdbd;
      transition: color 0.15s ease-in-out;
    }

 @media(max-width: 400px){
    .email-mask {
        width:240px;
    }
     .dList01 {
     width:300px;
     }
 }

 @media(max-width: 700px){
 
    .text-field_floating {
        width: 94%;
        margin-left: auto;
        margin-right: auto;
        display: flex;
        justify-content: center;
    }
 
    .email-mask {
        width:100%;
    }
     .dList01 {
     width:280px;
     }
     
    .text-field_floating .email-mask:focus~.text-field__label, .text-field_floating .email-mask:not(:placeholder-shown)~.text-field__label {
        transform: translateY(-30px) translateX(-45px);
    }     
    
    .text-field_floating .invalid-input-hint {
        margin-top: 44px;
    }    
    
 }
