/* MÍDIA KIT */
.mediakit-btn {
  display:flex; align-items:stretch; gap:0;
  background:rgba(255,255,255,0.08);
  border:1.5px solid rgba(255,255,255,0.18);
  border-radius:8px; overflow:hidden;
  text-decoration:none; margin-top:18px;
  transition:all 0.25s; cursor:pointer;
}

.mediakit-btn:hover {
  background:rgba(255,255,255,0.14);
  border-color:var(--gold);
  transform:translateY(-2px);
  box-shadow:0 8px 28px rgba(0,0,0,0.2);
}

.mediakit-capa {
  width:80px; flex-shrink:0;
  background:rgba(255,255,255,0.06);
  display:flex; align-items:center; justify-content:center;
  overflow:hidden;
}

.mediakit-capa img {
  width:100%; height:100%; object-fit:cover; display:block;
}

.mediakit-icone-fallback {
  flex-direction:column; align-items:center; justify-content:center;
  gap:6px; padding:12px 8px; text-align:center;
  color:rgba(255,255,255,0.5);
}

.mediakit-icone-fallback svg { width:28px; height:28px; }
.mediakit-icone-fallback span { font-size:9px; font-weight:700; letter-spacing:0.5px; text-transform:uppercase; line-height:1.4; color:rgba(255,255,255,0.45); }

.mediakit-info {
  padding:14px 16px; flex:1;
  display:flex; flex-direction:column; justify-content:center; gap:3px;
}

.mediakit-label {
  font-size:9px; font-weight:700; letter-spacing:1.5px;
  text-transform:uppercase; color:var(--gold);
}

.mediakit-titulo {
  font-family:var(--font-display); font-size:16px;
  font-weight:700; text-transform:uppercase;
  color:rgba(255,255,255,0.9); letter-spacing:0.5px;
}

.mediakit-desc {
  font-size:10px; color:rgba(255,255,255,0.45);
  line-height:1.5; margin-top:2px;
}

.mediakit-cta {
  display:flex; align-items:center; gap:5px; margin-top:8px;
  font-size:10px; font-weight:700; letter-spacing:1px;
  text-transform:uppercase; color:var(--gold-dark);
  transition:color 0.2s;
}

.mediakit-btn:hover .mediakit-cta { color:var(--gold); }

.page-hero { position:relative;height:72vh;min-height:520px;display:flex;align-items:flex-end;overflow:hidden; }
.page-hero-img {
  position:absolute;inset:0;
  background-image:url("../images/IMG_7089.jpg");
  /* mesma foto/enquadramento da página Credenciamento (era usada lá
     antes da troca — ver histórico de assets/css/visitante.css):
     posição "bottom" corta a metade de cima da foto, onde ficam os
     letreiros/marcas de expositor. */
  background-size:cover;background-position:center 100%;
  transform:scale(1.03);animation:heroZoom 10s ease-out forwards;
}
@keyframes heroZoom{from{transform:scale(1.03)}to{transform:scale(1)}}
.page-hero-grad { position:absolute;inset:0;z-index:1;background:linear-gradient(to bottom,rgba(0,0,0,0.1) 0%,rgba(2,51,102,0.8) 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(--green) 55%,var(--green-dark) 100%); }
.page-hero-content { position:relative;z-index:2;padding:0 64px 52px 72px;width:100%;display:grid;grid-template-columns:1fr auto;gap:40px;align-items:flex-end; }
.breadcrumb { display:flex;align-items:center;gap:8px;font-size:11px;color:rgba(255,255,255,0.4);margin-bottom:16px;letter-spacing:.5px; }
.breadcrumb a { color:rgba(255,255,255,0.4);text-decoration:none;transition:color .2s; }
.breadcrumb a:hover { color:var(--gold); }
.page-title { font-family:var(--font-display);font-weight:900;font-size:clamp(56px,7.5vw,100px);line-height:.88;text-transform:uppercase;letter-spacing:-2px;margin-bottom:20px; }
.page-title .w { display:block;color:var(--white); }
.page-title .g { display:block;color:var(--gold); }
.page-subtitle { font-size:15px;color:rgba(255,255,255,0.6);line-height:1.7;max-width:500px; }
.page-subtitle strong { color:rgba(255,255,255,0.85);font-weight:500; }
.hero-cta-box { display:flex;flex-direction:column;gap:10px;align-items:flex-end;flex-shrink:0; }
.hero-title {
  font-family: var(--font-display); font-weight: 900;
  font-size: clamp(68px, 8.5vw, 118px);
  line-height: 1; text-transform: uppercase;
  letter-spacing: 2px; margin-bottom: 20px;
}

.hero-title .t1 {
  display: block; color: var(--white);
  letter-spacing: 2px; opacity: 0; animation: slideRight 0.8s 0.8s cubic-bezier(0.16,1,0.3,1) forwards;
}

.hero-title .t2 {
  display: block; color: var(--blue);
  letter-spacing: 2px; opacity: 0; animation: slideRight 0.8s 0.95s cubic-bezier(0.16,1,0.3,1) forwards;
}

.hero-title .t3 {
  display: block;
  font-size: 0.34em; font-weight: 600;
  letter-spacing: 2px; color: rgba(255,255,255,0.45);
  margin-top: 8px; text-transform: uppercase;
  opacity: 0; animation: fadeUp 0.7s 1.1s forwards;
	}
/* INFOBAR */
.infobar { background:var(--white);border-top:3px solid var(--gold-dark);display:flex;box-shadow:0 4px 20px rgba(0,0,0,.1); }
.ib-item { display:flex;align-items:center;gap:14px;padding:18px 36px;border-right:1px solid var(--surface-2);flex:1; }
.ib-item:last-child { border-right:none; }
.ib-icon { width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0; }
.ib-icon.gold { background:rgba(204,146,15,.1);color:var(--gold-dark); }
.ib-icon.green { background:rgba(2,102,51,.08);color:var(--green-dark); }
.ib-icon.blue { background:rgba(24,107,179,.08);color:var(--blue-dark); }
.ib-icon svg { width:17px;height:17px; }
.ib-label { font-size:9px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--gray-light);margin-bottom:3px; }
.ib-value { font-family:var(--font-display);font-size:15px;font-weight:700;color:var(--graphite);line-height:1; }

/* FORMULÁRIO */
.formulario { background:var(--white);padding:80px 64px; }
.form-inner { display:grid;grid-template-columns:1fr 1.1fr;gap:80px;align-items:start; }
.form-left-intro { font-size:14px;color:var(--gray);line-height:1.8;margin-top:14px;margin-bottom:28px; }
.form-destaques { display:flex;flex-direction:column;gap:12px; }
.form-destaque { display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-radius:6px;background:var(--off-white);border:1.5px solid var(--surface-2); }
.form-destaque-icon { color:var(--green-dark);flex-shrink:0;margin-top:1px; }
.form-destaque-icon svg { width:18px;height:18px; }
.form-destaque-text { font-size:12px;color:var(--gray);line-height:1.5; }
.form-destaque-text strong { color:var(--graphite);font-weight:600;display:block;margin-bottom:2px; }
.form-card { background:var(--off-white);border:1.5px solid var(--surface-2);border-radius:10px;padding:36px;position:relative;overflow:hidden; }
.form-card::before { content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(to right,var(--gold-dark),var(--blue-dark)); }
.form-card-title { font-family:var(--font-display);font-size:24px;font-weight:900;text-transform:uppercase;color:var(--graphite);margin-bottom:4px; }
.form-card-sub { font-size:12px;color:var(--gray);margin-bottom:24px; }
.form-submit { width:100%;padding:15px;border-radius:4px;border:none;background:var(--blue-dark);color:var(--white);font-family:var(--font-display);font-weight:900;font-size:16px;letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;transition:all .25s;display:flex;align-items:center;justify-content:center;gap:8px; }
.form-submit:hover { background:var(--blue);transform:translateY(-2px);box-shadow:0 8px 28px rgba(24,107,179,.25); }
.form-submit svg { width:17px;height:17px; }
.form-note { font-size:10px;color:var(--gray-light);text-align:center;margin-top:12px;line-height:1.5; }

/* NÚMEROS */
.numeros { background:var(--off-white);display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--surface-2); }
.num-item { padding:32px 40px;border-right:1px solid var(--surface-2);position:relative; }
.num-item:last-child { border-right:none; }
.num-val { font-family:var(--font-number);font-size:48px;font-weight:900;color:var(--blue-dark);line-height:1;display:block; }
.num-unit { font-size:24px;color:var(--gold-dark); }
.num-label { font-size:12px;color:var(--gray);margin-top:6px;line-height:1.5; }
.num-bar { position:absolute;bottom:0;left:40px;height:3px;background:var(--blue-dark);width:40px; }

/* POR QUE EXPOR */
.porque { padding:80px 64px;background:var(--white); }
.porque-grid { display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start;margin-top:36px; }
.beneficios { display:flex;flex-direction:column;gap:14px; }
.beneficio { display:flex;align-items:flex-start;gap:14px;background:var(--off-white);border:1.5px solid var(--surface-2);border-radius:8px;padding:18px; }
.beneficio-icon { width:40px;height:40px;border-radius:8px;background:rgba(24,107,179,.08);display:flex;align-items:center;justify-content:center;color:var(--blue-dark);flex-shrink:0; }
.beneficio-icon svg { width:20px;height:20px; }
.beneficio-title { font-family:var(--font-display);font-size:15px;font-weight:800;text-transform:uppercase;color:var(--graphite);margin-bottom:4px; }
.beneficio-desc { font-size:12px;color:var(--gray);line-height:1.6; }
.expo-sidebar {}
.expo-date-box { background:var(--blue-dark);border-radius:10px;padding:32px;position:relative;overflow:hidden; }
.expo-date-label { font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,.5);margin-bottom:10px; }
.expo-date-value { font-family:var(--font-display);font-size:40px;font-weight:900;color:var(--white);line-height:1; }
.expo-date-month { font-size:.4em;color:var(--gold);letter-spacing:2px;display:block;margin-top:4px; }
.expo-date-place { font-size:12px;color:rgba(255,255,255,.5);margin-top:14px;line-height:1.6; }
.expo-contact-box { background:var(--off-white);border:1.5px solid var(--surface-2);border-radius:8px;padding:24px;margin-top:16px; }
.expo-contact-title { font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--gray-light);margin-bottom:14px; }
.expo-contact-item { display:flex;align-items:center;gap:10px;font-size:13px;color:var(--gray-dark);text-decoration:none;margin-bottom:10px; }
.expo-contact-item:last-child { margin-bottom:0; }
.expo-contact-item svg { width:16px;height:16px;color:var(--blue-dark);flex-shrink:0; }

/* PERFIL / INFOGRÁFICOS */
.perfil { padding:80px 64px;background:var(--surface); }
.perfil-card { background:var(--white);border:1.5px solid var(--surface-2);border-radius:8px;padding:24px;position:relative;overflow:hidden; }
.perfil-card::before { content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(to right,var(--green-dark),var(--gold-dark)); }
.perfil-card-title { font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--gray-light);margin-bottom:14px; }
.perfil-tags { display:flex;flex-wrap:wrap;gap:8px; }
.tag { font-size:11px;font-weight:600;padding:5px 12px;border-radius:3px; }
.tag.green { background:rgba(2,102,51,.08);border:1px solid rgba(2,102,51,.2);color:var(--green-dark); }
.tag.blue { background:rgba(24,107,179,.08);border:1px solid rgba(24,107,179,.2);color:var(--blue-dark); }
.tag.gold { background:rgba(204,146,15,.08);border:1px solid rgba(204,146,15,.25);color:var(--gold-dark); }

/* CTA FINAL */
.cta-final { background:var(--off-white);border-top:1px solid var(--surface-2);padding:56px 64px;display:flex;align-items:center;justify-content:space-between;gap:40px; }
.cta-final-title { font-family:var(--font-display);font-size:34px;font-weight:900;text-transform:uppercase;color:var(--graphite);margin-bottom:6px; }
.cta-final-sub { font-size:13px;color:var(--gray); }
.cta-final-actions { display:flex;gap:12px;flex-shrink:0; }
/* INFOGRÁFICOS */
.infografico-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }

.infografico-card {
  background:var(--off-white); border:1.5px solid var(--surface-2);
  border-radius:8px; padding:24px; position:relative; overflow:hidden;
}

.infografico-card::before { content:''; position:absolute; top:0; left:0; right:0; height:3px; background:linear-gradient(to right,var(--blue-dark),var(--gold-dark)); }

.infografico-titulo {
  display:flex; align-items:center; gap:8px;
  font-size:10px; font-weight:700; letter-spacing:1.5px;
  text-transform:uppercase; color:var(--gray-light);
  margin-bottom:20px;
}

.infografico-barras { display:flex; flex-direction:column; gap:12px; }

.barra-item { display:flex; align-items:center; gap:10px; }
.barra-label { font-size:11px; color:var(--gray-dark); min-width:160px; }
.barra-track { flex:1; height:8px; background:var(--surface-2); border-radius:4px; overflow:hidden; }
.barra-fill { height:100%; border-radius:4px; transition:width 1s ease; }
.barra-pct { font-family:var(--font-display); font-size:14px; font-weight:700; color:var(--graphite); min-width:36px; text-align:right; }

.infografico-mapa { display:flex; flex-direction:column; gap:12px; }
.origem-item { display:flex; align-items:center; gap:10px; }
.origem-bandeira { font-size:18px; flex-shrink:0; width:24px; }
.origem-info { flex:1; }
.origem-pais { font-size:11px; color:var(--gray-dark); margin-bottom:4px; }
.origem-barra-wrap { height:6px; background:var(--surface-2); border-radius:3px; overflow:hidden; }
.origem-barra { height:100%; border-radius:3px; }
.origem-pct { font-family:var(--font-display); font-size:14px; font-weight:700; color:var(--graphite); min-width:36px; text-align:right; }

.infografico-numeros { background:var(--blue-dark); border-color:var(--blue-dark); }
.infografico-numeros::before { background:linear-gradient(to right,var(--gold),var(--gold-dark)); }
.infografico-numeros .infografico-titulo { color:rgba(255,255,255,0.5); }
.infografico-numeros .infografico-titulo svg { color:var(--gold); }

.numeros-chave-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }

.numero-chave { text-align:center; padding:16px 8px; background:rgba(255,255,255,0.06); border-radius:6px; border:1px solid rgba(255,255,255,0.1); }
.numero-chave-val { font-family:var(--font-display); font-size:36px; font-weight:700; color:var(--gold); line-height:1; margin-bottom:6px; }
.numero-chave-label { font-size:10px; color:rgba(255,255,255,0.55); text-transform:uppercase; letter-spacing:0.5px; line-height:1.4; }

/* RESULTADOS */
.resultados { padding:80px 64px; background:var(--white); }
.resultados-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:36px; }
.resultado-card { background:var(--off-white); border:1.5px solid var(--surface-2); border-radius:8px; padding:28px; text-align:center; }
.resultado-pct { font-family:var(--font-display); font-size:48px; font-weight:900; color:var(--green-dark); line-height:1; margin-bottom:10px; }
.resultado-desc { font-size:13px; color:var(--gray-dark); line-height:1.6; }

/* SUSTENTABILIDADE */
.sustentabilidade { padding:80px 64px; background:var(--surface); display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center; }
.sust-selo { display:flex; align-items:center; gap:14px; margin-top:24px; padding:16px 20px; background:var(--white); border:1.5px solid var(--surface-2); border-radius:8px; }

/* LISTA + PLANTA */
.expositores-planta { padding:80px 64px; background:var(--white); }
.exp-planta-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-top:36px; }
.exp-planta-card { display:flex; flex-direction:column; justify-content:center; background:var(--off-white); border:1.5px solid var(--surface-2); border-radius:10px; padding:36px; text-decoration:none; transition:all .25s; }
.exp-planta-card:hover { border-color:var(--blue-dark); box-shadow:var(--shadow-md); transform:translateY(-3px); }
.exp-planta-icon { width:52px; height:52px; border-radius:50%; background:rgba(24,107,179,.1); display:flex; align-items:center; justify-content:center; margin-bottom:16px; }
.exp-planta-titulo { font-family:var(--font-display); font-size:20px; font-weight:800; text-transform:uppercase; color:var(--graphite); margin-bottom:8px; }
.exp-planta-desc { font-size:13px; color:var(--gray); line-height:1.6; margin-bottom:16px; }
.exp-planta-cta { display:flex; align-items:center; gap:8px; font-family:var(--font-display); font-size:12px; font-weight:700; letter-spacing:1px; text-transform:uppercase; color:var(--blue-dark); text-decoration:none; }

/* FAQ */
.faq { padding:80px 64px; background:var(--surface); max-width:900px; margin:0 auto; }
.faq-item { background:var(--white); border:1.5px solid var(--surface-2); border-radius:8px; margin-bottom:10px; overflow:hidden; }
.faq-pergunta { display:flex; align-items:center; justify-content:space-between; padding:18px 22px; cursor:pointer; font-family:var(--font-body); font-weight:600; font-size:14px; color:var(--graphite); }
.faq-pergunta svg { width:18px; height:18px; color:var(--blue-dark); flex-shrink:0; transition:transform .25s; }
.faq-item.aberto .faq-pergunta svg { transform:rotate(180deg); }
.faq-resposta { max-height:0; overflow:hidden; transition:max-height .3s ease; }
.faq-resposta-inner { padding:0 22px 18px; font-size:13px; color:var(--gray); line-height:1.7; }
.faq-item.aberto .faq-resposta { max-height:300px; }

@media (max-width: 768px) {

  .page-hero { height: 56vh; min-height: 400px; }
  .page-hero-content {
    grid-template-columns: 1fr;
    padding: 0 20px 28px 24px;
    gap: 16px;
  }
  .page-title { font-size: clamp(40px, 13vw, 68px); letter-spacing: -1px; }
  .page-subtitle { font-size: 13px; }
  .hero-cta-box { align-items: flex-start; }
  .hero-cta-box a { width: 100%; justify-content: center; }

  .infobar { flex-direction: column; }
  .ib-item { padding: 14px 20px; border-right: none; border-bottom: 1px solid var(--surface-2); }
  .ib-item:last-child { border-bottom: none; }

  .formulario { padding: 40px 20px; }
  .form-inner { grid-template-columns: 1fr; gap: 28px; }
  .form-row { grid-template-columns: 1fr; }

  .numeros { grid-template-columns: 1fr 1fr; }
  .num-item { padding: 20px 16px; }
  .num-val { font-size: 36px; }

  .porque { padding: 40px 20px; }
  .porque-grid { grid-template-columns: 1fr; gap: 28px; }

  .perfil { padding: 40px 20px; }
  .infografico-grid { grid-template-columns: 1fr; }
  .barra-label { min-width: 110px; font-size: 10px; }
  .numeros-chave-grid { grid-template-columns: 1fr 1fr; }

  .cta-final { flex-direction: column; padding: 36px 20px; gap: 20px; }
  .cta-final-actions { flex-direction: column; width: 100%; }
  .cta-final-actions a { width: 100%; justify-content: center; text-align: center; }

  .section-title { font-size: clamp(26px, 7vw, 36px); }

  section[style*="grid-template-columns:1fr 1fr"] { grid-template-columns:1fr !important; padding:40px 20px !important; gap:28px !important; }
  section[style*="repeat(4,1fr)"] div[style*="display:grid"] { grid-template-columns:repeat(2,1fr) !important; }

  .resultados { padding:40px 20px; }
  .resultados-grid { grid-template-columns:1fr; gap:14px; }

  .sustentabilidade { padding:40px 20px; grid-template-columns:1fr; gap:28px; }

  .expositores-planta { padding:40px 20px; }
  .exp-planta-grid { grid-template-columns:1fr; }

  .faq { padding:40px 20px; }

}
