:root {

    --green: #14b8a6;
    --green-hover: #059669 ;
    --green-soft: #E8F6EF;

    --red: #C1272D;

    --black: #171717;

    --gray: #F5F6F8;

    --border: #ECECEC;

    --radius: 22px;

}

body {

    font-family: "Plus Jakarta Sans", sans-serif;
    background: white;
    color: var(--black);

}

/* ===========================
   PALETA PASTEL
   =========================== */

.primary{
    background: #14b8a6 !important;
    border-color: #14b8a6 !important;
    color: #fff !important;
}

.primary:hover{
    background: #0f9b8b !important;
    border-color: #0f9b8b !important;
}

/* Success */
.success{
    background: #6FCF97 !important;
    border-color: #6FCF97 !important;
    color: #fff !important;
}

.success:hover{
    background: #5DBE86 !important;
    border-color: #5DBE86 !important;
}

/* Danger */
.danger{
    background: #F28B82 !important;
    border-color: #F28B82 !important;
    color: #fff !important;
}

.danger:hover{
    background: #E9776E !important;
    border-color: #E9776E !important;
}

/* Warning */
.warning{
    background: #F6C66B !important;
    border-color: #F6C66B !important;
    color: #4B3A00 !important;
}

.warning:hover{
    background: #EDB94D !important;
    border-color: #EDB94D !important;
}

/* Info */
.info{
    background: #74C0FC !important;
    border-color: #74C0FC !important;
    color: #fff !important;
}

.info:hover{
    background: #58B2FA !important;
    border-color: #58B2FA !important;
}

/* Secondary */
.secondary{
    background: #B8C3D6 !important;
    border-color: #B8C3D6 !important;
    color: #fff !important;
}

.secondary:hover{
    background: #A4B1C8 !important;
    border-color: #A4B1C8 !important;
}

/* Dark */
.dark{
    background: #334155 !important;
    border-color: #334155 !important;
    color: #fff !important;
}

.dark:hover{
    background: #1F2937 !important;
    border-color: #1F2937 !important;
}

/* Light */
.light{
    background: #F8FAFC !important;
    border-color: #E5E7EB !important;
    color: #334155 !important;
}

.light:hover{
    background: #EEF2F7 !important;
}

.bg-primary{
    background: #14b8a6 !important;
}

.bg-success{
    background: #6FCF97 !important;
}

.bg-danger{
    background: #F28B82 !important;
}

.bg-warning{
    background: #F6C66B !important;
}

.bg-info{
    background: #74C0FC !important;
}

.bg-secondary{
    background: #B8C3D6 !important;
}

.bg-dark{
    background: #334155 !important;
}

.bg-light{
    background: #F8FAFC !important;
}






.navbar {

    background: white;
    border-bottom: 1px solid #efefef;
    padding: 18px 0;

}

.navbar-brand {

    font-weight: 800;
    font-size: 28px;
    letter-spacing: -1px;
    color: var(--black) !important;

}

.logo-dot {

    display: inline-block;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: var(--green);
    margin-right: 8px;

}

.nav-link {

    font-weight: 300;
    color: #616161 !important;
    margin: 0 10px;

}

.nav-link:hover {

    color: var(--green) !important;

}

.btn {
    font-size: 14px;
    font-weight: 600;
    border-radius: 999px;
    padding: 10px 28px;

}

.btn-main {

    background: var(--green);
    color: white;
    border: none;
    padding: 14px 28px;
    border-radius: 15px;
    font-weight: 700;

}

.btn-main:hover {

    background: var(--green-hover);
    color: white;

}


.hero{
    padding:60px 0 10px;
    background:#fff;
}
.hero-content{max-width:1050px;margin:auto;text-align:center;}
.hero-badge{display:inline-flex;align-items:center;justify-content:center;padding:10px 26px;border:1px solid #A7F3D0;border-radius:999px;color:var(--green);background:#fff;font-size:.95rem;font-weight:500;}
.hero-title{margin:35px 0 30px;font-size:50px;font-weight:500;line-height:1;letter-spacing:-2px;color:#111827;}
.hero-title span{color:var(--green);}
.hero-subtitle{max-width:780px;margin:0 auto 60px;font-size:1.1rem;line-height:1.6;color:#667085;}
.hero-search{display:flex;align-items:center;background:#fff;border:1px solid #E9EDF3;border-radius:999px;padding:12px;max-width:1100px;margin:auto;box-shadow:0 25px 55px rgba(15,23,42,.08);}
.hero-field{flex:1;display:flex;align-items:center;gap:18px;padding:0 28px;}
.hero-field i{color:#94A3B8;font-size:28px;}
.hero-field input{width:100%;border:none;outline:none;background:transparent;font-size:1.0rem;}
.hero-field input::placeholder{color:#94A3B8;}
.hero-divider{width:1px;height:50px;background:#E5E7EB;}
.hero-search .btn-main{height:70px;min-width:210px;border-radius:999px;font-size:1.25rem;font-weight:700;}
@media(max-width:992px){
.hero{padding:70px 0;}
.hero-title{font-size:3.2rem;letter-spacing:-2px;}
.hero-subtitle{font-size:1.2rem;}
.hero-search{flex-direction:column;border-radius:30px;gap:15px;}
.hero-divider{display:none;}
.hero-field{width:100%;}
.hero-search .btn-main{width:100%;}
}

.section {

    padding: 90px 0;

}

.section-title {

    font-size: 34px;
    font-weight: 800;
    margin-bottom: 45px;

}

.category {

    background: white;

    border: 1px solid var(--border);

    border-radius: 22px;

    padding: 35px 20px;

    transition: .25s;

    cursor: pointer;

    height: 100%;

}

.category:hover {

    transform: translateY(-5px);

    box-shadow: 0 20px 45px rgba(0, 0, 0, .08);

}

.category:hover .line {

    width: 100%;

}

.category i {

    font-size: 42px;

    color: var(--black);

    margin-bottom: 20px;

    display: block;

}

.category h5 {

    font-weight: 700;

}

.category small {

    color: #777;

}

.line {

    margin-top: 22px;

    height: 4px;

    background: var(--green);

    width: 40px;

    border-radius: 20px;

    transition: .3s;

}

.bg-soft {

    background: var(--gray);

}

.job {

    background: white;

    border-radius: 22px;

    border: 1px solid var(--border);

    padding: 30px;

    transition: .25s;

    height: 100%;

}

.job:hover {

    transform: translateY(-4px);

    box-shadow: 0 15px 40px rgba(0, 0, 0, .06);

}

.badge-job {

    background: var(--green-soft);

    color: var(--green);

    padding: 8px 16px;

    font-weight: 700;

    border-radius: 30px;

}

.job h4 {

    margin: 22px 0 10px;

    font-weight: 800;

}

.job p {

    color: #666;

}

.job a {

    font-weight: 700;

    text-decoration: none;

    color: var(--green);

}

footer {

    padding: 70px 0;

}

footer h4 {

    font-weight: 800;

}

.icon-btn {

    width: 42px;
    height: 42px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    background: #fff;
    border: 1px solid #eee;
    margin-left: 8px;
    cursor: pointer;
    transition: .25s;

}

.icon-btn:hover {

    background: var(--green-soft);

}

@media(max-width:992px) {

    .hero {

        padding: 60px 0;

    }

    .hero h1 {

        font-size: 42px;

    }

    .hero-image {

        margin-top: 50px;

    }

}

.step-card{

    background:#fff;

    border-radius:24px;

    padding:40px 30px;

    transition:.25s;

    border:1px solid #ececec;

    height:100%;

}

.step-card:hover{

    transform:translateY(-8px);

    box-shadow:0 20px 50px rgba(0,0,0,.08);

}

.step-icon{

    width:90px;

    height:90px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    margin:0 auto 25px;

    color:#006B3F;

    font-size:38px;

}

.step-number{

    font-size:14px;

    font-weight:800;

    color:#006B3F;

    letter-spacing:2px;

    margin-bottom:15px;

}

.step-card h4{

    font-weight:800;

    margin-bottom:18px;

}

.step-card p{

    color:#666;

    margin-bottom:0;

}

/* ===================================================== */
/* SERVIÇOS */
/* ===================================================== */

.service-card{

    background:#FFF;

    border-radius:22px;

    padding:35px 20px;

    display:flex;

    flex-direction:column;

    align-items:center;

    justify-content:center;

    gap:18px;

    color:#222;

    text-decoration:none;

    border:1px solid #ececec;

    transition:.25s;

    height:100%;

    box-shadow:0 5px 20px rgba(0,0,0,.04);

}

.service-card i{

    font-size:42px;

    color:var(--green);

}

.service-card span{

    font-weight:700;

    text-align:center;

}

.service-card:hover{

    transform:translateY(-8px);

    border-color:var(--green);

    color:var(--green);

    box-shadow:0 20px 45px rgba(0,107,63,.15);

}

.service-card-more{

    background:var(--green);

    color:#FFF;

}

.service-card-more i,

.service-card-more span{

    color:#FFF;

}

.service-card-more:hover{

    background:var(--green-hover);

    color:#FFF;

}


/* ===================================================== */
/* PEDIDOS */
/* ===================================================== */

.job-card{

    background:#FFF;

    border:1px solid #ececec;

    border-radius:22px;

    padding:30px;

    height:100%;

    transition:.25s;

    box-shadow:0 8px 25px rgba(0,0,0,.05);

}

.job-card:hover{

    transform:translateY(-8px);

    box-shadow:0 20px 45px rgba(0,0,0,.10);

}

.job-header{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:20px;

}

.job-category{

    background:#EAF7EF;

    color:var(--green);

    padding:8px 14px;

    border-radius:30px;

    font-size:.85rem;

    font-weight:700;

}

.job-time{

    color:#999;

    font-size:.85rem;

}

.job-card h4{

    font-size:1.3rem;

    font-weight:800;

    margin-bottom:15px;

}

.job-card p{

    color:#666;

    min-height:70px;

}

.job-footer{

    display:flex;

    justify-content:space-between;

    align-items:center;

    border-top:1px solid #eee;

    padding-top:18px;

    margin-top:20px;

    color:#666;

    font-size:.92rem;

}

.job-footer i{

    color:var(--green);

    margin-right:5px;

}

/* ===================================================== */
/* PROFISSIONAIS */
/* ===================================================== */

.professional-card{

    background:#FFF;

    border-radius:24px;

    padding:30px;

    border:1px solid #ececec;

    transition:.30s;

    height:100%;

    box-shadow:0 8px 25px rgba(0,0,0,.05);

}

.professional-card:hover{

    transform:translateY(-8px);

    box-shadow:0 20px 45px rgba(0,0,0,.10);

}

.professional-top{

    display:flex;

    align-items:center;

    gap:18px;

    margin-bottom:20px;

}

.professional-avatar{

    width:70px;

    height:70px;

    border-radius:50%;

    background:linear-gradient(135deg,var(--green),#009B5A);

    color:#FFF;

    display:flex;

    justify-content:center;

    align-items:center;

    font-weight:800;

    font-size:22px;

}

.professional-top h5{

    margin:0;

    font-weight:800;

}

.professional-rating{

    margin:20px 0;

    display:flex;

    align-items:center;

    gap:8px;

}

.professional-rating i{

    color:#FFC107;

}

.professional-rating span{

    color:#777;

    font-size:.9rem;

}

.professional-info{

    display:flex;

    justify-content:space-between;

    margin-bottom:22px;

    color:#666;

}

.professional-info i{

    color:var(--green);

    margin-right:5px;

}

.professional-tags{

    display:flex;

    flex-wrap:wrap;

    gap:10px;

}

.professional-tags span{

    background:#F3F5F7;

    padding:8px 14px;

    border-radius:50px;

    font-size:.85rem;

    font-weight:600;

}


/* ===================================================== */
/* VANTAGENS */
/* ===================================================== */

.feature-card{

    background:#FFF;

    border:1px solid #ececec;

    border-radius:24px;

    padding:40px 30px;

    text-align:center;

    height:100%;

    transition:.30s;

    box-shadow:0 8px 25px rgba(0,0,0,.04);

}

.feature-card:hover{

    transform:translateY(-8px);

    box-shadow:0 20px 45px rgba(0,0,0,.08);

}

.feature-icon{

    width:90px;

    height:90px;

    margin:0 auto 25px;

    border-radius:50%;

    background:linear-gradient(135deg,var(--green),#009B5A);

    display:flex;

    align-items:center;

    justify-content:center;

    color:#FFF;

    font-size:38px;

}

.feature-card h5{

    font-weight:800;

    margin-bottom:15px;

}

.feature-card p{

    color:#666;

    margin-bottom:0;

}

/* ===================================================== */
/* TESTEMUNHOS */
/* ===================================================== */

.testimonial-card{

    background:#FFF;

    border-radius:24px;

    padding:35px;

    border:1px solid #ececec;

    height:100%;

    transition:.30s;

    box-shadow:0 8px 25px rgba(0,0,0,.04);

}

.testimonial-card:hover{

    transform:translateY(-8px);

    box-shadow:0 20px 45px rgba(0,0,0,.08);

}

.testimonial-stars{

    color:#FFC107;

    font-size:18px;

    margin-bottom:20px;

}

.testimonial-text{

    font-size:1rem;

    line-height:1.8;

    color:#555;

    min-height:130px;

    font-style:italic;

}

.testimonial-user{

    display:flex;

    align-items:center;

    gap:15px;

    border-top:1px solid #eee;

    padding-top:20px;

}

.testimonial-avatar{

    width:60px;

    height:60px;

    border-radius:50%;

    background:linear-gradient(135deg,var(--green),#009B5A);

    color:#FFF;

    display:flex;

    align-items:center;

    justify-content:center;

    font-weight:800;

    font-size:20px;

}

.testimonial-user small{

    color:#888;

}

/* ===================================================== */
/* FAQ */
/* ===================================================== */

.faq-accordion .accordion-item{

    border:none;

    border-radius:20px;

    overflow:hidden;

    margin-bottom:20px;

    box-shadow:0 8px 25px rgba(0,0,0,.05);

}

.faq-accordion .accordion-button{

    background:#FFF;

    padding:22px 28px;

    font-size:1.08rem;

    font-weight:700;

    color:#222;

    box-shadow:none;

}

.faq-accordion .accordion-button:not(.collapsed){

    background:var(--green);

    color:#FFF;

}

.faq-accordion .accordion-button:focus{

    box-shadow:none;

}

.faq-accordion .accordion-body{

    padding:25px 28px;

    font-size:1rem;

    color:#666;

    line-height:1.8;

}

/* ===================================================== */
/* CTA */
/* ===================================================== */

.cta-box{

    background:linear-gradient(135deg,#006B3F,#009B5A);

    color:#FFF;

    border-radius:30px;

    padding:70px 60px;

    box-shadow:0 25px 60px rgba(0,107,63,.25);

}

.cta-box h2{

    font-size:2.7rem;

    font-weight:800;

    line-height:1.2;

}

.cta-box p{

    opacity:.95;

}

.cta-box .hero-badge{

    background:rgba(255,255,255,.15);

    color:#FFF;

}

.cta-box .btn-light{

    font-weight:700;

}

.cta-box .btn-outline-light{

    font-weight:700;

}

@media(max-width:992px){

    .cta-box{

        padding:50px 35px;

        text-align:center;

    }

    .cta-box h2{

        font-size:2rem;

    }

}

/*================================================*/

.footer{

    background:#F8F9FA;

    border-top:1px solid #E8E8E8;

    padding:70px 0 35px;

}

.footer-logo{

    color:#222;

    text-decoration:none;

    font-size:1.5rem;

    font-weight:800;

}

.footer p{

    color:#666;

}

.footer h6{

    font-weight:700;

    margin-bottom:20px;

    color:#222;

}

.footer-links{

    list-style:none;

    padding:0;

    margin:0;

}

.footer-links li{

    margin-bottom:10px;

}

.footer-links a{

    text-decoration:none;

    color:#666;

    transition:.2s;

}

.footer-links a:hover{

    color:var(--green);

}

.footer-socials{

    display:flex;

    gap:12px;

}

.footer-socials a{

    width:42px;

    height:42px;

    border-radius:50%;

    background:white;

    border:1px solid #DDD;

    display:flex;

    justify-content:center;

    align-items:center;

    color:#555;

    transition:.25s;

}

.footer-socials a:hover{

    background:var(--green);

    color:white;

    border-color:var(--green);

}

.footer hr{

    margin:45px 0 25px;

    border-color:#DDD;

}

.wizard-card{

    background:#fff;

    border-radius:22px;

    padding:45px;

    box-shadow:0 15px 40px rgba(0,0,0,.05);

}

.service-card{

    border:2px solid #edf2f7;

    border-radius:18px;

    padding:20px;

    display:flex;

    align-items:center;

    gap:18px;

    cursor:pointer;

    transition:.25s;

    height:100%;

    background:#fff;

}

.service-card:hover{

    border-color:#059669;

    transform:translateY(-3px);

    box-shadow:0 12px 25px rgba(0,0,0,.08);

}

.service-card i{

    font-size:34px;

    color:#059669;

    width:48px;

    text-align:center;

}

.service-card h5{

    margin-bottom:4px;

    font-weight:700;

}

.service-card small{

    color:#6c757d;

}

.progress{

    height:10px;

    border-radius:20px;

}

.progress-bar{

    border-radius:20px;

}

@media(max-width:768px){

    .wizard-card{

        padding:22px;

        border-radius:16px;

    }

    .service-card{

        padding:16px;

    }

}

.btn-primary{

    background: #000;;

    border-color: #000;

    color:#fff;

}

.btn-outline-primary{

    color: #000;

    border-color: #000;

}

.btn-outline-primary:hover{

    background: #000;

    color:#fff;

    border-color: #000;

}

.btn-main{

    background: var(--green);

    color: white;

    border: none;

    padding: 14px 28px;

    border-radius: 25px;

    font-weight: 700;

}

.active>.page-link, .page-link.active {

    background-color: #000;

    border-color: #000;
    color:#fff;

}

.page-link {

    color: #000;

}

.page-link.active, .page-link:focus, .page-link:hover {

    background-color: #000;

    border-color: #000;

    color:#fff;

}

.wizard-step{
    display:none;
}

.wizard-step.active{
    display:block;
}

.logo-text{
    font-weight:200;
    font-size:1.2rem;
}

.text-success{
    color:var(--green) !important;
}

.display-4 {
    font-size:2.5rem;
    font-weight:600;
    line-height:1.2;
}

.lead {
    font-size:1.1rem !important;
    color:#717078 !important;
}


.how-title{

    text-align:center;

    font-size:2rem;

    font-weight:600;

    color:#131b34;

    letter-spacing:-2px;

    margin-bottom:40px;
}

.how-card{

    height:100%;

    background:#fff;

    border:1px solid #E6ECF3;

    border-radius:34px;

    padding:48px;

    transition:.25s;

    font-size:10px !important;
}

.how-card:hover{

    transform:translateY(-6px);

    box-shadow:0 20px 45px rgba(15,23,42,.06);
}

.how-icon{

    width:45px;

    height:45px;

    border-radius:22px;

    background:#EAF8F2;

    color:var(--green);

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:32px;

    margin-bottom:40px;
}

.how-card small{

    display:block;

    color:#97A3C2;

    font-size:14px;

    margin-bottom:14px;
}

.how-card h3{

    font-size:1.5rem;

    font-weight:600;

    color:#081A3A;

    margin-bottom:20px;
}

.how-card p{

    color:#5E7090;

    font-size:1.0rem;

    line-height:1.7;

    margin:0;
}

@media(max-width:992px){

    .how-title{

        font-size:2.7rem;

        margin-bottom:40px;
    }

    .how-card{

        padding:35px;
    }

    .how-card h3{

        font-size:1.6rem;
    }

    .how-card p{

        font-size:1.1rem;
    }

}