/* Seções da Home (Figma: frame Home 1:1100). A base comum está em css/base.css. */


/* ==================== Abertura: barra lateral + hero + escritório ==================== */
.abertura{position:relative}


/* ---- Hero ---- */
.hero{position:relative;height:calc(1030 * var(--u));overflow:hidden}
.hero-gradiente{position:absolute;inset:0;width:100%;height:100%}
.hero-simbolo{position:absolute;left:43.09%;top:-2.14%;width:57.39%;height:auto;opacity:.46;pointer-events:none}
.hero-predio{position:absolute;left:-9.7%;top:11.46%;width:110.92%;max-width:none;height:auto}
.hero-sombra{
  position:absolute;left:0;right:0;top:58.45%;bottom:0;
  background:linear-gradient(180deg,rgba(0,0,0,0) 17.655%,#000 100%);
}
.hero-titulo{
  position:absolute;left:calc(119 * var(--u));top:calc(268 * var(--u));width:max(300px, calc(419 * var(--u)));
  font-family:var(--titulo);font-size:max(26px, calc(36 * var(--u)));line-height:1.195;letter-spacing:-0.006em;color:var(--grafite);
}
.rotativo{
  position:absolute;right:calc(114 * var(--u));top:calc(235 * var(--u));
  width:calc(595 * var(--u));min-width:380px;min-height:calc(339 * var(--u));
  padding:calc(56 * var(--u)) calc(30 * var(--u)) calc(30 * var(--u)) calc(34 * var(--u));
  display:flex;flex-direction:column;justify-content:space-between;gap:24px;
}
.rotativo-itens{position:relative}
.rotativo-item{display:none}
.rotativo-item.ativo{display:block}
.rotativo-titulo{font-family:var(--titulo);font-size:max(19px, calc(24 * var(--u)));line-height:1.33;color:var(--branco);max-width:444px}
.rotativo-titulo a{color:inherit;transition:color .4s ease}
.rotativo-titulo a:hover{color:var(--pessego)}
.rotativo-rodape{display:flex;align-items:center;justify-content:space-between;gap:16px}
.rotativo-pontos{display:flex;align-items:center;gap:9px}
.ponto{width:12px;height:6px;border-radius:100px;background:rgba(255,255,255,.3)}
.ponto.ativo{height:8px;background:var(--pessego)}

/* ---- Excelência da execução à entrega ---- */
.escritorio{position:relative;padding-top:calc(133 * var(--u));padding-bottom:calc(87 * var(--u))}
.escritorio-grafismo{
  position:absolute;left:calc(935 * var(--u));top:calc(157 * var(--u));
  width:calc(819.5 * var(--u));height:auto;max-width:none;pointer-events:none;
}
.escritorio-titulo{
  position:relative;
  font-family:var(--titulo-leve);font-weight:300;font-size:max(34px, calc(48 * var(--u)));line-height:1.167;letter-spacing:-0.005em;color:#000;
  max-width:calc(468 * var(--u));min-width:300px;
}
.escritorio-grade{
  position:relative;margin-top:calc(59 * var(--u));
  display:grid;grid-template-columns:minmax(0,526fr) minmax(0,501fr);column-gap:calc(128 * var(--u));
  max-width:calc(1155 * var(--u));
}
.escritorio-grade .botao-circulo{margin-top:calc(41 * var(--u))}

/* ==================== Números ==================== */
.numeros{margin-top:calc(3 * var(--u))}

/* ==================== Atuações ==================== */
.atuacao{position:relative;padding-top:calc(150 * var(--u))}
.atuacao-grafismo{position:absolute;left:calc(-605 * var(--u));top:calc(264 * var(--u));width:calc(1022 * var(--u));max-width:none;height:auto;pointer-events:none}
.atuacao-grade{
  position:relative;margin-top:calc(45 * var(--u));
  display:grid;grid-template-columns:calc(440 * var(--u)) calc(632 * var(--u));justify-content:space-between;align-items:start;
}
.lista-areas{display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.area-item{
  display:flex;align-items:center;gap:12px;padding:13px 18px 13px 14px;border-radius:10px;
  font-family:var(--titulo);font-size:16px;color:var(--tinta-2);text-align:left;
}
.area-item{transition:background .4s ease, color .4s ease}
.area-item:hover{color:var(--preto)}
.area-item.ativo{background:rgba(255,255,255,.45);color:var(--preto);padding-left:12px;padding-right:14px}
/* Seta ao lado do item no hover: indica que leva para a página da área */
.area-item-seta{
  flex:none;display:flex;width:14px;height:12px;color:var(--preto);
  opacity:0;transform:translateX(-6px);
  transition:opacity .4s ease, transform .4s cubic-bezier(.16,1,.3,1);
}
.area-item-seta svg{width:14px;height:12px;transform:rotate(-45deg)}
.area-item:hover .area-item-seta,.area-item.ativo .area-item-seta{opacity:1;transform:translateX(0)}
.area-capa{position:relative}
.area-capa-seta{
  position:absolute;top:16px;right:16px;width:44px;height:44px;border-radius:100px;
  background:rgba(255,255,255,.88);color:var(--preto);display:flex;align-items:center;justify-content:center;
  opacity:0;transform:translate(-6px,6px) scale(.85);
  transition:opacity .4s ease, transform .5s cubic-bezier(.16,1,.3,1);
}
.area-capa-seta svg{width:16px;height:14px;transform:rotate(-45deg)}
.painel-area a:hover .area-capa-seta{opacity:1;transform:none}
.painel-area{padding:31px 31px 38px}
.area-capa{height:calc(299.5 * var(--u));min-height:200px;border-radius:14px;overflow:hidden}
.area-capa img{width:100%;height:100%;object-fit:cover}
.area-nome{margin-top:22px;font-family:var(--titulo);font-size:max(22px, calc(26 * var(--u)));color:var(--preto)}
.area-descricao{margin-top:11px;font-size:16px;line-height:1.6;color:var(--tinta-2);max-width:574px}

/* ==================== Reconhecimentos ==================== */
.reconhecimentos{padding-top:calc(196 * var(--u))}
.reconhecimentos .texto-lead{margin-top:calc(34 * var(--u));max-width:calc(638 * var(--u));min-width:300px}
.selos-viewport{
  margin-top:calc(68 * var(--u));margin-left:calc(40 * var(--u));
  overflow-x:auto;scrollbar-width:none;padding-bottom:20px;
}
.selos-viewport::-webkit-scrollbar{display:none}
.selos-trilha{display:flex;gap:calc(40 * var(--u));width:max-content;padding-right:calc(43 * var(--u))}
.selo-card{
  flex:none;width:260px;height:204px;border-radius:16px;background:#fff;overflow:hidden;
  box-shadow:0 16px 32px -24px rgba(59,58,60,.4);
  display:flex;align-items:center;justify-content:center;
}
.selo-card img{object-fit:contain}
.selo-card.cheio img{width:100%;height:100%;object-fit:cover}
.reconhecimentos .setas{margin-top:15px}

/* ==================== Equipe ==================== */
.equipe{padding-top:calc(110 * var(--u))}
.equipe-topo{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}
.equipe-topo .texto-lead{margin-top:calc(30 * var(--u));max-width:calc(515 * var(--u));min-width:300px}
.equipe-palco{
  margin-top:calc(51 * var(--u));
  margin-left:calc(-117 * var(--u));margin-right:calc(-263 * var(--u));
  display:grid;grid-template-columns:calc(559 * var(--u)) minmax(0,1fr);column-gap:calc(14 * var(--u));
}
.equipe-foto{height:calc(555 * var(--u));min-height:320px;border-radius:13px;overflow:hidden}
.equipe-foto img{width:100%;height:100%;object-fit:cover}
.equipe-lado{display:flex;flex-direction:column;justify-content:space-between;min-width:0}
.equipe-info{padding-left:calc(112 * var(--u));padding-top:calc(51 * var(--u))}
.equipe-nome{font-family:var(--titulo);font-size:max(26px, calc(36 * var(--u)));line-height:1.03;letter-spacing:-0.004em;color:var(--preto)}
.equipe-cargo,.equipe-area{display:block;font-size:max(16px, calc(18.5 * var(--u)));line-height:1.64;color:#000}
.equipe-cargo{margin-top:calc(16 * var(--u))}
.equipe-area{margin-top:calc(14 * var(--u))}
.equipe-mascara{overflow:hidden}
.equipe-acoes{margin-top:calc(35 * var(--u));display:flex;gap:12px}
.equipe-acao{
  width:46px;height:46px;border-radius:100px;background:rgba(255,255,255,.6);
  backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);
  display:flex;align-items:center;justify-content:center;
  font-family:"Figtree",sans-serif;font-weight:700;font-size:15px;color:var(--preto);
}
.equipe-acao{transition:transform .45s cubic-bezier(.16,1,.3,1), background .45s ease, color .45s ease}
.equipe-acao:hover{transform:translateY(-3px);background:var(--grafite);color:var(--branco)}
.equipe-acao img{width:46px;height:46px}
.equipe-filme{overflow:hidden;touch-action:pan-y}
.equipe-filme::-webkit-scrollbar{display:none}
.equipe-filme-trilha{display:flex;gap:calc(17 * var(--u));width:max-content}
.equipe-miniatura{flex:none;width:calc(234 * var(--u));min-width:140px;height:calc(232 * var(--u));min-height:140px;border-radius:13px;overflow:hidden;cursor:pointer}
.equipe-miniatura img{width:100%;height:100%;object-fit:cover}
.equipe-miniatura{transition:transform .5s cubic-bezier(.16,1,.3,1)}
.equipe-miniatura:hover{transform:translateY(-4px)}
.equipe .setas{margin-top:calc(31 * var(--u))}

/* ==================== Publicações ==================== */
.publicacoes{padding-top:calc(107 * var(--u))}
.publicacoes-topo{display:flex;align-items:center;justify-content:space-between;gap:24px}
.busca{
  flex:0 1 520px;display:flex;align-items:center;gap:10px;
  background:rgba(255,255,255,.55);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);
  border-radius:100px;padding:6px 6px 6px 22px;
}
.busca input{flex:1;min-width:0;background:none;border:0;font-family:var(--titulo);font-size:14.5px;color:var(--tinta)}
.busca input::placeholder{color:var(--tinta-3)}
.busca input:focus{outline:none}
.busca button:hover{background:var(--preto)}
.busca button{transition:background .4s ease;flex:none;background:var(--grafite);color:var(--branco);border-radius:100px;padding:11px 22px;font-family:var(--titulo);font-size:14px;text-transform:uppercase}

.publicacoes-grade{
  margin-top:calc(44 * var(--u));
  display:grid;grid-template-columns:calc(610 * var(--u)) minmax(0,1fr);column-gap:calc(52 * var(--u));align-items:start;
}
.pub-destaque{position:relative;display:block}
.pub-destaque-img{width:100%;height:auto}
.pub-destaque-vidro{
  position:absolute;left:4.43%;bottom:6.8%;width:70.2%;
  padding:max(18px, calc(34 * var(--u))) max(18px, calc(32 * var(--u))) max(16px, calc(30 * var(--u)));border-radius:20px;
  background:linear-gradient(160.5deg,rgba(236,228,219,.94),rgba(236,228,219,.58));
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  border:1px solid rgba(255,255,255,.18);
}
.pub-destaque-titulo{margin-top:max(10px, calc(18 * var(--u)));font-family:var(--titulo);font-size:16px;line-height:1.46;color:var(--preto);max-width:302px}
.pub-destaque .seta{position:absolute;left:89.2%;top:86.4%}

.pub-lista{display:flex;flex-direction:column;gap:10px;padding-top:4px}
/* Foto e texto com a mesma altura; seta menor para equilibrar */
.pub-item{display:grid;grid-template-columns:calc(200 * var(--u)) minmax(0,1fr);column-gap:max(18px, calc(28 * var(--u)));height:max(176px, calc(229 * var(--u)))}
.pub-item-img{width:100%;height:100%;border-radius:19px;object-fit:cover}
.pub-item-texto{display:flex;flex-direction:column;align-items:flex-start;padding:max(10px, calc(35 * var(--u))) 0 max(4px, calc(12 * var(--u)))}
.pub-item-titulo{margin-top:max(10px, calc(14 * var(--u)));font-family:var(--titulo);font-size:max(15px, calc(16 * var(--u)));line-height:1.46;color:var(--preto);max-width:290px}
.pub-item .seta{margin-top:auto;width:40px;height:40px}
.pub-item .seta svg{width:16px;height:14px}

/* ==================== Videocast ==================== */
.videocast{padding-top:calc(106 * var(--u));padding-bottom:calc(135 * var(--u))}
.videocast-grade{
  margin-top:calc(33 * var(--u));
  display:flex;justify-content:center;align-items:flex-start;gap:calc(101 * var(--u));
}
.video-card{width:calc(275 * var(--u));min-width:200px;padding-top:calc(74 * var(--u))}
.video-card.central{width:calc(357 * var(--u));min-width:250px;padding-top:0}
.video-capa{position:relative;border-radius:30px;overflow:hidden;aspect-ratio:275/249}
.video-card.central .video-capa{aspect-ratio:357/323}
.video-capa img{width:100%;height:100%;object-fit:cover}
.video-play{
  position:absolute;right:21px;bottom:16px;width:43px;height:43px;border-radius:100px;
  background:var(--grafite);color:var(--pessego);font-size:14px;
  display:flex;align-items:center;justify-content:center;padding-left:3px;
}
.video-play{transition:transform .5s cubic-bezier(.16,1,.3,1)}
.video-play:hover{transform:scale(1.1)}
.video-card.central .video-play{right:17px;bottom:24px;width:62px;height:62px;font-size:24px}
.video-card .pilulas{margin-top:13px}
.video-card.central .pilulas{margin-top:18px}
.video-card.central .pilula{font-size:15px}
.video-titulo{margin-top:24px;font-family:var(--titulo);font-size:21px;line-height:1.12;color:var(--preto)}
.video-card.central .video-titulo{font-size:24px;line-height:.98;max-width:300px}


/* ==================== Até 1024px: barra lateral estreita, ainda fixa ==================== */
@media (max-width:1024px){
  .hero{height:auto;min-height:640px;padding:96px 20px 40px;display:flex;flex-direction:column;gap:40px}
  .hero-titulo,.rotativo{position:relative;left:auto;right:auto;top:auto;width:auto;min-width:0}
  .hero-titulo{max-width:420px}
  .rotativo{min-height:260px;padding:32px 26px 24px;margin-top:auto}
  .rotativo-rodape{flex-wrap:wrap}
  .hero-simbolo{left:30%;width:90%}
  .hero-predio{left:-40%;top:25%;width:180%}
  .escritorio{padding-top:64px;padding-bottom:56px}
  .escritorio-grafismo{left:40%;width:110%}
  .escritorio-grade{grid-template-columns:1fr;row-gap:24px;margin-top:32px}
  .escritorio-grade .botao-circulo{margin-top:24px}
  .numeros{margin-top:0}
  .atuacao,.reconhecimentos,.equipe,.publicacoes,.videocast{padding-top:96px}
  .atuacao-grafismo{display:none}
  .atuacao-grade{grid-template-columns:1fr;row-gap:24px;margin-top:24px}
  .lista-areas{flex-direction:row;flex-wrap:wrap}
  .selos-viewport{margin-left:20px}
  .equipe-topo{flex-wrap:wrap}
  .equipe-palco{margin:32px 0 0;grid-template-columns:1fr;row-gap:24px}
  .equipe-info{padding:0}
  .equipe-filme{margin-top:24px;margin-right:-20px}
  .publicacoes-topo{flex-wrap:wrap}
  .publicacoes-grade{grid-template-columns:1fr;row-gap:24px;margin-top:32px}
  .pub-item{grid-template-columns:160px minmax(0,1fr);height:auto;min-height:180px}
  .videocast{padding-bottom:96px}
  .videocast-grade{justify-content:flex-start;overflow-x:auto;gap:24px;margin-right:-20px;padding-right:20px}
  .video-card{flex:none;padding-top:0}
}
@media (max-width:640px){
  .pub-item{grid-template-columns:1fr;row-gap:12px}
  .pub-item-img{height:200px}
  .pub-item-texto{padding-top:0}
}
