/* =============================================================
   PROJECT PAGE - RECALIBRATED (ORIGINAL ACCORDION SIZES)
============================================================= */

/* 1. CONFIGURAÇÕES GERAIS DE MÍDIA */
.project-content img, 
.project-content video {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
  margin-bottom: 24px;
}

.image-full { width: 100%; margin-bottom: 24px; }
.image-square { aspect-ratio: 1/1; object-fit: cover; }
.image-tall { aspect-ratio: 3/4; object-fit: cover; }

/* Estrutura de Grid para alinhamento das imagens */
.image-grid {
  display: grid;
  gap: 24px;
  margin: 48px 0;
}

.image-grid-col {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

/* 2. LAYOUT DESKTOP (1100px+) */
@media (min-width: 1100px) {
  .mobile-project-info {
    display: none !important;
  }

  .project-container {
    display: grid;
    grid-template-columns: 400px 1fr; /* */
    gap: 100px; /* */
    padding: 160px 6vw; /* */
    max-width: 1600px;
    margin: 0 auto;
    align-items: flex-start;
  }

  .project-sidebar {
    position: sticky; /* */
    top: 160px; /* */
  }

  .project-sidebar h1 {
    font-size: 48px; /* */
    font-weight: 500; /* */
    letter-spacing: -0.02em; /* */
    margin-bottom: 16px; /* */
  }

  .project-subtitle {
    font-size: 15px; /* */
    line-height: 1.6; /* */
    opacity: 0.7; /* */
    margin-bottom: 48px; /* */
  }

  /* --- MENU ACCORDION (TAMANHOS ORIGINAIS RESTAURADOS) --- */
  .sections-menu {
    margin: 40px 0; /* */
    display: flex;
    flex-direction: column;
    gap: 20px; /* */
  }

  .section-item {
    padding-left: 24px; /* */
    border-left: 2px solid rgba(255, 255, 255, 0.1); /* */
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1); /* */
    cursor: pointer;
  }

  .section-item.active {
    border-left-color: #dc512e; /* */
  }

  .section-number {
    font-size: 11px; /* Restaurado: */
    font-weight: 600; /* */
    letter-spacing: 0.1em; /* */
    opacity: 0.4; /* */
    display: block;
    margin-bottom: 2px; /* */
  }

  .section-name {
    font-size: 18px; /* Restaurado: */
    font-weight: 500; /* */
    color: rgba(255, 255, 255, 0.4); /* */
    transition: all 0.3s ease;
  }

  .section-item.active .section-name {
    color: #fff; /* */
    opacity: 1; /* */
  }

  .section-text {
    font-size: 14px; /* Restaurado: */
    line-height: 1.6; /* */
    color: rgba(255, 255, 255, 0.6); /* */
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transition: all 0.5s ease;
  }

  .section-item.active .section-text {
    max-height: 400px; /* */
    opacity: 1; /* */
    margin-top: 12px; /* */
  }

  /* --- METADADOS (AJUSTADOS PARA LEITURA SEM SEREM EXCESSIVOS) --- */
  .project-meta {
    margin-top: 64px; /* */
    padding-top: 32px; /* */
    border-top: 1px solid rgba(255, 255, 255, 0.1); /* */
    display: grid;
    grid-template-columns: 1fr 1fr; /* */
    gap: 32px; /* */
  }

  .meta-label {
    display: block;
    font-size: 11px; /* Ajuste equilibrado */
    text-transform: uppercase; /* */
    letter-spacing: 0.12em; /* */
    opacity: 0.4; /* */
    margin-bottom: 8px; /* */
  }

  .meta-value {
    font-size: 14px; /* Ajuste equilibrado para não sumir */
    line-height: 1.5; /* */
    opacity: 0.8; /* */
  }

  /* --- ALINHAMENTO DAS IMAGENS (FIX MANTIDO) --- */
  .image-grid {
    grid-template-columns: 2fr 1fr; /* */
    align-items: stretch; /* Estica a imagem da esquerda para alinhar o fundo */
  }

  .image-grid > .image-square {
    aspect-ratio: auto;
    height: 100%;
    margin-bottom: 0;
  }

  .image-grid-col .image-square {
    aspect-ratio: 1/1;
    margin-bottom: 0;
  }
}

/* 3. LAYOUT MOBILE (Abaixo de 1100px) */
@media (max-width: 1099px) {
  .project-container {
    padding: 180px 6vw 60px; /* */
  }
  .meta-item {
    display: flex;
    flex-direction: column; /* Faz o valor ficar abaixo do rótulo */
    gap: 4px;              /* Pequeno espaço entre rótulo e valor */
    margin-bottom: 20px;    /* Espaço entre cada bloco (Client, Year, etc) */
  }
  .project-sidebar .sections-menu {
    display: none !important; /* */
  }

  .project-sidebar h1 {
    font-size: 32px; /* */
    font-weight: 500; /* */
    margin: 12px 0; /* */
  }

  .project-subtitle {
    font-size: 15px; /* */
    opacity: 0.7; /* */
    margin-bottom: 32px; /* */
    display: block;
  }

  .project-meta {
    display: flex; /* */
    flex-direction: column; /* */
    gap: 20px; /* */
    padding-top: 24px; /* */
    border-top: 1px solid rgba(255, 255, 255, 0.1); /* */
  }

  .mobile-project-info {
    display: block !important; /* */
    padding: 48px 0 24px; /* */
    border-bottom: 1px solid rgba(255, 255, 255, 0.1); /* */
    margin-bottom: 32px; /* */
  }

  .mobile-project-info h2 {
    font-size: 20px; /* */
    font-weight: 500; /* */
    margin-bottom: 12px; /* */
    color: #fff; /* */
    border-left: 3px solid #dc512e; /* */
    padding-left: 15px; /* */
  }

  .mobile-project-info p {
    font-size: 14px; /* */
    line-height: 1.7; /* */
    opacity: 0.7; /* */
  }

  .image-grid {
    display: flex; /* */
    flex-direction: column; /* */
    gap: 24px; /* */
  }
}

.meta-label {
  font-size: 11px;         /* Tamanho menor para o rótulo */
  text-transform: uppercase;
  letter-spacing: 0.1em;
  opacity: 0.5;            /* Deixa o rótulo mais "apagadinho" */
  display: block;
}

.meta-value {
  font-size: 15px;         /* Tamanho maior para o conteúdo */
  color: #fff;             /* Cor sólida para destacar */
  opacity: 1;
  font-weight: 500;
}