.page-hero { position:relative;height:60vh;min-height:440px;display:flex;align-items:flex-end;overflow:hidden; }
.page-hero-img {
  position:absolute;inset:0;
  background-image:url('../images/MG_3417.jpg');
  /* posição "bottom": corta o telão/backdrop com logos de patrocinador
     no topo da foto original. O resto ("Submar" nas costas das
     cadeiras) fica sob o gradiente escuro (.page-hero-grad), que é
     bem mais forte perto do rodapé onde fica o texto. */
  background-size:cover;background-position:center 60%;
}
.page-hero-grad { position:absolute;inset:0;z-index:1;background:linear-gradient(to bottom,rgba(0,0,0,.1) 0%,rgba(21,67,106,.9) 100%); }
.page-hero-accent { position:absolute;top:0;left:0;bottom:0;width:5px;z-index:5;background:linear-gradient(to bottom,var(--gold) 0%,var(--gold-dark) 30%,var(--blue) 55%,var(--blue-dark) 100%); }
.page-hero-content { position:relative;z-index:2;padding:0 64px 48px 72px;width:100%; }
.breadcrumb { display:flex;align-items:center;gap:8px;font-size:11px;color:rgba(255,255,255,.4);margin-bottom:16px; }
.breadcrumb a { color:rgba(255,255,255,.4);text-decoration:none; }
.breadcrumb a:hover { color:var(--gold); }
.breadcrumb span { color:rgba(255,255,255,.2); }
.forum-eyebrow { font-family:var(--font-display);font-size:13px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--gold);margin-bottom:10px; }
.page-title { font-family:var(--font-display);font-weight:900;font-size:clamp(36px,5.5vw,68px);line-height:1.02;text-transform:uppercase;letter-spacing:1px;color:white;margin-bottom:14px;max-width:800px; }
.page-subtitle { font-size:15px;color:rgba(255,255,255,.65);line-height:1.7;max-width:600px; }
.forum-hero-data { display:flex;align-items:center;gap:20px;margin-top:20px;flex-wrap:wrap; }
.forum-hero-data-item { display:flex;align-items:center;gap:8px;font-size:13px;color:rgba(255,255,255,.8); }
.forum-hero-data-item svg { width:16px;height:16px;color:var(--gold); }

/* CONTEXTO */
.contexto { padding:72px 64px 0;background:var(--white);max-width:1100px;margin:0 auto; }
.contexto p { font-size:14px;color:var(--gray);line-height:1.9;margin-bottom:18px; }
.contexto strong { color:var(--graphite);font-weight:600; }

/* LISTAS DE BENEFÍCIOS */
.beneficios-block { padding:48px 64px;max-width:1100px;margin:0 auto;background:var(--white); }
.beneficios-titulo { font-family:var(--font-display);font-size:22px;font-weight:800;text-transform:uppercase;color:var(--blue-dark);margin-bottom:18px;letter-spacing:1px; }
.beneficios-lista { display:flex;flex-direction:column;gap:10px;margin-bottom:8px; }
.beneficio-item { display:flex;align-items:flex-start;gap:12px;font-size:14px;color:var(--gray-dark);line-height:1.6; }
.beneficio-item svg { width:18px;height:18px;color:var(--green-dark);flex-shrink:0;margin-top:1px; }

/* PROGRAMAÇÃO */
.programacao { background:var(--off-white);padding:72px 64px; }
.dia-card { background:var(--white);border:1.5px solid var(--surface-2);border-radius:10px;padding:32px;margin-bottom:20px;max-width:1100px;margin-left:auto;margin-right:auto; }
.dia-header { display:flex;align-items:center;gap:16px;margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid var(--surface-2); }
.dia-num { font-family:var(--font-display);font-size:36px;font-weight:900;color:var(--blue-dark);line-height:1; }
.dia-data { font-size:12px;color:var(--gray-light);letter-spacing:1.2px;text-transform:uppercase; }
.periodo-label { font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--gold-dark);margin:20px 0 12px; }
.periodo-label:first-of-type { margin-top:0; }
.modulo-item { display:flex;gap:10px;padding:10px 0;border-bottom:1px solid var(--surface-2);font-size:13px;color:var(--gray-dark);line-height:1.6; }
.modulo-item:last-child { border-bottom:none; }
.modulo-item strong { color:var(--graphite);font-weight:700; }
.modulo-hora { flex:0 0 118px;font-family:var(--font-display);font-weight:700;font-size:13px;color:var(--blue-dark);white-space:nowrap; }
.modulo-conteudo { flex:1;min-width:0; }
.modulo-conteudo strong { display:block; }
.modulo-desc { display:block;margin-top:3px;font-size:12.5px;color:var(--gray);line-height:1.6; }
@media (max-width: 600px) {
  .modulo-item { flex-direction:column;gap:2px; }
  .modulo-hora { flex:none; }
  .modulo-hora:empty { display:none; }
}
.circuitos-grid { display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:14px;margin-bottom:16px; }
.circuito-card { border-radius:8px;overflow:hidden;position:relative;aspect-ratio:1; }
.circuito-card img { width:100%;height:100%;object-fit:cover;display:block; }
.circuito-label { position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(0,0,0,.85),transparent);color:white;font-size:10px;font-weight:700;padding:16px 8px 6px;text-align:center;text-transform:uppercase; }
.obs-box { background:var(--off-white);border-left:3px solid var(--gold-dark);padding:12px 16px;font-size:11px;color:var(--gray);line-height:1.6;margin-top:12px; }
.pdf-link { display:inline-flex;align-items:center;gap:8px;margin-top:24px;font-family:var(--font-display);font-size:13px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--blue-dark);text-decoration:none; }

/* PALESTRANTES */
.palestrantes { padding:72px 64px;background:var(--white); }
.palestrantes-grid { display:grid;grid-template-columns:repeat(5,1fr);gap:20px;margin-top:40px; }
.palestrante-card { text-align:center; }
.palestrante-foto { width:100%;aspect-ratio:1;border-radius:50%;overflow:hidden;margin-bottom:12px;border:3px solid var(--surface-2); }
.palestrante-foto img { width:100%;height:100%;object-fit:cover;display:block; }
.palestrante-nome { font-family:var(--font-display);font-size:13px;font-weight:700;color:var(--graphite);text-transform:uppercase;line-height:1.3;margin-bottom:4px;letter-spacing:1.2px }
.palestrante-cargo { font-size:11px;color:var(--gray);line-height:1.4; }
.palestrante-cargo strong { color:var(--blue-dark);display:block; }

/* PRODUTOS */
.produtos-forum { padding:72px 64px;background:var(--blue-dark); }
.produtos-forum-header { text-align:center;max-width:600px;margin:0 auto 40px; }
.produtos-grid { display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:900px;margin:0 auto; }
.produto-card { background:var(--white);border-radius:12px;overflow:hidden;display:flex;flex-direction:column; }
.produto-img { aspect-ratio:16/10;overflow:hidden; }
.produto-img img { width:100%;height:100%;object-fit:cover;display:block; }
.produto-body { padding:24px;flex:1;display:flex;flex-direction:column; }
.produto-nome { font-family:var(--font-display);font-size:17px;font-weight:800;text-transform:uppercase;color:var(--graphite);line-height:1.3;margin-bottom:10px; }
.produto-preco { font-family:var(--font-display);font-size:28px;font-weight:900;color:var(--green-dark);margin-bottom:16px; }
.produto-variantes { font-size:11px;color:var(--gray-light);margin-bottom:16px;flex:1; }
.desconto-box { max-width:900px;margin:32px auto 0;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);border-radius:8px;padding:20px 24px;text-align:center; }
.desconto-titulo { font-family:var(--font-display);font-size:14px;font-weight:800;color:var(--gold);text-transform:uppercase;letter-spacing:1px;margin-bottom:8px; }
.desconto-texto { font-size:12px;color:rgba(255,255,255,.6);line-height:1.6; }
.desconto-texto a { color:var(--gold); }

@media (max-width: 768px) {
  .page-hero-content { padding:0 20px 32px 24px; }
  .contexto { padding:40px 20px; }
  .beneficios-block { padding:0 20px 40px; }
  .programacao { padding:40px 20px; }
  .dia-card { padding:22px; }
  .circuitos-grid { grid-template-columns:repeat(2,1fr); }
  .palestrantes { padding:40px 20px; }
  .palestrantes-grid { grid-template-columns:repeat(2,1fr);gap:16px; }
  .produtos-forum { padding:40px 20px; }
  .produtos-grid { grid-template-columns:1fr; }
}

/* APOIO INSTITUCIONAL */
.forum-apoio-institucional { padding:48px 64px; background:var(--surface); text-align:center; }
.forum-apoio-logos { display:flex; justify-content:center; gap:24px; flex-wrap:wrap; }
.forum-apoio-logos .apoio-logo-static {
  width:210px; height:105px; padding:14px 24px;
  background:var(--white); border:1.5px solid var(--surface-2); border-radius:8px;
  display:flex; align-items:center; justify-content:center; overflow:hidden;
}
.forum-apoio-logos .apoio-logo-static img { max-width:100%; max-height:100%; object-fit:contain; }

@media (max-width: 768px) {
  .forum-apoio-institucional { padding:32px 20px; }
}
