/* ==========================================================================
   29º ENECE — estilos exclusivos da versão ONE PAGE
   Carregue sempre DEPOIS de style.css
   ========================================================================== */

/* Espaçamento de âncora considerando o header fixo */
html{scroll-padding-top:calc(var(--header-h) + 8px)}
.anchor{scroll-margin-top:calc(var(--header-h) + 8px)}

/* ---------- Hero da one page ---------- */
.hero--op{min-height:min(100vh,860px);padding-bottom:120px}
.hero--op .hero__inner{max-width:820px}
.hero__date{
  font-family:var(--f-head);font-weight:800;color:#fff;
  font-size:clamp(1.05rem,2.2vw,1.45rem);letter-spacing:.02em;
  line-height:1.5;margin-bottom:1.9rem;
}
.hero__date em{
  display:block;font-style:normal;font-weight:400;font-family:var(--f-body);
  font-size:.95rem;color:rgba(255,255,255,.78);letter-spacing:0;margin-top:.35rem;
}
.hero__scroll{
  position:absolute;left:50%;bottom:104px;transform:translateX(-50%);z-index:3;
  display:grid;place-items:center;gap:.4rem;color:rgba(255,255,255,.7);
  font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;font-weight:600;
}
.hero__scroll span{display:block;width:1px;height:34px;background:linear-gradient(rgba(255,255,255,.7),transparent);animation:sc 1.8s var(--ease) infinite}
@keyframes sc{0%{opacity:0;transform:scaleY(.2);transform-origin:top}50%{opacity:1}100%{opacity:0;transform:scaleY(1);transform-origin:bottom}}
@media (max-width:900px){.hero__scroll{display:none}}

/* ---------- Divisor em onda (como o "onda.png" da referência) ---------- */
.wave{position:absolute;left:0;right:0;bottom:-1px;z-index:2;line-height:0;pointer-events:none}
.wave svg{display:block;width:100%;height:clamp(48px,7vw,96px)}
.wave--up{top:-1px;bottom:auto;transform:rotate(180deg)}

/* ---------- Faixa "Realização / Apoio" ---------- */
.org{background:#fff;border-bottom:1px solid var(--grey-100)}
.org__inner{
  display:flex;flex-wrap:wrap;align-items:center;justify-content:center;
  gap:clamp(1.4rem,4vw,3.4rem);padding:1.9rem 0;
}
.org__label{
  font-family:var(--f-head);font-weight:700;font-size:.74rem;letter-spacing:.2em;
  text-transform:uppercase;color:var(--grey-500);
}
.org__item{
  display:flex;align-items:center;gap:.8rem;
  font-family:var(--f-head);font-weight:800;color:var(--navy);
  font-size:1.02rem;letter-spacing:.02em;
}
.org__item img{height:38px;width:auto}
.org__item small{display:block;font-family:var(--f-body);font-weight:400;font-size:.72rem;letter-spacing:.1em;color:var(--grey-500);text-transform:uppercase;margin-top:.15rem}

/* Imagem "recortada" do bloco do evento */
.about-media{position:relative}
.about-media img{border-radius:var(--radius-lg);box-shadow:var(--shadow);width:100%;aspect-ratio:4/5;object-fit:cover}
.about-media::before{
  content:"";position:absolute;left:-26px;bottom:-26px;width:150px;height:150px;z-index:-1;
  border-radius:18px;opacity:.9;
}
.about-badge{
  position:absolute;right:-14px;bottom:26px;z-index:2;
  background:#fff;border-radius:16px;box-shadow:var(--shadow-lg);
  padding:1.1rem 1.4rem;text-align:center;border-top:4px solid var(--orange);
}
.about-badge b{display:block;font-family:var(--f-head);font-size:2rem;font-weight:800;color:var(--navy);line-height:1}
.about-badge span{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--grey-500);font-weight:600}
@media (max-width:900px){
  .about-media img{aspect-ratio:4/3}
  .about-badge{right:14px;bottom:14px;padding:.85rem 1.1rem}
}

/* ---------- Contatos ---------- */
.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:22px}
.contact-card{
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);
  border-radius:var(--radius);padding:1.9rem 1.6rem;transition:.25s var(--ease);
}
.contact-card:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.3);transform:translateY(-4px)}
.contact-card .ico{
  width:46px;height:46px;border-radius:12px;display:grid;place-items:center;
  background:rgba(235,102,24,.2);color:#ff9a55;margin-bottom:1rem;
}
.contact-card .ico svg{width:21px;height:21px}
.contact-card h3{font-size:1.05rem;margin-bottom:.45rem}
.contact-card p,.contact-card a{color:rgba(255,255,255,.8);font-size:.95rem}
.contact-card a:hover{color:#ff9a55}
.contact-card .socials{margin-top:.4rem}
.contact-card .socials a{background:rgba(255,255,255,.1)}

/* ---------- Menu: estado ativo por scrollspy ---------- */
.nav a.is-active{color:#fff}
.nav a.is-active::after{transform:scaleX(1)}
@media (max-width:960px){.nav a.is-active{color:var(--orange)}}

/* ---------- Ajustes finos ---------- */
.section--navy .card{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.14)}
.section--navy .card p{color:rgba(255,255,255,.75)}
.section--navy .card__icon{background:rgba(235,102,24,.2);color:#ff9a55}
.lead-center{max-width:720px;margin:0 auto 2.4rem;text-align:center;color:var(--grey-500);font-size:1.06rem}
