/*
|--------------------------------------------------------------------------
| EBH Core - Formulário de Orçamento
| V1.2 Limpa
|--------------------------------------------------------------------------
*/

/* CONTAINER */

.ebh-formulario-orcamento{
    width:100%;
    max-width:700px;
    margin:40px 0;
    padding:30px;
    background:#fff;
    border:1px solid #e5e5e5;
    border-radius:10px;
    box-sizing:border-box;
}

.ebh-formulario-orcamento__titulo{
    margin:0 0 28px;
    font-size:28px;
    font-weight:700;
    line-height:1.2;
}

/* FORMULÁRIO */

.ebh-formulario-orcamento__form{
    display:flex;
    flex-direction:column;
    width:100%;
}

/* ORDEM DOS CAMPOS */

.ebh-formulario-orcamento__campo{
    order:1;
}

.ebh-formulario-orcamento__tipo{
    order:2;
}

.ebh-formulario-orcamento__campo--observacoes{
    order:3;
}

.ebh-formulario-orcamento__botao{
    order:4;
}

/* CAMPOS */

.ebh-formulario-orcamento__campo{
    display:grid;
    grid-template-columns:150px 1fr;
    align-items:center;
    column-gap:18px;
    margin-bottom:18px;
}

.ebh-formulario-orcamento__campo label{
    font-size:16px;
    font-weight:600;
}

.ebh-formulario-orcamento__campo input,
.ebh-formulario-orcamento__campo textarea{
    width:100%;
    padding:12px 14px;
    border:1px solid #cfcfcf;
    border-radius:6px;
    font-size:16px;
    font-family:inherit;
    box-sizing:border-box;
}

.ebh-formulario-orcamento__campo textarea{
    min-height:120px;
    resize:vertical;
}

.ebh-formulario-orcamento__campo input:focus,
.ebh-formulario-orcamento__campo textarea:focus{
    border-color:#11a35b;
    outline:none;
    box-shadow:0 0 0 2px rgba(17,163,91,.12);
}

/* QUANTIDADE */

.ebh-quantidade{
    display:grid;
    grid-template-columns:52px 1fr 52px;
    width:100%;
    height:50px;
    border:1px solid #cfcfcf;
    border-radius:6px;
    overflow:hidden;
}

.ebh-quantidade__menos,
.ebh-quantidade__mais{
    display:flex;
    align-items:center;
    justify-content:center;
    border:none;
    font-size:24px;
    font-weight:700;
    cursor:pointer;
}

.ebh-quantidade__menos{
    background:#f3f4f6;
    color:#374151;
}

.ebh-quantidade__mais{
    background:#11a35b;
    color:#fff;
}

.ebh-quantidade__input{
    border:none !important;
    text-align:center;
    font-size:17px;
    font-weight:600;
    box-shadow:none !important;
}

.ebh-quantidade__input::-webkit-inner-spin-button,
.ebh-quantidade__input::-webkit-outer-spin-button{
    -webkit-appearance:none;
    margin:0;
}

/* TIPO DE CLIENTE */

.ebh-formulario-orcamento__tipo{
    width:100%;
    margin:10px 0 22px;
    padding:18px 20px;
    border:1px solid #cfcfcf;
    border-radius:6px;
    box-sizing:border-box;
}

.ebh-formulario-orcamento__tipo legend{
    font-size:16px;
    font-weight:700;
    padding:0 6px;
}

.ebh-formulario-orcamento__tipo label{
    display:flex;
    align-items:center;
    gap:10px;
    margin-top:14px;
    cursor:pointer;
    font-size:16px;
}

.ebh-formulario-orcamento__tipo input[type=radio]{
    accent-color:#11a35b;
}

/* BOTÃO */

.ebh-formulario-orcamento__botao{
    width:100%;
    min-height:52px;
    border:none;
    border-radius:6px;
    background:#11a35b;
    color:#fff;
    font-size:17px;
    font-weight:700;
    cursor:pointer;
    transition:.2s;
}

.ebh-formulario-orcamento__botao:hover{
    background:#0d874b;
}

.ebh-formulario-orcamento__botao:disabled{
    background:#0d874b;
    opacity:.9;
    cursor:not-allowed;
}

/* LOADER */

.ebh-loading::before{
    content:"";
    display:inline-block;
    width:18px;
    height:18px;
    margin-right:10px;
    border:2px solid rgba(255,255,255,.35);
    border-top-color:#fff;
    border-radius:50%;
    animation:ebhSpin .7s linear infinite;
}

@keyframes ebhSpin{
    to{transform:rotate(360deg);}
}

/* MENSAGENS */

.ebh-formulario-orcamento__mensagem{
    width:100%;
    margin:25px 0;
    padding:20px 24px;
    border-radius:8px;
    box-sizing:border-box;
}

.ebh-formulario-orcamento__mensagem--sucesso{
    background:#e8f7ef;
    border:2px solid #11a35b;
    color:#075c32;
}

.ebh-formulario-orcamento__mensagem--erro{
    background:#fff0f0;
    border:2px solid #cc3333;
    color:#a00000;
}

.ebh-formulario-orcamento__mensagem strong{
    display:block;
    margin-bottom:6px;
    font-size:18px;
}

/* RESPONSIVO */

@media (max-width:767px){

    .ebh-formulario-orcamento{
        padding:22px;
    }

    .ebh-formulario-orcamento__campo{
        grid-template-columns:1fr;
        row-gap:8px;
    }

}