/* Shared styles for the IC Conference pages. */
html:has(#ic-lp),
body:has(#ic-lp){
  margin: 0;
  padding: 0;
}
html:has(#ic-lp){
  scroll-behavior: smooth;
}

#ic-lp{
  --ic-primary-light: #d9bb7c;
  --ic-primary: #ac8950;
  --ic-on-primary: #3c2f00;
  position: relative;
  display: block;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  margin-top: 0;
  background:#131313;
  color:#e5e2e1;
  font-family:"Open Sans",sans-serif;
  line-height:1.5;
  contain: layout paint;
  scroll-behavior: smooth;
  /* clip (não hidden): hidden vira scroll container e quebra o nav sticky */
  overflow-x: clip;
}
/* Âncoras não ficam escondidas atrás do nav fixo (h-20) */
#ic-lp [id]{ scroll-margin-top: 5rem; }
#ic-lp *,
#ic-lp *::before,
#ic-lp *::after { box-sizing: border-box; border-style: solid; border-width: 0; }
#ic-lp h1, #ic-lp h2, #ic-lp h3, #ic-lp h4, #ic-lp h5, #ic-lp h6, #ic-lp p, #ic-lp ul, #ic-lp ol, #ic-lp li, #ic-lp figure, #ic-lp blockquote{
  margin:0; padding:0;
}
#ic-lp ul{ list-style:none; }
#ic-lp a{ color:inherit; text-decoration:none; background:none; }
#ic-lp img, #ic-lp svg{ display:block; max-width:100%; height:auto; }
#ic-lp button{
  background:none; border:0; padding:0; margin:0; font:inherit; color:inherit; cursor:pointer;
}
#ic-lp .glass-header{ background: rgba(19,19,19,.92); backdrop-filter: blur(20px); }
#ic-lp .gold-gradient{ background: linear-gradient(135deg,var(--ic-primary-light) 0%,var(--ic-primary) 100%); }
#ic-lp .badge-outline{ border:1px solid var(--ic-primary); color:var(--ic-primary); }
#ic-lp .speaker-daniel{
  background-image: linear-gradient(to top, rgba(0,0,0,.82), rgba(0,0,0,0) 65%), url("palestrante-daniel-cruz.jpg");
  background-position: center;
  background-size: cover;
}
#ic-lp .speaker-fabiano{
  background-image: linear-gradient(to top, rgba(0,0,0,.82), rgba(0,0,0,0) 65%), url("Foto-fabiano.webp");
  background-position: center;
  background-size: cover;
}
#ic-lp .speaker-fernanda{
  background-image: linear-gradient(to top, rgba(0,0,0,.82), rgba(0,0,0,0) 65%), url("foto-fernanda-rosa.jpg");
  background-position: center;
  background-size: cover;
}
#ic-lp .speaker-fabiano > div{ position: relative; z-index: 1; }
#ic-lp .speaker-fernanda > div{ position: relative; z-index: 1; }
#ic-lp .acc-grid{ display:grid; grid-template-rows: 0fr; transition: grid-template-rows .5s ease-in-out; }
#ic-lp .acc-grid.open{ grid-template-rows: 1fr; }
#ic-lp .acc-grid > div{ overflow:hidden; }
#ic-lp .acc-content{ opacity:0; transition: opacity .5s; }
#ic-lp .acc-grid.open .acc-content{ opacity:1; }
#ic-lp .acc-toggle{ transition: transform .5s ease-out; display:inline-block; }
#ic-lp .acc-toggle.open{ transform: rotate(45deg); }
#icMobileMenu{
  position: fixed; inset: 0; z-index: 2147483000;
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  gap: 2rem; padding: 1.5rem;
  background: #141414;
  opacity: 0; pointer-events: none;
  transition: opacity .25s ease;
  font-family: "Open Sans", sans-serif;
}
#icMobileClose{
  position: absolute;
  top: 1rem;
  right: 1rem;
  width: 2.5rem;
  height: 2.5rem;
  color: var(--ic-primary);
}
#icMobileMenu.open{ opacity:1; pointer-events:auto; }
#icMobileMenu a{
  color:#e5e2e1; text-decoration:none;
  font-family:"Playfair Display", serif;
  font-size: 1.5rem; letter-spacing:.04em; text-transform:uppercase;
  transition: color .2s;
}
#icMobileMenu a:hover{ color:var(--ic-primary); }
#icMobileMenu .ic-mm-cta{
  margin-top:1.5rem; padding: 1rem 2.5rem; font-size:.875rem;
  font-family:"Open Sans",sans-serif; font-weight:800; letter-spacing:.15em;
  color:var(--ic-on-primary); background: linear-gradient(135deg,var(--ic-primary-light) 0%,var(--ic-primary) 100%);
}
@media (min-width: 1024px){ #icMobileMenu{ display:none; } }
body.ic-lp-lock{ overflow:hidden !important; }
@media (prefers-reduced-motion: reduce){
  html:has(#ic-lp){ scroll-behavior: auto; }
}
#ic-lp section[id]{ scroll-margin-top: 5rem; }
