/* Home: oito modelos em quatro colunas no desktop. */
.models-grid-home{grid-template-columns:repeat(4,1fr);}

/* Seção preservada para reativação futura. */
.clients{display:none;}

/* ===========================
   MODELOS
=========================== */

.models{
    background:white;
}

.models-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:32px;
    margin-bottom: 35px;
    margin-top:70px;
}

.model-card{
    border-radius:26px;
    overflow:hidden;
    background:white;
    box-shadow:var(--shadow-sm);
    transition:.4s;
}

.model-card:hover{
    transform:translateY(-12px);
    box-shadow:var(--shadow-lg);
}

.model-image{
    overflow:hidden;
    aspect-ratio:1;
}

.model-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:.5s;
}

.model-card:hover img{

    transform:scale(1.08);

}

.model-content{

    padding:30px;

}

.model-content h3{

    margin-bottom:12px;

}

.model-content span{

    color:var(--primary);

    font-weight:700;

}

/* ===========================================
   SEGMENTOS
=========================================== */

.segments{

    background:var(--background-alt);

}

.segments-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:32px;

    margin-top:70px;

}

.segment-card{

    display:block;

    position:relative;

    overflow:hidden;

    border-radius:26px;

    min-height:420px;

    box-shadow:var(--shadow-sm);

    color:inherit;

    text-decoration:none;

}

.segment-card img{

    position:absolute;

    inset:0;

    width:100%;

    height:100%;

    object-fit:cover;

    transition:.6s;

}

.segment-overlay{
    position:absolute;
    inset:0;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    padding:40px;
    background:linear-gradient(
        transparent,
        rgba(0,0,0,.82)
    );
}

.segment-overlay h3{
    color:white;
    margin-bottom:14px;
}

.segment-overlay span{
    color:white;
    font-weight:600;
    opacity:.85;
}

.segment-card:hover img{
    transform:scale(1.08);
}

.segment-card:hover{
    transform:translateY(-8px);
    transition:.35s;
}

/* ===========================================
   AMBIENTES
=========================================== */

.environments{

    background:#FFF;

}

.environment-grid{

    display:grid;

    gap:60px;

    margin-top:70px;

}

.environment-card{

    display:grid;

    grid-template-columns:1.2fr .8fr;

    overflow:hidden;

    border-radius:30px;

    background:white;

    box-shadow:var(--shadow-md);

}

.environment-image{

    overflow:hidden;

}

.environment-image img{

    width:100%;

    height:100%;

    object-fit:cover;

    transition:.6s;

}

.environment-card:hover img{

    transform:scale(1.05);

}

.environment-content{

    padding:60px;

    display:flex;

    flex-direction:column;

    justify-content:center;

}

.environment-content h3{

    margin-bottom:30px;

}

.environment-specs{

    display:grid;

    gap:20px;

    margin-bottom:40px;

}

.environment-specs strong{

    display:block;

    margin-bottom:5px;

    color:var(--primary);

}

.environment-specs span{

    color:var(--text-light);

}

/*=========================================
=            DIFERENCIAIS                 =
=========================================*/

.advantages{

    background:var(--background-alt);

}

.advantages-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:32px;

    margin-top:70px;

}

.advantage-card{

    background:#FFF;

    border-radius:24px;

    padding:45px 35px;

    text-align:center;

    transition:.35s;

    box-shadow:var(--shadow-sm);

    border:1px solid rgba(0,0,0,.04);

}

.advantage-card:hover{

    transform:translateY(-8px);

    box-shadow:var(--shadow-lg);

}

.advantage-icon{
    width:80px;
    height:80px;
    margin:0 auto 25px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(91,53,213,.08);
}

.advantage-icon i{
    font-size:34px;
    color:var(--primary);
}

.advantage-card h3{
    margin-bottom:18px;
}

.advantage-card p{
    color:var(--text-light);
    line-height:1.8;
}

/*=========================================
=          COMO FUNCIONA                  =
=========================================*/

.process{

    background:#FFF;

}

.process-grid{

    display:grid;

    grid-template-columns:repeat(5,1fr);

    gap:30px;

    margin-top:70px;

}

.process-item{

    position:relative;

    background:#FFF;

    padding:40px 30px;

    border-radius:24px;

    text-align:center;

    box-shadow:var(--shadow-sm);

    border:1px solid rgba(0,0,0,.05);

    transition:.35s;

}

.process-item:hover{

    transform:translateY(-8px);

    box-shadow:var(--shadow-lg);

}

.process-number{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:72px;
    height:72px;
    margin-bottom:25px;
    border-radius:50%;
    background:var(--primary);
    color:#FFF;
    font-size:28px;
    font-weight:700;
}

.process-item h3{
    margin-bottom:18px;
}

.process-item p{
    color:var(--text-light);
    line-height:1.8;
}

/*=========================================
=          EMPRESAS ATENDIDAS             =
=========================================*/

.clients{

    background:var(--background-alt);

    overflow:hidden;

}

.clients-slider{

    margin-top:70px;

    overflow:hidden;

}

.clients-track{

    display:flex;

    gap:40px;

    width:max-content;

    animation:clientsScroll 40s linear infinite;

}

.client-item{

    width:220px;

    height:120px;

    background:#FFF;

    border-radius:18px;

    display:flex;

    align-items:center;

    justify-content:center;

    box-shadow:var(--shadow-sm);

    flex-shrink:0;

}

.client-item img{

    max-width:70%;

    max-height:60%;

    filter:grayscale(100%);

    opacity:.75;

    transition:.35s;

}

.client-item:hover img{

    filter:none;

    opacity:1;

}

@keyframes clientsScroll{
    from{
        transform:translateX(0);
    }
    to{
        transform:translateX(-50%);
    }
}

/*=========================================
=          PROJETOS                       =
=========================================*/

.projects{

    background:#FFF;

}

.projects-grid{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:40px;

    margin-top:70px;

}

.project-card{

    overflow:hidden;

    border-radius:26px;

    background:#FFF;

    box-shadow:var(--shadow-sm);

    transition:.35s;

}

.project-card:hover{

    transform:translateY(-8px);

    box-shadow:var(--shadow-lg);

}

.project-image{

    overflow:hidden;

    aspect-ratio:16/10;

}

.project-image img{

    width:100%;

    height:100%;

    object-fit:cover;

    transition:.5s;

}

.project-card:hover img{

    transform:scale(1.05);

}

.project-content{
    padding:30px;
}

.project-category{
    display:inline-block;
    padding:8px 16px;
    border-radius:30px;
    background:rgba(91,53,213,.08);
    color:var(--primary);
    font-size:.85rem;
    font-weight:600;
    margin-bottom:18px;
}

.project-content h3{
    margin-bottom:10px;
}

.project-content p{
    color:var(--text-light);
}

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

.faq{

    background:var(--background-alt);

}

.faq-list{

    max-width:900px;

    margin:70px auto 0;

}

.faq-item{

    background:#FFF;

    border-radius:18px;

    overflow:hidden;

    margin-bottom:18px;

    box-shadow:var(--shadow-sm);

}

.faq-question{

    width:100%;

    border:none;

    background:#FFF;

    padding:28px 35px;

    display:flex;

    justify-content:space-between;

    align-items:center;

    cursor:pointer;

    font-size:1.05rem;

    font-weight:600;

}

.faq-question::after{content:'+';color:var(--primary);font-size:1.6rem;font-weight:400;line-height:1;}
.faq-item[open] .faq-question::after{content:'−';}
.faq-question::-webkit-details-marker{display:none;}

.faq-answer{overflow:hidden;}

.faq-answer p{

    padding:0 35px 30px;

    color:var(--text-light);

    line-height:1.8;

}


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

.final-cta{
    padding:120px 0;
    background:linear-gradient(
        135deg,
        var(--primary),
        var(--primary-dark)
    );
}

.final-cta-wrapper{
    display:grid;
    grid-template-columns:1fr 520px;
    gap:70px;
    align-items:stretch;
}

.final-cta-content{
    color:#FFF;
}

.final-cta-content h2{
    color:#FFF;
    margin:20px 0 30px;
}

.final-cta-content p{
    opacity:.9;
    font-size:1.1rem;
    line-height:1.9;
    margin-bottom:35px;
}

.final-cta-list{
    display:grid;
    gap:18px;
    margin-bottom:40px;
}

.final-cta-list li{
    font-size:1.05rem;
}

.final-cta-buttons{
    display:flex;
    gap:20px;
    flex-wrap:wrap;
}

.final-cta-image{
    height:100%;

    overflow:hidden;
    border-radius:30px;
    box-shadow:var(--shadow-lg);
}

.final-cta-image img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
}

.advantage-symbol{
    color:var(--primary);
    font-size:32px;
    font-weight:700;
    line-height:1;
}

/* Catálogo: escala compacta para leitura rápida de muitos modelos. */

.models-grid{
    grid-template-columns:repeat(auto-fill,minmax(250px,1fr));
    gap:22px;
}

.models .model-card{
    border:1px solid var(--border);
    border-radius:18px;
}

.models .model-card:hover{
    transform:translateY(-5px);
}

.models .model-image{
    aspect-ratio:4/3;
    background:var(--background-alt);
}

.models .model-content{
    padding:20px;
}

.models .model-content h2,
.models .model-content h3{
    margin:0 0 8px;
    font-size:1.15rem;
    line-height:1.25;
}

.models .model-content span{
    font-size:.84rem;
}
