/* 
|-------------------------------------------------------------------------- 
| ACP-SG 
| QUEM SOMOS 
|-------------------------------------------------------------------------- 
*/ 
 
/* ========================================================= 
   HERO 
   ========================================================= */ 
 
.quem-somos-page { 
    overflow: hidden; 
} 
 
.quem-somos-hero { 
    position: relative; 
    min-height: 430px; 
    display: flex; 
    align-items: center; 
    padding: 90px 20px; 
    background: 
        linear-gradient( 
            135deg, 
            rgba(22, 45, 36, .94), 
            rgba(54, 82, 68, .86) 
        ), 
        url("../img/social/og-home.jpg") center / cover no-repeat; 
} 
 
.quem-somos-hero__content { 
    max-width: 820px; 
    color: #fff; 
} 
 
.quem-somos-hero__label, 
.quem-somos-intro__label, 
.quem-somos-cta__label { 
    display: block; 
    margin-bottom: 14px; 
    font-size: 12px; 
    font-weight: 700; 
    letter-spacing: .15em; 
} 
 
.quem-somos-hero__label { 
    color: rgba(255, 255, 255, .78); 
} 
 
.quem-somos-hero h1 { 
    margin: 0 0 20px; 
    font-size: clamp(42px, 6vw, 68px); 
    line-height: 1.05; 
    font-weight: 700; 
    color: #ffffff; 
} 
 
.quem-somos-hero p { 
    max-width: 720px; 
    margin: 0; 
    font-size: 19px; 
    line-height: 1.7; 
    color: rgba(255, 255, 255, .9); 
} 
 
 
/* ========================================================= 
   HISTÓRIA 
   ========================================================= */ 
 
.quem-somos-historia { 
    padding: 90px 20px 70px; 
    background: #fff; 
} 
 
.quem-somos-intro { 
    max-width: 850px; 
    margin: 0 auto 55px; 
    text-align: center; 
} 
 
.quem-somos-intro__label { 
    color: #65776d; 
} 
 
.quem-somos-intro h2 { 
    margin: 0 0 22px; 
    font-size: clamp(30px, 4vw, 46px); 
    line-height: 1.2; 
    color: #24372d; 
} 
 
.quem-somos-intro p { 
    margin: 0; 
    font-size: 18px; 
    line-height: 1.8; 
    color: #5d6b64; 
} 
 
.quem-somos-historia__texto { 
    max-width: 900px; 
    margin: 0 auto; 
} 
 
.quem-somos-historia__texto p { 
    margin: 0 0 25px; 
    font-size: 17px; 
    line-height: 1.85; 
    color: #4e5d55; 
} 
 
.quem-somos-historia__texto p:last-child { 
    margin-bottom: 0; 
} 
 
 
/* ========================================================= 
   PROPÓSITO 
   ========================================================= */ 
 
.quem-somos-proposito { 
    padding: 75px 20px; 
    background: #f4f6f4; 
    border-top: 1px solid #e4e9e5; 
    border-bottom: 1px solid #e4e9e5; 
} 
 
.quem-somos-proposito__grid { 
    display: grid; 
    grid-template-columns: repeat(3, minmax(0, 1fr)); 
    gap: 24px; 
    max-width: 1100px; 
    margin: 0 auto; 
} 
 
.quem-somos-proposito__card { 
    padding: 34px 30px; 
    background: #fff; 
    border: 1px solid #e1e7e3; 
    border-radius: 14px; 
    text-align: center; 
} 
 
.quem-somos-proposito__icone { 
    width: 54px; 
    height: 54px; 
    margin: 0 auto 20px; 
    display: flex; 
    align-items: center; 
    justify-content: center; 
    border-radius: 50%; 
    background: #e9efeb; 
    color: #405d4c; 
    font-size: 20px; 
} 
 
.quem-somos-proposito__card h2 { 
    margin: 0 0 12px; 
    font-size: 23px; 
    color: #263a30; 
} 
 
.quem-somos-proposito__card p { 
    margin: 0; 
    font-size: 15px; 
    line-height: 1.7; 
    color: #66736c; 
} 
 
 
/* ========================================================= 
   CTA 
   ========================================================= */ 
 
.quem-somos-cta { 
    padding: 85px 20px; 
} 
 
.quem-somos-cta__content { 
    max-width: 900px; 
    margin: 0 auto; 
    padding: 60px 50px; 
    text-align: center; 
    border-radius: 18px; 
    background: #eef3ef; 
    border: 1px solid #dce5df; 
} 
 
.quem-somos-cta__label { 
    color: #61756a; 
} 
 
.quem-somos-cta__content h2 { 
    margin: 0 0 14px; 
    font-size: clamp(30px, 4vw, 42px); 
    line-height: 1.15; 
    color: #203329; 
} 
 
.quem-somos-cta__content p { 
    max-width: 650px; 
    margin: 0 auto 28px; 
    font-size: 17px; 
    line-height: 1.7; 
    color: #56665d; 
} 
 
.quem-somos-cta__button { 
    display: inline-flex; 
    align-items: center; 
    justify-content: center; 
    gap: 10px; 
    min-height: 50px; 
    padding: 0 28px; 
    border-radius: 8px; 
    background: #263d30; 
    color: #fff; 
    font-size: 15px; 
    font-weight: 700; 
    text-decoration: none; 
    transition: 
        transform .2s ease, 
        opacity .2s ease, 
        box-shadow .2s ease; 
} 
 
.quem-somos-cta__button:hover { 
    transform: translateY(-2px); 
    opacity: .92; 
    box-shadow: 0 8px 20px rgba(0, 0, 0, .12); 
} 
 
 
/* ========================================================= 
   RESPONSIVO 
   ========================================================= */ 
 
@media (max-width: 800px) { 
 
    .quem-somos-hero { 
        min-height: 380px; 
        padding: 75px 20px; 
    } 
 
    .quem-somos-proposito__grid { 
        grid-template-columns: 1fr; 
        max-width: 600px; 
    } 
 
} 
 
@media (max-width: 600px) { 
 
    .quem-somos-hero { 
        min-height: 340px; 
        padding: 65px 18px; 
    } 
 
    .quem-somos-hero h1 { 
        font-size: 42px; 
    } 
 
    .quem-somos-hero p { 
        font-size: 16px; 
    } 
 
    .quem-somos-historia { 
        padding: 65px 18px 55px; 
    } 
 
    .quem-somos-intro { 
        margin-bottom: 40px; 
    } 
 
    .quem-somos-intro p { 
        font-size: 16px; 
    } 
 
    .quem-somos-historia__texto p { 
        font-size: 16px; 
        line-height: 1.75; 
    } 
 
    .quem-somos-proposito { 
        padding: 55px 18px; 
    } 
 
    .quem-somos-proposito__card { 
        padding: 28px 22px; 
    } 
 
    .quem-somos-cta { 
        padding: 55px 16px; 
    } 
 
    .quem-somos-cta__content { 
        padding: 42px 22px; 
        border-radius: 14px; 
    } 
 
    .quem-somos-cta__content p { 
        font-size: 16px; 
    } 
 
    .quem-somos-cta__button { 
        width: 100%; 
    } 
 
}


/* =========================================================
   IDENTIDADE INSTITUCIONAL / CNPJ
   ========================================================= */

.quem-somos-identidade {
    margin: 2rem auto 0;
    padding: 1.35rem 1.5rem;
    border: 1px solid rgba(24, 70, 54, 0.14);
    border-radius: 14px;
    background: rgba(24, 70, 54, 0.045);
    text-align: center;
}

.quem-somos-identidade__label {
    display: block;
    margin-bottom: .8rem;
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #65776d;
}

.quem-somos-identidade__cnpj {
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: 1rem;
    flex-wrap: wrap;
}

.quem-somos-identidade__titulo {
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: #405d4c;
}

.quem-somos-identidade__cnpj strong {
    display: inline-block;
    font-size: clamp(1.15rem, 2vw, 1.45rem);
    line-height: 1.25;
    letter-spacing: .03em;
    color: #203329;
}

.quem-somos-identidade__descricao {
    margin: .55rem 0 0;
    font-size: .9rem;
    line-height: 1.6;
    color: #66736c;
}

@media (max-width: 600px) {
    .quem-somos-identidade {
        padding: 1.1rem 1.15rem;
    }

    .quem-somos-identidade__cnpj {
        gap: .35rem;
    }

    .quem-somos-identidade__cnpj strong {
        width: 100%;
    }
}
