@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;700&family=Playfair+Display:ital,wght@0,700;1,700&display=swap');
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
  scroll-padding-top: 80px; /* altura aproximada do header sticky */
}
:root{
  --azul: #be1d66;        /* cor principal - títulos, header, textos de destaque */
  --azul-escuro: #6d173c; /* hover / fundos escuros - versão mais escura da principal */
  --rosa: #F13D8C;        /* cor de ação - botões, links, CTAs */
  --rosa-escuro: #D6237A; /* hover do botão de destaque */
  --dourado: #B8912F;     /* mantido - explico abaixo */
  --creme: #FDF3F7;        /* fundo alternativo, mais quente que branco puro */
  --fundoprincipal: #FFFFFF;
  --textoprincipal:  #2B2230; /* preto levemente puxado pro roxo, combina mais com rosa que preto puro */
  --textosecundario: #6b5a63;
  --textofooter:#f1f1f1;
  --borda: rgba(27,42,99,0.12);
  --sombra-suave: 0 10px 30px rgba(27,42,99,0.08);
}
body {
    background-color: var(--fundoprincipal);  
    font-family: "Montserrat", sans-serif;
    line-height: 1.8;
    color:var(--textoprincipal);
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

h1, h2, h3 {
  font-family: "Playfair Display", serif;
  color: var(--azul);
  font-weight: 700;
  letter-spacing: -0.01em;
}
h1 { font-size: 34px; line-height: 1.25; }
h2 { font-size: 26px; margin-bottom: 20px; }
h3 { font-size: 19px; }
h1 {
  font-size: clamp(24px, 5vw + 1rem, 34px);
}
h2 {
  font-size: clamp(20px, 4vw + 0.5rem, 28px);
}
.banner-content h1 {
  font-size: clamp(26px, 6vw + 1rem, 52px);
}

.pagina-titulo h1,
.transparencia-header h1,
.contato-header h1,
.apoiar-header h1 {
  font-size: 2.4rem;
}

p { font-size: 16px; line-height: 1.75; color: var(--textosecundario); }

main{
    flex: 1;
}
.container{
    width:90%;
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 20px;
}
.container-texto {
  max-width: 720px;
  margin: 0 auto;
}
section{
    padding: 90px 0;
}

footer{
    background-color: var(--azul-escuro);
    color: var(--textofooter);
    opacity: 1;
    padding: 40px 0;
    text-align: center;
}

.projetos h2{
    text-align: center;
    margin-bottom: 40px;
}

