/*==========================================================
JACOB ENGENHARIA 2.0
ORCAMENTOS.CSS
PARTE 1
==========================================================*/


/*==========================================================
INTRODUÇÃO
==========================================================*/

.servico-intro{

    padding:100px 0;

    background:#ffffff;

}

.servico-intro .servico-grid{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:70px;

    align-items:center;

}

.servico-imagem{

    position:relative;

    overflow:hidden;

    border-radius:22px;

    box-shadow:0 25px 60px rgba(0,0,0,.12);

}

.servico-imagem img{

    width:100%;

    display:block;

    transition:.6s ease;

}

.servico-imagem:hover img{

    transform:scale(1.05);

}

.servico-texto{

    display:flex;

    flex-direction:column;

    justify-content:center;

}

.servico-texto h2{

    font-size:2.5rem;

    color:#0F172A;

    line-height:1.2;

    margin:20px 0 30px;

}

.servico-texto p{

    color:#5c6675;

    font-size:1.05rem;

    line-height:1.9;

    margin-bottom:20px;

}

.titulo-secao{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    width:max-content;

    padding:9px 20px;

    border-radius:50px;

    background:#F6F2E7;

    color:#B68B12;

    font-size:.82rem;

    font-weight:700;

    letter-spacing:1px;

    text-transform:uppercase;

}


/*==========================================================
PROCESSO
==========================================================*/

.processo-orcamento{

    position:relative;

    padding:110px 0;

    background:#F8FAFC;

    overflow:hidden;

}

.titulo-centro{

    max-width:760px;

    margin:0 auto 70px;

    text-align:center;

}

.titulo-centro h2{

    font-size:2.6rem;

    color:#0F172A;

    margin:20px 0;

}

.titulo-centro p{

    color:#5c6675;

    line-height:1.9;

}


/*==========================================================
LINHA CENTRAL
==========================================================*/

.processo-grid{

    position:relative;

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:35px;

}

.processo-grid::before{

    content:"";

    position:absolute;

    top:34px;

    left:8%;

    width:84%;

    height:4px;

    background:#E7EAF0;

    z-index:0;

}


/*==========================================================
CARD
==========================================================*/

.processo-card{

    position:relative;

    background:#ffffff;

    padding:35px;

    border-radius:22px;

    text-align:center;

    transition:.35s;

    box-shadow:0 18px 45px rgba(15,23,42,.07);

    z-index:2;

}

.processo-card:hover{

    transform:translateY(-12px);

    box-shadow:0 30px 70px rgba(15,23,42,.14);

}

.processo-numero{

    width:68px;

    height:68px;

    margin:0 auto 25px;

    border-radius:50%;

    background:#0F172A;

    color:#ffffff;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:1.4rem;

    font-weight:700;

    transition:.35s;

    border:6px solid #F8FAFC;

}

.processo-card:hover .processo-numero{

    background:#D4AF37;

    color:#0F172A;

}

.processo-card i{

    display:block;

    font-size:2.5rem;

    color:#D4AF37;

    margin-bottom:25px;

    transition:.35s;

}

.processo-card:hover i{

    transform:scale(1.12);

}

.processo-card h3{

    color:#0F172A;

    font-size:1.25rem;

    margin-bottom:18px;

}

.processo-card p{

    color:#667085;

    line-height:1.8;

}


/*==========================================================
EFEITO DOURADO
==========================================================*/

.processo-card::after{

    content:"";

    position:absolute;

    left:0;

    top:0;

    width:100%;

    height:5px;

    background:#D4AF37;

    transform:scaleX(0);

    transition:.35s;

    transform-origin:left;

}

.processo-card:hover::after{

    transform:scaleX(1);

}


/*==========================================================
RESPONSIVO
==========================================================*/

@media(max-width:1200px){

.processo-grid{

grid-template-columns:repeat(2,1fr);

}

.processo-grid::before{

display:none;

}

}


@media(max-width:991px){

.servico-intro{

padding:80px 0;

}

.servico-intro .servico-grid{

grid-template-columns:1fr;

gap:45px;

}

.servico-texto{

text-align:center;

align-items:center;

}

}


@media(max-width:768px){

.processo-orcamento{

padding:80px 0;

}

.processo-grid{

grid-template-columns:1fr;

}

.titulo-centro h2{

font-size:2rem;

}

.servico-texto h2{

font-size:2rem;

}

}

/*==========================================================
FORMULÁRIO
==========================================================*/

.formulario-orcamento{

    padding:110px 0;

    background:#ffffff;

}

.formulario-orcamento .container{

    max-width:1100px;

}

.form-orcamento{

    margin-top:60px;

    background:#ffffff;

    padding:55px;

    border-radius:24px;

    border:1px solid #EEF2F6;

    box-shadow:0 25px 70px rgba(15,23,42,.08);

    position:relative;

    overflow:hidden;

}

.form-orcamento::before{

    content:"";

    position:absolute;

    left:0;

    top:0;

    width:100%;

    height:6px;

    background:linear-gradient(90deg,#0F172A,#D4AF37);

}


/*==========================================================
GRID
==========================================================*/

.form-grid{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:25px;

}


/*==========================================================
CAMPOS
==========================================================*/

.campo-form{

    display:flex;

    flex-direction:column;

    margin-bottom:25px;

}

.campo-form label{

    margin-bottom:10px;

    font-weight:600;

    color:#0F172A;

}

.campo-form input,

.campo-form select,

.campo-form textarea{

    width:100%;

    padding:16px 18px;

    border:1px solid #D8E0E8;

    border-radius:14px;

    background:#ffffff;

    color:#0F172A;

    font-size:15px;

    transition:.30s;

    outline:none;

}

.campo-form textarea{

    resize:vertical;

    min-height:180px;

}

.campo-form input:focus,

.campo-form select:focus,

.campo-form textarea:focus{

    border-color:#D4AF37;

    box-shadow:0 0 0 4px rgba(212,175,55,.12);

}


/*==========================================================
UPLOAD
==========================================================*/

input[type=file]{

    padding:14px;

    cursor:pointer;

}


/*==========================================================
BOTÃO
==========================================================*/

.form-orcamento .btn-primary{

    width:100%;

    margin-top:20px;

    padding:18px;

    border:none;

    border-radius:14px;

    font-size:1rem;

    cursor:pointer;

    transition:.35s;

}

.form-orcamento .btn-primary:hover{

    transform:translateY(-3px);

    box-shadow:0 18px 35px rgba(15,23,42,.18);

}


/*==========================================================
ANIMAÇÃO
==========================================================*/

.form-orcamento:hover{

    transform:translateY(-3px);

    transition:.35s;

}


/*==========================================================
RESPONSIVO
==========================================================*/

@media(max-width:991px){

.form-grid{

grid-template-columns:1fr;

}

.form-orcamento{

padding:40px;

}

}


@media(max-width:768px){

.formulario-orcamento{

padding:80px 0;

}

.form-orcamento{

padding:25px;

}

}

/*==========================================================
FAQ
==========================================================*/

.faq{

    padding:110px 0;

    background:#F8FAFC;

}

.faq .titulo-centro{

    margin-bottom:60px;

}


/*==========================================================
CTA
==========================================================*/

.cta{

    position:relative;

    overflow:hidden;

}

.cta::before{

    content:"";

    position:absolute;

    inset:0;

    background:linear-gradient(135deg,
        rgba(15,23,42,.95),
        rgba(15,23,42,.90));

    z-index:1;

}

.cta .container{

    position:relative;

    z-index:2;

}


/*==========================================================
MICROANIMAÇÕES
==========================================================*/

.processo-card,
.form-orcamento{

    transition:
        transform .35s ease,
        box-shadow .35s ease;

}

.processo-card:hover{

    transform:translateY(-10px);

}

.form-orcamento:hover{

    transform:translateY(-4px);

}

.servico-imagem img{

    transition:transform .6s ease;

}

.servico-imagem:hover img{

    transform:scale(1.05);

}


/*==========================================================
SCROLL SUAVE
==========================================================*/

html{

    scroll-behavior:smooth;

}


/*==========================================================
FOCO ACESSIBILIDADE
==========================================================*/

button:focus,
input:focus,
textarea:focus,
select:focus{

    outline:none;

}


/*==========================================================
RESPONSIVO TABLET
==========================================================*/

@media(max-width:992px){

.formulario-orcamento{

padding:90px 0;

}

.servico-texto{

text-align:center;

}

.processo-card{

padding:30px;

}

}


/*==========================================================
RESPONSIVO CELULAR
==========================================================*/

@media(max-width:768px){

.servico-intro{

padding:70px 0;

}

.processo-orcamento{

padding:70px 0;

}

.formulario-orcamento{

padding:70px 0;

}

.servico-texto h2{

font-size:2rem;

}

.titulo-centro h2{

font-size:2rem;

}

.processo-card{

padding:25px;

}

.processo-numero{

width:60px;

height:60px;

font-size:1.2rem;

}

.form-orcamento{

padding:22px;

border-radius:18px;

}

}


/*==========================================================
RESPONSIVO CELULAR PEQUENO
==========================================================*/

@media(max-width:480px){

.servico-texto h2{

font-size:1.8rem;

}

.titulo-centro h2{

font-size:1.8rem;

}

.form-orcamento{

padding:18px;

}

.campo-form input,
.campo-form select,
.campo-form textarea{

padding:14px;

}

}