@import url("https://use.typekit.net/gmo4vbh.css");
a {
  color: #5eeaea;
}


  :root{
    --black:#0a0a13;
    --navy:#12111f;
    --purple:#7c4dff;
    --purple-dim:#5b2ecb;
    --cyan:#5eeaea;
    --cream:#f1eeff;
    --white:#ffffff;
    --ink-70: rgba(241,238,255,.72);
    --ink-45: rgba(241,238,255,.45);
    --radius-lg: 28px;
    --radius-md: 18px;
    --font-display:'new-order', sans-serif;
    --font-body:'Inter', sans-serif;
    --font-mono:'JetBrains Mono', monospace;
  }

body{
    background:var(--black);
    color:var(--white);
 
    overflow-x:hidden;
    -webkit-font-smoothing:antialiased;
  }
   

  /* ---------- noise + grid utility ---------- */
.grain {
  position: absolute;
  inset: 0;
  pointer-events: none;

  opacity: 0.8;
  mix-blend-mode: soft-light;

  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='1.2' numOctaves='4' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");

  background-size: 180px 180px;

 
}

 


  .grid-overlay{
    position:absolute; inset:0;
    background-image:
      linear-gradient(to right, rgba(241,238,255,.06) 1px, transparent 1px),
      linear-gradient(to bottom, rgba(241,238,255,.06) 1px, transparent 1px);
    background-size:42px 42px;
    pointer-events:none;
    -webkit-mask-image: radial-gradient(ellipse 90% 100% at 50% 0%, black 40%, transparent 85%);
            mask-image: radial-gradient(ellipse 90% 100% at 50% 0%, black 40%, transparent 85%);
            
      animation: gridMove 1s linear infinite;

  }
  
  @keyframes gridMove {
  from {
    background-position: 0 0;
  }

  to {
    background-position: -42px 0;
  }
}
  
  /* ---------- signature block glyph ---------- */
  .block-glyph{ position:absolute; filter:drop-shadow(0 30px 60px rgba(124,77,255,.25)); }

  /* ============ NAV ============ */
  header.nav{
    position:sticky; top:0; z-index:50;
    display:flex; align-items:center; justify-content:space-between;
    padding:18px clamp(20px,5vw,64px);
    background:rgba(10,10,19,.7);
    backdrop-filter:blur(14px);
    border-bottom:1px solid rgba(241,238,255,.08);
  }
   
  /* ============ HERO ============ */
  .hero{
    position:relative;
    overflow: hidden;
    min-height:clamp(620px, 92vh, 880px);
    display:flex; flex-direction:column; align-items:center; justify-content:center;
    text-align:center;
    padding:120px 24px 100px;
    background:
      radial-gradient(circle at 12% 100%, rgba(124,77,255,.55), transparent 55%),
      radial-gradient(circle at 90% 5%, rgba(94,234,234,.4), transparent 45%),
      var(--black);
  }
  .hero-content{ position:relative; z-index:2;  }
  .eyebrow{
    display:inline-flex; align-items:center; gap:10px;
    font-family:var(--font-mono); font-size:clamp(0.68rem, 1vw, 0.78rem); letter-spacing:.14em; text-transform:uppercase;
    color:var(--cream); background:rgba(241,238,255,.08); border:1px solid rgba(241,238,255,.18);
    padding:8px 18px; border-radius:100px; margin-bottom:28px;
  }
  .eyebrow .dot{ width:7px; height:7px; border-radius:50%; background:var(--cyan); box-shadow:0 0 12px var(--cyan);}
  h1.hero-title{
    font-family:var(--font-display); font-weight:700;
    font-size:clamp(1.6rem, 6vw, 5rem);
    line-height:1.05;
    color:var(--white);
    gap: 1rem;
  width: fit-content;
  margin: auto;
     
  }
  .w-fit{
    width: fit-content;
  }
 
  h1.hero-title .sub{   color: white; font-weight:600; margin-top:10px;}
  .hero-desc{ margin:30px auto 0; max-width:570px; color:var(--ink-70);  line-height:1.6;}
  .hero-actions{ margin-top:42px; display:flex; gap:16px; justify-content:center; flex-wrap:wrap; }
  .btn-primary{
    font-family:var(--font-body); font-weight:700; font-size:.98rem;
    background:var(--cyan); color:#062626; padding:16px 32px; border-radius:100px;
    transition:transform .2s ease, box-shadow .2s ease;
    box-shadow:0 10px 30px rgba(94,234,234,.25);
  }
  .btn-primary:hover{ transform:translateY(-3px); box-shadow:0 14px 34px rgba(94,234,234,.4);}
  .btn-ghost{
    font-family:var(--font-body); font-weight:700; font-size:.98rem;
    color:var(--white); padding:16px 30px; border-radius:100px;
    border:1.5px solid rgba(241,238,255,.3);
    transition:border-color .2s ease, background .2s ease;
  }
  .btn-ghost:hover{ border-color:var(--white); background:rgba(255,255,255,.06); }

  .hero-glyph-right{ top:8%; right:-40px; width:170px; opacity:.9; }
  .hero-glyph-left{ bottom:6%; left:-30px; width:120px; opacity:.55; transform:rotate(180deg); }
  
  /* ============ INFO STRIP ============ */
  .info-strip{
 
    z-index: 2;
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    justify-content: center;
    max-width: 880px;
    margin: -46px auto 0;
    padding: 0 20px 10px;
    width: 100%;
    justify-content: center;
    align-items: center;
    left: 0;
    right: 0;
 
  }
  .info-pill{
    display:flex; align-items:center; gap:12px;
    background:rgba(18,17,31,.85);
    border:1px solid rgba(241,238,255,.12);
    backdrop-filter:blur(10px);
    padding:16px 22px; border-radius:var(--radius-md);
    flex:1 1 240px;
  }
  .info-pill .ic{ width:38px; height:38px; border-radius:11px; display:flex; align-items:center; justify-content:center; flex-shrink:0;}
  .info-pill .ic svg{ width:20px; height:20px; }
  .info-pill .txt .k{ font-size:.72rem; text-transform:uppercase; letter-spacing:.08em; color:var(--ink-45); font-family:var(--font-mono); }
  .info-pill .txt .v{ font-weight:700; font-size:.98rem; margin-top:2px; }

  /* ============ SECTION WRAP ============ */
  section{ position:relative; padding:110px 24px; }
  .section-inner{ max-width:1080px; margin:0 auto; position:relative; z-index:2; }
  .section-tag{
    font-family:var(--font-mono); font-size:.78rem; letter-spacing:.14em; text-transform:uppercase;
    color:var(--cyan); margin-bottom:14px; display:block;
  }
  .section-title{
    font-family:var(--font-display); font-weight:700; font-size:clamp(1.9rem,4vw,2.9rem);
    max-width:640px; line-height:1.1;
  }
  .section-desc{ color:var(--ink-70); max-width:560px; margin-top:18px; font-size:1.02rem; line-height:1.6;}
  
  
  
  
  
  
  

  /* ============ PROGRAMAÇÃO ============ */
  .programacao{ background:var(--navy); }
  .day-tabs{
    display:flex; gap:10px; margin-top:44px; margin-bottom:46px; flex-wrap:wrap;
  }
  .day-tab{
    font-family:var(--font-body); font-weight:700; font-size:.92rem;
    padding:13px 24px; border-radius:100px; cursor:pointer;
    border:1.5px solid rgba(241,238,255,.16); color:var(--ink-70);
    background:transparent; transition:all .2s ease; display:flex; flex-direction:column; align-items:flex-start; gap:2px;
  }
  .day-tab .d-label{ font-size:.68rem; font-family:var(--font-mono); text-transform:uppercase; letter-spacing:.08em; opacity:.7;}
  .day-tab.active{ background:var(--cyan); border-color:var(--cyan); color:#062626; }
  .day-tab.active .d-label{ opacity:.6; }

  .day-panel{ display:none; }
  .day-panel.active{ display:block; animation:fadein .35s ease; }
  @keyframes fadein{ from{opacity:0; transform:translateY(8px);} to{opacity:1; transform:translateY(0);} }

  .session-list{ display:flex; flex-direction:column; gap:14px; }
  .session{
    display:flex; gap:20px; align-items:flex-start;
    background:rgba(241,238,255,.03);
    border:1px solid rgba(241,238,255,.09);
    border-radius:var(--radius-md);
    padding:24px;
    transition:border-color .2s ease, background .2s ease, transform .2s ease;
  }
  .session:hover{ border-color:rgba(94,234,234,.4); background:rgba(241,238,255,.05); transform:translateY(-2px); }
  .session .ic-wrap{
    width:48px; height:48px; border-radius:14px; flex-shrink:0;
    background:rgba(94,234,234,.12); display:flex; align-items:center; justify-content:center;
  }
  .session .ic-wrap svg{ width:24px; height:24px; }
  .session .body{ flex:1; display:flex; flex-direction:column; gap:6px; }
  .session .top-row{ display:flex; align-items:flex-start; justify-content:space-between; gap:16px;  }
  .session .title{  font-size:1.02rem; line-height:1.4; }
  .session .title b{ font-weight:800; }
  .session .time-pill{
    font-family:var(--font-mono); font-weight:700; font-size:.8rem;
    background:rgba(124,77,255,.2); color:var(--cream);
    padding:6px 14px; border-radius:100px; white-space:nowrap; flex-shrink:0;
    border:1px solid rgba(124,77,255,.35);
  }
  .session .loc{ color:var(--ink-45); font-size:.88rem; display:flex; align-items:center; gap:6px; }
  
  
  
  
  
  

  
  /* ============ SIGNATURE STRIP DIVIDER ============ */
  .glyph-divider{ display:flex; justify-content:center; padding:70px 0; background:var(--black); overflow:hidden;}

  /* ============ CTA FINAL ============ */
  .cta-final{
    background:
      radial-gradient(circle at 80% 20%, rgba(94,234,234,.35), transparent 50%),
      radial-gradient(circle at 15% 90%, rgba(124,77,255,.45), transparent 50%),
      var(--black);
    text-align:center;
  }
  .cta-final .section-title{ margin:0 auto; }
  .cta-final .section-desc{ margin-left:auto; margin-right:auto; }
  .cta-final .hero-actions{ margin-top:38px; }

  /* ============ FOOTER ============ */
  footer{ background:#08080f; padding:50px 24px 34px; border-top:1px solid rgba(241,238,255,.08); }
  .footer-inner{ max-width:1080px; margin:0 auto; }
  .partners{
    display:flex; flex-wrap:wrap; gap:32px; justify-content:center;
    padding-bottom:36px; margin-bottom:30px; border-bottom:1px solid rgba(241,238,255,.08);
  }
  .partner-badge{
    font-family:var(--font-display); font-weight:600; font-size:.92rem;
    color:var(--ink-70); background:rgba(241,238,255,.04);
    border:1px solid rgba(241,238,255,.1);
    padding:14px 22px; border-radius:14px;
  }
  .footer-bottom{ display:flex; justify-content:space-between; flex-wrap:wrap; gap:14px; color:var(--ink-45); font-size:.85rem; }

  /* ============ RESPONSIVE ============ */
  @media (max-width:820px){
    .hide-mobile{ display:none; }
    .about-grid{ grid-template-columns:1fr; }
    .hero{ padding-top:100px; }
    section{ padding:80px 20px; }
  }
  @media (prefers-reduced-motion: reduce){
    *{ animation:none !important; transition:none !important; }
  }
  
  .partners-logo{
    max-height: 150px;
    width: auto;
  }
  
  
  
