 * {
        box-sizing: border-box;
    }
   
    .form {
        display:block;
        height:auto;
        width:80%;
        margin-left:auto;
        margin-right:auto;
        margin-top:0%;
    }
    .form .form-row {
        margin-bottom:5px;
        width:45%;
        float:left;
        margin:10px;

    }
    .form .textArea{
        width:93%;
        float:none;
    }
    .topicMessage, .companyName{
        width:95% !important;
    }
    .form .form-row:last-child {
        margin-bottom: 0;
        width:45%;
    }
    .form input[type=text],
    .form input[type=email],
    .form input [type=tel],
    .form textarea,
    .form .checkbox-cnt .state {
        box-shadow:inset 0 1px 5px rgba(0,0,0,0.07);
    }


    .form input[type=text], 
    .form input[type=email],
    .form input [type=tel],
    .form textarea {
        display:block;
        border-radius:0px;
        font-family: 'Arimo', sans-serif;
        font-size:15px;
        padding-top:5px;
        padding-bottom:5px;
        padding-left: 5px;
        border: thin solid;
        border-color:rgba(0,0,0,1);
        display: block;
        width: 100%;
        color: #000;
        background: #f4f4f4;
    }
    .topicInput{
        padding-top:9px !important;
        padding-bottom:9px !important;
    }
    .form input[type=text]:focus,
    .form input[type=email]:focus,
    .form input[type=tel]:focus,
    .form textarea:focus {
        border-color:rgba(0, 101, 177, 1);
        box-shadow: 0px 5px 31px -5px rgba(0, 101, 177, 1);
        outline:none;
        border-radius:13px;
        transition:0.3s;
    }
    .form-row:hover label{
        color:rgba(0, 101, 177, 1);
    }
    .message{
        width:95% !important;
    }
    .form textarea {
        height:210px;
    }
    .form label {
        display: block;
        font-size:18px;
        font-weight: 500;
        margin-bottom:0px;
        font-family: 'Roboto', sans-serif;
        color:rgba(0,0,0,1);
    }
    .form label:first-letter{
        font-size:20px;
    }
    .form .submit-btn {
        width:285px;
        font-family:'Roboto', sans-serif;
        padding:2px 30px;
        background: rgba(3, 189, 29, 0.9);
        border-style:solid;
        border-radius:5px;
        color:#fff;
        font-size:25px;
        font-weight: bold;
        transition: 0.3s;
        cursor: pointer;
        margin-left: auto;
        margin-right:1px;
    }
    .form .submit-btn:hover {
        background: #ffffff;
        border-color:rgba(3, 189, 29, 0.3);
        border-style:solid;
        border-radius: 20px;
        color:rgba(3, 189, 29, 1);
        box-shadow: 0px 15px 31px -5px rgba(3, 189, 29, 0.3);
    }
    .checkbox-cnt span {
        font-family:'Roboto', sans-serif;
        color: rgba(0,0,0,1);
        font-size:20px;
        margin-left:auto;
        margin-right:1px;
    }
    .form .checkbox-cnt {
        padding-left:2vw;
        position: relative;
        font-weight: normal;
        font-size:20px;
        line-height: 25px;
        color:rgba(255,0,0,1);
        cursor: pointer;
    }
    .form .checkbox-cnt .state {
        width:30px;
        height: 30px;
        display: block;
        position: absolute;
        left:0;
        top:0;
        border:thin solid rgba(0,0,0,1);
        border-radius:0.2vw;
    }
    .form .checkbox-cnt .state:before {
        width:18px;
        height: 18px;
        border-radius:0.2vw;
        background: rgba(0, 101, 177, 1);
        display: block;
        position: absolute;
        left:50%;
        top:50%;
        content:'';
        transform:translate(-50%, -50%) scale(1);
        opacity:0;
    }
    .form .checkbox-cnt input:checked ~ .state:before {
        animation: checkboxShowAnim 0.5s 1;
        opacity: 1;
    }
    .form .checkbox-cnt input {
        position:absolute;
        top:0; left:0;
        width:2vw;
        height: 2vw;
        z-index: 2;
        cursor:pointer;
        padding:0;
        margin:0;
        opacity: 0;
    }
    .form input[type=text].error,
    .form input[type=email].error,
     .form input[type=tel].error,
    .form textarea.error,
    .form .checkbox-cnt input.error ~ .state {
        border-color:#E01546;
    }
    .field-error {
        color:#E01546;
        padding:0.5vw 0;
        font-size:0.8vw;
    }
    @keyframes checkboxShowAnim {
        0%  { border-radius:50%; transform:translate(-50%, -50%) scale(0.2); }
        50% { transform:translate(-50%, -50%) scale(1.2); }
        100% { transform:translate(-50%, -50%) scale(1); }
    }

    .element-is-busy {
        position: relative;
        pointer-events: none;
        opacity:0.5;
    }
    .element-is-busy::after {
        position: absolute;
        left: 50%;
        top: 50%;
        width: 20px;
        height: 20px;
        border-radius: 50%;
        border: 2px solid rgba(0, 0, 0, 0.2);
        border-right-color: rgba(0,0,0,0.7);
        transform: translate(-50%, -50%) rotate(0deg);
        content:'';
        animation: rotateSingleLoading 0.3s infinite linear;
        z-index: 100;
    }
    @keyframes rotateSingleLoading {
        from {
            transform: translate(-50%, -50%) rotate(0deg);
        }
        to {
            transform: translate(-50%, -50%) rotate(360deg);
        }
    }
    .form .send-error {
        display:inline-block;
        font-family: 'Roboto', sans-serif;
        font-size:20px;
        padding:1vw 1.5vw;
        color:rgba(240,2,0,1);
    }
    .form-send-success {
        font-family:'Roboto', sans-serif;
        text-align:center;
        font-size:23px;
        font-weight:bold;
        color:rgba(217,155,44,1);
        margin-left:auto;
        margin-right:auto;
        margin-top:0%;
        max-width:500px;
        border-style:solid;
        border-radius:20px;
        border-color:rgba(217,155,44,1);
    }
    .form-send-success strong {
        display:block;
        margin-bottom:0.5vw;
    }
    .form-send-success span {
        font-size:25px;
        color:rgba(217,155,44,1);
        font-weight:normal;
        display: block;
    }
    @media screen and (max-width:1500px) {
        .form label{
            font-size:16px;
        }
        .checkbox-cnt span {
        font-size:16px;
        }
        .form .checkbox-cnt .state {
        width:25px;
        height: 25px;
        }
      @media screen and (max-width:991px) {
        .form{
            width:90%;
        }
        .form .form-row{
          width:290px;
          margin-right: 15px;
        }
        .form .textArea {
            width:100%;
         }
         .form .checkbox-cnt{
            padding-left:10vw;
        }
     }
     @media screen and (max-width:767px){
        .form .submit-btn {
            margin-top:50px;
        }
        .form .checkbox-cnt{
            padding-left:10vw;
        }
        .form{
            width:90%;
        }
        .form .form-row{
            width:100%;
        }
        .form .submit-btn{
            width:100%;
        }
        .form .form-row:last-child{
            width:95%;
        }
     }