/* ============ ÜBER UNS (sobre.css) ============ */
/* Estrutura e layout. Cores/typografia vêm do base.css. */

/* 1) Filosofia (texto + vídeo) */
.sobre-nos .filosofia-conteudo{
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-4);
  align-items: flex-start;
  justify-content: space-between;
}
.sobre-nos .filosofia-conteudo .texto{ flex: 1 1 55%; min-width: 280px; }
.sobre-nos .filosofia-conteudo .video-container{ flex: 1 1 40%; min-width: 280px; }
.sobre-nos .filosofia-conteudo .video-container video{
  width: 100%;
  height: auto;
  display: block;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0,0,0,.08);
}
/* Espaço padrão entre seções desta página */ section{ margin-bottom:100px; }

/* 2) Pilares */
#pilares .pilares{ margin-top: var(--space-3); }
#pilares h2{ text-align: center; }
.pilares-grid{
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: var(--space-3);
  margin: var(--space-4) 0;
}
.pilar{
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0,0,0,.06);
  padding: var(--space-2);
  text-align: left;
}
.pilar img{
  display: block;
  max-width: 140px;
  height: auto;
  margin: 0 0 var(--space-1) 0;
}

/* 3) Split (vídeo/imagem + texto) */
.split{
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: var(--space-4);
  align-items: center;
}
.split-media{ margin: 0; }
.split-media img,
.split-media video{
  width: 100%;
  height: auto;
  display: block;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0,0,0,.08);
  object-fit: cover;
}
.split-content h2{ margin-bottom: var(--space-2); }
.split-content p { margin-top: var(--space-2); }
.split.reverse .split-media{ order: 2; }
.split.reverse .split-content{ order: 1; }

/* ===================== RESPONSIVO ===================== */

/* ≤ 1024px (tablet) */
@media (max-width:1024px){
  /* Filosofia: empilha; vídeo full-width (100vw) com altura automática */
  .sobre-nos .filosofia-conteudo{ flex-direction: column; gap: var(--space-2); }
  .sobre-nos .filosofia-conteudo .video-container{
    position: relative;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    height: auto;
    min-height: 0;
    overflow: visible;
    background: transparent;
  }
  .sobre-nos .filosofia-conteudo .video-container video{
    position: static;
    inset: auto;
    width: 100%;
    height: auto;
    border-radius: 0;
    box-shadow: none;
    object-fit: contain;
  }
  section{ margin-bottom:50px; }
  /* Pilares: 2 colunas */
  .pilares-grid{ grid-template-columns: 1fr 1fr; }

  /* Split: empilha; mídia full-width (100vw), altura automática */
  .split{ grid-template-columns: 1fr; }
  .split-media{
    position: relative;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    height: auto;
    min-height: 0;
    overflow: visible;
    background: transparent;
  }
  .split-media img,
  .split-media video{
    position: static;
    inset: auto;
    width: 100%;
    height: auto;
    border-radius: 0;
    box-shadow: none;
    object-fit: contain;
  }
}

/* ≤ 768px (mobile) */
@media (max-width:768px){
  .pilares-grid{ grid-template-columns: 1fr; }
  .pilar img{ max-width: 120px; }
}

/* ≤ 480px (mobile pequeno) */
@media (max-width:480px){
  /* mantém comportamento; ajuste fino se necessário */
}
/* Pilares — mobile: imagem maior + centralização */
@media (max-width: 768px){
  .pilares-grid{
    grid-template-columns: 1fr;    /* um por linha */
    justify-items: center;         /* centraliza o card na coluna */
    gap: var(--space-3);
  }
  .pilar{
    text-align: center;            /* centraliza títulos e textos */
    padding: var(--space-3);
    max-width: 560px;              /* largura confortável opcional */
  }
  .pilar img{
    display: block;
    margin: 0 auto var(--space-2); /* centraliza a imagem */
    max-width: clamp(160px, 50vw, 100px); /* imagem MAIOR no mobile */
    height: auto;
  }
  .pilar h3,
  .pilar p{
    text-align: center;
  }
}
