/* =============================================
   SEMATEC UFMT 2026 — dark neon event interface
   Dark theme · green/blue technology fields · grain
   ============================================= */

:root{
  /* base */
  --bg:       #ffffff;
  --bg-2:     #f4faf7;
  --bg-card:  rgba(6,24,28,0.045);
  --border:   rgba(6,80,84,0.13);
  --text:     #081418;
  --muted:    rgba(8,20,24,0.62);
  --subtle:   rgba(15,188,255,0.24);

  /* blue-violet — Palestras */
  --violet:      #7f78ff;
  --violet-dim:  rgba(127,120,255,0.15);
  --violet-glow: rgba(127,120,255,0.3);

  /* cyan — Minicursos */
  --cyan:      #14c8ff;
  --cyan-dim:  rgba(20,200,255,0.14);
  --cyan-glow: rgba(20,200,255,0.28);

  /* soft periwinkle — Artigos */
  --amber:      #2ea7ff;
  --amber-dim:  rgba(46,167,255,0.14);
  --amber-glow: rgba(46,167,255,0.26);

  /* blue — Workshops */
  --rose:      #6f70ff;
  --rose-dim:  rgba(111,112,255,0.14);
  --rose-glow: rgba(111,112,255,0.26);
  --leaf:       #64f13f;

  --r-sm:   8px;
  --r-md:   14px;
  --r-lg:   20px;
  --r-xl:   28px;
  --ease:   cubic-bezier(.4,0,.2,1);
}

/* Home 2026: abertura institucional inspirada em layouts corporativos com vídeo. */
body.home-page{
  background:#f3f5f8;
}

body.home-page .nav{
  position:absolute !important;
  top:0 !important;
  padding:24px 0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  -webkit-backdrop-filter:none !important;
  backdrop-filter:none !important;
}

body.home-page .nav.scrolled{
  position:fixed !important;
  padding:13px 0 !important;
  background:rgba(10,18,31,.92) !important;
  border-bottom:1px solid rgba(255,255,255,.08) !important;
  -webkit-backdrop-filter:blur(16px) !important;
  backdrop-filter:blur(16px) !important;
}

body.home-page .nav-inner{
  width:min(100% - 48px, 1480px) !important;
  max-width:1480px !important;
  margin:0 auto !important;
  padding:0 28px !important;
}

body.home-page .nav:not(.scrolled) .nav-logo-img-white{
  opacity:0 !important;
}

body.home-page .nav:not(.scrolled) .nav-logo-img-black{
  display:block !important;
  opacity:1 !important;
}

body.home-page .nav.scrolled .nav-logo-img-white{
  opacity:1 !important;
}

body.home-page .nav.scrolled .nav-logo-img-black{
  opacity:0 !important;
}

body.home-page .nav.scrolled .nav-links a{
  color:rgba(255,255,255,.82) !important;
  -webkit-text-fill-color:rgba(255,255,255,.82) !important;
}

body.home-page .nav.scrolled .nav-links a:hover{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

body.home-page .nav:not(.scrolled) .nav-links a{
  color:#24364b !important;
  -webkit-text-fill-color:#24364b !important;
}

body.home-page .nav:not(.scrolled) .nav-links a:hover{
  color:#08182b !important;
  -webkit-text-fill-color:#08182b !important;
}

body.home-page .nav:not(.scrolled) .nav-cta{
  border:1px solid #17314e !important;
  background:#17314e !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

body.home-page .nav:not(.scrolled) .nav-burger span{
  background:#17314e !important;
}

body.home-page .hero{
  width:min(100% - 48px, 1480px) !important;
  height:min(760px, calc(100vh - 126px)) !important;
  min-height:620px !important;
  margin:102px auto 0 !important;
  border-radius:42px !important;
  overflow:hidden !important;
  background:#111b27 !important;
  box-shadow:0 24px 70px rgba(19,35,58,.16) !important;
}

.hero-background-video{
  position:absolute;
  inset:0;
  z-index:0;
  width:100%;
  height:100%;
  object-fit:cover;
}

body.home-page .hero-background-video{
  filter:saturate(.68) contrast(1.04) brightness(.82);
}

body.home-page .hero-overlay{
  background:
    linear-gradient(90deg, rgba(4,12,24,.88) 0%, rgba(4,12,24,.66) 42%, rgba(4,12,24,.26) 72%, rgba(4,12,24,.12) 100%),
    linear-gradient(180deg, rgba(4,12,24,.12) 0%, rgba(4,12,24,.06) 58%, rgba(4,12,24,.54) 100%) !important;
}

body.home-page .hero-body{
  width:100% !important;
  max-width:none !important;
  min-height:100% !important;
  align-items:flex-start !important;
  justify-content:center !important;
  padding:138px clamp(36px, 4.5vw, 86px) 74px !important;
  text-align:left !important;
}

body.home-page .hero-copy{
  max-width:760px !important;
  margin:0 !important;
}

body.home-page .hero-eyebrow{
  display:flex !important;
  width:fit-content !important;
  max-width:100% !important;
  justify-content:flex-start !important;
  margin:0 0 22px !important;
  padding:10px 20px !important;
  color:rgba(255,255,255,.72) !important;
  -webkit-text-fill-color:rgba(255,255,255,.72) !important;
  font-family:'Inter', sans-serif !important;
  font-size:.76rem !important;
  font-weight:600 !important;
  letter-spacing:.18em !important;
}

body.home-page .hero-title{
  max-width:760px !important;
  margin:0 !important;
  align-items:flex-start !important;
  font-family:'Inter', sans-serif !important;
  text-align:left !important;
  text-shadow:0 8px 32px rgba(0,0,0,.28) !important;
}

body.home-page .hero-brand{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  margin:0 0 18px !important;
  font-family:'Inter', sans-serif !important;
  font-size:clamp(3.2rem, 6vw, 6rem) !important;
  font-weight:750 !important;
  line-height:.94 !important;
  letter-spacing:-.055em !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

body.home-page .hero-brand-main{
  display:block;
}

body.home-page .hero-brand-sub{
  display:block;
  margin-top:.08em;
  color:#2fcf97;
  -webkit-text-fill-color:#2fcf97;
  font-size:.58em;
  font-weight:750;
  line-height:1;
  letter-spacing:-.035em;
}

body.home-page .hero-tagline{
  display:block !important;
  max-width:700px !important;
  font-family:'Inter', sans-serif !important;
  font-size:clamp(1.5rem, 2.35vw, 2.4rem) !important;
  font-weight:650 !important;
  line-height:1.16 !important;
  letter-spacing:-.025em !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

body.home-page .hero-sub{
  max-width:570px !important;
  margin:20px 0 0 !important;
  color:rgba(255,255,255,.82) !important;
  -webkit-text-fill-color:rgba(255,255,255,.82) !important;
  font-family:'Inter', sans-serif !important;
  font-size:1.02rem !important;
  font-weight:400 !important;
  line-height:1.6 !important;
}

body.home-page .hero-actions{
  justify-content:flex-start !important;
  margin:30px 0 0 !important;
}

body.home-page .hero-actions .btn-glow{
  min-height:50px !important;
  padding:13px 24px !important;
  border-color:#fff !important;
  border-radius:8px !important;
  background:#fff !important;
  color:#102238 !important;
  -webkit-text-fill-color:#102238 !important;
  font-weight:700 !important;
}

body.home-page .hero-actions .btn-ghost{
  min-height:50px !important;
  padding:13px 22px !important;
  border-color:rgba(255,255,255,.52) !important;
  border-radius:8px !important;
  font-weight:600 !important;
}

body.home-page .about-section{
  padding-top:110px;
}

@media (max-width:900px){
  body.home-page .nav-inner{
    width:calc(100% - 32px) !important;
    padding:0 18px !important;
  }

  body.home-page .hero{
    width:calc(100% - 24px) !important;
    height:calc(100svh - 96px) !important;
    min-height:650px !important;
    margin:84px auto 0 !important;
    border-radius:28px !important;
  }

  body.home-page .hero-overlay{
    background:
      linear-gradient(90deg, rgba(4,12,24,.9) 0%, rgba(4,12,24,.62) 66%, rgba(4,12,24,.32) 100%),
      linear-gradient(180deg, rgba(4,12,24,.06) 0%, rgba(4,12,24,.12) 54%, rgba(4,12,24,.68) 100%) !important;
  }

  body.home-page .hero-body{
    padding:122px 44px 56px !important;
  }
}

@media (max-width:600px){
  body.home-page .nav{
    padding:18px 0 !important;
  }

  body.home-page .nav-inner{
    width:calc(100% - 24px) !important;
    padding:0 12px !important;
  }

  body.home-page .hero{
    min-height:680px !important;
    border-radius:22px !important;
  }

  body.home-page .hero-background-video{
    object-position:60% center;
  }

  body.home-page .hero-body{
    justify-content:flex-end !important;
    padding:110px 26px 48px !important;
  }

  body.home-page .hero-eyebrow{
    margin-bottom:18px !important;
    font-size:.67rem !important;
    letter-spacing:.13em !important;
  }

  body.home-page .hero-brand{
    margin-bottom:14px !important;
    font-size:clamp(2.65rem, 14vw, 4rem) !important;
  }

  body.home-page .hero-tagline{
    font-size:clamp(1.28rem, 6vw, 1.7rem) !important;
    line-height:1.2 !important;
  }

  body.home-page .hero-sub{
    margin-top:16px !important;
    font-size:.92rem !important;
    line-height:1.5 !important;
  }

  body.home-page .hero-actions{
    width:100% !important;
    align-items:stretch !important;
    gap:10px !important;
    margin-top:24px !important;
  }

  body.home-page .hero-actions .btn-glow,
  body.home-page .hero-actions .btn-ghost{
    width:100% !important;
    max-width:none !important;
  }

  body.home-page .about-section{
    padding-top:82px;
  }
}

/* ── Reset ── */

*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}

html{scroll-behavior:smooth;font-size:16px;-webkit-font-smoothing:antialiased}

body{
  font-family:'Inter',system-ui,sans-serif;
  background:
    radial-gradient(circle at 50% -10%, rgba(20,200,255,.14), transparent 34%),
    radial-gradient(circle at 92% 10%, rgba(127,120,255,.1), transparent 30%),
    var(--bg);
  color:var(--text);
  overflow-x:hidden;
  line-height:1.6;
}

a{text-decoration:none;color:inherit}

ul{list-style:none}

img{display:block;max-width:100%}

/* ── Grain overlay ── */

.grain-overlay{
  position:fixed;inset:0;z-index:9999;
  pointer-events:none;
  opacity:.045;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  background-size:200px 200px;
}

/* ── Wrap ── */

.wrap{max-width:1120px;margin:0 auto;padding:0 28px}

/* ── Navbar ── */

.nav{
  position:fixed;top:0;left:0;right:0;z-index:1000;
  padding:20px 0;
  transition:padding .3s var(--ease), background .3s var(--ease);
}

.nav.scrolled{
  padding:12px 0;
  background:rgba(2,6,10,.82);
  backdrop-filter:blur(20px);
  border-bottom:1px solid var(--border);
}

.nav-inner{
  max-width:1120px;margin:0 auto;padding:0 28px;
  display:flex;align-items:center;justify-content:space-between;
  gap:32px;
}

.nav-logo{
  font-size:1.15rem;font-weight:700;letter-spacing:0;
  display:flex;align-items:center;gap:1px;
  flex-shrink:0;
  line-height:1;
  position:relative;
}

.nav-logo-img{
  display:block;
  width:196px;
  height:62px;
  object-fit:contain;
  object-position:left center;
}

.nav-logo-img-black{
  position:absolute;
  top:0;left:0;
  opacity:0;
  transition:opacity .25s var(--ease);
}

.nav-logo-img-white{
  opacity:1;
  transition:opacity .25s var(--ease);
}

.nav.scrolled .nav-logo-img-black{opacity:1}

.nav.scrolled .nav-logo-img-white{opacity:0}

.nav-logo span:first-child{color:var(--violet)}

.nav-logo span:last-of-type{color:var(--text)}

.nav-logo sup{font-size:.65rem;font-weight:500;color:var(--muted);margin-left:3px}

.nav-links{display:flex;align-items:center;gap:28px}

.nav-close{display:none}

.nav-links a{
  font-size:.875rem;font-weight:500;color:var(--muted);
  transition:color .2s;
}

.nav-links a:hover{color:var(--text)}

.nav-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  padding:9px 20px;
  border:1px solid rgba(255,255,255,.72);
  border-radius:8px;
  background:#fff;
  color:#102238;
  font-size:.86rem;
  font-weight:700;
  line-height:1;
  transition:background .2s var(--ease), color .2s var(--ease), transform .2s var(--ease);
}

.nav-cta:hover{
  background:#eaf4ff;
  transform:translateY(-1px);
}

.nav-burger{
  display:none;flex-direction:column;gap:5px;
  background:none;border:none;cursor:pointer;padding:4px;
}

.nav-burger span{
  width:22px;height:1.5px;
  background:var(--text);border-radius:2px;
  transition:.3s var(--ease);
}

.nav-burger.open span:nth-child(1){transform:rotate(45deg) translate(4.5px,4.5px)}

.nav-burger.open span:nth-child(2){transform:rotate(-45deg) translate(4.5px,-4.5px)}

.nav:not(.scrolled) .nav-logo span,
.nav:not(.scrolled) .nav-logo sup,
.nav:not(.scrolled) .dim,
.nav:not(.scrolled) .nav-links a{
  color:rgba(255,255,255,.88);
  text-shadow:0 8px 24px rgba(18,24,38,.18);
}

.nav:not(.scrolled) .nav-logo-img{
  filter:drop-shadow(0 0 18px rgba(20,200,255,.34));
}

.nav:not(.scrolled) .nav-links a:hover{color:#fff}

.nav:not(.scrolled) .nav-burger span{background:#fff}

/* ── Buttons ── */

.btn-glow{
  display:inline-flex;align-items:center;gap:8px;
  padding:14px 32px;border-radius:9999px;
  font-size:.9rem;font-weight:600;
  background:linear-gradient(135deg, var(--leaf) 0%, var(--cyan) 42%, var(--violet) 100%);color:#031008;
  transition:opacity .2s, transform .2s, box-shadow .2s;
}

.btn-glow:hover{
  opacity:.9;transform:translateY(-2px);
  box-shadow:0 0 34px rgba(20,200,255,.22), 0 0 42px rgba(127,120,255,.16);
}

.btn-ghost{
  display:inline-flex;align-items:center;
  padding:14px 32px;border-radius:9999px;
  font-size:.9rem;font-weight:500;
  border:1px solid var(--border);color:var(--muted);
  background:rgba(4,16,22,.4);
  transition:border-color .2s, color .2s, transform .2s;
}

.btn-ghost:hover{border-color:var(--subtle);color:var(--text);transform:translateY(-2px)}

/* ── Reveal animations ── */

.reveal{
  opacity:1;transform:none;
}

.reveal.r2{--reveal-delay:90ms}

.reveal.r3{--reveal-delay:180ms}

.reveal.r4{--reveal-delay:270ms}

html.scroll-reveal-ready .reveal{
  --reveal-x:0px;
  --reveal-y:38px;
  --reveal-scale:.985;
  opacity:0;
  translate:var(--reveal-x) var(--reveal-y);
  scale:var(--reveal-scale);
  filter:blur(7px);
  will-change:opacity, translate, scale, filter;
}

html.scroll-reveal-ready .reveal[data-reveal="left"]{
  --reveal-x:-42px;
  --reveal-y:8px;
}

html.scroll-reveal-ready .reveal[data-reveal="right"]{
  --reveal-x:42px;
  --reveal-y:8px;
}

html.scroll-reveal-ready .reveal[data-reveal="scale"]{
  --reveal-y:24px;
  --reveal-scale:.94;
}

html.scroll-reveal-ready .reveal.visible{
  opacity:1;
  translate:0 0;
  scale:1;
  filter:blur(0);
  animation:sematecScrollReveal .92s cubic-bezier(.22,1,.36,1) var(--reveal-delay, 0ms) both;
}

@keyframes sematecScrollReveal{
  from{
    opacity:0;
    translate:var(--reveal-x) var(--reveal-y);
    scale:var(--reveal-scale);
    filter:blur(7px);
  }

  to{
    opacity:1;
    translate:0 0;
    scale:1;
    filter:blur(0);
  }
}

/* Segurança: nenhum elemento pode ficar preso no estado borrado do scroll-reveal
   (evita cards de reveal com delay travarem em blur por JS antigo em cache). */
html.scroll-reveal-ready .reveal{
  opacity:1 !important;
  translate:none !important;
  scale:none !important;
  filter:none !important;
  animation:none !important;
}

@media (max-width:720px){
  html.scroll-reveal-ready .reveal{
    --reveal-y:26px;
  }

  html.scroll-reveal-ready .reveal[data-reveal="left"],
  html.scroll-reveal-ready .reveal[data-reveal="right"]{
    --reveal-x:0px;
    --reveal-y:26px;
  }
}

@media (prefers-reduced-motion:reduce){
  html.scroll-reveal-ready .reveal,
  html.scroll-reveal-ready .reveal.visible{
    opacity:1;
    translate:none;
    scale:1;
    filter:none;
    animation:none;
    transition:none;
  }
}

/* ─────────────────────────────────
   HERO
───────────────────────────────── */

.hero{
  position:relative;
  min-height:100vh;
  display:flex;align-items:center;justify-content:center;
  overflow:hidden;
  background:#02060a;
  isolation:isolate;
}

.hero::before{
  content:'';
  position:absolute;inset:0;z-index:-1;
  background:
    linear-gradient(180deg, rgba(2,6,10,.18) 0%, rgba(2,6,10,.74) 58%, rgba(2,6,10,1) 100%),
    radial-gradient(circle at 64% 42%, rgba(127,120,255,.18), transparent 42%),
    radial-gradient(circle at 32% 22%, rgba(20,200,255,.18), transparent 34%);
  pointer-events:none;
}

.hero::after{
  content:'';
  position:absolute;inset:auto 0 0;z-index:0;
  height:34vh;
  background:linear-gradient(to bottom, transparent, var(--bg));
  pointer-events:none;
}

@keyframes gradientShift{
  0%{
    transform:scale(1.04) translate3d(0,0,0) rotate(0deg);
    background-position:0% 20%, 100% 0%, 80% 100%, 20% 100%, center;
    filter:blur(8px) saturate(1.08) hue-rotate(0deg);
  }
  50%{
    transform:scale(1.11) translate3d(-2%,1%,0) rotate(2deg);
    background-position:40% 0%, 60% 30%, 100% 70%, 0% 50%, center;
    filter:blur(9px) saturate(1.18) hue-rotate(22deg);
  }
  100%{
    transform:scale(1.08) translate3d(2%,-1%,0) rotate(-2deg);
    background-position:100% 40%, 20% 10%, 50% 100%, 80% 20%, center;
    filter:blur(8px) saturate(1.14) hue-rotate(-18deg);
  }
}

@keyframes heroPulse{
  0%{
    transform:scale(1);
    background-position:0% 0%, 52% 50%, 18% 50%, 100% 0%, 92% 18%, center;
    filter:saturate(1.02) brightness(1);
  }
  50%{
    transform:scale(1.035);
    background-position:4% 2%, 48% 52%, 22% 48%, 96% 4%, 88% 22%, center;
    filter:saturate(1.12) brightness(1.04);
  }
  100%{
    transform:scale(1.055);
    background-position:2% 4%, 46% 49%, 20% 52%, 98% 2%, 90% 20%, center;
    filter:saturate(1.08) brightness(1.02);
  }
}

.hero-body{
  position:relative;z-index:2;
  display:grid;
  grid-template-columns:minmax(0,1fr);
  align-items:center;
  gap:0;
  text-align:center;
  padding:128px 28px 104px;
  width:min(1120px,100%);
  max-width:1120px;
}

.hero-copy{
  min-width:0;
  max-width:860px;
  margin:0 auto;
}

.hero-eyebrow{
  display:inline-block;
  font-size:.75rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;
  color:rgba(222,255,246,.9);margin-bottom:24px;
  padding:8px 14px;
  border:1px solid rgba(83,255,218,.3);
  border-radius:999px;
  background:rgba(4,16,22,.62);
  backdrop-filter:blur(12px);
}

.hero-title{
  font-size:clamp(3.5rem,8vw,7.4rem);
  font-weight:800;line-height:1.05;
  letter-spacing:0;
  color:#fff;
  margin-bottom:26px;
  text-shadow:0 0 32px rgba(20,200,255,.2), 0 18px 54px rgba(0,0,0,.45);
}


.hero-sub{
  max-width:760px;
  margin:0 auto 34px;
  font-size:1.12rem;color:rgba(222,255,246,.82);
  font-weight:400;line-height:1.8;
  text-shadow:0 10px 32px rgba(0,0,0,.4);
}

.hero-actions{
  display:flex;gap:14px;justify-content:center;
  flex-wrap:wrap;margin-bottom:0;
}

.hero-actions .btn-glow,
.hero-actions .btn-ghost{
  padding:16px 36px;
  font-size:.95rem;
}

.hero-actions .btn-glow{
  background:linear-gradient(135deg, var(--leaf) 0%, var(--cyan) 46%, var(--violet) 100%);
  color:#031008;
  box-shadow:0 0 42px rgba(20,200,255,.24);
}

.hero-actions .btn-ghost{
  border-color:rgba(83,255,218,.34);
  background:rgba(4,16,22,.6);
  color:#fff;
  backdrop-filter:blur(12px);
}

.hero-actions .btn-ghost:hover{
  border-color:rgba(255,255,255,.62);
  color:#fff;
}

.hero-scroll{
  position:absolute;bottom:36px;left:50%;transform:translateX(-50%);
  z-index:1;
}

.scroll-line{
  width:1px;height:48px;
  background:linear-gradient(to bottom, transparent, rgba(255,255,255,.76));
  margin:0 auto;
  animation:scrollFade 2.5s ease-in-out infinite;
}

@keyframes scrollFade{
  0%,100%{opacity:0;transform:scaleY(0);transform-origin:top}
  50%{opacity:1;transform:scaleY(1)}
}

/* ─────────────────────────────────
   SECTIONS
───────────────────────────────── */

.section{padding:88px 0}

.section-dark{background:var(--bg-2)}

.section-compact{padding:56px 0}

.section-compact .s-head{margin-bottom:30px}

.section-compact .s-head h2{font-size:clamp(1.7rem,3.4vw,2.35rem)}

.section-compact .s-desc{font-size:.92rem}

.s-head{
  text-align:center;max-width:640px;
  margin:0 auto 48px;
}

.eyebrow{
  font-size:.72rem;font-weight:600;letter-spacing:.16em;
  text-transform:uppercase;color:var(--violet);
  margin-bottom:14px;display:block;
}

.eyebrow-dim{color:var(--muted)}

.s-head h2{
  font-size:clamp(2rem,4.5vw,3rem);
  font-weight:700;line-height:1.15;
  letter-spacing:0;
  color:var(--text);margin-bottom:16px;
}

.s-desc{
  font-size:1rem;color:var(--muted);line-height:1.7;
}

/* ─────────────────────────────────
   ABOUT — XV edition carousel
───────────────────────────────── */

.about-section{
  background:#fff;
  padding-bottom:72px;
  overflow:hidden;
}

.about-head{
  max-width:900px;
  margin:0 auto 48px;
  text-align:center;
}

.about-head h2{
  font-size:clamp(2.1rem,4.1vw,3.45rem);
  line-height:1.08;
  font-weight:820;
  letter-spacing:0;
  color:var(--text);
  margin-bottom:28px;
}

.about-head h2 span{
  display:inline-block;
  color:transparent;
  background:
    radial-gradient(circle at 12% 22%, #28d7ff 0 16%, transparent 28%),
    radial-gradient(circle at 78% 18%, #ff83d6 0 18%, transparent 30%),
    linear-gradient(110deg, #1b6079 0%, #3f7dff 28%, #b85cff 54%, #ff6ea8 78%, #f5b84b 100%);
  background-size:220% 220%;
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  animation:aboutTitleGradient 1.7s ease-in-out infinite alternate;
}

.about-head p{
  font-size:clamp(1rem,1.35vw,1.18rem);
  line-height:1.75;
  color:rgba(18,24,38,.68);
  font-weight:500;
  max-width:820px;
  margin:0 auto 24px;
}

.about-head p:last-child{margin-bottom:0}

@keyframes focusMarquee{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(calc(-50% - 14px),0,0)}
}

@keyframes focusGradient{
  0%{background-position:0% 14%, 100% 20%, 0% 50%}
  50%{background-position:44% 0%, 58% 34%, 50% 50%}
  100%{background-position:100% 30%, 0% 42%, 100% 50%}
}

@keyframes aboutTitleGradient{
  0%{background-position:0% 12%, 100% 18%, 0% 50%}
  45%{background-position:48% 0%, 56% 32%, 62% 50%}
  100%{background-position:100% 24%, 0% 42%, 100% 50%}
}

/* ─────────────────────────────────
   ACTIVITIES — 4 cards w/ gradients
───────────────────────────────── */

#atividades{
  padding:58px 0 52px;
}

#atividades .s-head{
  max-width:720px;
  margin-bottom:30px;
}

#atividades .s-head h2{
  font-size:clamp(1.85rem,3.6vw,2.65rem);
  margin-bottom:10px;
}

#atividades .s-desc{
  font-size:.95rem;
  line-height:1.65;
}

.acts-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}

.act-card{
  position:relative;overflow:hidden;
  padding:138px 24px 76px;
  background:#fff;
  border:1px solid rgba(18,24,38,.1);
  border-radius:18px;
  cursor:default;
  min-height:298px;
  box-shadow:0 16px 42px rgba(18,24,38,.08);
  transition:transform .4s var(--ease), border-color .3s, box-shadow .3s;
}

.act-card::before{
  content:'';
  position:absolute;
  top:0;left:0;right:0;
  height:124px;
  background:var(--card-gradient);
  background-size:240% 240%;
  animation:cardFlow 4.6s ease-in-out infinite alternate;
  opacity:1;
}

.act-card::after{
  content:'';
  position:absolute;
  top:0;left:0;right:0;
  height:124px;
  background:
    radial-gradient(circle at 22% 24%, rgba(255,255,255,.58), transparent 24%),
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.22));
  mix-blend-mode:soft-light;
  animation:priceGlowMove 3.2s ease-in-out infinite alternate;
}

.act-card:hover{
  transform:translateY(-8px);
  box-shadow:0 26px 60px rgba(18,24,38,.12);
}

.act-glow{
  position:absolute;
  width:280px;height:280px;
  border-radius:50%;
  top:-80px;right:-80px;
  filter:blur(80px);
  opacity:0;
  transition:opacity .5s;
  pointer-events:none;
}

.act-card:hover .act-glow{opacity:1}

/* violet */

.act-violet{border-color:rgba(109,59,232,.14);--card-gradient:radial-gradient(circle at 14% 22%, #7c5cff 0 18%, transparent 30%), radial-gradient(circle at 82% 18%, #ff8bd9 0 20%, transparent 34%), linear-gradient(125deg, #efe9ff 0%, #a58cff 46%, #f58bd4 100%)}

.act-violet .act-glow{background:radial-gradient(circle, var(--violet-glow), transparent)}

.act-violet .act-dot{background:var(--violet)}

.act-violet h3{background:linear-gradient(135deg,var(--text),var(--violet));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}

/* cyan */

.act-cyan{border-color:rgba(0,143,138,.14);--card-gradient:radial-gradient(circle at 18% 20%, #35ead7 0 18%, transparent 30%), radial-gradient(circle at 82% 18%, #d5fff2 0 22%, transparent 36%), linear-gradient(125deg, #6ee7d8 0%, #bdf9ea 48%, #e9fff7 100%)}

.act-cyan .act-glow{background:radial-gradient(circle, var(--cyan-glow), transparent)}

.act-cyan .act-dot{background:var(--cyan)}

.act-cyan h3{background:linear-gradient(135deg,var(--text),var(--cyan));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}

/* amber */

.act-amber{border-color:rgba(217,141,0,.14);--card-gradient:radial-gradient(circle at 18% 20%, #ffd55f 0 18%, transparent 30%), radial-gradient(circle at 78% 18%, #ff9d77 0 20%, transparent 34%), linear-gradient(125deg, #ffe789 0%, #ffc05c 44%, #fff0cf 100%)}

.act-amber .act-glow{background:radial-gradient(circle, var(--amber-glow), transparent)}

.act-amber .act-dot{background:var(--amber)}

.act-amber h3{background:linear-gradient(135deg,var(--text),var(--amber));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}

/* rose */

.act-rose{border-color:rgba(232,73,47,.14);--card-gradient:radial-gradient(circle at 18% 20%, #ff6b4b 0 18%, transparent 30%), radial-gradient(circle at 82% 16%, #ffe46a 0 20%, transparent 34%), linear-gradient(125deg, #ff805c 0%, #ffba6a 44%, #fff07e 100%)}

.act-rose .act-glow{background:radial-gradient(circle, var(--rose-glow), transparent)}

.act-rose .act-dot{background:var(--rose)}

.act-rose h3{background:linear-gradient(135deg,var(--text),var(--rose));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}

.act-card h3{
  position:relative;
  z-index:2;
  font-size:1.55rem;font-weight:820;
  line-height:1.05;
  letter-spacing:0;margin:0 0 10px;
  -webkit-text-fill-color:initial !important;
  background:none !important;
  color:var(--text);
}

.act-card p{
  position:relative;z-index:2;
  font-size:.86rem;color:var(--muted);line-height:1.62;
}

.act-dot{
  position:absolute;z-index:2;
  left:24px;
  bottom:38px;
  width:28px;height:3px;border-radius:999px;
  margin:0;
}

.act-more{
  position:absolute;
  right:24px;
  bottom:24px;
  z-index:3;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:0 18px;
  border-radius:999px;
  background:#05070d;
  color:#fff;
  font-size:.78rem;
  font-weight:760;
  box-shadow:0 12px 28px rgba(18,24,38,.16);
  transition:transform .2s, background .2s;
}

.act-more:hover{
  transform:translateY(-2px);
  background:#171b26;
}

@keyframes cardFlow{
  0%{background-position:0% 20%, 100% 12%, 0% 50%}
  50%{background-position:42% 0%, 56% 36%, 50% 50%}
  100%{background-position:100% 34%, 0% 46%, 100% 50%}
}

@keyframes spiceDrift{
  from{background-position:0 0}
  to{background-position:120px 80px}
}

/* ─────────────────────────────────
   SCHEDULE
───────────────────────────────── */

#programacao{
  padding:58px 0 56px;
}

#programacao .s-head{
  margin-bottom:28px;
}

#programacao .s-head h2{
  font-size:clamp(1.85rem,3.7vw,2.7rem);
  margin-bottom:10px;
}

#programacao .s-desc{
  font-size:.95rem;
  line-height:1.65;
}

.sched-tabs{
  width:max-content;
  max-width:100%;
  display:flex;gap:6px;justify-content:center;
  margin:0 auto 18px;
  padding:6px;
  flex-wrap:wrap;
  background:#fff;
  border:1px solid rgba(18,24,38,.1);
  border-radius:9999px;
  box-shadow:0 14px 36px rgba(18,24,38,.08);
}

.stab{
  min-width:92px;
  padding:9px 22px;
  border-radius:9999px;
  font-family:inherit;font-size:.85rem;font-weight:600;
  cursor:pointer;transition:.2s;
  background:transparent;
  border:0;
  color:var(--muted);
}

.stab:hover{color:var(--text);background:rgba(18,24,38,.045)}

.stab-active{
  background:var(--text);
  color:#fff;
  box-shadow:0 10px 24px rgba(18,24,38,.18);
}

.sched-body{
  position:relative;
  max-width:860px;
  margin:0 auto;
  padding:16px;
  background:
    radial-gradient(circle at 10% 0%, rgba(109,59,232,.08), transparent 34%),
    radial-gradient(circle at 92% 12%, rgba(0,143,138,.08), transparent 30%),
    #fff;
  border:1px solid rgba(18,24,38,.09);
  border-radius:22px;
  box-shadow:0 22px 60px rgba(18,24,38,.08);
}

.sched-day{display:none}

.sched-day.active{
  display:grid;
  gap:10px;
}

.sched-time{
  width:max-content;
  min-width:66px;
  justify-self:start;
  padding:7px 10px;
  border-radius:999px;
  font-size:.78rem;font-weight:760;
  color:var(--sched-accent);
  background:color-mix(in srgb, var(--sched-accent) 12%, #fff);
  font-variant-numeric:tabular-nums;
}

/* left accent on color rows */

/* ─────────────────────────────────
   SUBMISSIONS — animated gradient cards
───────────────────────────────── */

.sub-grid{
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:20px;margin-bottom:48px;
}

.sub-card{
  position:relative;overflow:hidden;
  border-radius:var(--r-lg);
  padding:40px 28px;
  border:none;
  color:inherit;
  cursor:pointer;
  transition:transform .4s var(--ease), box-shadow .3s;
  min-height:420px;
  display:flex;flex-direction:column;
}

.sub-card:hover{
  transform:translateY(-6px);
  box-shadow:0 24px 70px rgba(18,24,38,.1);
}

/* ── animated gradient layer ── */

.sub-gradient{
  position:absolute;inset:0;z-index:0;
  overflow:hidden;border-radius:var(--r-lg);
}

/* blob 1 */

.sub-gradient::before{
  content:'';
  position:absolute;
  width:280px;height:280px;
  border-radius:50%;
  top:-80px;left:-60px;
  filter:blur(55px);
}

/* blob 2 */

.sub-gradient::after{
  content:'';
  position:absolute;
  width:220px;height:220px;
  border-radius:50%;
  bottom:-60px;right:-60px;
  filter:blur(50px);
}

/* soft wash overlay on top of gradient, below text */

.sub-card::after{
  content:'';
  position:absolute;inset:0;z-index:1;
  pointer-events:none;
  background:linear-gradient(
    170deg,
    rgba(255,255,255,0.18) 0%,
    rgba(255,255,255,0.62) 55%,
    rgba(255,255,255,0.9) 100%
  );
  border-radius:var(--r-lg);
}

/* all text above gradient */

.sub-card>*:not(.sub-gradient){
  position:relative;z-index:2;
}

/* ── FULL PAPER ── */

.sub-full{
  background:#12214e;
}

.sub-full .sub-gradient{
  background:
    radial-gradient(circle at 16% 20%, rgba(154,185,255,.58) 0 18%, transparent 31%),
    radial-gradient(circle at 78% 18%, rgba(125,142,239,.58) 0 22%, transparent 36%),
    linear-gradient(140deg, #9eb8f3 0%, #718de4 34%, #4d6bd1 62%, #203a89 100%);
  background-size:220% 220%;
  animation:priceGradientMove 2.75s ease-in-out infinite alternate;
}

.sub-full .sub-gradient::before{
  display:none;
}

.sub-full .sub-gradient::after{
  inset:0;
  width:auto;height:auto;
  background:
    radial-gradient(circle at 20% 24%, rgba(255,255,255,.24), transparent 18%),
    linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.08));
  filter:none;
  mix-blend-mode:soft-light;
  opacity:.55;
  animation:priceGlowMove 3s ease-in-out infinite alternate;
}

.sub-full::after{
  background:linear-gradient(
    180deg,
    rgba(255,255,255,.08) 0%,
    rgba(255,255,255,.02) 38%,
    rgba(15,30,76,.12) 68%,
    rgba(8,15,44,.24) 100%
  );
}

/* ── SHORT PAPER ── */

.sub-short{
  background:#4b1450;
}

.sub-short .sub-gradient{
  background:
    radial-gradient(circle at 16% 20%, rgba(226,150,233,.56) 0 20%, transparent 34%),
    radial-gradient(circle at 78% 18%, rgba(196,105,207,.54) 0 21%, transparent 35%),
    linear-gradient(180deg, #d98ade 0%, #c06bcc 36%, #99489f 66%, #602663 100%);
  background-size:220% 220%;
  animation:priceGradientMove 2.7s ease-in-out infinite alternate;
}

.sub-short .sub-gradient::before{
  display:none;
}

.sub-short .sub-gradient::after{
  inset:0;
  width:auto;height:auto;
  background:
    radial-gradient(circle at 20% 24%, rgba(255,255,255,.22), transparent 18%),
    linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.08));
  filter:none;
  mix-blend-mode:soft-light;
  opacity:.55;
  animation:priceGlowMove 3s ease-in-out infinite alternate;
}

.sub-short::after{
  background:linear-gradient(
    180deg,
    rgba(255,255,255,.08) 0%,
    rgba(255,255,255,.02) 40%,
    rgba(62,12,68,.1) 66%,
    rgba(31,0,36,.22) 100%
  );
}

/* ── CYAN (Minicursos) ── */

.sub-cyan{
  background:#124c3f;
}

.sub-cyan .sub-gradient{
  background:
    radial-gradient(circle at 14% 78%, rgba(103,229,198,.56) 0 20%, transparent 34%),
    radial-gradient(circle at 78% 70%, rgba(76,196,166,.52) 0 22%, transparent 38%),
    linear-gradient(180deg, #4ab89c 0%, #35967e 34%, #277a68 68%, #195346 100%);
  background-size:220% 220%;
  animation:priceGradientMove 2.75s ease-in-out infinite alternate;
}

.sub-cyan .sub-gradient::before{
  display:none;
}

.sub-cyan .sub-gradient::after{
  inset:0;
  width:auto;height:auto;
  background:
    radial-gradient(circle at 20% 24%, rgba(255,255,255,.2), transparent 18%),
    linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.08));
  filter:none;
  mix-blend-mode:soft-light;
  opacity:.5;
  animation:priceGlowMove 3s ease-in-out infinite alternate;
}

.sub-cyan::after{
  background:linear-gradient(
    180deg,
    rgba(0,0,0,.08) 0%,
    rgba(0,35,26,.04) 38%,
    rgba(255,255,255,.02) 66%,
    rgba(255,255,255,.08) 100%
  );
}

/* ── BLOB KEYFRAMES ── */

@keyframes subBlob1Amber{
  0%,100%{ transform:translate(0,0) scale(1); }
  25%    { transform:translate(50px,30px) scale(1.2); }
  50%    { transform:translate(80px,-20px) scale(0.9); }
  75%    { transform:translate(30px,60px) scale(1.15); }
}

@keyframes subBlob2Amber{
  0%,100%{ transform:translate(0,0) scale(1); }
  30%    { transform:translate(-60px,-30px) scale(1.1); }
  60%    { transform:translate(-30px,40px) scale(0.85); }
  80%    { transform:translate(-70px,10px) scale(1.2); }
}

@keyframes subBlob1Cyan{
  0%,100%{ transform:translate(0,0) scale(1); }
  30%    { transform:translate(60px,40px) scale(1.15); }
  60%    { transform:translate(90px,-30px) scale(0.9); }
  80%    { transform:translate(20px,50px) scale(1.1); }
}

@keyframes subBlob2Cyan{
  0%,100%{ transform:translate(0,0) scale(1); }
  25%    { transform:translate(-50px,-40px) scale(1.2); }
  55%    { transform:translate(-80px,20px) scale(0.88); }
  80%    { transform:translate(-30px,-60px) scale(1.1); }
}

@keyframes blueLiquidBg{
  0%{background-position:0% 8%, 100% 16%, 34% 60%, 0% 0%}
  34%{background-position:42% 0%, 62% 28%, 72% 40%, 42% 44%}
  68%{background-position:86% 32%, 18% 4%, 8% 78%, 76% 78%}
  100%{background-position:100% 12%, 0% 38%, 58% 32%, 100% 100%}
}

@keyframes blueLiquidA{
  0%{transform:translate3d(-20px,-18px,0) scale(1) rotate(0deg)}
  48%{transform:translate3d(108px,52px,0) scale(1.18) rotate(16deg)}
  100%{transform:translate3d(36px,128px,0) scale(.96) rotate(-14deg)}
}

@keyframes blueLiquidB{
  0%{transform:translate3d(0,0,0) scale(1) rotate(0deg)}
  42%{transform:translate3d(-130px,-94px,0) scale(1.15) rotate(-18deg)}
  100%{transform:translate3d(-42px,-24px,0) scale(.98) rotate(16deg)}
}

@keyframes shortLiquidBg{
  0%{background-position:0% 0%, 100% 12%, 30% 64%, 50% 0%}
  35%{background-position:38% 14%, 62% 0%, 76% 44%, 50% 44%}
  68%{background-position:86% 30%, 20% 34%, 12% 70%, 50% 80%}
  100%{background-position:100% 8%, 0% 22%, 60% 36%, 50% 100%}
}

@keyframes shortLiquidA{
  0%{transform:translate3d(-18px,-18px,0) scale(1) rotate(0deg)}
  45%{transform:translate3d(92px,48px,0) scale(1.18) rotate(18deg)}
  100%{transform:translate3d(28px,120px,0) scale(.96) rotate(-12deg)}
}

@keyframes shortLiquidB{
  0%{transform:translate3d(0,0,0) scale(1) rotate(0deg)}
  42%{transform:translate3d(-120px,-92px,0) scale(1.13) rotate(-20deg)}
  100%{transform:translate3d(-42px,-18px,0) scale(.98) rotate(16deg)}
}

@keyframes greenLiquidBg{
  0%{background-position:0% 100%, 100% 82%, 34% 48%, 50% 0%}
  34%{background-position:42% 76%, 62% 100%, 78% 36%, 50% 38%}
  68%{background-position:86% 94%, 18% 58%, 8% 70%, 50% 76%}
  100%{background-position:100% 70%, 0% 86%, 58% 32%, 50% 100%}
}

@keyframes greenLiquidA{
  0%{transform:translate3d(-22px,-12px,0) scale(1) rotate(0deg)}
  46%{transform:translate3d(112px,78px,0) scale(1.18) rotate(18deg)}
  100%{transform:translate3d(38px,136px,0) scale(.98) rotate(-12deg)}
}

@keyframes greenLiquidB{
  0%{transform:translate3d(0,0,0) scale(1) rotate(0deg)}
  42%{transform:translate3d(-132px,-118px,0) scale(1.15) rotate(-18deg)}
  100%{transform:translate3d(-52px,-34px,0) scale(.98) rotate(16deg)}
}

/* ── TEXT STYLES ── */

.sub-card h3{
  font-size:clamp(1.55rem,2.35vw,2rem);
  font-weight:800;
  line-height:1.08;
  color:var(--text);margin-bottom:20px;
  overflow-wrap:break-word;
  hyphens:auto;
}

.sub-card>p{
  font-size:.875rem;color:rgba(18,24,38,0.68);
  line-height:1.65;margin-bottom:26px;flex:1;
}

.sub-card ul{ margin-bottom:0; }

.sub-card ul li{
  font-size:.82rem;color:rgba(18,24,38,0.62);
  padding:7px 0;border-bottom:1px solid rgba(18,24,38,0.08);
  display:flex;align-items:center;gap:10px;
}

.sub-card ul li::before{
  content:'';width:4px;height:4px;border-radius:50%;
  background:rgba(18,24,38,0.3);flex-shrink:0;
}

.sub-card ul li:last-child{border-bottom:none}

.sub-deadline{
  margin-top:24px;padding-top:18px;
  border-top:1px solid rgba(18,24,38,0.1);
  font-size:.82rem;color:rgba(18,24,38,0.48);
}

.sub-deadline strong{color:var(--text)}

.sub-link{
  display:inline-flex;
  justify-content:center;
  align-items:center;
  width:100%;
  min-height:42px;
  margin-top:18px;
  border-radius:999px;
  background:#fff;
  box-shadow:0 14px 34px rgba(18,24,38,.12);
  font-size:.82rem;
  font-weight:700;
  letter-spacing:0;
  color:#05070d;
  transition:transform .2s, background .2s, box-shadow .2s;
}

.sub-card:hover .sub-link{
  transform:translateY(-1px);
  background:#f7f7f5;
  box-shadow:0 18px 42px rgba(18,24,38,.16);
}

.sub-card.sub-full h3,
.sub-card.sub-full>p,
.sub-card.sub-full ul li,
.sub-card.sub-full .sub-deadline,
.sub-card.sub-full .sub-link{
  color:rgba(255,255,255,.86);
}

.sub-card.sub-full h3,
.sub-card.sub-full .sub-link,
.sub-card.sub-full .sub-deadline strong{
  color:#fff;
}

.sub-card.sub-full .sub-link{
  color:#05070d;
}

.sub-card.sub-full ul li{
  border-bottom-color:rgba(255,255,255,.16);
}

.sub-card.sub-full ul li::before{
  background:rgba(255,255,255,.62);
}

.sub-card.sub-full .sub-deadline{
  border-top-color:rgba(255,255,255,.2);
}

.sub-card.sub-short h3,
.sub-card.sub-short>p,
.sub-card.sub-short ul li,
.sub-card.sub-short .sub-deadline,
.sub-card.sub-short .sub-link{
  color:rgba(255,255,255,.86);
}

.sub-card.sub-short h3,
.sub-card.sub-short .sub-link,
.sub-card.sub-short .sub-deadline strong{
  color:#fff;
}

.sub-card.sub-short .sub-link{
  color:#05070d;
}

.sub-card.sub-short ul li{
  border-bottom-color:rgba(255,255,255,.16);
}

.sub-card.sub-short ul li::before{
  background:rgba(255,255,255,.62);
}

.sub-card.sub-short .sub-deadline{
  border-top-color:rgba(255,255,255,.2);
}

.sub-card.sub-cyan h3,
.sub-card.sub-cyan>p,
.sub-card.sub-cyan ul li,
.sub-card.sub-cyan .sub-deadline,
.sub-card.sub-cyan .sub-link{
  color:rgba(255,255,255,.88);
}

.sub-card.sub-cyan h3,
.sub-card.sub-cyan .sub-link,
.sub-card.sub-cyan .sub-deadline strong{
  color:#fff;
}

.sub-card.sub-cyan .sub-link{
  color:#05070d;
}

.sub-card.sub-cyan ul li{
  border-bottom-color:rgba(255,255,255,.16);
}

.sub-card.sub-cyan ul li::before{
  background:rgba(255,255,255,.62);
}

.sub-card.sub-cyan .sub-deadline{
  border-top-color:rgba(255,255,255,.2);
}

/* Topics */

.topics-section{text-align:center}

.topics-section .eyebrow{margin-bottom:28px}

.topics-wrap{
  display:flex;flex-wrap:wrap;gap:10px;
  justify-content:center;max-width:1040px;margin:0 auto;
}

.topic{
  padding:7px 18px;border-radius:9999px;
  font-size:.8rem;font-weight:500;
  border:1px solid var(--border);color:var(--muted);
  background:rgba(255,255,255,.5);
  transition:border-color .2s, color .2s, background .2s;
  cursor:default;
}

.topic:hover{background:rgba(18,24,38,.04)}

.t-violet{border-color:rgba(167,139,250,.3);color:var(--violet)}

.t-cyan{border-color:rgba(34,211,238,.3);color:var(--cyan)}

.t-amber{border-color:rgba(251,191,36,.3);color:var(--amber)}

.t-rose{border-color:rgba(251,113,133,.3);color:var(--rose)}

/* ─────────────────────────────────
   SPEAKERS
───────────────────────────────── */

#palestrantes{
  padding:64px 0 58px;
}

#palestrantes .s-head{
  margin-bottom:30px;
}

#palestrantes .s-head h2{
  font-size:clamp(1.85rem,3.7vw,2.7rem);
  margin-bottom:10px;
}

#palestrantes .s-desc{
  font-size:.94rem;
  line-height:1.65;
}

.speaker-label{
  display:block;
  margin-bottom:8px;
  font-size:.64rem;
  font-weight:760;
  letter-spacing:.13em;
  text-transform:uppercase;
  color:var(--muted);
}

.talk-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.talk-meta span{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:6px 11px;
  border:1px solid rgba(14,89,58,.12);
  border-radius:999px;
  color:#0d7c61;
  background:rgba(214,250,185,.42);
  font-size:.75rem;
  font-weight:750;
  line-height:1.15;
}

@media (max-width:640px){
  #palestrantes{
        padding:58px 0 48px;
      }
}

/* ─────────────────────────────────
   LOCAL
───────────────────────────────── */

#local,
#organizacao,
#parceiros{
  background:#fff;
}

#local .s-head,
#organizacao .s-head,
#parceiros .s-head{
  margin-bottom:28px;
}

#local .eyebrow-dim,
#organizacao .eyebrow-dim{
  color:var(--violet);
}

.local-grid{
  display:grid;grid-template-columns:1fr 1.2fr;
  gap:18px;align-items:stretch;
}

.section-compact .local-grid{gap:18px}

.local-info{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(18,24,38,.1);
  border-radius:18px;
  background:#fff;
  box-shadow:0 16px 38px rgba(18,24,38,.06);
}

.local-info::before{
  content:'';
  position:absolute;
  left:20px;right:20px;top:0;
  height:5px;
  border-radius:0 0 999px 999px;
  background:linear-gradient(125deg, #35ead7 0%, #7c5cff 36%, #ff8bd9 68%, #ffd55f 100%);
  background-size:240% 240%;
  animation:cardFlow 4.8s ease-in-out infinite alternate;
}

.local-detail{
  display:flex;gap:18px;
  padding:20px 22px;border-bottom:1px solid rgba(18,24,38,.08);
}

.section-compact .local-detail{padding:17px 20px;gap:14px}

.local-detail:last-child{border-bottom:none}

.local-icon{
  width:42px;height:42px;border-radius:13px;
  background:rgba(18,24,38,.045);
  display:flex;align-items:center;justify-content:center;
  color:var(--text);flex-shrink:0;
}

.section-compact .local-icon{width:38px;height:38px}

.local-icon svg{width:20px;height:20px}

.local-detail strong{
  display:block;font-size:.85rem;
  font-weight:600;color:var(--text);margin-bottom:6px;
}

.local-detail p{font-size:.84rem;color:var(--muted);line-height:1.65}

.section-compact .local-detail p{font-size:.8rem;line-height:1.5}

.local-map{
  height:320px;border-radius:18px;
  position:relative;
  overflow:hidden;border:1px solid rgba(18,24,38,.1);
  box-shadow:0 16px 38px rgba(18,24,38,.06);
}

.section-compact .local-map{height:265px}

.local-map iframe{width:100%;height:100%;display:block}

.local-map-panel{
  position:absolute;
  inset:0;
  z-index:2;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  align-items:flex-start;
  gap:8px;
  padding:28px;
  background:
    linear-gradient(90deg, rgba(127,120,255,.08) 1px, transparent 1px),
    linear-gradient(0deg, rgba(20,200,255,.08) 1px, transparent 1px),
    radial-gradient(circle at 72% 34%, rgba(20,200,255,.18), transparent 34%),
    radial-gradient(circle at 24% 78%, rgba(127,120,255,.2), transparent 36%),
    linear-gradient(180deg, rgba(2,6,10,.12), rgba(2,6,10,.76));
  background-size:32px 32px, 32px 32px, auto, auto, auto;
  pointer-events:none;
}

.local-map-panel::before{
  content:'';
  position:absolute;
  width:84px;
  height:84px;
  right:28%;
  top:28%;
  border:1px solid rgba(127,120,255,.58);
  border-radius:50%;
  box-shadow:0 0 28px rgba(127,120,255,.24), inset 0 0 22px rgba(20,200,255,.12);
}

.local-map-panel::after{
  content:'';
  position:absolute;
  width:10px;
  height:10px;
  right:calc(28% + 37px);
  top:calc(28% + 37px);
  border-radius:50%;
  background:var(--cyan);
  box-shadow:0 0 18px var(--cyan);
}

.local-map-panel span,
.local-map-panel small{
  color:var(--muted);
  font-size:.78rem;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.local-map-panel strong{
  color:var(--text);
  font-size:1.7rem;
  line-height:1.05;
}

/* ─────────────────────────────────
   PRICING
───────────────────────────────── */

#inscricoes .wrap{
  max-width:1340px;
}

.price-button{
  display:inline-flex;
  justify-content:center;
  align-items:center;
  width:100%;
  min-height:42px;
  margin-top:18px;
  border-radius:999px;
  background:#05070d;
  color:#fff;
  font-size:.82rem;
  font-weight:700;
  transition:transform .2s, background .2s;
}

.price-button:hover{
  transform:translateY(-1px);
  background:#171b26;
}

@keyframes priceGradientMove{
  0%{background-position:0% 10%, 100% 20%, 0% 50%}
  45%{background-position:40% 0%, 52% 28%, 58% 50%}
  100%{background-position:100% 24%, 0% 34%, 100% 50%}
}

@keyframes priceGlowMove{
  0%{transform:translate3d(-8%, -6%, 0) scale(1)}
  100%{transform:translate3d(8%, 6%, 0) scale(1.08)}
}

@keyframes optionFlowSide{
  0%{background-position:0% 24%, 100% 18%, 0% 50%, 0% 50%}
  42%{background-position:46% 10%, 62% 34%, 46% 50%, 46% 50%}
  100%{background-position:100% 18%, 0% 42%, 100% 50%, 100% 50%}
}

@keyframes optionFlowBloom{
  0%{background-position:18% 0%, 82% 100%, 50% 0%, 50% 0%}
  48%{background-position:42% 42%, 58% 44%, 50% 52%, 50% 52%}
  100%{background-position:68% 100%, 30% 0%, 50% 100%, 50% 100%}
}

@keyframes optionFlowDiagonal{
  0%{background-position:0% 0%, 100% 16%, 12% 100%, 0% 50%}
  45%{background-position:42% 34%, 54% 52%, 58% 46%, 52% 50%}
  100%{background-position:100% 92%, 0% 70%, 100% 0%, 100% 50%}
}

@keyframes optionGlowSide{
  0%{transform:translate3d(-10%, -4%, 0) scale(1)}
  100%{transform:translate3d(12%, 4%, 0) scale(1.04)}
}

@keyframes optionGlowBloom{
  0%{transform:translate3d(0, -12%, 0) scale(.96)}
  100%{transform:translate3d(0, 10%, 0) scale(1.12)}
}

@keyframes optionGlowDiagonal{
  0%{transform:translate3d(10%, -8%, 0) scale(1) rotate(0deg)}
  100%{transform:translate3d(-10%, 8%, 0) scale(1.08) rotate(1.5deg)}
}

/* ─────────────────────────────────
   ORGANIZATION
───────────────────────────────── */

.org-drawers{
  display:flex;
  flex-direction:column;
  gap:12px;
  max-width:980px;
  margin:0 auto;
}

.org-drawer{
  overflow:hidden;
  border:1px solid rgba(14,89,58,.13);
  border-radius:16px;
  background:rgba(255,255,255,.84);
  box-shadow:0 18px 48px rgba(22,103,67,.08);
}

.org-drawer summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  min-height:68px;
  padding:0 22px;
  cursor:pointer;
  list-style:none;
  color:var(--text);
}

.org-drawer summary::-webkit-details-marker{
  display:none;
}

.org-drawer summary::after{
  content:'+';
  display:flex;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  flex:0 0 auto;
  border-radius:50%;
  color:#0d7c61;
  background:linear-gradient(135deg, rgba(214,250,185,.72), rgba(196,247,236,.72));
  box-shadow:inset 0 0 0 1px rgba(14,89,58,.12);
  font-size:1.35rem;
  font-weight:700;
  line-height:1;
  transition:transform .24s var(--ease);
}

.org-drawer[open] summary::after{
  content:'-';
  transform:rotate(180deg);
}

.org-drawer summary span{
  font-size:1.05rem;
  font-weight:800;
  color:var(--text);
}

.org-drawer summary strong{
  margin-left:auto;
  color:var(--muted);
  font-size:.82rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  white-space:nowrap;
}

.org-member-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  padding:0 16px 16px;
}

.org-member-slot{
  display:flex;
  align-items:center;
  gap:12px;
  min-height:74px;
  padding:12px;
  border:1px solid rgba(14,89,58,.1);
  border-radius:12px;
  background:rgba(251,255,249,.78);
}

.org-member-photo{
  width:46px;
  height:46px;
  flex:0 0 auto;
  overflow:hidden;
  border-radius:50%;
  background:
    linear-gradient(135deg, rgba(255,255,255,.76), rgba(255,255,255,0)),
    linear-gradient(135deg, rgba(146,237,95,.28), rgba(67,189,229,.28));
  border:1px dashed rgba(14,89,58,.24);
}

.org-member-photo img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}

.org-member-photo-gracyeli,
.org-member-photo-nelcileno,
.org-member-photo-patricia,
.org-member-photo-aline,
.org-member-photo-vitor{
  border-style:solid;
  border-color:rgba(255,255,255,.88);
  box-shadow:0 10px 22px rgba(22,103,67,.14);
}

.org-member-photo-gracyeli img{
  object-position:center 24%;
}

.org-member-photo-nelcileno img{
  object-position:center 30%;
}

.org-member-photo-patricia img{
  object-position:center 28%;
}

.org-member-photo-aline img{
  object-position:center 24%;
}

.org-member-photo-vitor img{
  object-position:center 28%;
}

.org-member-slot h4{
  margin:0 0 3px;
  color:var(--text);
  font-size:.92rem;
  font-weight:750;
  line-height:1.2;
}

.org-member-slot p{
  margin:0;
  color:var(--muted);
  font-size:.8rem;
  line-height:1.3;
}

.org-member-email{
  display:inline-block;
  margin-top:4px;
  color:#0d7c61;
  font-size:.76rem;
  font-weight:650;
  line-height:1.25;
  overflow-wrap:anywhere;
}

.org-member-email::before{
  content:'E-mail para contato: ';
  color:var(--muted);
  font-weight:600;
}

@media (max-width:720px){
  .org-drawer summary{
        min-height:64px;
        padding:0 16px;
      }

  .org-drawer summary span{
        font-size:.98rem;
      }

  .org-drawer summary strong{
        font-size:.72rem;
        letter-spacing:.05em;
      }

  .org-member-grid{
        grid-template-columns:1fr;
        padding:0 12px 12px;
      }
}

@media (max-width:420px){
  .org-drawer summary{
        align-items:flex-start;
        flex-direction:column;
        gap:6px;
        padding:14px 52px 14px 16px;
        position:relative;
      }

  .org-drawer summary::after{
        position:absolute;
        top:14px;
        right:14px;
      }

  .org-drawer summary strong{
        margin-left:0;
      }
}

/* ─────────────────────────────────
   SPONSORS
───────────────────────────────── */

.sponsors-grid{
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:14px;margin-bottom:20px;
}

.section-compact .sponsors-grid{margin-bottom:16px}

.sponsor-slot{
  position:relative;overflow:hidden;
  border:1px solid rgba(18,24,38,.1);border-radius:18px;
  padding:34px 24px;text-align:center;
  min-height:300px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  font-size:1rem;font-weight:760;color:var(--text);
  background:#fff;
  box-shadow:0 14px 34px rgba(18,24,38,.055);
  transition:border-color .3s, background .3s, transform .3s, box-shadow .3s;
}

.sponsor-slot::before{
  content:'';
  position:absolute;
  left:22px;right:22px;top:0;
  height:5px;
  border-radius:0 0 999px 999px;
  background:linear-gradient(125deg, #ffd55f 0%, #ff8bd9 38%, #7c5cff 68%, #35ead7 100%);
  background-size:240% 240%;
  animation:cardFlow 4.8s ease-in-out infinite alternate;
}

.section-compact .sponsor-slot{padding:28px 20px}

.sponsor-slot:hover{
  transform:translateY(-3px);
  border-color:rgba(18,24,38,.16);
  box-shadow:0 18px 44px rgba(18,24,38,.08);
}

.sponsor-slot h3{
  margin:0 0 8px;
  color:var(--text);
  font-size:1.1rem;
  font-weight:800;
  letter-spacing:0;
}

.sponsor-slot p{
  min-height:42px;
  margin:0 auto 18px;
  color:var(--muted);
  font-size:.82rem;
  font-weight:600;
  line-height:1.35;
}

.sponsor-slot small{display:block;font-size:.78rem;font-weight:500;margin-top:6px;color:var(--muted)}

.sponsor-logo-link{
  display:flex;
  width:100%;
  margin:auto auto 0;
  align-items:center;
  justify-content:center;
  border-radius:14px;
  transition:transform .2s ease, filter .2s ease;
}

.sponsor-logo-link:hover,
.sponsor-logo-link:focus-visible{
  transform:translateY(-2px);
  filter:brightness(1.06);
}

.sponsor-logo-link:focus-visible{
  outline:2px solid var(--cyan);
  outline-offset:6px;
}

.sponsor-logo{
  display:block;
  width:100%;
  max-width:190px;
  height:150px;
  object-fit:contain;
}

.sponsor-logo-sbc{
  max-width:118px;
  height:150px;
}

.sponsor-logo-ufmt{
  max-width:220px;
  height:132px;
}

.sponsor-logo-ic{
  max-width:210px;
  height:150px;
}

/* ─────────────────────────────────
   FOOTER
───────────────────────────────── */

.footer{
  background:var(--bg-2);
  border-top:1px solid var(--border);
  padding:28px 0 18px;
}

.foot-grid{
  display:grid;grid-template-columns:1.8fr 1fr 1fr 1fr;
  gap:24px;margin-bottom:18px;
}

.foot-brand p{font-size:.8rem;color:var(--muted);margin-top:8px;line-height:1.5}

.foot-small{font-size:.72rem !important;margin-top:4px !important;color:rgba(18,24,38,.38) !important}

.foot-logo{font-size:1.15rem;font-weight:700;letter-spacing:0;display:flex;align-items:center;gap:1px}

.footer-logo-img{
  width:116px;
  height:56px;
}

.foot-logo span:first-child{color:var(--violet)}

.foot-logo sup{font-size:.6rem;color:var(--muted);margin-left:3px}

.foot-social{display:flex;gap:8px;margin-top:12px}

.foot-social a{
  width:32px;height:32px;border-radius:10px;
  border:1px solid var(--border);
  display:flex;align-items:center;justify-content:center;
  color:var(--muted);transition:border-color .2s,color .2s,background .2s;
}

.foot-social a svg{width:16px;height:16px}

.foot-social a:hover{border-color:var(--subtle);color:var(--text);background:rgba(18,24,38,.05)}

.foot-col h5{
  font-size:.72rem;font-weight:700;letter-spacing:.12em;
  text-transform:uppercase;color:var(--muted);margin-bottom:10px;
}

.foot-col a, .foot-col span{
  display:block;font-size:.8rem;color:var(--muted);
  margin-bottom:7px;transition:color .2s;
}

.foot-col a:hover{color:var(--text)}

.foot-bottom{
  border-top:1px solid var(--border);padding-top:12px;
  text-align:center;
}

.foot-bottom p{font-size:.7rem;color:rgba(18,24,38,.38)}

/* ─────────────────────────────────
   CALL PAGES
───────────────────────────────── */

.call-main{
  min-height:100vh;
  background:#fff;
}

.call-hero{
  position:relative;
  overflow:hidden;
  padding:150px 0 76px;
  border-bottom:1px solid var(--border);
  background:
    radial-gradient(circle at 15% 20%, var(--call-a, rgba(109,59,232,.16)), transparent 28%),
    radial-gradient(circle at 86% 18%, var(--call-b, rgba(0,143,138,.14)), transparent 26%),
    linear-gradient(180deg, #fff 0%, #f8f8f8 100%);
}

.call-hero>*{
  position:relative;
  z-index:4;
}

.call-hero .wrap{
  max-width:920px;
}

.call-kicker{
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--muted);
  margin-bottom:18px;
}

.call-hero h1{
  font-size:clamp(2.6rem,7vw,5.8rem);
  line-height:1;
  letter-spacing:0;
  margin-bottom:24px;
}

.call-hero p{
  max-width:680px;
  font-size:1.08rem;
  color:var(--muted);
  line-height:1.8;
}

.call-layout{
  display:grid;
  grid-template-columns:1.6fr .8fr;
  gap:56px;
  align-items:start;
  padding-top:84px;
  padding-bottom:120px;
}

.call-content h2{
  font-size:1.8rem;
  line-height:1.2;
  margin:0 0 18px;
}

.call-content p{
  color:var(--muted);
  margin-bottom:28px;
}

.call-list{
  border-top:1px solid var(--border);
  margin-bottom:48px;
}

.call-list li{
  display:flex;
  justify-content:space-between;
  gap:24px;
  padding:18px 0;
  border-bottom:1px solid var(--border);
  color:var(--muted);
}

.call-list strong{
  color:var(--text);
  min-width:180px;
}

.call-side{
  position:sticky;
  top:96px;
  border:1px solid var(--border);
  border-radius:var(--r-lg);
  padding:28px;
  background:#fff;
}

.call-side h3{
  font-size:1rem;
  margin-bottom:18px;
}

.call-side p{
  color:var(--muted);
  font-size:.9rem;
  margin-bottom:22px;
}

.call-side .btn-glow,
.call-side .btn-ghost{
  width:100%;
  justify-content:center;
}

.call-side .btn-ghost{
  margin-top:10px;
}

.call-full{
  border-bottom:none;
  color:#fff;
  background:
    radial-gradient(circle at 16% 20%, rgba(154,185,255,.58) 0 18%, transparent 31%),
    radial-gradient(circle at 78% 18%, rgba(125,142,239,.58) 0 22%, transparent 36%),
    linear-gradient(140deg, #9eb8f3 0%, #718de4 34%, #4d6bd1 62%, #203a89 100%);
  background-size:220% 220%;
  animation:priceGradientMove 2.75s ease-in-out infinite alternate;
}

.call-full::before,
.call-full::after{
  content:'';
  position:absolute;
  inset:-18%;
  border-radius:0;
  filter:blur(34px);
  pointer-events:none;
}

.call-full::before{
  display:none;
}

.call-full::after{
  inset:0;
  filter:none;
  background:
    radial-gradient(circle at 20% 24%, rgba(255,255,255,.24), transparent 18%),
    linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.08));
  mix-blend-mode:soft-light;
  opacity:.55;
  animation:priceGlowMove 3s ease-in-out infinite alternate;
}

.call-full .call-kicker,
.call-full p{
  color:rgba(255,255,255,.72);
}

.call-full h1{
  color:#fff;
}

.call-short{
  border-bottom:none;
  color:#fff;
  background:
    radial-gradient(circle at 16% 20%, rgba(226,150,233,.56) 0 20%, transparent 34%),
    radial-gradient(circle at 78% 18%, rgba(196,105,207,.54) 0 21%, transparent 35%),
    linear-gradient(180deg, #d98ade 0%, #c06bcc 36%, #99489f 66%, #602663 100%);
  background-size:220% 220%;
  animation:priceGradientMove 2.7s ease-in-out infinite alternate;
}

.call-short::before,
.call-short::after{
  content:'';
  position:absolute;
  inset:-18%;
  border-radius:0;
  filter:blur(34px);
  pointer-events:none;
}

.call-short::before{
  display:none;
}

.call-short::after{
  inset:0;
  filter:none;
  background:
    radial-gradient(circle at 20% 24%, rgba(255,255,255,.22), transparent 18%),
    linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.08));
  mix-blend-mode:soft-light;
  opacity:.55;
  animation:priceGlowMove 3s ease-in-out infinite alternate;
}

.call-short .call-kicker,
.call-short p{
  color:rgba(255,255,255,.72);
}

.call-short h1{
  color:#fff;
}

.call-course{
  border-bottom:none;
  color:#fff;
  background:
    radial-gradient(circle at 14% 78%, rgba(103,229,198,.56) 0 20%, transparent 34%),
    radial-gradient(circle at 78% 70%, rgba(76,196,166,.52) 0 22%, transparent 38%),
    linear-gradient(180deg, #4ab89c 0%, #35967e 34%, #277a68 68%, #195346 100%);
  background-size:220% 220%;
  animation:priceGradientMove 2.75s ease-in-out infinite alternate;
}

.call-course::before,
.call-course::after{
  content:'';
  position:absolute;
  inset:-18%;
  border-radius:0;
  filter:blur(34px);
  pointer-events:none;
}

.call-course::before{
  display:none;
}

.call-course::after{
  inset:0;
  filter:none;
  background:
    radial-gradient(circle at 20% 24%, rgba(255,255,255,.2), transparent 18%),
    linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.08));
  mix-blend-mode:soft-light;
  opacity:.5;
  animation:priceGlowMove 3s ease-in-out infinite alternate;
}

.call-course .call-kicker,
.call-course p{
  color:rgba(255,255,255,.74);
}

.call-course h1{
  color:#fff;
}

.activity-violet{
  border-bottom:none;
  color:#fff;
  background:
    radial-gradient(circle at 16% 20%, rgba(124,92,255,.64) 0 18%, transparent 32%),
    radial-gradient(circle at 82% 18%, rgba(255,139,217,.58) 0 20%, transparent 34%),
    linear-gradient(125deg, #efe9ff 0%, #a58cff 46%, #f58bd4 100%);
  background-size:220% 220%;
  animation:priceGradientMove 2.75s ease-in-out infinite alternate;
}

.activity-cyan{
  border-bottom:none;
  color:#fff;
  background:
    radial-gradient(circle at 18% 20%, rgba(53,234,215,.64) 0 18%, transparent 32%),
    radial-gradient(circle at 82% 18%, rgba(213,255,242,.54) 0 22%, transparent 36%),
    linear-gradient(125deg, #54dcca 0%, #9ef5e4 48%, #e9fff7 100%);
  background-size:220% 220%;
  animation:priceGradientMove 2.75s ease-in-out infinite alternate;
}

.activity-amber{
  border-bottom:none;
  color:#fff;
  background:
    radial-gradient(circle at 18% 20%, rgba(255,213,95,.72) 0 18%, transparent 32%),
    radial-gradient(circle at 78% 18%, rgba(255,157,119,.58) 0 20%, transparent 34%),
    linear-gradient(125deg, #ffe789 0%, #ffc05c 44%, #fff0cf 100%);
  background-size:220% 220%;
  animation:priceGradientMove 2.75s ease-in-out infinite alternate;
}

.activity-rose{
  border-bottom:none;
  color:#fff;
  background:
    radial-gradient(circle at 18% 20%, rgba(255,107,75,.68) 0 18%, transparent 32%),
    radial-gradient(circle at 82% 16%, rgba(255,228,106,.62) 0 20%, transparent 34%),
    linear-gradient(125deg, #ff805c 0%, #ffba6a 44%, #fff07e 100%);
  background-size:220% 220%;
  animation:priceGradientMove 2.75s ease-in-out infinite alternate;
}

.activity-violet::after,
.activity-cyan::after,
.activity-amber::after,
.activity-rose::after{
  content:'';
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 20% 24%, rgba(255,255,255,.24), transparent 18%),
    linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.16));
  mix-blend-mode:soft-light;
  animation:priceGlowMove 3s ease-in-out infinite alternate;
}

.activity-violet .call-kicker,
.activity-violet p,
.activity-cyan .call-kicker,
.activity-cyan p,
.activity-amber .call-kicker,
.activity-amber p,
.activity-rose .call-kicker,
.activity-rose p{
  color:rgba(255,255,255,.78);
}

.activity-violet h1,
.activity-cyan h1,
.activity-amber h1,
.activity-rose h1{
  color:#fff;
}

.activity-program{
  display:grid;
  gap:18px;
  margin:24px 0 48px;
}

.activity-program .sched-day{
  display:none;
}

.activity-program .sched-day.active{
  display:grid;
  gap:12px;
}

.activity-day-head{
  padding:0 4px;
}

.activity-day-head h3{
  font-size:1.05rem;
  line-height:1.2;
  margin:0 0 2px;
}

.activity-day-head p{
  color:var(--muted);
  font-size:.86rem;
  margin:0;
}

.activity-session{
  display:grid;
  grid-template-columns:104px 1fr;
  gap:18px;
  padding:18px;
  border:1px solid rgba(18,24,38,.09);
  border-radius:18px;
  background:#fff;
  box-shadow:0 12px 34px rgba(18,24,38,.06);
}

.activity-time{
  width:max-content;
  height:max-content;
  padding:8px 11px;
  border-radius:999px;
  background:rgba(18,24,38,.06);
  color:var(--text);
  font-size:.78rem;
  font-weight:760;
  font-variant-numeric:tabular-nums;
}

.activity-session h3{
  font-size:1.05rem;
  line-height:1.25;
  margin-bottom:8px;
}

.activity-session p{
  color:var(--muted);
  font-size:.9rem;
  margin-bottom:10px;
}

.activity-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.activity-meta span{
  padding:5px 9px;
  border-radius:999px;
  background:rgba(18,24,38,.055);
  color:var(--muted);
  font-size:.72rem;
  font-weight:650;
}

.activity-note{
  border:1px solid rgba(18,24,38,.09);
  border-radius:18px;
  padding:22px;
  background:
    radial-gradient(circle at 12% 0%, rgba(109,59,232,.08), transparent 34%),
    #fff;
}

.activity-note h3{
  font-size:1rem;
  margin-bottom:10px;
}

.activity-note p{
  color:var(--muted);
  margin-bottom:0;
}

/* ─────────────────────────────────
   REGISTRATION PAGES
───────────────────────────────── */

/* ─────────────────────────────────
   SEMATEC DARK NEON OVERRIDES
───────────────────────────────── */

.section,
.about-section,
#local,
#organizacao,
#parceiros,
.call-main,
.registration-main{
  background:var(--bg);
}

.section-dark,
.footer{
  background:#050b10;
}

.section:nth-of-type(even){
  background:
    radial-gradient(circle at 10% 0%, rgba(20,200,255,.07), transparent 34%),
    radial-gradient(circle at 90% 30%, rgba(127,120,255,.055), transparent 28%),
    var(--bg);
}

.about-head p,
.s-desc,
.act-card p,
.focus-card p,
.sched-item p,
.sub-card>p,
.sub-card ul li,
.sub-deadline,
.speaker-card p,
.price-row span,
.price-list li,
.price-more-note,
.local-detail p,
.org-card h4,
.inst small,
.sponsor-slot small,
.foot-brand p,
.foot-col a,
.foot-col span,
.call-content p,
.call-hero p,
.call-side p,
.activity-day-head p,
.activity-session p,
.activity-meta span,
.activity-note p,
.registration-hero p,
.registration-option p,
.registration-price span,
.registration-note,
.registration-info-card p,
.registration-info-card li{
  color:var(--muted);
}

.about-head h2 span{
  background:
    radial-gradient(circle at 16% 22%, var(--leaf) 0 16%, transparent 28%),
    radial-gradient(circle at 78% 18%, var(--cyan) 0 18%, transparent 30%),
    linear-gradient(110deg, #eaffd4 0%, var(--leaf) 38%, var(--cyan) 100%);
  background-size:220% 220%;
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
}

.focus-card,
.act-card,
.sched-tabs,
.sched-body,
.sched-item,
.speaker-card,
.price-card,
.local-info,
.local-map,
.org-card,
.inst-row,
.sponsor-slot,
.contact-link a,
.call-side,
.activity-session,
.activity-note,
.registration-option,
.registration-info-card{
  background:linear-gradient(180deg, rgba(9,23,30,.9), rgba(5,13,18,.94));
  border-color:var(--border);
  box-shadow:0 18px 50px rgba(0,0,0,.34);
}

.focus-card::after,
.act-card::after,
.price-top::after,
.registration-option::after,
.registration-hero::after{
  background:
    radial-gradient(circle at 20% 24%, rgba(255,255,255,.18), transparent 20%),
    linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.08));
}

.focus-icon,
.sp-avatar,
.local-icon{
  background:rgba(83,255,218,.08);
  color:var(--cyan);
  box-shadow:inset 0 0 0 1px rgba(83,255,218,.16);
}

.focus-card h3,
.act-card h3,
.sched-item h4,
.speaker-card h4,
.price-top h3,
.price-row span b,
.sub-card h3,
.sub-deadline strong,
.local-detail strong,
.org-card p,
.inst span,
.sponsor-slot,
.call-list strong,
.call-content h2,
.call-side h3,
.activity-session h3,
.activity-note h3,
.registration-group-head h2,
.registration-option h2,
.registration-info-card h2,
.registration-info-card a{
  color:var(--text);
}

.act-violet,
.act-cyan,
.act-amber,
.act-rose{
  --card-gradient:
    radial-gradient(circle at 16% 18%, rgba(127,120,255,.86) 0 16%, transparent 30%),
    radial-gradient(circle at 82% 22%, rgba(20,200,255,.82) 0 18%, transparent 34%),
    linear-gradient(125deg, #08131a 0%, #0d2c26 42%, #073047 100%);
}

.act-more,
.price-button{
  background:linear-gradient(135deg, var(--leaf) 0%, var(--cyan) 46%, var(--violet) 100%);
  color:#031008;
  box-shadow:0 0 28px rgba(20,200,255,.18);
}

.act-more:hover,
.price-button:hover{
  background:linear-gradient(135deg, #72ff52 0%, #14c8ff 44%, #7f78ff 100%);
}

.sched-body{
  background:
    radial-gradient(circle at 10% 0%, rgba(127,120,255,.12), transparent 34%),
    radial-gradient(circle at 92% 12%, rgba(20,200,255,.12), transparent 30%),
    linear-gradient(180deg, rgba(9,23,30,.9), rgba(5,13,18,.96));
}

.sched-time{
  background:rgba(83,255,218,.08);
}

.stab:hover{
  color:var(--text);
  background:rgba(83,255,218,.08);
}

.stab-active{
  background:linear-gradient(135deg, var(--leaf) 0%, var(--cyan) 46%, var(--violet) 100%);
  color:#031008;
}

.sub-full,
.sub-short,
.sub-cyan,
.call-full,
.call-short,
.call-course,
.activity-violet,
.activity-cyan,
.activity-amber,
.activity-rose,
.registration-main .price-violet,
.registration-main .price-cyan,
.registration-main .price-amber,
.registration-main .price-rose,
.registration-main .option-violet,
.registration-main .option-cyan,
.registration-main .option-amber,
.registration-main .option-rose,
.price-violet,
.price-cyan,
.price-amber,
.price-rose{
  --price-gradient:
    radial-gradient(circle at 16% 22%, rgba(127,120,255,.82) 0 18%, transparent 32%),
    radial-gradient(circle at 82% 18%, rgba(20,200,255,.76) 0 20%, transparent 34%),
    linear-gradient(130deg, #071018 0%, #0b3028 44%, #06324c 100%);
}

.sub-full .sub-gradient,
.sub-short .sub-gradient,
.sub-cyan .sub-gradient,
.call-full,
.call-short,
.call-course,
.activity-violet,
.activity-cyan,
.activity-amber,
.activity-rose{
  background:var(--price-gradient);
  background-size:220% 220%;
}

.sub-card::after,
.sub-full::after,
.sub-short::after,
.sub-cyan::after{
  background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(0,0,0,.08) 44%, rgba(0,0,0,.28) 100%);
}

.sub-link{
  background:rgba(222,255,246,.92);
  color:#031008 !important;
}

.topic{
  background:rgba(83,255,218,.06);
  border-color:rgba(83,255,218,.16);
}

.t-violet,
.t-amber{color:var(--leaf)}

.t-cyan,
.t-rose{color:var(--cyan)}

.speaker-card::before,
.local-info::before,
.org-card::before,
.sponsor-slot::before{
  background:linear-gradient(125deg, var(--leaf), var(--cyan));
}

.price-row,
.price-list,
.local-detail,
.foot-bottom,
.call-list,
.call-list li{
  border-color:rgba(83,255,218,.12);
}

.local-map iframe{
  filter:grayscale(1) invert(.92) hue-rotate(155deg) saturate(1.2) brightness(.82);
}

.sponsor-slot:hover,
.speaker-card:hover,
.price-card:hover,
.act-card:hover,
.focus-card:hover{
  border-color:rgba(127,120,255,.34);
  box-shadow:0 24px 62px rgba(0,0,0,.42), 0 0 34px rgba(20,200,255,.1);
}

.contact-link a:hover,
.foot-social a:hover{
  color:var(--text);
  background:rgba(83,255,218,.08);
}

.foot-small,
.foot-bottom p{
  color:rgba(222,255,246,.42) !important;
}

.call-hero,
.registration-hero{
  background:
    radial-gradient(circle at 16% 20%, rgba(127,120,255,.16), transparent 28%),
    radial-gradient(circle at 86% 18%, rgba(20,200,255,.16), transparent 26%),
    linear-gradient(180deg, #02060a 0%, #071018 100%);
  border-bottom-color:var(--border);
}

/* Match the submissions cards to the registration/pricing cards */

#submissoes .sub-grid{
  gap:22px;
}

#submissoes .sub-card{
  min-height:0;
  padding:160px 26px 26px;
  border:1px solid var(--border);
  border-radius:16px;
  background:#061017;
  box-shadow:0 18px 50px rgba(0,0,0,.34);
  overflow:hidden;
}

#submissoes .sub-card::after{
  display:none;
}

#submissoes .sub-card:hover{
  transform:translateY(-5px);
  box-shadow:0 24px 58px rgba(0,0,0,.42), 0 0 34px rgba(20,200,255,.1);
}

#submissoes .sub-gradient{
  inset:0 0 auto;
  height:132px;
  border-radius:16px 16px 0 0;
  border-bottom:1px solid rgba(83,255,218,.18);
  background:var(--price-gradient);
  background-size:220% 220%;
  animation:priceGradientMove 3.4s ease-in-out infinite alternate;
}

#submissoes .sub-gradient::before{
  display:none;
}

#submissoes .sub-gradient::after{
  inset:0;
  width:auto;
  height:auto;
  background:
    radial-gradient(circle at 24% 24%, rgba(255,255,255,.16), transparent 20%),
    linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));
  filter:none;
  mix-blend-mode:soft-light;
  opacity:.7;
  animation:none;
}

#submissoes .sub-card h3{
  position:absolute;
  top:6px;
  left:26px;
  right:26px;
  z-index:4;
  margin:0;
  color:#031008 !important;
  font-size:clamp(1.55rem,2.4vw,2.05rem);
  line-height:1.08;
  font-weight:820;
}

#submissoes .sub-card>p{
  flex:0;
  min-height:74px;
  margin-bottom:22px;
  color:var(--muted) !important;
}

#submissoes .sub-card ul{
  margin-top:auto;
  border-top:1px solid rgba(83,255,218,.12);
}

#submissoes .sub-card ul li{
  padding:9px 0;
  color:var(--muted) !important;
  border-bottom:1px solid rgba(83,255,218,.12);
}

#submissoes .sub-card ul li::before{
  background:var(--cyan);
}

#submissoes .sub-deadline{
  margin-top:18px;
  padding-top:18px;
  color:var(--muted) !important;
  border-top:1px solid rgba(83,255,218,.12);
}

#submissoes .sub-deadline strong{
  color:var(--text) !important;
}

#submissoes .sub-link{
  min-height:42px;
  margin-top:18px;
  background:linear-gradient(135deg, var(--leaf) 0%, var(--cyan) 46%, var(--violet) 100%);
  color:#031008 !important;
  box-shadow:0 0 28px rgba(20,200,255,.18);
}

#submissoes .sub-card:hover .sub-link{
  background:linear-gradient(135deg, #72ff52 0%, #14c8ff 44%, #7f78ff 100%);
}

/* ─────────────────────────────────
   SEMATEC LIGHT THEME RESET
───────────────────────────────── */

body{
  background:
    radial-gradient(circle at 50% -10%, rgba(20,200,255,.11), transparent 34%),
    radial-gradient(circle at 92% 8%, rgba(127,120,255,.1), transparent 28%),
    var(--bg);
  color:var(--text);
}

.grain-overlay{opacity:.018}

.nav.scrolled{
  background:rgba(255,255,255,.88);
  border-bottom:1px solid rgba(6,80,84,.12);
}

.nav:not(.scrolled) .nav-logo span,
.nav:not(.scrolled) .nav-logo sup,
.nav:not(.scrolled) .dim,
.nav:not(.scrolled) .nav-links a{
  color:rgba(8,20,24,.72);
  text-shadow:none;
}

.nav:not(.scrolled) .nav-links a:hover{color:var(--text)}

.nav:not(.scrolled) .nav-burger span{background:var(--text)}

.nav:not(.scrolled) .nav-logo-img{
  filter:drop-shadow(0 10px 24px rgba(6,80,84,.08));
}

.hero{
  background:#f9fffb;
}

.hero::before{
  background:
    linear-gradient(180deg, rgba(255,255,255,.24) 0%, rgba(255,255,255,.72) 58%, #fff 100%),
    radial-gradient(circle at 64% 36%, rgba(127,120,255,.22), transparent 42%),
    radial-gradient(circle at 22% 22%, rgba(20,200,255,.18), transparent 34%);
}

.hero::after{
  background:linear-gradient(to bottom, transparent, #fff);
}

.hero-eyebrow{
  color:rgba(8,20,24,.76);
  border-color:rgba(6,80,84,.16);
  background:rgba(255,255,255,.78);
}

.hero-title{
  color:var(--text);
  text-shadow:none;
}

.hero-sub{
  color:rgba(8,20,24,.68);
  text-shadow:none;
}

.hero-actions .btn-ghost{
  color:var(--text);
  background:rgba(255,255,255,.76);
  border-color:rgba(6,80,84,.16);
}

.btn-ghost{
  color:var(--text);
  background:rgba(255,255,255,.76);
  border-color:rgba(6,80,84,.16);
}

.hero-actions .btn-ghost:hover{
  color:var(--text);
  border-color:rgba(6,80,84,.28);
}

.scroll-line{
  background:linear-gradient(to bottom, transparent, rgba(6,80,84,.28));
}

.section,
.about-section,
#local,
#organizacao,
#parceiros,
.call-main,
.registration-main{
  background:#fff;
}

.section-dark,
.footer{
  background:#f5fbf8;
}

.section:nth-of-type(even){
  background:
    radial-gradient(circle at 8% 0%, rgba(20,200,255,.08), transparent 30%),
    radial-gradient(circle at 92% 30%, rgba(127,120,255,.08), transparent 28%),
    #fff;
}

.focus-card,
.act-card,
.sched-tabs,
.sched-body,
.sched-item,
.speaker-card,
.price-card,
.local-info,
.local-map,
.org-card,
.inst-row,
.sponsor-slot,
.contact-link a,
.call-side,
.activity-session,
.activity-note,
.registration-option,
.registration-info-card{
  background:#fff;
  border-color:rgba(6,80,84,.12);
  box-shadow:0 18px 44px rgba(6,80,84,.08);
}

.focus-card::after,
.act-card::after,
.price-top::after,
.registration-option::after,
.registration-hero::after{
  background:
    radial-gradient(circle at 20% 24%, rgba(255,255,255,.36), transparent 20%),
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.16));
}

.focus-icon,
.sp-avatar,
.local-icon{
  background:rgba(20,200,255,.08);
  color:#008e9c;
  box-shadow:inset 0 0 0 1px rgba(6,80,84,.12);
}

.act-violet,
.act-cyan,
.act-amber,
.act-rose{
  --card-gradient:
    radial-gradient(circle at 12% 18%, rgba(100,241,63,.6) 0 14%, transparent 28%),
    radial-gradient(circle at 82% 22%, rgba(20,200,255,.86) 0 18%, transparent 34%),
    radial-gradient(circle at 72% 78%, rgba(127,120,255,.72) 0 18%, transparent 36%),
    linear-gradient(125deg, #20c9ff 0%, #2a91ff 44%, #7f78ff 100%);
}

.sched-body{
  background:
    radial-gradient(circle at 10% 0%, rgba(127,120,255,.1), transparent 34%),
    radial-gradient(circle at 92% 12%, rgba(20,200,255,.1), transparent 30%),
    #fff;
}

.sched-time,
.activity-time,
.activity-meta span{
  background:rgba(6,80,84,.055);
}

.sub-full,
.sub-short,
.sub-cyan,
.call-full,
.call-short,
.call-course,
.activity-violet,
.activity-cyan,
.activity-amber,
.activity-rose,
.registration-main .price-violet,
.registration-main .price-cyan,
.registration-main .price-amber,
.registration-main .price-rose,
.registration-main .option-violet,
.registration-main .option-cyan,
.registration-main .option-amber,
.registration-main .option-rose,
.price-violet,
.price-cyan,
.price-amber,
.price-rose{
  --price-gradient:
    radial-gradient(circle at 14% 22%, rgba(100,241,63,.58) 0 16%, transparent 30%),
    radial-gradient(circle at 82% 18%, rgba(20,200,255,.82) 0 20%, transparent 34%),
    radial-gradient(circle at 72% 78%, rgba(127,120,255,.68) 0 18%, transparent 36%),
    linear-gradient(130deg, #1cc8ff 0%, #2f91ff 46%, #7f78ff 100%);
}

.price-row,
.price-list,
.local-detail,
.foot-bottom,
.call-list,
.call-list li,
#submissoes .sub-card ul,
#submissoes .sub-card ul li,
#submissoes .sub-deadline{
  border-color:rgba(6,80,84,.1);
}

#submissoes .sub-card{
  background:#fff;
  border-color:rgba(6,80,84,.12);
  box-shadow:0 18px 44px rgba(6,80,84,.08);
}

#submissoes .sub-card:hover,
.sponsor-slot:hover,
.speaker-card:hover,
.price-card:hover,
.act-card:hover,
.focus-card:hover{
  border-color:rgba(6,80,84,.2);
  box-shadow:0 24px 56px rgba(6,80,84,.12);
}

.sub-link{
  background:linear-gradient(135deg, var(--leaf) 0%, var(--cyan) 46%, var(--violet) 100%);
}

.topic{
  background:rgba(255,255,255,.78);
  border-color:rgba(6,80,84,.13);
}

.local-map iframe{
  filter:grayscale(.15) saturate(1.05) brightness(1.02);
}

.local-map-panel{
  background:
    linear-gradient(90deg, rgba(6,80,84,.05) 1px, transparent 1px),
    linear-gradient(0deg, rgba(6,80,84,.04) 1px, transparent 1px),
    radial-gradient(circle at 72% 34%, rgba(20,200,255,.16), transparent 34%),
    radial-gradient(circle at 24% 78%, rgba(127,120,255,.18), transparent 36%),
    linear-gradient(180deg, rgba(255,255,255,.24), rgba(255,255,255,.86));
}

.local-map-panel span,
.local-map-panel small{
  color:rgba(8,20,24,.6);
}

.local-map-panel strong{
  color:var(--text);
}

.call-hero,
.registration-hero{
  background:var(--motion-gradient);
  background-size:220% 220%, 220% 220%, 220% 220%, 220% 220%;
  background-position:50% 50%, 50% 50%, 50% 50%, 50% 50%;
  border-bottom:1px solid rgba(8,20,24,.08);
  animation:none;
}

.call-full,
.call-short,
.call-course,
.activity-violet,
.activity-cyan,
.activity-amber,
.activity-rose{
  animation:none !important;
}

.call-full::after,
.call-short::after,
.call-course::after,
.activity-violet::after,
.activity-cyan::after,
.activity-amber::after,
.activity-rose::after{
  display:none;
}

.call-hero h1,
.registration-hero h1,
.activity-violet h1,
.activity-cyan h1,
.activity-amber h1,
.activity-rose h1{
  color:#061017;
}

.call-hero .call-kicker,
.registration-hero .call-kicker,
.activity-violet .call-kicker,
.activity-cyan .call-kicker,
.activity-amber .call-kicker,
.activity-rose .call-kicker,
.registration-hero p,
.activity-violet p,
.activity-cyan p,
.activity-amber p,
.activity-rose p{
  color:rgba(6,16,23,.72);
}

.foot-small,
.foot-bottom p{
  color:rgba(8,20,24,.42) !important;
}

.foot-social a:hover,
.contact-link a:hover{
  background:rgba(6,80,84,.045);
}

/* ─────────────────────────────────
   EDITORIAL MOTION CARDS
───────────────────────────────── */

:root{
  --editorial-bg:#d7edf7;
  --editorial-card:#ffffff;
  --editorial-ink:#080f12;
  --editorial-line:rgba(8,20,24,.1);
  --motion-gradient:
    radial-gradient(circle at 12% 18%, rgba(100,241,63,.48), transparent 30%),
    radial-gradient(circle at 72% 18%, rgba(20,200,255,.68), transparent 34%),
    radial-gradient(circle at 84% 78%, rgba(127,120,255,.62), transparent 38%),
    linear-gradient(135deg, #21c8ff 0%, #2e92ff 48%, #7f78ff 100%);
}

.about-section,
#atividades,
#submissoes,
#palestrantes,
#inscricoes{
  background:
    radial-gradient(circle at 12% 10%, rgba(20,200,255,.11), transparent 26%),
    radial-gradient(circle at 88% 0%, rgba(127,120,255,.12), transparent 28%),
    var(--editorial-bg);
}

.section.about-section{
  background:
    linear-gradient(180deg, #fff 0 46%, var(--editorial-bg) 46% 100%),
    radial-gradient(circle at 12% 58%, rgba(20,200,255,.11), transparent 26%),
    radial-gradient(circle at 88% 58%, rgba(127,120,255,.12), transparent 28%),
    var(--editorial-bg);
}

.focus-card,
.act-card,
#submissoes .sub-card,
.price-card{
  border-radius:8px;
  background:var(--editorial-card);
  border:1px solid rgba(8,20,24,.08);
  box-shadow:0 18px 48px rgba(8,50,62,.08);
  overflow:hidden;
}

.focus-card::before,
.act-card::before,
#submissoes .sub-gradient,
.price-top::before{
  background:var(--motion-gradient);
  background-size:220% 220%, 220% 220%, 220% 220%, 220% 220%;
  animation:none;
}

.focus-card::after,
.act-card::after,
#submissoes .sub-gradient::after,
.price-top::after{
  display:none;
}

.act-card{
  padding:172px 24px 72px;
  min-height:330px;
}

.act-card::before,
.act-card::after{
  height:148px;
}

.act-card h3{
  color:#061017;
  z-index:4;
}

.act-card p{
  z-index:4;
  color:rgba(8,20,24,.68);
}

#submissoes .sub-card,
.price-card{
  background:#fff;
}

#submissoes .sub-card{
  padding-top:166px;
}

#submissoes .sub-gradient{
  height:136px;
  border-bottom:0;
}

#submissoes .sub-card::after{
  display:block;
  content:'';
  position:absolute;
  left:0;
  right:0;
  top:122px;
  bottom:0;
  z-index:2;
  pointer-events:none;
  background:#fff;
  border-radius:24px 24px 8px 8px;
  box-shadow:0 -10px 24px rgba(8,20,24,.05);
}

#submissoes .sub-card h3{
  z-index:4;
  color:#061017 !important;
}

#submissoes .sub-card>p,
#submissoes .sub-card ul,
#submissoes .sub-deadline,
#submissoes .sub-link{
  position:relative;
  z-index:4;
}

#submissoes .sub-card>p,
#submissoes .sub-card ul li,
#submissoes .sub-deadline,
.price-row span,
.price-list li,
.price-more-note{
  color:rgba(8,20,24,.64) !important;
}

#submissoes .sub-card ul,
#submissoes .sub-card ul li,
#submissoes .sub-deadline,
.price-row,
.price-list{
  border-color:var(--editorial-line);
}

.focus-card,
.act-card,
#submissoes .sub-card,
.price-card,
.registration-option{
  border-radius:22px;
}

.focus-card::before,
.act-card::before,
#submissoes .sub-gradient,
.price-top,
.price-top::before,
.registration-option::before{
  border-radius:22px 22px 0 0;
}

@keyframes focusIconFloat{
  0%,100%{transform:translateY(0) rotate(0deg)}
  50%{transform:translateY(-5px) rotate(-2deg)}
}

@keyframes focusIconSheen{
  0%,54%{
    opacity:0;
    transform:translateX(-92%) rotate(12deg);
  }
  64%{opacity:.76}
  78%,100%{
    opacity:0;
    transform:translateX(92%) rotate(12deg);
  }
}

@keyframes focusIconSignal{
  0%,100%{
    stroke-dashoffset:0;
    filter:drop-shadow(0 0 0 rgba(20,200,255,0));
  }
  50%{
    stroke-dashoffset:-10;
    filter:drop-shadow(0 0 6px rgba(20,200,255,.44));
  }
}

.act-card::after{
  display:block;
  content:'';
  position:absolute;
  left:0;
  right:0;
  top:132px;
  bottom:0;
  z-index:2;
  pointer-events:none;
  background:#fff;
  border-radius:22px;
  mix-blend-mode:normal;
  animation:none;
  box-shadow:0 -12px 26px rgba(8,20,24,.08);
}

.act-card p{
  position:relative;
  z-index:4;
}

.act-dot{
  position:absolute;
  z-index:4;
}

.act-more{
  position:absolute;
  z-index:4;
}

#submissoes .sub-card::after,
.registration-option::after{
  border-radius:22px;
  box-shadow:0 -12px 26px rgba(8,20,24,.08);
}

.price-row span b,
.price-row strong,
#submissoes .sub-deadline strong{
  color:#081418 !important;
}

.sub-link,
.price-button,
.act-more{
  border-radius:999px;
  background:#071014;
  color:#fff !important;
  box-shadow:none;
}

.sub-link:hover,
.price-button:hover,
.act-more:hover,
#submissoes .sub-card:hover .sub-link{
  color:#fff !important;
}

.btn-glow,
.btn-ghost,
.nav-pill,
.sub-link,
.price-button,
.act-more{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:#071014 !important;
  color:#fff !important;
  border-color:#071014;
  box-shadow:none;
  transition:transform .18s var(--ease), box-shadow .18s var(--ease), border-color .18s var(--ease);
}

.btn-glow::before,
.btn-ghost::before,
.nav-pill::before,
.sub-link::before,
.price-button::before,
.act-more::before{
  content:'';
  position:absolute;
  inset:0;
  z-index:-1;
  border-radius:inherit;
  background:linear-gradient(135deg, var(--leaf) 0%, var(--cyan) 46%, var(--violet) 100%);
  opacity:0;
  transform:scaleX(.18);
  transform-origin:left center;
  transition:transform .22s var(--ease), opacity .16s linear;
}

.btn-glow:hover,
.btn-ghost:hover,
.nav-pill:hover,
.sub-link:hover,
.price-button:hover,
.act-more:hover,
#submissoes .sub-card:hover .sub-link{
  transform:translateY(-2px);
  color:#fff !important;
  border-color:transparent;
  box-shadow:0 12px 28px rgba(8,50,62,.14);
}

.btn-glow:hover::before,
.btn-ghost:hover::before,
.nav-pill:hover::before,
.sub-link:hover::before,
.price-button:hover::before,
.act-more:hover::before,
#submissoes .sub-card:hover .sub-link::before{
  opacity:1;
  transform:scaleX(1);
}

#submissoes .sub-link,
#submissoes .sub-card:hover .sub-link,
.sub-card.sub-full .sub-link,
.sub-card.sub-short .sub-link,
.sub-card.sub-cyan .sub-link{
  color:#fff !important;
}

.act-card .act-more{
  position:absolute;
  right:24px;
  bottom:24px;
  z-index:4;
  width:auto;
  min-width:0;
  min-height:36px;
  padding:0 18px;
}

.act-card .act-more:hover{
  transform:translateY(-2px);
}

/* ─────────────────────────────────
   RESPONSIVE
───────────────────────────────── */

@media (max-width:1024px){
  .hero-body{
        grid-template-columns:1fr;
        gap:34px;
        text-align:center;
      }

  .hero-sub{
        margin-left:auto;
        margin-right:auto;
      }

  .hero-actions{
        justify-content:center;
      }

  .acts-grid{grid-template-columns:repeat(2,1fr)}

  .foot-grid{grid-template-columns:1fr 1fr}

  .local-grid{grid-template-columns:1fr}

  .local-map{height:320px}

  .call-layout{grid-template-columns:1fr}

  .call-side{position:static}

  .activity-session{grid-template-columns:1fr}
}

@media (max-width:768px){
  .nav-links{
        position:fixed;top:0;right:-100%;width:80%;max-width:300px;
        height:100vh;background:var(--bg-2);
        flex-direction:column;padding:80px 32px;gap:20px;
        border-left:1px solid var(--border);
        transition:.3s var(--ease);
      }

  .nav-links.open{right:0}

  .nav-links a{font-size:1.1rem}

  .nav-burger{display:flex}

  .section{padding:64px 0}

  .hero-body{
        padding:118px 24px 88px;
      }

  .hero-title{
        font-size:clamp(3rem,16vw,4.6rem);
      }

  .section-compact{padding:42px 0}

  .section-compact .s-head{margin-bottom:24px}

  .about-section{padding-bottom:54px}

  .about-head{margin-bottom:36px}

  .about-head p{font-size:1rem;line-height:1.7;margin-bottom:22px}

  .acts-grid{grid-template-columns:1fr}

  .sub-grid{grid-template-columns:1fr}

  .sponsors-grid{grid-template-columns:1fr}

  .foot-grid{grid-template-columns:1fr}

  .section-compact .local-map{height:220px}

  .section-compact .sponsor-slot{padding:24px 18px}

  .call-list li{display:block}

  .call-list strong{display:block;margin-bottom:6px;min-width:0}
}

@media (max-width:480px){
  .hero-title{font-size:2.65rem}

  .hero-actions{flex-direction:column;align-items:center}

  .hero-actions .btn-glow,.hero-actions .btn-ghost{width:100%;max-width:280px;justify-content:center}

  .sched-tabs{flex-direction:column;align-items:center}

  .stab{width:100%;max-width:220px}
}

/* AI meadow hero test */

.hero{
  min-height:100svh;
  background:#eaf8db;
}

.hero::before{
  background:
    linear-gradient(180deg, rgba(7,34,28,.04) 0%, rgba(7,34,28,.1) 34%, rgba(7,34,28,.34) 72%, rgba(255,255,255,.68) 100%),
    radial-gradient(circle at 50% 36%, rgba(255,255,255,.24), transparent 34%),
    radial-gradient(circle at 50% 54%, rgba(91,232,176,.1), transparent 42%);
}

.hero::after{
  height:20vh;
  background:linear-gradient(to bottom, transparent, rgba(255,255,255,.9) 88%);
}

.hero-eyebrow{
  color:rgba(8,41,31,.86);
  border-color:rgba(255,255,255,.42);
  background:rgba(255,255,255,.72);
  box-shadow:0 12px 34px rgba(4,34,20,.12);
}

.hero-sub{
  color:rgba(248,255,251,.92);
  text-shadow:0 12px 36px rgba(1,25,14,.55);
}

.hero-actions .btn-ghost{
  color:#fafffb;
  background:rgba(6,31,22,.34);
  border-color:rgba(255,255,255,.44);
}

@keyframes meadowCamera{
  0%{
    opacity:0;
    transform:scale(1.02) translate3d(0,0,0);
  }
  8%{
    opacity:1;
  }
  48%{
    opacity:1;
    transform:scale(1.2) translate3d(0,1.6%,0);
  }
  56%{
    opacity:0;
    transform:scale(1.25) translate3d(0,2.1%,0);
  }
  56.01%{
    opacity:0;
    transform:scale(1.02) translate3d(0,0,0);
  }
  100%{
    opacity:0;
    transform:scale(1.02) translate3d(0,0,0);
  }
}

@keyframes floatTitle{
  0%, 100%{
    transform:translate3d(0,0,0);
  }
  50%{
    transform:translate3d(0,-10px,0);
  }
}

@media (max-width:768px){
  .hero-body{
        padding:118px 20px 92px;
      }

  .hero-sub{
        font-size:1rem;
        line-height:1.65;
      }
}

/* Cinematic green technology hero */

.hero{
  min-height:100svh;
  align-items:stretch;
  justify-content:flex-start;
  background:#102918;
}

.hero::before{
  z-index:1;
  background:
    linear-gradient(90deg, rgba(1,18,11,.72) 0%, rgba(1,18,11,.46) 27%, rgba(1,18,11,.12) 52%, transparent 88%),
    linear-gradient(180deg, rgba(255,255,255,.02) 0%, transparent 54%, rgba(255,255,255,.22) 100%);
}

.hero::after{
  z-index:1;
  height:10vh;
  background:linear-gradient(to bottom, transparent, rgba(255,255,255,.46));
}

@keyframes cubeletAssemble{
  0%{ transform:translate3d(var(--gx),var(--gy),var(--gz)) rotateX(0) rotateY(0); }
  100%{ transform:translate3d(var(--ex),var(--ey),var(--ez)) rotateX(16deg) rotateY(-14deg); }
}

@keyframes cubeFloat{
  0%,100%{ transform:translateY(0); }
  50%{ transform:translateY(-16px); }
}

@keyframes cubeRotate{
  from{ transform:rotateY(0deg); }
  to{ transform:rotateY(360deg); }
}

@keyframes cubeShadowPulse{
  0%,100%{ transform:translateX(-50%) scale(1); opacity:.75; }
  50%{ transform:translateX(-50%) scale(.82); opacity:.5; }
}

.hero-body{
  position:absolute;
  inset:0;
  z-index:2;
  display:flex;
  width:100%;
  max-width:none;
  padding:122px clamp(22px, 5vw, 72px) 82px;
  align-items:center;
  justify-content:flex-start;
  text-align:left;
  pointer-events:none;
}

.hero-copy{
  max-width:520px;
  margin:0;
  pointer-events:auto;
}

.hero-eyebrow{
  margin-bottom:16px;
  color:#eaffdf;
  border-color:rgba(255,255,255,.34);
  background:rgba(6,34,20,.42);
  box-shadow:none;
  -webkit-backdrop-filter:blur(14px);
  backdrop-filter:blur(14px);
}

.hero-sub{
  max-width:500px;
  margin:0 0 24px;
  color:rgba(247,255,239,.9);
  font-size:1rem;
  line-height:1.65;
  text-shadow:0 10px 30px rgba(4,26,14,.46);
}

.hero-actions{
  justify-content:flex-start;
}

.hero-actions .btn-glow,
.hero-actions .btn-ghost{
  padding:14px 24px;
}

.hero-actions .btn-ghost{
  color:#fafff3;
  background:rgba(6,34,20,.38);
  border-color:rgba(255,255,255,.38);
  -webkit-backdrop-filter:blur(14px);
  backdrop-filter:blur(14px);
}

.hero-scroll{
  z-index:2;
}

@media (max-width:768px){
  .hero::before{
        background:
          linear-gradient(180deg, transparent 0%, rgba(6,42,24,.12) 35%, rgba(6,42,24,.68) 100%),
          linear-gradient(180deg, rgba(255,255,255,.1), rgba(255,255,255,.64));
      }

  .hero-body{
        padding:96px 20px 68px;
        align-items:center;
      }

  .hero-copy{
        max-width:100%;
      }

  .hero-sub{
        font-size:.95rem;
      }
}

@media (max-width:480px){
  .hero-actions{
        align-items:flex-start;
      }

  .hero-actions .btn-glow,
      .hero-actions .btn-ghost{
        width:auto;
        max-width:none;
      }
}

/* Dark metallic gradient system */

:root{
  --metal-deep:#050713;
  --metal-ink:#090b1f;
  --metal-blue:#0967ff;
  --metal-cyan:#29e6ff;
  --metal-violet:#8a3ffc;
  --metal-magenta:#ff38c8;
  --metal-red:#ff335f;
  --metal-ember:#ff7a32;
  --metal-lime:#91ff63;
  --metal-blue-grad:
    radial-gradient(circle at 15% 18%, rgba(41,230,255,.58) 0 12%, transparent 30%),
    radial-gradient(circle at 86% 76%, rgba(138,63,252,.5) 0 18%, transparent 42%),
    linear-gradient(135deg, #020411 0%, #061031 34%, #073384 66%, #1298ff 100%);
  --metal-violet-grad:
    radial-gradient(circle at 16% 18%, rgba(255,56,200,.52) 0 14%, transparent 32%),
    radial-gradient(circle at 78% 28%, rgba(41,230,255,.3) 0 13%, transparent 34%),
    linear-gradient(135deg, #060310 0%, #170935 34%, #4a18b5 68%, #a427ff 100%);
  --metal-rose-grad:
    radial-gradient(circle at 12% 22%, rgba(255,56,200,.58) 0 16%, transparent 34%),
    radial-gradient(circle at 84% 68%, rgba(255,122,50,.48) 0 18%, transparent 40%),
    linear-gradient(135deg, #12030c 0%, #350516 34%, #a70d3d 66%, #ff4c2f 100%);
  --metal-green-grad:
    radial-gradient(circle at 16% 20%, rgba(145,255,99,.42) 0 12%, transparent 34%),
    radial-gradient(circle at 82% 22%, rgba(41,230,255,.52) 0 15%, transparent 36%),
    linear-gradient(135deg, #020f0d 0%, #052035 42%, #0640a6 72%, #35d16f 100%);
  --metal-line-grad:linear-gradient(125deg, #073384 0%, #29e6ff 28%, #4a18b5 58%, #ff38c8 100%);
  --metal-hot-line:linear-gradient(125deg, #a70d3d 0%, #4a18b5 34%, #073384 62%, #29e6ff 100%);
}

body{
  background:
    radial-gradient(circle at 52% -12%, rgba(9,103,255,.12), transparent 34%),
    radial-gradient(circle at 94% 8%, rgba(255,56,200,.1), transparent 30%),
    var(--bg);
}

.btn-glow,
.hero-actions .btn-glow,
.sub-link,
.price-button,
.act-more,
#submissoes .sub-card:hover .sub-link{
  background:
    linear-gradient(135deg, rgba(255,255,255,.18), rgba(255,255,255,0) 28%),
    var(--metal-blue-grad) !important;
  color:#f8fbff !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.26),
    0 18px 46px rgba(9,103,255,.28),
    0 0 34px rgba(41,230,255,.18) !important;
}

.about-head h2 span{
  background:linear-gradient(100deg, #eaffff 0%, #29e6ff 28%, #8a3ffc 62%, #ff38c8 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
}


.act-violet{--card-gradient:var(--metal-violet-grad)}

.act-cyan{--card-gradient:var(--metal-blue-grad)}

.act-amber{--card-gradient:var(--metal-rose-grad)}

.act-rose{--card-gradient:var(--metal-rose-grad)}

.act-violet h3,
.act-cyan h3,
.act-amber h3,
.act-rose h3{
  background:linear-gradient(135deg, #f8fbff 0%, #29e6ff 36%, #ff38c8 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
}

.sub-full .sub-gradient,
.call-full,
.registration-grid .registration-option:nth-child(1)::before,
.pricing-grid .price-card:nth-child(1) .price-top,
.price-card:nth-child(1) .price-top{
  background:var(--metal-blue-grad) !important;
}

.sub-short .sub-gradient,
.call-short,
.registration-grid .registration-option:nth-child(2)::before,
.pricing-grid .price-card:nth-child(2) .price-top,
.price-card:nth-child(2) .price-top{
  background:var(--metal-violet-grad) !important;
}

.sub-cyan .sub-gradient,
.call-course,
.registration-grid .registration-option:nth-child(3)::before,
.pricing-grid .price-card:nth-child(3) .price-top,
.price-card:nth-child(3) .price-top{
  background:var(--metal-rose-grad) !important;
}

.act-violet::before,
.activity-violet::before{background:var(--metal-violet-grad) !important}

.act-cyan::before,
.activity-cyan::before{background:var(--metal-blue-grad) !important}

.act-amber::before,
.activity-amber::before{background:var(--metal-rose-grad) !important}

.act-rose::before,
.activity-rose::before{background:var(--metal-rose-grad) !important}

.speaker-card::before,
.local-info::before,
.org-card::before,
.sponsor-slot::before,
.price-card::before{
  background:var(--metal-line-grad) !important;
}

.sp-avatar,
.focus-icon,
.local-icon{
  background:linear-gradient(135deg, rgba(9,103,255,.16), rgba(138,63,252,.14), rgba(255,56,200,.12));
  color:#29e6ff;
  box-shadow:
    inset 0 0 0 1px rgba(41,230,255,.18),
    0 10px 24px rgba(9,103,255,.1);
}

.badge-violet,
.badge-cyan,
.badge-amber,
.badge-rose,
.topic{
  background:linear-gradient(135deg, rgba(9,103,255,.12), rgba(138,63,252,.11), rgba(255,56,200,.08));
  color:#0b3fb5;
  border-color:rgba(9,103,255,.14);
}

/* Full dark interface */

:root{
  --bg:#050711;
  --bg-2:#080b18;
  --bg-card:rgba(255,255,255,.055);
  --border:rgba(255,255,255,.12);
  --text:#f4f8ff;
  --muted:rgba(232,239,255,.68);
  --subtle:rgba(41,230,255,.28);
}

body{
  background:
    radial-gradient(circle at 16% 0%, rgba(9,103,255,.18), transparent 34rem),
    radial-gradient(circle at 88% 8%, rgba(255,56,200,.14), transparent 30rem),
    linear-gradient(180deg, #050711 0%, #080b18 46%, #050711 100%);
  color:var(--text);
}

.section,
.about-section,
#local,
#organizacao,
#parceiros,
.call-main,
.registration-main{
  background:
    radial-gradient(circle at 10% 0%, rgba(9,103,255,.08), transparent 34%),
    radial-gradient(circle at 92% 18%, rgba(255,56,200,.07), transparent 30%),
    var(--bg);
}

.section:nth-of-type(even){
  background:
    radial-gradient(circle at 12% 0%, rgba(41,230,255,.08), transparent 34%),
    radial-gradient(circle at 90% 28%, rgba(138,63,252,.08), transparent 28%),
    var(--bg-2);
}

.section-dark,
.footer{
  background:#050711;
}

.nav.scrolled{
  background:rgba(5,7,17,.74);
  border-bottom-color:rgba(255,255,255,.08);
  box-shadow:0 18px 46px rgba(0,0,0,.28);
}

.nav:not(.scrolled) .nav-links a,
.nav.scrolled .nav-links a{
  color:rgba(244,248,255,.78);
}

.nav:not(.scrolled) .nav-links a:hover,
.nav.scrolled .nav-links a:hover{
  color:#fff;
}

.nav:not(.scrolled) .nav-burger span,
.nav.scrolled .nav-burger span{
  background:#f4f8ff;
}

.nav:not(.scrolled) .nav-logo-img,
.nav.scrolled .nav-logo-img{
  filter:drop-shadow(0 10px 24px rgba(0,0,0,.34));
}

.about-head h2,
.s-head h2,
.activity-group-head h2,
.registration-group-head h2,
.call-content h2,
.call-side h3,
.registration-info-card h2,
.local-detail strong,
.org-card p,
.inst span,
.sponsor-slot h3,
.price-top h3,
.price-row span b,
.sub-card h3,
.act-card h3,
.focus-card h3,
.speaker-card h4{
  color:var(--text);
}

.about-head p,
.s-desc,
.act-card p,
.focus-card p,
.sub-card>p,
.sub-card ul li,
.speaker-card p,
.local-detail span,
.org-card h4,
.inst small,
.sponsor-slot p,
.price-row span,
.price-card p,
.call-content p,
.call-hero p,
.call-side p,
.registration-info-card p,
.registration-info-card li,
.activity-session p,
.activity-note p,
.hero-sub{
  color:var(--muted);
}

.focus-card,
.act-card,
.sched-body,
.sched-item,
.speaker-card,
.price-card,
.local-info,
.local-map,
.org-card,
.inst-row,
.sponsor-slot,
.contact-link a,
.call-side,
.activity-session,
.activity-note,
.registration-option,
.registration-info-card,
#submissoes .sub-card{
  background:
    linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.035)),
    rgba(8,11,24,.88);
  border-color:rgba(255,255,255,.12);
  box-shadow:
    0 22px 54px rgba(0,0,0,.34),
    inset 0 1px 0 rgba(255,255,255,.06);
}

.act-card::after,
#submissoes .sub-card::after,
.price-top::after,
.registration-option::after,
.registration-hero::after{
  background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(0,0,0,.24));
}

.act-card,
#submissoes .sub-card,
.price-card{
  overflow:hidden;
}

.act-card::before,
#submissoes .sub-gradient,
.price-top,
.registration-option::before{
  filter:saturate(1.08) contrast(1.08);
}

.act-card .act-more,
#submissoes .sub-link,
.price-button{
  border-color:rgba(255,255,255,.12);
}

.sub-card ul li,
.price-row,
.call-list li,
#submissoes .sub-card ul li{
  border-color:rgba(255,255,255,.1);
}

.sub-deadline,
#submissoes .sub-deadline,
.topic,
.stab{
  background:rgba(255,255,255,.055);
  border-color:rgba(255,255,255,.1);
  color:rgba(244,248,255,.78);
}

.topic:hover,
.stab:hover{
  background:rgba(41,230,255,.1);
  color:#fff;
}

.stab-active{
  color:#fff;
  background:linear-gradient(135deg, rgba(9,103,255,.32), rgba(138,63,252,.26), rgba(255,56,200,.18));
}

.footer{
  color:rgba(244,248,255,.74);
  border-top:1px solid rgba(255,255,255,.1);
}

.footer a,
.foot-col span{
  color:rgba(244,248,255,.66);
}

.footer a:hover{
  color:#fff;
}

.foot-bottom{
  border-top-color:rgba(255,255,255,.1);
}

.contact-link a:hover,
.foot-social a:hover{
  background:rgba(41,230,255,.1);
  border-color:rgba(41,230,255,.2);
  color:#fff;
}

@media (max-width:768px){
  .nav-links{
        background:rgba(5,7,17,.96);
        border-left-color:rgba(255,255,255,.12);
      }
}

/* Editorial sections dark reset */

:root{
  --editorial-bg:#060914;
  --editorial-card:rgba(12,16,32,.92);
  --editorial-ink:#f4f8ff;
  --editorial-muted:rgba(232,239,255,.68);
  --editorial-line:rgba(255,255,255,.1);
  --motion-gradient:var(--metal-blue-grad);
}

.section,
.section.about-section,
#atividades,
#submissoes,
#palestrantes,
#inscricoes,
#programacao,
#local,
#organizacao,
#parceiros{
  background:
    radial-gradient(circle at 12% 0%, rgba(9,103,255,.1), transparent 32%),
    radial-gradient(circle at 88% 12%, rgba(255,56,200,.08), transparent 28%),
    linear-gradient(180deg, #060914 0%, #080b18 100%) !important;
}

.s-head h2,
.s-head .eyebrow,
.about-head h2,
#atividades .s-head h2,
#submissoes .s-head h2{
  color:#f4f8ff !important;
}

.s-head .s-desc,
#atividades .s-desc,
#submissoes .s-desc,
.about-head p{
  color:rgba(232,239,255,.7) !important;
}

.focus-card,
.act-card,
#submissoes .sub-card,
.price-card{
  background:
    linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.035)),
    rgba(12,16,32,.94) !important;
  border-color:rgba(255,255,255,.12) !important;
  box-shadow:
    0 22px 54px rgba(0,0,0,.36),
    inset 0 1px 0 rgba(255,255,255,.06) !important;
}

#submissoes .sub-card h3,
#submissoes .sub-card>p,
#submissoes .sub-card ul li,
#submissoes .sub-card .sub-deadline,
#submissoes .sub-card .sub-deadline strong{
  color:#f4f8ff !important;
}

#submissoes .sub-card>p,
#submissoes .sub-card ul li,
#submissoes .sub-card .sub-deadline{
  color:rgba(232,239,255,.74) !important;
}

#submissoes .sub-card .sub-deadline{
  background:rgba(255,255,255,.07) !important;
  border-color:rgba(255,255,255,.1) !important;
}

/* Dark-theme fixes for legacy light components */

.sched-tabs{
  background:rgba(12,16,32,.9) !important;
  border-color:rgba(255,255,255,.13) !important;
  box-shadow:
    0 18px 44px rgba(0,0,0,.34),
    inset 0 1px 0 rgba(255,255,255,.06) !important;
}

.stab{
  color:rgba(232,239,255,.68) !important;
}

.stab:hover{
  color:#fff !important;
  background:rgba(41,230,255,.1) !important;
}

.stab-active{
  color:#fff !important;
  background:var(--metal-violet-grad) !important;
  box-shadow:0 10px 28px rgba(138,63,252,.22) !important;
}

.sched-body{
  background:
    radial-gradient(circle at 10% 0%, rgba(9,103,255,.08), transparent 34%),
    radial-gradient(circle at 92% 12%, rgba(255,56,200,.08), transparent 30%),
    rgba(12,16,32,.92) !important;
  border-color:rgba(255,255,255,.12) !important;
  box-shadow:0 22px 54px rgba(0,0,0,.34) !important;
}

.sched-time{
  background:rgba(255,255,255,.07) !important;
}

#submissoes .sub-card .sub-deadline{
  display:inline-flex !important;
  width:auto !important;
  min-width:0 !important;
  align-items:center;
  gap:4px;
  margin-top:18px;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

/* ─────────────────────────────────
   SEMATEC LIGHT GREEN TECHNOLOGY THEME
───────────────────────────────── */

:root{
  --bg:#fbfff9;
  --bg-2:#eefaf2;
  --bg-card:rgba(255,255,255,.86);
  --border:rgba(14,89,58,.14);
  --text:#08261b;
  --muted:rgba(8,38,27,.66);
  --subtle:rgba(30,185,119,.22);
  --violet:#4f7dff;
  --violet-dim:rgba(79,125,255,.12);
  --violet-glow:rgba(79,125,255,.24);
  --cyan:#11b8c7;
  --cyan-dim:rgba(17,184,199,.13);
  --cyan-glow:rgba(17,184,199,.22);
  --amber:#8bbf25;
  --amber-dim:rgba(139,191,37,.14);
  --amber-glow:rgba(139,191,37,.2);
  --rose:#1ea66d;
  --rose-dim:rgba(30,166,109,.13);
  --rose-glow:rgba(30,166,109,.22);
  --leaf:#6ee76f;
  --editorial-bg:#f1fbf3;
  --editorial-card:#ffffff;
  --editorial-ink:#08261b;
  --editorial-muted:rgba(8,38,27,.66);
  --editorial-line:rgba(14,89,58,.12);
  --motion-gradient:
    linear-gradient(115deg, rgba(244,255,229,.92) 0%, rgba(177,246,159,.86) 24%, rgba(117,235,191,.88) 48%, rgba(117,215,238,.86) 72%, rgba(235,255,242,.94) 100%),
    conic-gradient(from 80deg at 38% 42%, rgba(130,238,109,.72), rgba(95,224,178,.7), rgba(99,203,239,.64), rgba(200,245,117,.68), rgba(130,238,109,.72));
}

body{
  background:
    linear-gradient(180deg, rgba(251,255,249,.98), rgba(244,253,247,.98)),
    var(--bg) !important;
  color:var(--text) !important;
}

.grain-overlay{opacity:.012 !important}

.nav.scrolled{
  background:rgba(251,255,249,.88) !important;
  border-bottom-color:rgba(14,89,58,.13) !important;
  box-shadow:0 14px 40px rgba(22,103,67,.08) !important;
}

.nav:not(.scrolled) .nav-links a,
.nav.scrolled .nav-links a,
.nav:not(.scrolled) .nav-logo span,
.nav:not(.scrolled) .nav-logo sup,
.nav:not(.scrolled) .dim{
  color:rgba(8,38,27,.76) !important;
  text-shadow:none !important;
}

.nav:not(.scrolled) .nav-links a:hover,
.nav.scrolled .nav-links a:hover{
  color:var(--text) !important;
}

.nav:not(.scrolled) .nav-burger span,
.nav.scrolled .nav-burger span{
  background:var(--text) !important;
}

.nav-logo-img,
.footer-logo-img{
  filter:drop-shadow(0 10px 26px rgba(22,103,67,.1)) !important;
}

.btn-glow,
.hero-actions .btn-glow,
.sub-link,
.price-button,
.act-more,
#submissoes .sub-card:hover .sub-link{
  background:linear-gradient(135deg, #86ef74 0%, #20d8a5 42%, #0db5ca 100%) !important;
  color:#062519 !important;
  border:1px solid rgba(14,89,58,.14) !important;
  box-shadow:0 14px 34px rgba(32,173,116,.18) !important;
}

.btn-glow::before,
.sub-link::before,
.price-button::before,
.act-more::before{
  background:linear-gradient(135deg, #b9f77b 0%, #28dfaa 48%, #5bc7f2 100%) !important;
}

.btn-glow:hover,
.hero-actions .btn-glow:hover,
.sub-link:hover,
.price-button:hover,
.act-more:hover,
#submissoes .sub-card:hover .sub-link{
  color:#062519 !important;
  box-shadow:0 18px 42px rgba(32,173,116,.24) !important;
}

.btn-ghost,
.hero-actions .btn-ghost,
.nav-pill{
  background:rgba(255,255,255,.72) !important;
  color:var(--text) !important;
  border:1px solid rgba(14,89,58,.16) !important;
  box-shadow:0 12px 30px rgba(22,103,67,.08) !important;
  -webkit-backdrop-filter:blur(16px);
  backdrop-filter:blur(16px);
}

.btn-ghost::before,
.nav-pill::before{
  background:linear-gradient(135deg, rgba(174,242,125,.9), rgba(69,220,178,.86), rgba(89,197,238,.82)) !important;
}

.btn-ghost:hover,
.hero-actions .btn-ghost:hover,
.nav-pill:hover{
  color:#062519 !important;
  border-color:rgba(14,89,58,.22) !important;
}

.hero{
  min-height:100svh !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:#f7fff4 !important;
  overflow:hidden !important;
  color:var(--text) !important;
}

.hero::before{
  z-index:1 !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.2) 0%, rgba(255,255,255,.42) 48%, rgba(251,255,249,.96) 100%),
    linear-gradient(90deg, rgba(14,89,58,.055) 1px, transparent 1px),
    linear-gradient(0deg, rgba(14,89,58,.04) 1px, transparent 1px) !important;
  background-size:100% 100%, 46px 46px, 46px 46px !important;
}

.hero::after{
  z-index:1 !important;
  height:18vh !important;
  background:linear-gradient(to bottom, transparent, #fbfff9 86%) !important;
}

.hero-body{
  position:relative !important;
  inset:auto !important;
  z-index:2 !important;
  display:grid !important;
  grid-template-columns:1fr !important;
  width:min(1120px,100%) !important;
  max-width:1120px !important;
  padding:128px 28px 104px !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  pointer-events:auto !important;
}

.hero-copy{
  max-width:860px !important;
  margin:0 auto !important;
}

.hero-eyebrow{
  color:rgba(8,38,27,.76) !important;
  border-color:rgba(14,89,58,.16) !important;
  background:rgba(255,255,255,.72) !important;
  box-shadow:0 14px 36px rgba(22,103,67,.09) !important;
}

.hero-floating-title,
.hero-title{
  align-items:center !important;
  width:min(940px,100%) !important;
  margin:0 auto 24px !important;
  color:#083322 !important;
  font-size:clamp(3.35rem,8vw,7.2rem) !important;
  line-height:.94 !important;
  text-align:center !important;
  text-shadow:0 18px 42px rgba(22,103,67,.12) !important;
}

.hero-floating-title em,
.about-head h2 span{
  background:linear-gradient(100deg, #197847 0%, #1fbc72 36%, #0eb7c5 68%, #4f7dff 100%) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
  color:transparent !important;
}


.hero-sub{
  max-width:760px !important;
  margin:0 auto 34px !important;
  color:rgba(8,38,27,.72) !important;
  text-shadow:none !important;
}

.hero-actions{
  justify-content:center !important;
}

.scroll-line{
  background:linear-gradient(to bottom, transparent, rgba(14,89,58,.28)) !important;
}

@keyframes sematecPaintWash{
  0%{background-position:0% 22%, 62% 44%; filter:saturate(1.05) brightness(1.03)}
  42%{background-position:64% 36%, 38% 58%; filter:saturate(1.14) brightness(1.05)}
  100%{background-position:100% 68%, 8% 30%; filter:saturate(1.1) brightness(1.04)}
}

@keyframes sematecPaintSwirl{
  0%{transform:scale(1.02) translate3d(-2%,-1%,0) rotate(-4deg)}
  48%{transform:scale(1.12) translate3d(3%,2%,0) rotate(7deg)}
  100%{transform:scale(1.06) translate3d(-1%,3%,0) rotate(-2deg)}
}

.section,
.section.about-section,
.about-section,
#atividades,
#submissoes,
#palestrantes,
#programacao,
#inscricoes,
#local,
#organizacao,
#parceiros,
.call-main,
.registration-main{
  background:
    radial-gradient(1200px 520px at 8% 0%, rgba(119,231,196,.14), transparent 58%),
    radial-gradient(1000px 480px at 92% 12%, rgba(126,213,238,.13), transparent 55%),
    linear-gradient(180deg, #fbfff9 0%, #f3fbf5 100%) !important;
}

.section:nth-of-type(even),
.section-dark,
.footer{
  background:
    radial-gradient(980px 420px at 12% 0%, rgba(174,242,125,.16), transparent 58%),
    radial-gradient(900px 420px at 92% 20%, rgba(98,207,235,.12), transparent 58%),
    #eefaf2 !important;
}

.s-head h2,
.s-head .eyebrow,
.about-head h2,
#atividades .s-head h2,
#submissoes .s-head h2,
.sched-item h4,
.focus-card h3,
.act-card h3,
.speaker-card h4,
.price-row span b,
.price-row strong,
#submissoes .sub-card h3,
#submissoes .sub-card .sub-deadline strong,
.local-detail strong,
.org-card p,
.inst span,
.sponsor-slot h3,
.call-content h2,
.call-side h3,
.registration-group-head h2,
.registration-info-card h2{
  color:var(--text) !important;
}

.s-head .s-desc,
#atividades .s-desc,
#submissoes .s-desc,
.about-head p,
.sched-item p,
.focus-card p,
.act-card p,
.speaker-card p,
.price-row span,
.price-list li,
.price-more-note,
#submissoes .sub-card>p,
#submissoes .sub-card ul li,
#submissoes .sub-card .sub-deadline,
.local-detail p,
.org-card h4,
.inst small,
.sponsor-slot p,
.sponsor-slot small,
.call-content p,
.call-side p,
.registration-info-card p,
.registration-info-card li{
  color:var(--muted) !important;
}

.focus-card,
.act-card,
#submissoes .sub-card,
.price-card,
.sched-tabs,
.sched-body,
.sched-item,
.speaker-card,
.local-info,
.local-map,
.org-card,
.inst-row,
.sponsor-slot,
.contact-link a,
.call-side,
.activity-session,
.activity-note,
.registration-option,
.registration-info-card{
  background:rgba(255,255,255,.84) !important;
  border-color:rgba(14,89,58,.13) !important;
  box-shadow:0 18px 48px rgba(22,103,67,.08) !important;
}

.focus-card:hover,
.act-card:hover,
#submissoes .sub-card:hover,
.price-card:hover,
.speaker-card:hover,
.sponsor-slot:hover{
  border-color:rgba(14,89,58,.22) !important;
  box-shadow:0 24px 60px rgba(22,103,67,.13) !important;
}

.focus-card::before,
.act-card::before,
#submissoes .sub-gradient,
.price-top,
.price-top::before,
.registration-option::before,
.call-hero,
.registration-hero{
  background:var(--motion-gradient) !important;
  background-size:220% 220%, 180% 180% !important;
  animation:sematecCardPaint 8s ease-in-out infinite alternate !important;
}

.focus-card::after,
.act-card::after,
#submissoes .sub-card::after,
.price-body,
.registration-option::after{
  background:#fff !important;
  box-shadow:0 -12px 26px rgba(22,103,67,.07) !important;
}

.focus-icon,
.sp-avatar,
.local-icon{
  background:linear-gradient(135deg, rgba(214,250,185,.72), rgba(196,247,236,.72)) !important;
  color:#0d7c61 !important;
  box-shadow:inset 0 0 0 1px rgba(14,89,58,.12), 0 10px 24px rgba(22,103,67,.08) !important;
}

.speaker-card::before,
.local-info::before,
.org-card::before,
.sponsor-slot::before,
.price-card::before{
  background:linear-gradient(125deg, #92ed5f, #18c996 45%, #43bde5 100%) !important;
}

.stab{
  color:rgba(8,38,27,.66) !important;
}

.stab:hover{
  color:var(--text) !important;
  background:rgba(30,185,119,.08) !important;
}

.stab-active{
  background:linear-gradient(135deg, #86ef74, #20d8a5, #0db5ca) !important;
  color:#062519 !important;
  box-shadow:0 12px 26px rgba(32,173,116,.18) !important;
}

.sched-body{
  background:
    radial-gradient(circle at 10% 0%, rgba(174,242,125,.16), transparent 34%),
    radial-gradient(circle at 92% 12%, rgba(98,207,235,.13), transparent 30%),
    rgba(255,255,255,.84) !important;
}

.sched-time,
.activity-time,
.activity-meta span,
.topic{
  background:rgba(30,185,119,.08) !important;
  border-color:rgba(14,89,58,.12) !important;
}

.badge-violet,
.badge-cyan,
.badge-amber,
.badge-rose,
.topic{
  color:#0d7c61 !important;
}

.act-violet,
.act-cyan,
.act-amber,
.act-rose,
.focus-blue,
.focus-pink,
.focus-cyan,
.focus-amber,
.focus-green,
.focus-violet{
  --card-gradient:var(--motion-gradient);
  --focus-gradient:var(--motion-gradient);
}

.act-violet::before,
.act-cyan::before,
.act-amber::before,
.act-rose::before,
.activity-violet::before,
.activity-cyan::before,
.activity-amber::before,
.activity-rose::before{
  background:var(--motion-gradient) !important;
}

#submissoes .sub-gradient::after,
.price-top::after,
.registration-option::after,
.call-full::after,
.call-short::after,
.call-course::after,
.activity-violet::after,
.activity-cyan::after,
.activity-amber::after,
.activity-rose::after{
  display:none !important;
}

#submissoes .sub-card h3,
.price-top h3,
.price-top p,
.registration-option h2{
  color:#08261b !important;
  -webkit-text-fill-color:#08261b !important;
}

#submissoes .sub-card ul,
#submissoes .sub-card ul li,
#submissoes .sub-deadline,
.price-row,
.price-list,
.local-detail,
.call-list,
.call-list li,
.foot-bottom{
  border-color:rgba(14,89,58,.11) !important;
}

.call-hero,
.registration-hero{
  border-bottom-color:rgba(14,89,58,.12) !important;
}

.call-hero h1,
.registration-hero h1,
.activity-violet h1,
.activity-cyan h1,
.activity-amber h1,
.activity-rose h1{
  color:#08261b !important;
}

.call-hero .call-kicker,
.registration-hero .call-kicker,
.call-hero p,
.registration-hero p,
.activity-violet .call-kicker,
.activity-cyan .call-kicker,
.activity-amber .call-kicker,
.activity-rose .call-kicker,
.activity-violet p,
.activity-cyan p,
.activity-amber p,
.activity-rose p{
  color:rgba(8,38,27,.72) !important;
}

.local-map iframe{
  filter:grayscale(.05) saturate(1.05) brightness(1.02) !important;
}

.local-map-panel{
  background:
    linear-gradient(90deg, rgba(14,89,58,.05) 1px, transparent 1px),
    linear-gradient(0deg, rgba(14,89,58,.04) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255,255,255,.22), rgba(255,255,255,.84)) !important;
}

.local-map-panel span,
.local-map-panel small{
  color:rgba(8,38,27,.6) !important;
}

.local-map-panel strong{
  color:var(--text) !important;
}

.footer,
.footer a,
.foot-col span{
  color:rgba(8,38,27,.68) !important;
}

.foot-small,
.foot-bottom p{
  color:rgba(8,38,27,.42) !important;
}

.footer a:hover,
.foot-col a:hover{
  color:var(--text) !important;
}

@keyframes sematecCardPaint{
  0%{background-position:0% 22%, 70% 48%}
  50%{background-position:58% 0%, 26% 72%}
  100%{background-position:100% 44%, 8% 32%}
}

@media (max-width:768px){
  .nav-links{
        background:rgba(251,255,249,.96) !important;
        border-left-color:rgba(14,89,58,.14) !important;
      }

  .hero-body{
        padding:112px 20px 88px !important;
        text-align:center !important;
      }

  .hero-floating-title,
      .hero-title{
        font-size:clamp(2.75rem,15vw,4.5rem) !important;
      }

  .hero-actions{
        align-items:center !important;
        justify-content:center !important;
      }
}

@media (max-width:480px){
  .hero-floating-title,
      .hero-title{
        font-size:clamp(2.3rem,14vw,3rem) !important;
      }

  .hero-actions .btn-glow,
      .hero-actions .btn-ghost{
        width:100% !important;
        max-width:280px !important;
        justify-content:center !important;
      }
}

/* ─────────────────────────────────
   HERO LIVING HILL SCENE
───────────────────────────────── */

.hero{
  min-height:100vh !important;
  overflow:hidden !important;
  background:#c8f2ff !important;
  isolation:isolate !important;
}

.hero::before{
  z-index:1 !important;
  background:
    radial-gradient(circle at 50% 44%, rgba(255,255,255,.72) 0 9%, rgba(255,255,255,.32) 24%, transparent 48%),
    linear-gradient(180deg, rgba(255,255,255,.06) 0%, rgba(255,255,255,.1) 54%, rgba(246,255,231,.28) 100%) !important;
  pointer-events:none !important;
}

.hero::after{
  z-index:2 !important;
  height:12vh !important;
  background:linear-gradient(to bottom, transparent, rgba(251,255,249,.74) 100%) !important;
  pointer-events:none !important;
}

.hero-body{
  position:relative !important;
  inset:auto !important;
  z-index:7 !important;
  display:grid !important;
  grid-template-columns:1fr !important;
  width:min(1120px,100%) !important;
  max-width:1120px !important;
  min-height:100vh !important;
  padding:136px 28px 128px !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  pointer-events:auto !important;
}

.hero-copy{
  z-index:7 !important;
  max-width:900px !important;
  margin:0 auto !important;
}

.hero-eyebrow{
  color:#425b57 !important;
  border:1px solid rgba(20,80,60,.12) !important;
  background:rgba(255,255,255,.78) !important;
  box-shadow:0 12px 34px rgba(31,109,92,.12) !important;
  -webkit-backdrop-filter:blur(16px) saturate(1.1) !important;
  backdrop-filter:blur(16px) saturate(1.1) !important;
}

.hero-title,
.hero-floating-title{
  color:#111923 !important;
  text-align:center !important;
  text-shadow:0 20px 44px rgba(255,255,255,.5) !important;
}

.hero-floating-title em{
  background:linear-gradient(100deg, #087a34 0%, #0a9c4d 42%, #067ddd 100%) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
  text-shadow:none !important;
}

.hero-sub{
  max-width:780px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  color:rgba(25,42,39,.72) !important;
  text-shadow:0 12px 28px rgba(255,255,255,.52) !important;
}

.hero-actions .btn-ghost{
  color:#173c2d !important;
  background:rgba(255,255,255,.72) !important;
  border-color:rgba(22,93,62,.14) !important;
  box-shadow:0 14px 34px rgba(27,103,86,.12) !important;
  -webkit-backdrop-filter:blur(16px) !important;
  backdrop-filter:blur(16px) !important;
}

.hero-scroll{
  z-index:8 !important;
}

@media (max-width:768px){
  .hero-body{
        padding:112px 20px 96px !important;
      }

  .hero-floating-title,
      .hero-title{
        font-size:clamp(2.45rem, 14vw, 4.15rem) !important;
      }

  .hero-sub{
        font-size:.98rem !important;
      }
}

@media (max-width:480px){
  .hero-body{
        padding:104px 18px 86px !important;
      }

  .hero-actions{
        align-items:center !important;
      }

  .hero-actions .btn-glow,
      .hero-actions .btn-ghost{
        width:100% !important;
        max-width:280px !important;
      }
}

/* Hero simplificado: sem foto, layout em duas colunas */

.hero{
  min-height:auto !important;
  padding:0 !important;
  background:var(--bg) !important;
}

.hero::before{
  z-index:1 !important;
  background:
    linear-gradient(90deg, rgba(14,89,58,.05) 1px, transparent 1px),
    linear-gradient(0deg, rgba(14,89,58,.05) 1px, transparent 1px) !important;
  background-size:48px 48px, 48px 48px !important;
  -webkit-mask-image:radial-gradient(ellipse 70% 60% at 30% 30%, #000, transparent 78%) !important;
  mask-image:radial-gradient(ellipse 70% 60% at 30% 30%, #000, transparent 78%) !important;
}

.hero::after{
  z-index:1 !important;
  height:1px !important;
  background:none !important;
}

.hero-body{
  display:grid !important;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.85fr) !important;
  gap:56px !important;
  align-items:center !important;
  width:min(1180px,100%) !important;
  max-width:1180px !important;
  padding:158px 28px 96px !important;
  text-align:left !important;
}

.hero-copy{
  max-width:none !important;
  margin:0 !important;
}

.hero-eyebrow{
  color:var(--muted) !important;
  background:var(--bg-card) !important;
  border-color:var(--border) !important;
  box-shadow:none !important;
}

.hero-title,
.hero-floating-title{
  align-items:flex-start !important;
  width:auto !important;
  margin:0 0 22px !important;
  color:var(--text) !important;
  font-size:clamp(2.6rem,5.2vw,4.5rem) !important;
  line-height:1.02 !important;
  text-align:left !important;
  text-shadow:none !important;
}

.hero-sub{
  max-width:480px;
  color:var(--muted) !important;
  text-shadow:none !important;
}

.hero-actions{
  justify-content:flex-start !important;
}

/* Painel lateral com os eixos temáticos */

@media (max-width:900px){
  .hero-body{
        grid-template-columns:1fr !important;
        gap:34px !important;
        padding:140px 24px 72px !important;
      }

  .hero-copy,
      .hero-title,
      .hero-sub,
      .hero-actions,
      .hero-eyebrow{
        text-align:left !important;
        align-items:flex-start !important;
        justify-content:flex-start !important;
      }
}

@media (max-width:480px){
  .hero-actions{
        flex-direction:row !important;
      }
}

/* ─────────────────────────────────
   ABOUT FEATURE GRID
───────────────────────────────── */

.about-section{
  padding:70px 0 78px !important;
  overflow:hidden !important;
}

.about-section .wrap{
  max-width:1400px !important;
}

.about-showcase{
  display:grid;
  grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);
  gap:56px;
  align-items:center;
}

.about-copy{
  max-width:440px !important;
  margin:0 !important;
  text-align:left !important;
  padding-top:4px;
}

.about-copy .eyebrow{
  display:none !important;
}

.about-copy h2{
  position:relative;
  font-size:clamp(2.35rem,4vw,3.35rem) !important;
  line-height:1.08 !important;
  margin:0 0 60px !important;
  letter-spacing:0 !important;
  color:#1a1f25 !important;
}

.about-copy h2::after{
  content:'';
  position:absolute;
  left:0;
  bottom:-28px;
  width:86px;
  height:8px;
  border-radius:999px;
  background:#087a34;
}

.about-copy h2 span{
  background:none !important;
  color:#087a34 !important;
  -webkit-text-fill-color:#087a34 !important;
}

.about-copy h2 span em{
  font-style:normal !important;
  background:linear-gradient(120deg, #0a6b39 0%, #6ee76f 100%) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
  color:transparent !important;
}

.about-copy p{
  max-width:440px;
  margin:0 0 22px !important;
  color:#3c4b3f !important;
  font-size:clamp(.98rem,1.15vw,1.08rem) !important;
  line-height:1.62 !important;
  font-weight:500 !important;
}

.about-copy p:last-child{
  margin-bottom:0 !important;
  font-style:italic;
}

.about-feature-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

.about-feature-card{
  position:relative;
  overflow:hidden;
  min-height:0;
  padding:22px 24px 20px;
  border:1px solid rgba(20,45,31,.1);
  border-radius:20px;
  background:#fff;
  box-shadow:0 14px 30px rgba(18,30,24,.08), 0 1px 0 rgba(255,255,255,.72) inset;
  isolation:isolate;
  transition:transform .28s var(--ease), background .28s var(--ease), border-color .28s var(--ease), box-shadow .28s var(--ease);
}

.about-feature-card::before{
  content:'';
  position:absolute;
  inset:0;
  z-index:-1;
  opacity:0;
  background:var(--feature-hover-bg);
  transition:opacity .28s var(--ease);
  pointer-events:none;
}

.about-feature-card:is(:hover,.is-hovered){
  transform:translateY(-5px);
  border-color:rgba(8,122,52,.18);
  background:#eaf9ed;
  box-shadow:0 24px 52px rgba(24,88,55,.18);
}

.about-feature-card:is(:hover,.is-hovered)::before{
  opacity:1;
}

.about-feature-icon{
  display:inline-flex;
  width:44px;
  height:44px;
  align-items:center;
  justify-content:center;
  margin-bottom:14px;
  border-radius:13px;
  background:var(--feature-icon-bg);
  color:var(--feature-icon-color);
  transition:transform .28s var(--ease), background .28s var(--ease), color .28s var(--ease), box-shadow .28s var(--ease);
}

.about-feature-card:is(:hover,.is-hovered) .about-feature-icon{
  transform:translateY(-4px) scale(1.05) rotate(-3deg);
  background:var(--feature-icon-hover-bg);
  color:var(--feature-icon-hover-color);
  box-shadow:0 16px 34px rgba(24,88,55,.18);
}

.about-feature-icon svg{
  width:21px;
  height:21px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
  transition:transform .28s var(--ease), stroke-width .28s var(--ease);
}

.about-feature-card:is(:hover,.is-hovered) .about-feature-icon svg{
  transform:scale(1.1);
  stroke-width:2.15;
}

.about-feature-card h3{
  margin:0 0 8px;
  color:#1a1f25 !important;
  font-size:clamp(1.12rem,1.6vw,1.32rem);
  line-height:1.15;
  font-weight:820;
  letter-spacing:0;
}

.about-feature-card p{
  margin:0;
  color:#3c4b3f !important;
  font-size:clamp(.86rem,.95vw,.95rem);
  line-height:1.55;
  font-weight:500;
}

.feature-primary{
  --feature-icon-bg:#087a34;
  --feature-icon-color:#ffffff;
  --feature-icon-hover-bg:#05682c;
  --feature-icon-hover-color:#ffffff;
  --feature-hover-bg:linear-gradient(135deg, rgba(8,122,52,.16), rgba(98,222,145,.2));
}

.feature-cyan{
  --feature-icon-bg:#e8f1f3;
  --feature-icon-color:#08748a;
  --feature-icon-hover-bg:#08748a;
  --feature-icon-hover-color:#ffffff;
  --feature-hover-bg:linear-gradient(135deg, rgba(8,116,138,.14), rgba(84,204,218,.18));
}

.feature-soft{
  --feature-icon-bg:#d8f4df;
  --feature-icon-color:#087a34;
  --feature-icon-hover-bg:#087a34;
  --feature-icon-hover-color:#ffffff;
  --feature-hover-bg:linear-gradient(135deg, rgba(8,122,52,.14), rgba(152,235,158,.22));
}

.feature-muted{
  --feature-icon-bg:#eceef2;
  --feature-icon-color:#647085;
  --feature-icon-hover-bg:#647085;
  --feature-icon-hover-color:#ffffff;
  --feature-hover-bg:linear-gradient(135deg, rgba(100,112,133,.12), rgba(102,189,163,.14));
}

@media (max-width:1180px){
  .about-showcase{
        grid-template-columns:1fr;
        gap:38px;
      }

  .about-copy{
        max-width:760px !important;
      }

  .about-feature-grid{
        max-width:980px;
      }
}

@media (max-width:768px){
  .about-section{
        padding:64px 0 !important;
      }

  .about-copy h2{
        font-size:clamp(2rem,10vw,2.8rem) !important;
        margin-bottom:58px !important;
      }

  .about-copy h2::after{
        bottom:-30px;
        width:96px;
        height:9px;
      }

  .about-feature-grid{
        grid-template-columns:1fr;
        gap:18px;
      }

  .about-feature-card{
        min-height:0;
        padding:30px 28px 32px;
        border-radius:24px;
      }

  .about-feature-icon{
        width:64px;
        height:64px;
        margin-bottom:24px;
      }

  .about-feature-icon svg{
        width:30px;
        height:30px;
      }

  .about-feature-card h3{
        font-size:clamp(1.45rem,7vw,1.9rem);
      }
}

/* ── ATIVIDADES: fundo com foto de natureza borrada ── */

.act-card::before{
  background:
    linear-gradient(160deg, rgba(255,255,255,.18), rgba(255,255,255,.03)),
    url('../img/sematec-hero-meadow.png') center 60% / cover no-repeat !important;
  filter:blur(3px) saturate(1.15);
  transform:scale(1.08);
  animation:none;
}

.act-card::after{
  display:none;
}

.act-violet::before{
  background:
    linear-gradient(160deg, rgba(124,92,255,.32), rgba(255,139,217,.18)),
    url('../img/sematec-hero-meadow.png') center 60% / cover no-repeat !important;
}

.act-cyan::before{
  background:
    linear-gradient(160deg, rgba(53,234,215,.22), rgba(216,255,242,.1)),
    url('../img/atividade-minicursos-bg.webp') center 55% / cover no-repeat !important;
}

.act-amber::before{
  background:
    linear-gradient(160deg, rgba(255,213,95,.24), rgba(255,157,119,.14)),
    url('../img/atividade-artigos-bg.jpg') center 45% / cover no-repeat !important;
}

.act-rose::before{
  background:
    linear-gradient(160deg, rgba(255,107,75,.24), rgba(255,228,106,.14)),
    url('../img/atividade-workshops-bg.jpg') center 55% / cover no-repeat !important;
}

/* Atividades: seção mais larga + ícone silhueta sobre cada foto */

#atividades .wrap{
  max-width:1400px !important;
}

.act-icon{
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:148px;
  z-index:3;
  display:flex;
  align-items:center;
  justify-content:center;
  pointer-events:none;
}

.act-icon svg{
  width:54px;
  height:54px;
  fill:#ffffff;
  filter:drop-shadow(0 4px 10px rgba(8,20,14,.28));
}

@media (max-width:480px){
  .about-copy p,
      .about-feature-card p{
        font-size:.92rem !important;
      }
}

/* ── PROGRAMAÇÃO: grade de calendário ── */

#programacao .wrap{
  max-width:1400px !important;
}

.sched-body{
  max-width:none !important;
  padding:16px !important;
  background:#fff !important;
}

.sched-grid{
  display:grid;
  grid-template-columns:70px repeat(4,minmax(0,1fr));
  column-gap:10px;
  row-gap:7px;
}

.sched-col-head{
  grid-row:1;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:0 2px 8px;
  margin-bottom:2px;
  border-bottom:2px solid var(--border);
  font-size:.74rem;
  font-weight:800;
  color:var(--text);
}

.sched-col-head svg{
  width:14px;
  height:14px;
  fill:currentColor;
  flex:none;
}

.sched-col-violet{color:var(--violet)}

.sched-col-cyan{color:var(--cyan)}

.sched-col-amber{color:var(--amber)}

.sched-col-rose{color:var(--rose)}

.sched-time{
  grid-column:1;
  padding-top:9px;
  text-align:right;
  font-size:.72rem;
  font-weight:700;
  color:var(--muted);
  font-variant-numeric:tabular-nums;
}

.sched-cell,
.sched-banner{
  position:relative;
  grid-column:span 1;
  background:var(--bg-card,#fff);
  border:1px solid var(--border);
  border-left:3px solid var(--cell-accent, var(--border));
  border-radius:10px;
  padding:8px 12px;
  cursor:default;
  transition:transform .22s var(--ease), box-shadow .22s var(--ease), border-color .22s var(--ease), background .22s var(--ease);
}

.sched-cell:hover,
.sched-banner:hover{
  transform:translateY(-3px) scale(1.02);
  box-shadow:0 18px 38px rgba(18,60,40,.16);
  border-color:var(--cell-accent, rgba(14,89,58,.3));
  background:#fff;
  z-index:2;
}

.sched-cell h4,
.sched-banner h4{
  margin:0 0 2px;
  font-size:.82rem;
  font-weight:760;
  color:var(--text);
}

.sched-cell p,
.sched-banner p{
  margin:0;
  font-size:.72rem;
  color:var(--muted);
  line-height:1.32;
}

.sched-banner{
  grid-column:2 / -1;
  background:rgba(14,89,58,.045);
  text-align:left;
}

.sched-cell-violet{--cell-accent:var(--violet)}

.sched-cell-cyan{--cell-accent:var(--cyan)}

.sched-cell-amber{--cell-accent:var(--amber)}

.sched-cell-rose{--cell-accent:var(--rose)}

.sched-banner-violet{--cell-accent:var(--violet);background:var(--violet-dim)}

.sched-banner-rose{--cell-accent:var(--rose);background:var(--rose-dim)}

/* Agenda com horários livres: cada horário vazio em sua própria linha no layout empilhado (<=1024px) */
@media (max-width:1024px){
  .sched-grid-open .sched-time-free{
    display:flex !important;
    justify-self:start !important;
    width:max-content !important;
    margin:12px 0 0 !important;
  }
}

@media (max-width:900px){
  .sched-body{
        padding:16px !important;
      }

  .sched-grid{display:block}

  .sched-col-head{display:none}

  .sched-time{
        display:block;
        width:max-content;
        min-width:0;
        text-align:left;
        padding:2px 8px;
        margin:8px 0 4px;
      }

  .sched-cell,
      .sched-banner{
        display:block;
        width:100%;
        padding:8px 12px;
        margin-bottom:6px;
      }

  .sched-cell h4,
      .sched-banner h4{
        font-size:.82rem;
        margin-bottom:2px;
      }

  .sched-cell p,
      .sched-banner p{
        font-size:.74rem;
        line-height:1.3;
      }

  .sched-cell:hover,
      .sched-banner:hover{
        transform:none;
      }
}

/* ── TÓPICOS DE INTERESSE: nuvem viva ── */

.topics-spotlight{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:64px;
  margin:0 0 22px;
  padding:0 16px;
}

.topics-spotlight-word{
  font-size:clamp(1.5rem,3.6vw,2.35rem);
  font-weight:820;
  letter-spacing:-.01em;
  background:linear-gradient(100deg, #197847 0%, #1fbc72 36%, #0eb7c5 68%, #4f7dff 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  color:transparent;
  opacity:1;
  transform:translateY(0) scale(1);
  transition:opacity .45s ease, transform .45s ease;
  will-change:opacity, transform;
}

.topics-spotlight-word.is-fading{
  opacity:0;
  transform:translateY(10px) scale(.94);
}

.topic{
  display:inline-flex;
  transition:transform .35s var(--ease), background .35s var(--ease), color .35s var(--ease), box-shadow .35s var(--ease), border-color .35s var(--ease) !important;
}

.topic-active{
  transform:scale(1.16) !important;
  background:var(--text) !important;
  color:#fff !important;
  border-color:var(--text) !important;
  box-shadow:0 14px 30px rgba(8,38,27,.22);
  z-index:2;
  position:relative;
}

@media (prefers-reduced-motion:reduce){
  .topics-spotlight-word{transition:none}
}

/* ── HERO: vídeo de fundo (campo + tecnologia verde) ── */

.hero{
  min-height:100svh !important;
  padding:0 !important;
  background:#0b160f !important;
  display:flex !important;
  align-items:center !important;
}

.hero::before,
.hero::after{
  display:none !important;
}

.hero-overlay{
  position:absolute;
  inset:0;
  z-index:2;
  background:linear-gradient(100deg,
    rgba(4,18,11,.82) 0%,
    rgba(4,18,11,.5) 42%,
    rgba(4,18,11,.32) 62%,
    rgba(4,18,11,.68) 100%);
}

.hero-body{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  align-items:flex-start !important;
  position:relative;
  z-index:3;
  width:min(1180px,100%) !important;
  max-width:1180px !important;
  min-height:100svh !important;
  padding:72px 28px !important;
  text-align:left !important;
}

.hero-copy{
  max-width:520px !important;
  margin:0 !important;
}

.hero-eyebrow{
  font-size:.75rem !important;
  line-height:1.6 !important;
  letter-spacing:.12em !important;
  padding:8px 14px !important;
  margin-bottom:16px !important;
  color:rgba(255,255,255,.86) !important;
  background:rgba(255,255,255,.12) !important;
  border-color:rgba(255,255,255,.3) !important;
  box-shadow:none !important;
}

.hero-title,
.hero-floating-title{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  gap:.04em !important;
  width:auto !important;
  margin:0 0 18px !important;
  font-size:clamp(2.9rem, 6vw, 6rem) !important;
  line-height:.92 !important;
  text-align:left !important;
  color:#fff !important;
  text-shadow:0 18px 44px rgba(0,0,0,.4) !important;
}

.hero-title br{
  display:none !important;
}

.hero-floating-title em{
  display:block !important;
  background:linear-gradient(100deg, #8ff58f 0%, #4fe7c0 38%, #4fd6f0 70%, #a7c0ff 100%) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
  color:transparent !important;
}

.hero-sub{
  max-width:500px !important;
  margin:0 0 24px !important;
  font-size:1rem !important;
  line-height:1.65 !important;
  color:rgba(255,255,255,.88) !important;
  text-shadow:0 10px 28px rgba(0,0,0,.32) !important;
}

.hero-actions{
  gap:14px !important;
  justify-content:flex-start !important;
}

.hero-actions .btn-glow,
.hero-actions .btn-ghost{
  min-height:0 !important;
  padding:14px 24px !important;
  font-size:.95rem !important;
  line-height:1.6 !important;
}

.scroll-line{
  background:linear-gradient(to bottom, transparent, rgba(255,255,255,.55)) !important;
}

.nav:not(.scrolled) .nav-links a,
.nav:not(.scrolled) .nav-logo span,
.nav:not(.scrolled) .nav-logo sup,
.nav:not(.scrolled) .dim{
  color:rgba(255,255,255,.92) !important;
  text-shadow:0 2px 10px rgba(0,0,0,.3) !important;
}

.nav:not(.scrolled) .nav-links a:hover{
  color:#fff !important;
}

.nav:not(.scrolled) .nav-burger span{
  background:#fff !important;
}

@media (max-width:640px){
  .hero-body{
        padding:104px 22px 84px !important;
      }

  .hero-copy{
        max-width:none !important;
      }
}

@media (max-width:1024px){
  .hero-copy{
        max-width:520px !important;
      }

  .hero-eyebrow{
        font-size:.75rem !important;
        padding:8px 14px !important;
      }

  .hero-title,
      .hero-floating-title{
        font-size:clamp(2.9rem, 6vw, 6rem) !important;
      }

  .hero-sub{
        font-size:1rem !important;
        max-width:500px !important;
      }
}

@media (max-width:768px){
  .hero-body{
        padding:96px 24px 78px !important;
      }

  .hero-title,
      .hero-floating-title{
        font-size:4.45rem !important;
      }

  .hero-sub{
        font-size:1.1rem !important;
        line-height:1.58 !important;
      }

  .hero-actions{
        gap:16px !important;
      }

  .hero-actions .btn-glow,
      .hero-actions .btn-ghost{
        min-height:64px !important;
        padding:18px 32px !important;
        font-size:1.05rem !important;
      }
}

@media (max-width:480px){
  .hero-body{
        padding:94px 22px 72px !important;
      }

  .hero-eyebrow{
        font-size:.78rem !important;
        line-height:1.2 !important;
        padding:12px 18px !important;
        margin-bottom:24px !important;
      }

  .hero-title,
      .hero-floating-title{
        font-size:3.15rem !important;
        margin-bottom:24px !important;
      }

  .hero-sub{
        font-size:1rem !important;
        margin-bottom:30px !important;
      }

  .hero-actions{
        gap:14px !important;
      }

  .hero-actions .btn-glow,
      .hero-actions .btn-ghost{
        min-height:58px !important;
        padding:16px 24px !important;
        font-size:1rem !important;
      }
}

/* ── Palestras em destaque: override final ── */

#palestrantes .talk-meta{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
}

@keyframes talkSlideFade{
  from{opacity:.2;transform:translateY(8px)}
  to{opacity:1;transform:translateY(0)}
}

#palestrantes .talk-meta span{
  display:inline-flex !important;
  align-items:center !important;
  min-height:30px !important;
  padding:6px 11px !important;
  border:1px solid rgba(14,89,58,.12) !important;
  border-radius:999px !important;
  color:#0d7c61 !important;
  background:rgba(214,250,185,.42) !important;
  font-size:.75rem !important;
  font-weight:750 !important;
  line-height:1.15 !important;
}

/* Menu principal com links adicionais */

.nav-links{
  gap:22px !important;
}

.nav-links a{
  white-space:nowrap !important;
}

/* ── Carrossel de apoiadores ── */

#parceiros .sponsors-carousel{
  display:block !important;
  overflow:hidden !important;
  position:relative !important;
  margin-bottom:20px !important;
  padding:4px 0 12px !important;
  mask-image:linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent) !important;
  -webkit-mask-image:linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent) !important;
}

#parceiros .sponsors-track{
  display:flex !important;
  width:max-content !important;
  gap:16px !important;
  animation:sponsorLoop 34s linear infinite !important;
  will-change:transform !important;
}

#parceiros .sponsors-carousel:hover .sponsors-track{
  animation-play-state:paused !important;
}

#parceiros .sponsor-slot{
  flex:0 0 292px !important;
  min-height:250px !important;
  padding:28px 22px !important;
}

#parceiros .sponsor-logo{
  height:118px !important;
  max-width:220px !important;
}

#parceiros .sponsor-logo-sbc{
  max-width:108px !important;
  height:126px !important;
}

#parceiros .sponsor-logo-ufmt{
  max-width:210px !important;
  height:116px !important;
}

#parceiros .sponsor-logo-ic{
  max-width:190px !important;
  height:126px !important;
}

#parceiros .sponsor-logo-fct{
  max-width:230px !important;
  height:116px !important;
  object-fit:contain !important;
  object-position:center !important;
}

#parceiros .sponsor-logo-govmt{
  max-width:230px !important;
  height:116px !important;
}

#parceiros .sponsor-logo-ppgcomp{
  max-width:300px !important;
  height:106px !important;
  object-fit:contain !important;
  object-position:center !important;
}

@keyframes sponsorLoop{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(calc(-50% - 8px),0,0)}
}

@media (max-width:640px){
  #parceiros .sponsor-slot{
        flex-basis:248px !important;
        min-height:230px !important;
        padding:24px 18px !important;
      }

  #parceiros .sponsors-track{
        gap:12px !important;
        animation-duration:30s !important;
      }
}

@media (prefers-reduced-motion:reduce){
  #parceiros .sponsors-track{
        animation:none !important;
      }
}

.talk-detail-layout .call-content{
  overflow:hidden;
}

.talk-detail-image{
  width:100%;
  max-height:420px;
  margin:0 0 28px;
  border-radius:18px;
  border:1px solid rgba(14,89,58,.13);
  object-fit:cover;
  object-position:center 30%;
  box-shadow:0 20px 54px rgba(22,103,67,.12);
}

.talk-page .call-hero{
  padding:132px 0 62px !important;
}

.talk-page .call-hero .wrap{
  max-width:1160px !important;
}

.talk-page .call-hero h1{
  max-width:900px !important;
  font-size:clamp(2rem,3.1vw,3.2rem) !important;
  line-height:1.12 !important;
  margin-bottom:18px !important;
}

.talk-page .call-hero p{
  font-size:1rem !important;
  line-height:1.55 !important;
}

/* Degradê padrão SEMATEC em todo o site */

:root{
  --sematec-green-gradient:
    radial-gradient(circle at 18% 18%, rgba(146,237,95,.32), transparent 34%),
    radial-gradient(circle at 84% 12%, rgba(67,189,229,.26), transparent 32%),
    linear-gradient(135deg, #0d6038 0%, #0fa44e 45%, #18c996 100%);
  --sematec-green-gradient-soft:
    radial-gradient(circle at 18% 18%, rgba(146,237,95,.2), transparent 34%),
    radial-gradient(circle at 84% 12%, rgba(67,189,229,.18), transparent 32%),
    linear-gradient(135deg, rgba(13,96,56,.9) 0%, rgba(15,164,78,.82) 45%, rgba(24,201,150,.78) 100%);
  --sematec-green-gradient-text:linear-gradient(100deg, #0d6038 0%, #0fa44e 42%, #18c996 100%);
  --sematec-green-gradient-action:linear-gradient(135deg, #0fa44e 0%, #18c996 100%);
  --motion-gradient:var(--sematec-green-gradient);
  --focus-gradient:var(--sematec-green-gradient);
  --card-gradient:var(--sematec-green-gradient);
  --price-gradient:var(--sematec-green-gradient);
  --option-gradient:var(--sematec-green-gradient);
  --metal-blue-grad:var(--sematec-green-gradient);
  --metal-violet-grad:var(--sematec-green-gradient);
  --metal-rose-grad:var(--sematec-green-gradient);
  --metal-green-grad:var(--sematec-green-gradient);
  --metal-line-grad:var(--sematec-green-gradient-action);
  --metal-hot-line:var(--sematec-green-gradient-action);
}

.act-violet,
.act-cyan,
.act-amber,
.act-rose{
  --card-gradient:var(--sematec-green-gradient) !important;
}

.btn-glow,
.hero-actions .btn-glow,
.sub-link,
.price-button,
.act-more,
.talk-more,
#palestrantes .talk-more,
#submissoes .sub-card:hover .sub-link,
.price-top,
.registration-option::before,
.activity-violet::before,
.activity-cyan::before,
.activity-amber::before,
.activity-rose::before{
  background:var(--sematec-green-gradient-action) !important;
  color:#031008 !important;
  border-color:rgba(14,89,58,.18) !important;
  box-shadow:0 14px 34px rgba(15,164,78,.2) !important;
}

.btn-glow::before,
.sub-link::before,
.price-button::before,
.act-more::before,
.talk-more::before{
  background:linear-gradient(135deg, rgba(146,237,95,.42), rgba(24,201,150,.3)) !important;
}

.hero-floating-title em,
.hero-year,
.s-head h2 span,
.topics-spotlight-word,
#inscricoes .ticket-title-main,
#inscricoes .ticket-action strong,
#palestrantes .talk-feature-copy h3,
#palestrantes .speaker-card-body h4,
.call-content h2,
.footer-brand strong{
  background:var(--sematec-green-gradient-text) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
  -webkit-text-fill-color:transparent !important;
}

.topic-active,
.topics-wrap .topic.topic-active{
  background:#0b2d1b !important;
  color:#fff !important;
  box-shadow:0 14px 30px rgba(13,96,56,.22) !important;
}

.focus-card,
.act-card .act-media,
.price-top,
.registration-hero,
.call-hero,
.talk-page .call-hero{
  background:var(--sematec-green-gradient) !important;
}

.act-card::before{
  background:
    linear-gradient(160deg, rgba(13,96,56,.38), rgba(24,201,150,.14)),
    url('../img/sematec-hero-meadow.png') center 60% / cover no-repeat !important;
}

.act-cyan::before{
  background:
    linear-gradient(160deg, rgba(13,96,56,.38), rgba(24,201,150,.14)),
    url('../img/atividade-minicursos-bg.webp') center 55% / cover no-repeat !important;
}

.act-amber::before{
  background:
    linear-gradient(160deg, rgba(13,96,56,.38), rgba(24,201,150,.14)),
    url('../img/atividade-artigos-bg.jpg') center 45% / cover no-repeat !important;
}

.act-rose::before{
  background:
    linear-gradient(160deg, rgba(13,96,56,.38), rgba(24,201,150,.14)),
    url('../img/atividade-workshops-bg.jpg') center 55% / cover no-repeat !important;
}

.call-hero.activity-violet::before{
  background:
    linear-gradient(160deg, rgba(13,96,56,.38), rgba(24,201,150,.14)),
    url('../img/sematec-hero-meadow.png') center 60% / cover no-repeat !important;
}

.call-hero.activity-cyan::before{
  background:
    linear-gradient(160deg, rgba(13,96,56,.38), rgba(24,201,150,.14)),
    url('../img/atividade-minicursos-bg.webp') center 55% / cover no-repeat !important;
}

.call-hero.activity-amber::before{
  background:
    linear-gradient(160deg, rgba(13,96,56,.38), rgba(24,201,150,.14)),
    url('../img/atividade-artigos-bg.jpg') center 45% / cover no-repeat !important;
}

.call-hero.activity-rose::before{
  background:
    linear-gradient(160deg, rgba(13,96,56,.38), rgba(24,201,150,.14)),
    url('../img/atividade-workshops-bg.jpg') center 55% / cover no-repeat !important;
}

/* Ajuste final de contraste dos botões sobre o verde escuro */

.btn-glow,
.hero-actions .btn-glow,
.sub-link,
.price-button,
.act-more,
.talk-more,
#palestrantes .talk-more,
#submissoes .sub-card:hover .sub-link,
#inscricoes .ticket-action .price-button,
.talk-page .call-side .btn-glow{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

#inscricoes .ticket-action .price-button{
  background:var(--sematec-green-gradient-action) !important;
  box-shadow:0 14px 34px rgba(15,164,78,.2) !important;
}

#inscricoes .ticket-action .price-button::before{
  background:linear-gradient(135deg, rgba(146,237,95,.42), rgba(24,201,150,.3)) !important;
}

/* Ajuste final: preenchimento dos botoes no verde escuro SEMATEC */

:root{
  --sematec-green-gradient-action:linear-gradient(135deg, #0d6038 0%, #0fa44e 52%, #18c996 100%);
}

.btn-glow,
.sub-link,
.price-button,
.act-more,
.talk-more,
#palestrantes .talk-more,
#submissoes .sub-card:hover .sub-link,
#inscricoes .ticket-action .price-button,
.stab-active{
  background:var(--sematec-green-gradient-action) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border-color:rgba(14,89,58,.18) !important;
}

.btn-glow::before,
.btn-ghost::before,
.hero-actions .btn-ghost::before,
.call-side .btn-ghost::before,
.nav-pill::before,
.sub-link::before,
.price-button::before,
.act-more::before,
.talk-more::before,
#submissoes .sub-card:hover .sub-link::before,
#inscricoes .ticket-action .price-button::before{
  background:var(--sematec-green-gradient-action) !important;
}

.btn-glow:hover,
.btn-ghost:hover,
.hero-actions .btn-ghost:hover,
.call-side .btn-ghost:hover,
.nav-pill:hover,
.sub-link:hover,
.price-button:hover,
.act-more:hover,
.talk-more:hover,
#submissoes .sub-card:hover .sub-link{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border-color:transparent !important;
}

/* Ajuste final dos horarios da programacao */

.sched-grid{
  grid-template-columns:78px repeat(4,minmax(0,1fr)) !important;
  align-items:stretch !important;
}

.sched-time{
  grid-column:1 !important;
  align-self:start !important;
  justify-self:end !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-width:58px !important;
  height:32px !important;
  min-height:0 !important;
  padding:6px 10px !important;
  margin:0 !important;
  border-radius:999px !important;
  background:rgba(8,38,27,.08) !important;
  border:1px solid rgba(14,89,58,.12) !important;
  box-shadow:none !important;
  color:rgba(8,20,24,.7) !important;
  font-size:.78rem !important;
  font-weight:800 !important;
  line-height:1 !important;
  text-align:center !important;
  font-variant-numeric:tabular-nums !important;
}

@media (max-width:900px){
  .sched-time{
        justify-self:start !important;
        margin:12px 0 6px !important;
      }
}

/* Botões/abas específicos que têm seletores mais fortes */

#inscricoes .ticket-action .price-button,
#submissoes .sub-link,
#submissoes .sub-card:hover .sub-link,
.sub-card.sub-full .sub-link,
.sub-card.sub-short .sub-link,
.sub-card.sub-cyan .sub-link,
.stab-active{
  background:var(--sematec-green-gradient-action) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border-color:rgba(14,89,58,.18) !important;
  box-shadow:0 14px 34px rgba(15,164,78,.2) !important;
}

#inscricoes .ticket-action .price-button::before,
#submissoes .sub-link::before,
#submissoes .sub-card:hover .sub-link::before{
  background:linear-gradient(135deg, rgba(146,237,95,.42), rgba(24,201,150,.3)) !important;
}

#submissoes .sub-card h3{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  background:none !important;
  text-shadow:0 14px 30px rgba(0,0,0,.18);
}

/* Ajuste final do titulo da secao Sobre */

.about-title{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  gap:.04em !important;
}

.about-title .about-title-main,
.about-title .about-title-sub{
  display:block !important;
  width:max-content !important;
  max-width:100% !important;
  background:var(--sematec-green-gradient-text) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
  -webkit-text-fill-color:transparent !important;
  line-height:.95 !important;
}

.about-title .about-title-lead{
  font-size:.55em !important;
  background:none !important;
  color:var(--text) !important;
  -webkit-text-fill-color:var(--text) !important;
}

.about-title .about-title-main{
  font-size:1em !important;
}

.about-title .about-title-sub{
  margin-top:.02em !important;
  font-size:.72em !important;
  letter-spacing:0 !important;
}

@media (max-width:700px){
  .about-title .about-title-sub{
        font-size:.68em !important;
      }
}

/* Contraste final para fundos com o degradê verde escuro */

.btn-glow,
.hero-actions .btn-glow,
.sub-link,
.price-button,
.act-more,
.talk-more,
#palestrantes .talk-more,
#submissoes .sub-card:hover .sub-link,
#inscricoes .ticket-action .price-button{
  color:#fff !important;
}

.call-hero .call-kicker,
.call-hero h1,
.call-hero p,
.registration-hero .call-kicker,
.registration-hero h1,
.registration-hero p,
.focus-card,
.focus-card h3,
.focus-card p,
.price-top,
.price-top *,
.registration-option::before,
.activity-violet::before,
.activity-cyan::before,
.activity-amber::before,
.activity-rose::before{
  color:#fff !important;
}

.call-hero h1,
.registration-hero h1,
.focus-card h3,
.price-top strong,
.price-top span{
  -webkit-text-fill-color:#fff !important;
  text-shadow:0 16px 34px rgba(0,0,0,.22);
}

.talk-page .call-kicker{
  margin-bottom:14px !important;
  font-size:.68rem !important;
}

@media (max-width:640px){
  .talk-page .call-hero{
        padding:112px 0 48px !important;
      }

  .talk-page .call-hero h1{
        font-size:2.15rem !important;
      }
}

/* Ajustes finos do carrossel e páginas de palestra */

.talk-page .call-side .activity-meta{
  margin-bottom:22px !important;
}

.talk-page .call-side .btn-glow{
  margin-top:18px !important;
}

/* Ingresso unico gratuito */

#inscricoes .ticket-experience{
  width:100%;
  min-height:320px;
  display:grid;
  grid-template-columns:minmax(0, 1fr) minmax(280px, 360px);
  gap:34px;
  align-items:stretch;
  padding:42px;
  border-radius:28px;
  overflow:hidden;
  position:relative;
  background:#fbfffd;
  border:1px solid rgba(14,89,58,.14);
  box-shadow:
    0 28px 80px rgba(22,103,67,.12),
    inset 0 1px 0 rgba(255,255,255,.9),
    inset 0 -18px 48px rgba(14,89,58,.035);
}

#inscricoes .ticket-copy,
#inscricoes .ticket-action{
  position:relative;
  z-index:2;
}

#inscricoes .ticket-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
}

#inscricoes .ticket-label{
  width:max-content;
  margin-bottom:18px;
  padding:8px 14px;
  border-radius:999px;
  background:rgba(8,20,24,.08);
  color:#0b302a;
  font-size:.76rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:0;
}

#inscricoes .ticket-copy h3{
  margin:0 0 16px;
  letter-spacing:0;
}

#inscricoes .ticket-title{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:4px;
}

#inscricoes .ticket-title-main{
  display:block;
  background:linear-gradient(100deg, #197847 0%, #1fbc72 40%, #0eb7c5 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  -webkit-text-fill-color:transparent;
  font-size:clamp(3rem, 6.8vw, 6.6rem);
  line-height:.86;
  font-weight:900;
}

#inscricoes .ticket-title-sub{
  display:block;
  color:#061017;
  font-size:clamp(1.55rem, 3vw, 2.55rem);
  line-height:1;
  font-weight:850;
}

#inscricoes .ticket-copy p{
  max-width:680px;
  color:rgba(8,20,24,.68);
  font-size:1.06rem;
  line-height:1.65;
}

#inscricoes .ticket-points{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:26px;
}

#inscricoes .ticket-points span{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:8px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(14,89,58,.12);
  color:#183b35;
  font-size:.84rem;
  font-weight:700;
}

#inscricoes .ticket-action{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:stretch;
  padding:28px;
  border-radius:22px;
  background:rgba(255,255,255,.78);
  border:1px solid rgba(14,89,58,.12);
  box-shadow:0 18px 48px rgba(22,103,67,.1);
}

#inscricoes .ticket-action span{
  color:rgba(8,20,24,.58);
  font-size:.78rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:0;
}

#inscricoes .ticket-action strong{
  margin:6px 0 12px;
  background:linear-gradient(100deg, #197847 0%, #1fbc72 40%, #0eb7c5 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  -webkit-text-fill-color:transparent;
  font-size:clamp(2.2rem, 4vw, 3.4rem);
  line-height:1;
  font-weight:850;
}

#inscricoes .ticket-action p{
  margin:0;
  color:rgba(8,20,24,.62);
  font-size:.95rem;
  line-height:1.5;
}

#inscricoes .ticket-action .price-button{
  margin-top:24px;
  min-height:54px;
  background:#42d88f !important;
  color:#031008 !important;
  font-size:.94rem;
  box-shadow:0 14px 30px rgba(31,188,114,.22) !important;
}

#inscricoes .ticket-action .price-button::before{
  background:rgba(255,255,255,.18) !important;
}

@media (max-width:860px){
  #inscricoes .ticket-experience{
        grid-template-columns:1fr;
        padding:28px;
        gap:24px;
      }

  #inscricoes .ticket-action{
        padding:24px;
      }
}

@media (max-width:520px){
  #inscricoes .ticket-experience{
        padding:22px;
        border-radius:22px;
      }

  #inscricoes .ticket-copy h3{
        margin-bottom:18px;
      }

  #inscricoes .ticket-title-main{
        font-size:3rem;
      }

  #inscricoes .ticket-title-sub{
        font-size:1.45rem;
      }

  #inscricoes .ticket-points span{
        width:100%;
        justify-content:center;
      }
}

/* Logo PPGCOMP completa no carrossel de apoio */

#parceiros .sponsor-slot-ppgcomp{
  flex-basis:360px !important;
}

#parceiros .sponsor-slot-ppgcomp .sponsor-logo-link{
  min-height:116px !important;
  overflow:visible !important;
}

#parceiros .sponsor-slot-ppgcomp .sponsor-logo-ppgcomp{
  width:100% !important;
  max-width:270px !important;
  height:94px !important;
  object-fit:contain !important;
  object-position:center center !important;
}

@media (max-width:640px){
  #parceiros .sponsor-slot-ppgcomp{
        flex-basis:300px !important;
      }

  #parceiros .sponsor-slot-ppgcomp .sponsor-logo-ppgcomp{
        max-width:230px !important;
        height:86px !important;
      }
}

/* Heros das paginas de atividades com a mesma foto desfocada dos cards */

.call-hero.activity-violet,
.call-hero.activity-cyan,
.call-hero.activity-amber,
.call-hero.activity-rose{
  min-height:360px;
  display:flex;
  align-items:center;
  border-bottom:none !important;
  background:#07110d !important;
  animation:none !important;
  isolation:isolate;
}

.call-hero.activity-violet::before,
.call-hero.activity-cyan::before,
.call-hero.activity-amber::before,
.call-hero.activity-rose::before{
  content:'';
  position:absolute;
  inset:-22px;
  z-index:0;
  background-size:cover !important;
  background-repeat:no-repeat !important;
  filter:saturate(1.08) !important;
  transform:none !important;
}

.call-hero.activity-violet::before{
  background:
    linear-gradient(160deg, rgba(124,92,255,.26), rgba(255,139,217,.14)),
    url('../img/sematec-hero-meadow.png') center 60% / cover no-repeat !important;
}

.call-hero.activity-cyan::before{
  background:
    linear-gradient(160deg, rgba(53,234,215,.2), rgba(216,255,242,.08)),
    url('../img/atividade-minicursos-bg.webp') center 55% / cover no-repeat !important;
}

.call-hero.activity-amber::before{
  background:
    linear-gradient(160deg, rgba(255,213,95,.2), rgba(255,157,119,.1)),
    url('../img/atividade-artigos-bg.jpg') center 45% / cover no-repeat !important;
}

.call-hero.activity-rose::before{
  background:
    linear-gradient(160deg, rgba(255,107,75,.2), rgba(255,228,106,.1)),
    url('../img/atividade-workshops-bg.jpg') center 55% / cover no-repeat !important;
}

.call-hero.activity-violet::after,
.call-hero.activity-cyan::after,
.call-hero.activity-amber::after,
.call-hero.activity-rose::after{
  content:'';
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(90deg, rgba(2,12,10,.58), rgba(2,12,10,.22) 48%, rgba(2,12,10,.36)),
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.02));
  mix-blend-mode:normal;
  animation:none !important;
}

.call-hero.activity-violet .wrap,
.call-hero.activity-cyan .wrap,
.call-hero.activity-amber .wrap,
.call-hero.activity-rose .wrap{
  position:relative;
  z-index:3;
}

.call-hero.activity-violet h1,
.call-hero.activity-cyan h1,
.call-hero.activity-amber h1,
.call-hero.activity-rose h1{
  color:#fff !important;
  text-shadow:0 18px 42px rgba(0,0,0,.28);
}

.call-hero.activity-violet .call-kicker,
.call-hero.activity-cyan .call-kicker,
.call-hero.activity-amber .call-kicker,
.call-hero.activity-rose .call-kicker,
.call-hero.activity-violet p,
.call-hero.activity-cyan p,
.call-hero.activity-amber p,
.call-hero.activity-rose p{
  color:rgba(255,255,255,.84) !important;
}

@media (max-width:640px){
  .call-hero.activity-violet,
      .call-hero.activity-cyan,
      .call-hero.activity-amber,
      .call-hero.activity-rose{
        min-height:320px;
      }
}

/* Páginas de palestra: degradê azul da marca, sem foto desfocada */

.talk-page .call-hero{
  background:
    radial-gradient(circle at 18% 18%, rgba(255,255,255,.22), transparent 34%),
    radial-gradient(circle at 84% 12%, rgba(255,255,255,.16), transparent 32%),
    var(--sematec-gradient) !important;
}

.talk-page .call-hero::before,
.talk-page .call-hero::after{
  display:none !important;
}

/* Ajuste final absoluto: icones e barras no degradê verde escuro */

.about-feature-icon,
.focus-icon,
.sp-avatar,
.local-icon,
.org-drawer summary::after{
  background:var(--sematec-green-gradient-action) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border-color:rgba(14,89,58,.18) !important;
  box-shadow:0 14px 30px rgba(13,96,56,.2) !important;
}

.about-feature-icon svg,
.focus-icon svg,
.sp-avatar svg,
.local-icon svg{
  color:#fff !important;
  stroke:currentColor !important;
}

.sub-gradient,
.price-top::before,
.registration-hero::before,
.registration-option::before,
.call-full::before,
.call-short::before,
.call-course::before{
  background:var(--sematec-green-gradient) !important;
}

.sub-gradient::before,
.sub-gradient::after,
.price-top::after,
.registration-hero::after,
.registration-option::after{
  background:
    radial-gradient(circle at 20% 24%, rgba(255,255,255,.2), transparent 20%),
    linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.1)) !important;
}

/* Ajuste final absoluto: barras finas dos cards no verde escuro */

.speaker-card::before,
.local-info::before,
.org-card::before,
.sponsor-slot::before,
.price-card::before,
.about-copy h2::after{
  background:var(--sematec-green-gradient-action) !important;
  box-shadow:0 8px 18px rgba(13,96,56,.18) !important;
}

/* Ajuste final absoluto: ritmo vertical mais compacto entre secoes */

.section,
.section.about-section,
.about-section,
#atividades,
#programacao,
#submissoes,
#palestrantes,
#inscricoes,
#local,
[id="organização"],
#organizacao,
#parceiros{
  padding-top:48px !important;
  padding-bottom:48px !important;
}

.section-compact,
#local,
[id="organização"],
#organizacao,
#parceiros{
  padding-top:40px !important;
  padding-bottom:40px !important;
}

.s-head,
#atividades .s-head,
#programacao .s-head,
#submissoes .s-head,
#palestrantes .s-head,
#inscricoes .s-head,
#local .s-head,
[id="organização"] .s-head,
#organizacao .s-head,
#parceiros .s-head{
  margin-bottom:24px !important;
}

.about-showcase{
  gap:38px !important;
}

.about-copy h2{
  margin-bottom:38px !important;
}

.about-copy h2::after{
  bottom:-20px !important;
}

.about-copy p{
  margin-bottom:16px !important;
}

.acts-grid,
.sub-grid,
#palestrantes .talks-grid,
.local-grid,
.org-drawers,
#parceiros .sponsors-grid{
  margin-top:0 !important;
}

#submissoes .sub-grid{
  margin-bottom:30px !important;
}

#parceiros .sponsors-carousel{
  margin-bottom:12px !important;
  padding-top:0 !important;
  padding-bottom:8px !important;
}

#inscricoes .ticket-points{
  margin-top:18px !important;
}

#inscricoes .ticket-action .price-button{
  margin-top:18px !important;
}

.footer{
  padding-top:24px !important;
}

@media (max-width:900px){
  .section,
      .section.about-section,
      .about-section,
      #atividades,
      #programacao,
      #submissoes,
      #palestrantes,
      #inscricoes,
      #local,
      [id="organização"],
      #organizacao,
      #parceiros{
        padding-top:38px !important;
        padding-bottom:38px !important;
      }

  .s-head,
      #atividades .s-head,
      #programacao .s-head,
      #submissoes .s-head,
      #palestrantes .s-head,
      #inscricoes .s-head,
      #local .s-head,
      [id="organização"] .s-head,
      #organizacao .s-head,
      #parceiros .s-head{
        margin-bottom:20px !important;
      }

  .about-showcase{
        gap:28px !important;
      }

  .about-copy h2{
        margin-bottom:34px !important;
      }
}

/* Ajuste final absoluto: experiencia mobile */

@media (max-width:1024px){
  html,
      body{
        width:100% !important;
        overflow-x:hidden !important;
      }

  .wrap,
      .nav-inner{
        width:100% !important;
        max-width:none !important;
        padding-left:22px !important;
        padding-right:22px !important;
      }

  .nav{
        padding:10px 0 !important;
      }

  .nav-logo-img{
        width:156px !important;
        height:50px !important;
      }

  .nav-burger{
        display:flex !important;
        width:44px !important;
        height:44px !important;
        align-items:center !important;
        justify-content:center !important;
        gap:6px !important;
        border:1px solid rgba(14,89,58,.14) !important;
        border-radius:999px !important;
        background:rgba(255,255,255,.72) !important;
        box-shadow:0 12px 28px rgba(13,96,56,.12) !important;
      }

  .nav-burger span{
        width:18px !important;
        height:2px !important;
        min-width:0 !important;
        padding:0 !important;
        flex:0 0 auto !important;
        border-radius:999px !important;
        background:#0d6038 !important;
      }

  .nav-links{
        position:fixed !important;
        top:12px !important;
        right:12px !important;
        bottom:12px !important;
        z-index:1001 !important;
        width:min(86vw, 360px) !important;
        height:auto !important;
        display:flex !important;
        flex-direction:column !important;
        align-items:stretch !important;
        justify-content:flex-start !important;
        gap:10px !important;
        padding:76px 22px 28px !important;
        background:rgba(251,255,249,.96) !important;
        border:1px solid rgba(14,89,58,.14) !important;
        border-radius:24px !important;
        box-shadow:-24px 0 60px rgba(13,96,56,.16) !important;
        -webkit-backdrop-filter:blur(20px) !important;
        backdrop-filter:blur(20px) !important;
        transform:translateX(calc(100% + 24px)) !important;
        transition:transform .28s var(--ease) !important;
      }

  .nav-close{
        position:absolute !important;
        top:18px !important;
        right:18px !important;
        display:inline-flex !important;
        width:38px !important;
        height:38px !important;
        align-items:center !important;
        justify-content:center !important;
        border:1px solid rgba(14,89,58,.14) !important;
        border-radius:999px !important;
        background:#fff !important;
        color:#0d6038 !important;
        -webkit-text-fill-color:#0d6038 !important;
        box-shadow:0 10px 24px rgba(13,96,56,.12) !important;
        font-size:1.35rem !important;
        font-weight:800 !important;
        line-height:1 !important;
        cursor:pointer !important;
      }

  .nav-close:focus-visible{
        outline:3px solid rgba(13,96,56,.34) !important;
        outline-offset:3px !important;
      }

  .nav-links.open{
        transform:translateX(0) !important;
      }

  .nav:not(.scrolled) .nav-links a,
      .nav.scrolled .nav-links a,
      .nav-links a{
        display:flex !important;
        min-height:46px !important;
        align-items:center !important;
        padding:0 14px !important;
        border-radius:12px !important;
        color:#0d6038 !important;
        -webkit-text-fill-color:#0d6038 !important;
        font-size:1rem !important;
        font-weight:800 !important;
        background:rgba(255,255,255,.62) !important;
        border:1px solid rgba(14,89,58,.1) !important;
        white-space:normal !important;
        text-shadow:none !important;
      }

  .nav:not(.scrolled) .nav-links a:hover,
      .nav.scrolled .nav-links a:hover,
      .nav-links a:hover{
        color:#063d26 !important;
        -webkit-text-fill-color:#063d26 !important;
        background:#fff !important;
      }

  .hero{
        min-height:100svh !important;
      }

  .hero-body{
        width:100% !important;
        min-height:100svh !important;
        padding:96px 22px 72px !important;
        text-align:center !important;
      }

  .hero-copy{
        max-width:620px !important;
      }

  .hero-eyebrow{
        max-width:100% !important;
        white-space:normal !important;
        font-size:.74rem !important;
        line-height:1.25 !important;
      }

  .hero-title,
      .hero-floating-title{
        max-width:100% !important;
        font-size:clamp(3.05rem, 12vw, 5.2rem) !important;
        line-height:.92 !important;
        overflow-wrap:normal !important;
      }

  .hero-sub{
        max-width:560px !important;
        font-size:1rem !important;
        line-height:1.58 !important;
      }

  .hero-actions{
        justify-content:center !important;
        gap:12px !important;
      }

  .hero-actions .btn-glow,
      .hero-actions .btn-ghost{
        min-height:52px !important;
        padding:14px 24px !important;
        font-size:.96rem !important;
      }

  .about-showcase,
      .local-grid,
      #inscricoes .ticket-experience,
      #palestrantes .talk-feature{
        grid-template-columns:1fr !important;
      }

  .about-copy{
        max-width:760px !important;
      }

  .about-feature-grid,
      .acts-grid,
      .sub-grid,
      #palestrantes .talks-grid,
      .org-member-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
      }

  #programacao .wrap,
      #atividades .wrap,
      #palestrantes .wrap{
        max-width:none !important;
      }

  .sched-body{
        overflow:hidden !important;
      }

  .sched-grid{
        display:block !important;
      }

  .sched-col-head{
        display:none !important;
      }

  .sched-time{
        display:inline-flex !important;
        width:auto !important;
        margin:14px 0 7px !important;
      }

  .sched-cell,
      .sched-banner{
        display:block !important;
        width:100% !important;
        margin-bottom:8px !important;
        padding:12px 14px !important;
      }

  #inscricoes .ticket-experience{
        gap:22px !important;
        padding:28px !important;
      }

  #inscricoes .ticket-action{
        min-height:0 !important;
      }

  .local-map{
        height:300px !important;
      }
}

@media (max-width:700px){
  .wrap,
      .nav-inner{
        padding-left:18px !important;
        padding-right:18px !important;
      }

  .section,
      .section.about-section,
      .about-section,
      #atividades,
      #programacao,
      #submissoes,
      #palestrantes,
      #inscricoes,
      #local,
      [id="organização"],
      #organizacao,
      #parceiros{
        padding-top:34px !important;
        padding-bottom:34px !important;
      }

  .s-head{
        max-width:100% !important;
      }

  .s-head h2,
      .about-copy h2{
        font-size:clamp(1.9rem, 10vw, 2.7rem) !important;
        line-height:1.06 !important;
      }

  .s-head .s-desc,
      .about-copy p{
        font-size:.95rem !important;
        line-height:1.58 !important;
      }

  .hero-body{
        padding:88px 18px 64px !important;
      }

  .hero-title,
      .hero-floating-title{
        font-size:clamp(2.75rem, 15vw, 4.1rem) !important;
        margin-bottom:18px !important;
      }

  .hero-sub{
        font-size:.96rem !important;
        margin-bottom:22px !important;
      }

  .hero-actions{
        width:100% !important;
        flex-direction:column !important;
        align-items:stretch !important;
      }

  .hero-actions .btn-glow,
      .hero-actions .btn-ghost{
        width:100% !important;
        max-width:none !important;
        justify-content:center !important;
      }

  .about-feature-grid,
      .acts-grid,
      .sub-grid,
      #palestrantes .talks-grid,
      .org-member-grid{
        grid-template-columns:1fr !important;
      }

  .about-feature-card{
        padding:22px !important;
        border-radius:18px !important;
      }

  .about-feature-icon{
        width:52px !important;
        height:52px !important;
        margin-bottom:16px !important;
      }

  .act-card{
        min-height:260px !important;
        padding:168px 20px 74px !important;
      }

  #submissoes .sub-card{
        min-height:0 !important;
        padding:132px 22px 24px !important;
      }

  .topics-spotlight{
        min-height:52px !important;
        margin-bottom:14px !important;
      }

  .topics-spotlight-word{
        font-size:clamp(1.35rem, 8vw, 2rem) !important;
        text-align:center !important;
      }

  .topics-wrap{
        gap:8px !important;
      }

  .topic{
        font-size:.78rem !important;
        padding:7px 11px !important;
      }

  .sched-tabs{
        width:100% !important;
        display:grid !important;
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
        gap:6px !important;
      }

  .stab{
        width:100% !important;
        min-width:0 !important;
        max-width:none !important;
        padding:9px 10px !important;
        font-size:.9rem !important;
      }

  #inscricoes .ticket-experience{
        padding:22px !important;
        border-radius:20px !important;
      }

  #inscricoes .ticket-title-main{
        font-size:clamp(2.9rem, 15vw, 4.6rem) !important;
      }

  #inscricoes .ticket-title-sub{
        font-size:clamp(1.35rem, 7vw, 2rem) !important;
      }

  #inscricoes .ticket-points span{
        width:100% !important;
        justify-content:center !important;
      }

  #inscricoes .ticket-action{
        padding:22px !important;
      }

  #inscricoes .ticket-action strong{
        font-size:2.35rem !important;
      }

  .local-detail{
        align-items:flex-start !important;
        padding:16px !important;
      }

  .local-icon{
        flex:0 0 44px !important;
        width:44px !important;
        height:44px !important;
      }

  .local-map{
        height:260px !important;
      }

  .local-map-panel{
        left:14px !important;
        right:14px !important;
        bottom:14px !important;
        padding:16px !important;
      }

  .local-map-panel strong{
        font-size:1.25rem !important;
      }

  .org-drawer summary{
        min-height:62px !important;
        padding:0 14px !important;
        gap:10px !important;
      }

  .org-drawer summary span{
        font-size:.95rem !important;
      }

  .org-drawer summary strong{
        font-size:.7rem !important;
      }

  .org-member-slot{
        align-items:flex-start !important;
        padding:12px !important;
      }

  .org-member-slot h4{
        overflow-wrap:anywhere !important;
      }

  #parceiros .sponsors-carousel{
        overflow:visible !important;
        mask-image:none !important;
        -webkit-mask-image:none !important;
      }

  #parceiros .sponsors-track{
        width:100% !important;
        display:grid !important;
        grid-template-columns:1fr !important;
        animation:none !important;
        gap:12px !important;
      }

  #parceiros .sponsor-slot[aria-hidden="true"]{
        display:none !important;
      }

  #parceiros .sponsor-slot{
        width:100% !important;
        flex-basis:auto !important;
        min-height:220px !important;
      }

  .foot-grid{
        grid-template-columns:1fr !important;
        gap:18px !important;
      }
}

@media (max-width:420px){
  .wrap,
      .nav-inner{
        padding-left:14px !important;
        padding-right:14px !important;
      }

  .nav-logo-img{
        width:136px !important;
        height:44px !important;
      }

  .hero-title,
      .hero-floating-title{
        font-size:clamp(2.35rem, 14.5vw, 3.2rem) !important;
      }

  .hero-eyebrow{
        font-size:.68rem !important;
        padding:9px 12px !important;
      }

  .hero-sub{
        font-size:.92rem !important;
      }

  .s-head h2,
      .about-copy h2{
        font-size:clamp(1.75rem, 10.5vw, 2.35rem) !important;
      }

  .sched-body{
        padding:12px !important;
      }

  .sched-cell h4,
      .sched-banner h4{
        font-size:.88rem !important;
      }

  .sched-cell p,
      .sched-banner p{
        font-size:.78rem !important;
      }
}

/* Ajuste final absoluto: UFMT 2026 em preto no titulo Sobre */

.about-title .about-title-sub{
  background:none !important;
  color:#1a1f25 !important;
  -webkit-text-fill-color:#1a1f25 !important;
}

/* Ajuste final absoluto: botões pretos com preenchimento em degradê no hover */

.btn-glow,
.hero-actions .btn-glow,
.price-button,
.act-more,
.sub-link,
#submissoes .sub-link,
.sub-card.sub-full .sub-link,
.sub-card.sub-short .sub-link,
.sub-card.sub-cyan .sub-link,
.talk-more,
#palestrantes .talk-more,
#inscricoes .ticket-action .price-button{
  background:#071014 !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

.org-drawer summary::after{
  background:#071014 !important;
  color:#fff !important;
  transition:background .25s var(--ease), transform .24s var(--ease);
}

.org-drawer summary:hover::after{
  background:var(--sematec-green-gradient-action) !important;
}

/* Ajuste final absoluto: card "Participação Gratuita" - texto preto e botão direto no degradê */

#inscricoes .ticket-action strong{
  background:none !important;
  color:#0a0f12 !important;
  -webkit-text-fill-color:#0a0f12 !important;
}

#inscricoes .ticket-action .price-button{
  background:var(--sematec-green-gradient-action) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

#inscricoes .ticket-action .price-button::before{
  opacity:0 !important;
}

/* Ajuste final absoluto: remove a linha/borda que sobrava nos botões preenchidos */

.btn-glow,
.hero-actions .btn-glow,
.price-button,
#inscricoes .ticket-action .price-button,
.act-more,
.sub-link,
#submissoes .sub-link,
#submissoes .sub-card:hover .sub-link,
.sub-card.sub-full .sub-link,
.sub-card.sub-short .sub-link,
.sub-card.sub-cyan .sub-link,
.talk-more,
#palestrantes .talk-more{
  border:none !important;
}

.org-drawer summary::after{
  box-shadow:none !important;
}

/* Ajuste final absoluto: "Saiba mais" das palestras direto no degradê, sem efeito de preenchimento */

/* Ajuste final absoluto: "Voltar às palestras/chamadas/atividades" direto no degradê, sem efeito de preenchimento */

.call-side .btn-glow{
  background:var(--sematec-green-gradient-action) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border:none !important;
}

.call-side .btn-glow::before{
  opacity:0 !important;
}

/* Ajuste final absoluto: "Inscreva-se" do hero direto no degradê, sem efeito de preenchimento */

.btn-glow,
.hero-actions .btn-glow{
  background:var(--sematec-green-gradient-action) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border:none !important;
}

.btn-glow::before,
.hero-actions .btn-glow::before{
  opacity:0 !important;
}

/* Atalho acessivel: voltar ao topo em telas menores */

.back-to-top{
  display:none;
  position:fixed;
  right:max(16px, env(safe-area-inset-right));
  bottom:calc(18px + env(safe-area-inset-bottom));
  z-index:1200;
  width:52px;
  height:52px;
  border:0;
  border-radius:999px;
  align-items:center;
  justify-content:center;
  background:var(--sematec-green-gradient-action);
  color:#fff;
  -webkit-text-fill-color:#fff;
  box-shadow:0 16px 34px rgba(8,38,27,.26);
  font-size:1.7rem;
  font-weight:800;
  line-height:1;
  opacity:0;
  pointer-events:none;
  transform:translateY(14px) scale(.96);
  transition:opacity .22s var(--ease), transform .22s var(--ease), box-shadow .22s var(--ease);
}

.back-to-top.is-visible{
  opacity:1;
  pointer-events:auto;
  transform:translateY(0) scale(1);
}

.back-to-top:hover{
  box-shadow:0 20px 42px rgba(8,38,27,.32);
}

.back-to-top:focus-visible{
  outline:3px solid #fff;
  outline-offset:3px;
  box-shadow:0 0 0 6px rgba(14,89,58,.42), 0 20px 42px rgba(8,38,27,.32);
}

@media (max-width:860px){
  .back-to-top{
        display:flex;
      }
}

@media (prefers-reduced-motion:reduce){
  .back-to-top{
        transition:none;
      }
}

/* Identidade visual global: editorial azul/branco com acento azul-verde */

:root{
  --sematec-blue:#0b63f6;
  --sematec-blue-2:#1292ff;
  --sematec-cyan:#19c8ff;
  --sematec-green:#16d6a3;
  --sematec-green-strong:#0c8f42;
  --sematec-mint:#c9fff0;
  --sematec-navy:#06182b;
  --sematec-ink:#0b2038;
  --sematec-muted:#5c7087;
  --sematec-line:rgba(17,108,212,.16);
  --sematec-card:#ffffff;
  --sematec-soft:#f4faff;
  --sematec-soft-2:#eaf7ff;
  --sematec-gradient:linear-gradient(135deg, #0fa44e 0%, #18c996 40%, #19c8ff 72%, #0b63f6 100%);
  --sematec-action-gradient:linear-gradient(135deg, #0fa44e 0%, #16d6a3 46%, #19c8ff 78%, #0b63f6 100%);
  --sematec-gradient-soft:linear-gradient(135deg, rgba(11,99,246,.12) 0%, rgba(25,200,255,.12) 48%, rgba(22,214,163,.14) 100%);
  --sematec-green-gradient:var(--sematec-gradient);
  --sematec-green-gradient-action:var(--sematec-action-gradient);
  --sematec-green-gradient-text:var(--sematec-gradient);
  --text:var(--sematec-navy);
  --muted:var(--sematec-muted);
  --border:var(--sematec-line);
  --bg:#f7fbff;
  --bg-2:#eef8ff;
  --violet:#0b63f6;
  --cyan:#19c8ff;
  --amber:#109fe3;
  --rose:#16b98e;
  --leaf:#16d6a3;
}

body{
  background:#eef8f1 !important;
  color:var(--sematec-ink) !important;
}

.grain-overlay{
  opacity:.028 !important;
}

.section,
.section-dark,
.about-section,
#atividades,
#programacao,
#submissoes,
#palestrantes,
#inscricoes,
#local,
[id="organização"],
#parceiros{
  position:relative;
  /* Fundo verde bem discreto e sem emendas em todas as seções da home (cor sólida única). */
  background:#eef8f1 !important;
  color:var(--sematec-ink) !important;
}

.wrap{
  max-width:1160px !important;
}

.s-head{
  max-width:760px !important;
}

.eyebrow,
.eyebrow-dim,
.ticket-label,
.speaker-label{
  color:var(--sematec-green-strong) !important;
  -webkit-text-fill-color:var(--sematec-green-strong) !important;
  letter-spacing:.18em !important;
}

.s-head h2,
.about-head h2,
.about-title,
.ticket-title,
.talk-feature-copy h3,
.sub-card h3{
  font-family:'Inter', system-ui, sans-serif !important;
  font-weight:400 !important;
  letter-spacing:0 !important;
  color:var(--sematec-navy) !important;
  -webkit-text-fill-color:var(--sematec-navy) !important;
  background:none !important;
}

.s-head h2{
  font-size:clamp(2.4rem, 5.4vw, 4.6rem) !important;
  line-height:.98 !important;
}

.s-desc,
.about-head p,
.act-card p,
.sub-card>p,
.speaker-card p,
.talk-feature-copy p,
.ticket-copy p,
.local-detail p,
.org-member-slot p,
.sponsor-slot p{
  color:var(--sematec-muted) !important;
  -webkit-text-fill-color:var(--sematec-muted) !important;
}

.about-title span,
.about-title .about-title-sub,
.ticket-title-main{
  background:var(--sematec-gradient) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
  -webkit-text-fill-color:transparent !important;
}

.about-title .about-title-sub,
.ticket-title-sub{
  color:var(--sematec-navy) !important;
  -webkit-text-fill-color:var(--sematec-navy) !important;
  background:none !important;
}

.about-feature-card,
.act-card,
.sub-card,
.speaker-card,
.talk-feature,
.sched-body,
.ticket-experience,
.local-grid,
.local-detail,
.local-map,
.org-drawer,
.org-member-slot,
.sponsor-slot{
  border:1px solid var(--sematec-line) !important;
  border-radius:8px !important;
  background:rgba(255,255,255,.88) !important;
  box-shadow:0 18px 46px rgba(6,24,43,.08) !important;
}

.about-feature-card::before,
.about-feature-card::after,
.act-card::before,
.act-card::after,
.sub-card::after,
.speaker-card::before,
.sponsor-slot::before{
  opacity:.85 !important;
}

.about-feature-icon,
.act-icon,
.local-icon,
.sp-avatar,
.org-drawer summary::after{
  background:var(--sematec-gradient) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  box-shadow:0 12px 28px rgba(11,99,246,.18) !important;
}

.about-feature-icon svg,
.act-icon svg,
.local-icon svg,
.sp-avatar svg{
  color:#fff !important;
  fill:none;
  stroke:currentColor;
}

.about-feature-card h3,
.act-card h3,
.speaker-card h4,
.org-member-slot h4,
.local-detail strong,
.sponsor-slot h3{
  color:var(--sematec-navy) !important;
  -webkit-text-fill-color:var(--sematec-navy) !important;
  background:none !important;
}

.act-violet,
.act-cyan,
.act-amber,
.act-rose{
  --card-gradient:
    radial-gradient(circle at 18% 18%, rgba(255,255,255,.42) 0 18%, transparent 32%),
    var(--sematec-gradient) !important;
  border-color:var(--sematec-line) !important;
}

.act-dot{
  background:var(--sematec-gradient) !important;
}

.act-more,
.sub-link,
.talk-more,
.price-button,
.btn-glow,
#submissoes .sub-link,
#inscricoes .ticket-action .price-button,
#palestrantes .talk-more{
  border:0 !important;
  background:var(--sematec-action-gradient) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  box-shadow:0 12px 30px rgba(11,99,246,.2) !important;
}

.act-more:hover,
.sub-link:hover,
.talk-more:hover,
.price-button:hover,
.btn-glow:hover{
  transform:translateY(-2px) !important;
  box-shadow:0 18px 42px rgba(11,99,246,.26) !important;
}

.sched-tabs{
  background:#fff !important;
  border-color:var(--sematec-line) !important;
  box-shadow:0 16px 38px rgba(6,24,43,.08) !important;
}

.stab{
  color:var(--sematec-muted) !important;
}

.stab-active{
  background:var(--sematec-action-gradient) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

.sched-body{
  background:
    linear-gradient(180deg, rgba(255,255,255,.94), rgba(244,250,255,.94)),
    var(--sematec-gradient-soft) !important;
}

.sched-grid{
  background:transparent !important;
}

.sched-col-head,
.sched-col-violet,
.sched-col-cyan,
.sched-col-amber,
.sched-col-rose{
  background:var(--sematec-gradient) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border-color:transparent !important;
}

.sched-time{
  color:var(--sematec-green-strong) !important;
  background:rgba(15,164,78,.09) !important;
  border-color:rgba(15,164,78,.16) !important;
}

.sched-cell,
.sched-banner{
  --sched-accent:var(--sematec-blue) !important;
  background:rgba(255,255,255,.9) !important;
  border-color:var(--sematec-line) !important;
  box-shadow:0 10px 24px rgba(6,24,43,.06) !important;
}

.sched-cell::before,
.sched-banner::before{
  background:var(--sematec-gradient) !important;
}

.sched-cell h4,
.sched-banner h4{
  color:var(--sematec-navy) !important;
  -webkit-text-fill-color:var(--sematec-navy) !important;
}

.sched-cell p,
.sched-banner p{
  color:var(--sematec-muted) !important;
  -webkit-text-fill-color:var(--sematec-muted) !important;
}

.sub-card,
.sub-full,
.sub-short,
.sub-cyan{
  background:
    linear-gradient(180deg, rgba(255,255,255,.78), rgba(255,255,255,.92)),
    var(--sematec-gradient-soft) !important;
  color:var(--sematec-ink) !important;
}

.sub-gradient{
  background:
    radial-gradient(circle at 18% 18%, rgba(25,200,255,.22), transparent 34%),
    radial-gradient(circle at 84% 16%, rgba(22,214,163,.18), transparent 34%),
    linear-gradient(135deg, rgba(11,99,246,.1), rgba(255,255,255,.74)) !important;
}

.sub-card h3,
.sub-card>p,
.sub-card ul li,
.sub-card .sub-deadline,
.sub-card .sub-deadline strong{
  color:var(--sematec-ink) !important;
  -webkit-text-fill-color:var(--sematec-ink) !important;
}

.sub-card ul li{
  border-bottom-color:rgba(11,99,246,.12) !important;
}

.topic-active{
  background:var(--sematec-gradient) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

.topics-spotlight-word{
  background:var(--sematec-gradient) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
  -webkit-text-fill-color:transparent !important;
}

.topic,
.talk-meta span,
.ticket-points span{
  border-color:rgba(15,164,78,.22) !important;
  background:rgba(255,255,255,.72) !important;
  color:var(--sematec-green-strong) !important;
  -webkit-text-fill-color:var(--sematec-green-strong) !important;
}

#inscricoes .ticket-experience{
  background:
    radial-gradient(circle at 0% 0%, rgba(25,200,255,.22), transparent 36%),
    radial-gradient(circle at 100% 0%, rgba(22,214,163,.18), transparent 34%),
    #fff !important;
}

#inscricoes .ticket-action{
  background:#f3faff !important;
  border-color:var(--sematec-line) !important;
}

#inscricoes .ticket-action strong{
  background:var(--sematec-gradient) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
  -webkit-text-fill-color:transparent !important;
}

.local-map-panel{
  border-color:rgba(255,255,255,.42) !important;
  background:rgba(6,24,43,.72) !important;
  color:#fff !important;
}

.org-drawer summary{
  color:var(--sematec-navy) !important;
  border-color:var(--sematec-line) !important;
}

.org-drawer summary strong,
.org-member-email{
  color:var(--sematec-green-strong) !important;
  -webkit-text-fill-color:var(--sematec-green-strong) !important;
}

.org-member-photo{
  background:var(--sematec-gradient-soft) !important;
  border:1px solid var(--sematec-line) !important;
}

.sponsor-logo-link{
  background:#fff !important;
  border-color:var(--sematec-line) !important;
}

.footer{
  background:
    radial-gradient(circle at 12% 0%, rgba(24,201,150,.18), transparent 34%),
    radial-gradient(circle at 88% 8%, rgba(15,164,78,.16), transparent 34%),
    var(--sematec-navy) !important;
  color:rgba(255,255,255,.82) !important;
}

.footer h5,
.foot-brand p,
.foot-bottom p,
.foot-col span,
.foot-col a{
  color:rgba(255,255,255,.76) !important;
  -webkit-text-fill-color:rgba(255,255,255,.76) !important;
}

.footer h5{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

.footer .foot-social a{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

.foot-col a:hover,
.foot-social a:hover{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

.back-to-top{
  background:var(--sematec-action-gradient) !important;
}

@media (max-width:900px){
  .s-head h2{
        font-size:clamp(2rem, 10vw, 3.2rem) !important;
      }

  .about-feature-card,
      .act-card,
      .sub-card,
      .speaker-card,
      .talk-feature,
      .ticket-experience,
      .local-grid,
      .org-drawer,
      .sponsor-slot{
        border-radius:8px !important;
      }
}

/* Especificidade final para neutralizar sobras verdes/roxas antigas */

#sobre,
#atividades,
#programacao,
#submissoes,
#palestrantes,
#inscricoes,
#local,
[id="organização"],
#parceiros{
  background-color:#eef8f1 !important;
}

#sobre .about-feature-card,
#atividades .act-card,
#submissoes .sub-card,
#palestrantes .talk-feature,
#palestrantes .speaker-card,
#inscricoes .ticket-experience,
#local .local-grid,
#local .local-detail,
#local .local-map,
[id="organização"] .org-drawer,
[id="organização"] .org-member-slot,
#parceiros .sponsor-slot{
  border-color:var(--sematec-line) !important;
  border-radius:8px !important;
  background-color:rgba(255,255,255,.9) !important;
}

#submissoes .sub-card::after,
#palestrantes .talk-feature::after,
#palestrantes .speaker-card::after,
#inscricoes .ticket-experience::after{
  border-radius:8px !important;
}

#submissoes .sub-card,
#submissoes .sub-card h3,
#submissoes .sub-card p,
#submissoes .sub-card li,
#submissoes .sub-deadline,
#submissoes .sub-deadline strong{
  color:var(--sematec-ink) !important;
  -webkit-text-fill-color:var(--sematec-ink) !important;
}

#palestrantes .talk-meta span,
#inscricoes .ticket-points span,
#submissoes .topic{
  border-color:rgba(15,164,78,.22) !important;
  background:rgba(255,255,255,.74) !important;
  color:var(--sematec-green-strong) !important;
  -webkit-text-fill-color:var(--sematec-green-strong) !important;
}

#parceiros .sponsor-logo-link,
#parceiros .sponsor-slot-ppgcomp .sponsor-logo-link{
  border-color:var(--sematec-line) !important;
  background:#fff !important;
}

.footer{
  border-top:1px solid rgba(255,255,255,.12) !important;
  border-color:rgba(255,255,255,.12) !important;
}

/* Restaura tipografia original do site: Inter, pesos e escalas anteriores */

body,
button,
input,
textarea,
select,
.nav,
.nav-links a,
.nav-cta,
.hero-title,
.hero-brand,
.hero-tagline,
.hero-sub,
.hero-eyebrow,
.s-head h2,
.about-head h2,
.about-title,
.about-title span,
.act-card h3,
.sub-card h3,
.speaker-card h4,
.talk-feature-copy h3,
.ticket-title,
.ticket-title-main,
.ticket-title-sub,
.org-drawer summary span,
.org-member-slot h4{
  font-family:'Inter', system-ui, sans-serif !important;
}

.nav:not(.scrolled) .nav-links a,
.nav.scrolled .nav-links a,
.nav-links a{
  font-size:.875rem !important;
  font-weight:500 !important;
  letter-spacing:0 !important;
}

.hero-title{
  gap:.04em !important;
  font-weight:800 !important;
  line-height:1.05 !important;
  letter-spacing:0 !important;
}

.hero-brand{
  font-size:clamp(3.5rem, 8vw, 7.4rem) !important;
  font-weight:800 !important;
  line-height:1.05 !important;
  letter-spacing:0 !important;
}


.hero-tagline{
  max-width:760px !important;
  font-size:1.12rem !important;
  font-weight:400 !important;
  line-height:1.8 !important;
}

.hero-sub{
  font-size:1rem !important;
  font-weight:400 !important;
  line-height:1.7 !important;
}

.s-head h2{
  font-size:clamp(2rem,4.5vw,3rem) !important;
  font-weight:700 !important;
  line-height:1.15 !important;
  letter-spacing:0 !important;
}

.section-compact .s-head h2{
  font-size:clamp(1.7rem,3.4vw,2.35rem) !important;
}

.about-head h2,
.about-title{
  font-size:clamp(2.1rem,4.1vw,3.45rem) !important;
  line-height:1.08 !important;
  font-weight:820 !important;
  letter-spacing:0 !important;
}

#atividades .s-head h2{
  font-size:clamp(1.85rem,3.6vw,2.65rem) !important;
}

#programacao .s-head h2,
#palestrantes .s-head h2{
  font-size:clamp(1.85rem,3.7vw,2.7rem) !important;
}

.act-card h3{
  font-size:1.55rem !important;
  font-weight:820 !important;
  line-height:1.05 !important;
  letter-spacing:0 !important;
}

.sub-card h3{
  font-size:clamp(1.55rem,2.35vw,2rem) !important;
  font-weight:800 !important;
  line-height:1.08 !important;
  overflow-wrap:break-word !important;
  hyphens:auto !important;
}

.ticket-title{
  font-weight:820 !important;
  line-height:.94 !important;
  letter-spacing:0 !important;
}

#inscricoes .ticket-title-main{
  font-size:clamp(3rem,7vw,6rem) !important;
  font-weight:850 !important;
  line-height:.88 !important;
}

#inscricoes .ticket-title-sub{
  font-size:clamp(1.8rem,3.2vw,2.8rem) !important;
  font-weight:800 !important;
  line-height:1 !important;
}

.nav:not(.scrolled) .nav-links.open a,
.nav.scrolled .nav-links.open a,
.nav-links.open a{
  font-family:'Inter', system-ui, sans-serif !important;
  font-size:1rem !important;
  font-weight:800 !important;
  line-height:1.2 !important;
}

@media (max-width:768px){
  .hero-brand{
        font-size:clamp(3.05rem, 12vw, 5.2rem) !important;
      }


  .hero-tagline{
        max-width:560px !important;
        font-size:1rem !important;
        line-height:1.58 !important;
      }

  .s-head h2,
      .about-head h2,
      .about-title{
        font-size:clamp(1.75rem, 10.5vw, 2.35rem) !important;
      }
}

@media (max-width:420px){
  .hero-brand{
        font-size:clamp(2.35rem, 14.5vw, 3.2rem) !important;
      }


  .hero-tagline{
        font-size:.92rem !important;
      }
}

/* Atividades: restaura topo com imagem borrada, sem degradê azul */

#atividades .act-card{
  overflow:hidden !important;
}

#atividades .act-card::before{
  top:-8px !important;
  left:-8px !important;
  right:-8px !important;
  height:156px !important;
  background:url('../img/sematec-hero-meadow.png') center 60% / cover no-repeat !important;
  filter:blur(4px) saturate(1.08) brightness(.92) !important;
  transform:none !important;
  clip-path:none !important;
  opacity:1 !important;
  animation:none !important;
}

#atividades .act-card::after{
  display:block !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  height:148px !important;
  box-sizing:border-box !important;
  background:rgba(6,24,43,.08) !important;
  border-bottom:1px solid rgba(18,24,38,.14) !important;
  mix-blend-mode:normal !important;
  opacity:1 !important;
  animation:none !important;
}

#atividades .act-violet::before{
  background:url('../img/sematec-hero-meadow.png') center 60% / cover no-repeat !important;
}

#atividades .act-cyan::before{
  background:url('../img/atividade-minicursos-bg.webp') center 55% / cover no-repeat !important;
}

#atividades .act-amber::before{
  background:url('../img/atividade-artigos-bg.jpg') center 45% / cover no-repeat !important;
}

#atividades .act-rose::before{
  background:url('../img/atividade-workshops-bg.jpg') center 55% / cover no-repeat !important;
}

#atividades .act-icon{
  height:148px !important;
  background:transparent !important;
  box-shadow:none !important;
}

#atividades .act-icon svg{
  fill:none !important;
  stroke:#fff !important;
  filter:drop-shadow(0 5px 14px rgba(6,24,43,.45)) !important;
}

/* Submissoes: mantém formato original e corrige a faixa branca no topo */

#submissoes .sub-card{
  position:relative !important;
  overflow:hidden !important;
  padding:40px 28px 34px !important;
  background:rgba(255,255,255,.9) !important;
  border-radius:22px !important;
}

#submissoes .sub-gradient{
  position:absolute !important;
  inset:0 0 auto !important;
  z-index:0 !important;
  height:156px !important;
  border-radius:22px 22px 0 0 !important;
  background:var(--sematec-gradient) !important;
  background-size:220% 220% !important;
  overflow:hidden !important;
  animation:sematecCardPaint 8s ease-in-out infinite alternate !important;
}

#submissoes .sub-gradient::before,
#submissoes .sub-gradient::after{
  display:none !important;
}

#submissoes .sub-card::after{
  display:block !important;
  content:'' !important;
  position:absolute !important;
  left:0 !important;
  right:0 !important;
  top:156px !important;
  bottom:0 !important;
  z-index:0 !important;
  height:auto !important;
  background:#fff !important;
  border-radius:0 0 22px 22px !important;
  box-shadow:0 -12px 26px rgba(6,24,43,.07) !important;
  pointer-events:none !important;
  mix-blend-mode:normal !important;
  animation:none !important;
}

#submissoes .sub-card > *:not(.sub-gradient){
  position:relative !important;
  z-index:1 !important;
}

#submissoes .sub-card h3{
  min-height:84px !important;
  margin:0 0 64px !important;
  color:var(--sematec-navy) !important;
  -webkit-text-fill-color:var(--sematec-navy) !important;
}

#submissoes .sub-card > p{
  margin-top:0 !important;
}

/* Chamada de Trabalhos: foto ofuscada no topo dos cards (mesmo tratamento das atividades) */
#submissoes .sub-short .sub-gradient,
#submissoes .sub-cyan .sub-gradient{
  background:#0b1a2e !important;
  animation:none !important;
}

#submissoes .sub-short .sub-gradient::after,
#submissoes .sub-cyan .sub-gradient::after{
  content:'' !important;
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  width:auto !important;
  height:auto !important;
  border-radius:0 !important;
  z-index:0 !important;
  background-position:center !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
  filter:saturate(1.04) !important;
  transform:none !important;
  mix-blend-mode:normal !important;
  opacity:1 !important;
  animation:none !important;
}

#submissoes .sub-short .sub-gradient::after{
  background-image:linear-gradient(180deg, rgba(6,20,40,.42), rgba(6,20,40,.56)), url('../img/chamada-artigos-plumeria.jpg') !important;
}

#submissoes .sub-cyan .sub-gradient::after{
  background-image:linear-gradient(180deg, rgba(6,20,40,.42), rgba(6,20,40,.56)), url('../img/chamada-minicursos-bg.jpg') !important;
}

/* ─────────────────────────────────
   PALESTRAS EM DESTAQUE — carrossel horizontal
   (inspirado em workspace-it.com, com o degradê azul do site)
───────────────────────────────── */

#palestrantes .talks-hscroll-wrap{
  position:relative;
}

#palestrantes .talks-hscroll{
  display:flex;
  gap:24px;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-snap-type:x proximity;
  scroll-behavior:smooth;
  -webkit-overflow-scrolling:touch;
  padding:8px 8px 28px;
  margin:0 -8px;
  scrollbar-width:thin;
  scrollbar-color:var(--sematec-cyan) transparent;
}

#palestrantes .talks-hscroll::-webkit-scrollbar{
  height:8px;
}

#palestrantes .talks-hscroll::-webkit-scrollbar-track{
  background:rgba(11,99,246,.08);
  border-radius:999px;
}

#palestrantes .talks-hscroll::-webkit-scrollbar-thumb{
  background:var(--sematec-gradient);
  border-radius:999px;
}

#palestrantes .talk-hcard{
  flex:0 0 auto;
  scroll-snap-align:start;
  width:clamp(272px, 32vw, 360px);
  display:flex;
  flex-direction:column;
  background:#fff;
  border:1px solid var(--sematec-line);
  border-radius:26px;
  padding:20px;
  box-shadow:0 20px 46px rgba(6,24,43,.08);
  transition:background .4s ease, transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}

#palestrantes .talk-hcard-media{
  border-radius:18px;
  overflow:hidden;
  height:190px;
  margin-bottom:20px;
  background:var(--sematec-soft-2);
}

#palestrantes .talk-hcard-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .5s ease;
}

#palestrantes .talk-hcard-body{
  display:flex;
  flex-direction:column;
  flex:1;
}

#palestrantes .talk-hcard-body h3{
  margin:10px 0 10px;
  font-size:1.18rem;
  line-height:1.28;
  color:var(--sematec-navy);
  transition:color .4s ease;
}

#palestrantes .talk-hcard-body p{
  margin:0 0 16px;
  color:var(--sematec-muted);
  font-size:.94rem;
  line-height:1.55;
  transition:color .4s ease;
}

#palestrantes .talk-hcard-body .talk-meta{
  margin-bottom:14px;
  color:var(--sematec-muted);
  transition:color .4s ease;
}

#palestrantes .talk-hcard-speaker{
  display:block;
  margin-bottom:18px;
  color:var(--sematec-ink);
  font-weight:700;
  transition:color .4s ease;
}

#palestrantes .talk-hcard-cta{
  margin-top:auto;
  display:inline-flex;
  align-items:center;
  gap:8px;
  align-self:flex-start;
  padding:12px 22px;
  border-radius:999px;
  background:var(--sematec-action-gradient);
  color:#fff !important;
  -webkit-text-fill-color:#fff;
  font-weight:700;
  font-size:.86rem;
  box-shadow:0 12px 26px rgba(11,99,246,.28);
  transition:transform .25s ease, box-shadow .25s ease, background .25s ease;
}

#palestrantes .talk-hcard-cta:hover{
  transform:translateY(-2px);
  box-shadow:0 16px 32px rgba(11,99,246,.36);
}

/* Hover: aplica o degradê azul já usado no site em cada card */

#palestrantes .talk-hcard:hover,
#palestrantes .talk-hcard:focus-within{
  background:var(--sematec-gradient);
  border-color:transparent;
  transform:translateY(-6px);
  box-shadow:0 28px 54px rgba(6,24,43,.24);
}

#palestrantes .talk-hcard:hover .speaker-label,
#palestrantes .talk-hcard:focus-within .speaker-label{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

#palestrantes .talk-hcard:hover .talk-hcard-body h3,
#palestrantes .talk-hcard:hover .talk-hcard-speaker,
#palestrantes .talk-hcard:focus-within .talk-hcard-body h3,
#palestrantes .talk-hcard:focus-within .talk-hcard-speaker{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

#palestrantes .talk-hcard:hover .talk-hcard-body p,
#palestrantes .talk-hcard:hover .talk-hcard-body .talk-meta,
#palestrantes .talk-hcard:focus-within .talk-hcard-body p,
#palestrantes .talk-hcard:focus-within .talk-hcard-body .talk-meta{
  color:rgba(255,255,255,.9) !important;
  -webkit-text-fill-color:rgba(255,255,255,.9) !important;
}

#palestrantes .talk-hcard:hover .talk-hcard-cta,
#palestrantes .talk-hcard:focus-within .talk-hcard-cta{
  background:#fff;
  color:var(--sematec-navy) !important;
  -webkit-text-fill-color:var(--sematec-navy) !important;
}

#palestrantes .talk-hcard:hover .talk-hcard-media img{
  transform:scale(1.06);
}

/* Setas de navegação horizontal */

#palestrantes .talks-hscroll-controls{
  display:flex;
  justify-content:center;
  gap:14px;
  margin-top:10px;
}

#palestrantes .talks-hscroll-arrow{
  width:44px;
  height:44px;
  border-radius:50%;
  border:1px solid var(--sematec-line);
  background:#fff;
  color:var(--sematec-navy);
  font-size:1.3rem;
  line-height:1;
  cursor:pointer;
  transition:background .25s ease, color .25s ease, transform .2s ease, box-shadow .25s ease;
  box-shadow:0 10px 24px rgba(6,24,43,.08);
}

#palestrantes .talks-hscroll-arrow:hover{
  background:var(--sematec-action-gradient);
  color:#fff;
  transform:translateY(-2px);
  box-shadow:0 14px 30px rgba(11,99,246,.28);
}

@media (max-width:720px){
  #palestrantes .talk-hcard{ width:min(82vw, 320px); }
}

/* Ajuste final: secao Sobre no azul SEMATEC 2.0 */

#sobre.section.about-section,
#sobre.about-section{
  background:#eef8f1 !important;
  background-color:#eef8f1 !important;
}

#sobre .about-title .about-title-main{
  background:linear-gradient(100deg, #0fa44e 0%, #18c996 45%, #19c8ff 75%, #0b63f6 100%) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
  -webkit-text-fill-color:transparent !important;
}

#sobre .about-title .about-title-sub{
  background:none !important;
  color:var(--sematec-navy) !important;
  -webkit-text-fill-color:var(--sematec-navy) !important;
}

#sobre .about-copy h2::after{
  background:linear-gradient(90deg, #0fa44e 0%, #18c996 55%, #19c8ff 100%) !important;
  box-shadow:0 8px 18px rgba(15,164,78,.22) !important;
}

#sobre .about-feature-card{
  background:linear-gradient(145deg, rgba(255,255,255,.92), rgba(239,248,255,.9)) !important;
  border-color:rgba(11,99,246,.16) !important;
  box-shadow:0 18px 46px rgba(6,24,43,.08) !important;
}

#sobre .feature-primary,
#sobre .feature-cyan,
#sobre .feature-soft,
#sobre .feature-muted{
  --feature-hover-bg:
    radial-gradient(circle at 18% 20%, rgba(25,200,255,.2), transparent 34%),
    linear-gradient(135deg, rgba(11,99,246,.1), rgba(18,146,255,.13)) !important;
}

#sobre .about-feature-card::before{
  background:var(--feature-hover-bg) !important;
}

#sobre .about-feature-card:is(:hover,.is-hovered){
  background:linear-gradient(135deg, rgba(236,247,255,.98), rgba(226,244,255,.96)) !important;
  border-color:rgba(11,99,246,.28) !important;
  box-shadow:0 24px 52px rgba(11,99,246,.16) !important;
}

#sobre .about-feature-icon,
#sobre .about-feature-card:is(:hover,.is-hovered) .about-feature-icon{
  background:linear-gradient(135deg, #0fa44e 0%, #16d6a3 46%, #19c8ff 78%, #0b63f6 100%) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border-color:rgba(11,99,246,.18) !important;
  box-shadow:0 14px 30px rgba(11,99,246,.2) !important;
}

/* Ajuste final: titulos dos cards de submissao sobre o azul */

#submissoes .sub-card h3{
  background:none !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  text-shadow:
    0 2px 4px rgba(3,20,44,.42),
    0 12px 26px rgba(4,38,90,.36),
    0 0 22px rgba(25,200,255,.2) !important;
}

/* Ajuste final: paginas internas no azul SEMATEC 2.0 */

:root{
  --sematec-internal-blue-gradient:
    radial-gradient(circle at 18% 18%, rgba(255,255,255,.22), transparent 34%),
    radial-gradient(circle at 84% 12%, rgba(146,237,95,.24), transparent 32%),
    linear-gradient(135deg, #0fa44e 0%, #18c996 40%, #19c8ff 72%, #0b63f6 100%);
  --sematec-internal-blue-soft:
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(238,248,255,.96)),
    radial-gradient(circle at 12% 0%, rgba(11,99,246,.08), transparent 36%),
    radial-gradient(circle at 90% 10%, rgba(25,200,255,.1), transparent 34%);
}

body.subpage{
  background:
    radial-gradient(circle at 12% 0%, rgba(11,99,246,.12), transparent 36%),
    radial-gradient(circle at 88% 8%, rgba(25,200,255,.12), transparent 34%),
    linear-gradient(180deg, #f6fbff 0%, #eef8ff 42%, #ffffff 100%) !important;
}

body.subpage .call-main{
  background:transparent !important;
}

body.subpage .call-hero,
body.subpage .call-hero.call-full,
body.subpage .call-hero.call-short,
body.subpage .call-hero.call-course,
body.subpage.talk-page .call-hero{
  border-bottom:none !important;
  background:var(--sematec-internal-blue-gradient) !important;
  animation:none !important;
  isolation:isolate;
}

body.subpage .call-hero:not(.activity-violet):not(.activity-cyan):not(.activity-amber):not(.activity-rose):not(.call-photo)::before{
  content:'' !important;
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  background:
    radial-gradient(circle at 18% 22%, rgba(255,255,255,.24), transparent 26%),
    radial-gradient(circle at 82% 16%, rgba(255,255,255,.18), transparent 28%) !important;
  filter:none !important;
  transform:none !important;
  pointer-events:none !important;
}

body.subpage .call-hero:not(.activity-violet):not(.activity-cyan):not(.activity-amber):not(.activity-rose):not(.call-photo)::after,
body.subpage.talk-page .call-hero::after{
  content:'' !important;
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  background:
    linear-gradient(90deg, rgba(4,23,52,.18), rgba(4,23,52,.04) 48%, rgba(4,23,52,.18)),
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.02)) !important;
  mix-blend-mode:normal !important;
  opacity:1 !important;
  filter:none !important;
  animation:none !important;
  pointer-events:none !important;
}

body.subpage .call-hero.activity-violet,
body.subpage .call-hero.activity-cyan,
body.subpage .call-hero.activity-amber,
body.subpage .call-hero.activity-rose{
  background:#06182b !important;
}

body.subpage .call-hero.activity-violet::before{
  background:url('../img/sematec-hero-meadow.png') center 60% / cover no-repeat !important;
}

body.subpage .call-hero.activity-cyan::before{
  background:url('../img/atividade-minicursos-bg.webp') center 55% / cover no-repeat !important;
}

body.subpage .call-hero.activity-amber::before{
  background:url('../img/atividade-artigos-bg.jpg') center 45% / cover no-repeat !important;
}

body.subpage .call-hero.activity-rose::before{
  background:url('../img/atividade-workshops-bg.jpg') center 55% / cover no-repeat !important;
}

body.subpage .call-hero.activity-violet::before,
body.subpage .call-hero.activity-cyan::before,
body.subpage .call-hero.activity-amber::before,
body.subpage .call-hero.activity-rose::before{
  border-color:transparent !important;
  box-shadow:none !important;
}

/* Chamadas de trabalho: hero com foto ofuscada e texto por cima (igual às atividades) */
body.subpage .call-hero.call-photo{
  background:#06182b !important;
}

body.subpage .call-hero.call-photo-artigos::before{
  background:url('../img/chamada-artigos-plumeria.jpg') center 42% / cover no-repeat !important;
}

body.subpage .call-hero.call-photo-minicursos::before{
  background:url('../img/chamada-minicursos-bg.jpg') center 50% / cover no-repeat !important;
}

body.subpage .call-hero.call-photo::before{
  content:'' !important;
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  filter:none !important;
  transform:none !important;
  border-color:transparent !important;
  box-shadow:none !important;
  pointer-events:none !important;
}

body.subpage .call-hero.call-photo::after{
  content:'' !important;
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  background:linear-gradient(180deg, rgba(4,18,40,.5), rgba(4,18,40,.66)) !important;
  filter:none !important;
  mix-blend-mode:normal !important;
  opacity:1 !important;
  animation:none !important;
  pointer-events:none !important;
}

body.subpage .call-hero.activity-violet::after,
body.subpage .call-hero.activity-cyan::after,
body.subpage .call-hero.activity-amber::after,
body.subpage .call-hero.activity-rose::after{
  background:
    linear-gradient(90deg, rgba(0,0,0,.46), rgba(0,0,0,.16) 48%, rgba(0,0,0,.3)),
    linear-gradient(180deg, rgba(0,0,0,.06), rgba(0,0,0,.12)) !important;
  mix-blend-mode:normal !important;
  opacity:1 !important;
  animation:none !important;
}

body.subpage .call-hero .wrap{
  position:relative;
  z-index:3;
}

body.subpage .call-hero h1,
body.subpage .call-hero .call-kicker,
body.subpage .call-hero p{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

body.subpage .call-hero h1{
  text-shadow:0 18px 44px rgba(3,20,44,.32) !important;
}

body.subpage .call-hero .call-kicker,
body.subpage .call-hero p{
  color:rgba(255,255,255,.88) !important;
  -webkit-text-fill-color:rgba(255,255,255,.88) !important;
}

body.subpage .call-content h2{
  background:linear-gradient(100deg, #0fa44e 0%, #18c996 45%, #19c8ff 75%, #0b63f6 100%) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
  -webkit-text-fill-color:transparent !important;
}

body.subpage .call-side,
body.subpage .activity-session,
body.subpage .activity-note{
  background:var(--sematec-internal-blue-soft) !important;
  border-color:rgba(11,99,246,.16) !important;
  box-shadow:0 18px 46px rgba(6,24,43,.08) !important;
}

body.subpage .call-list,
body.subpage .call-list li,
body.subpage .activity-session,
body.subpage .activity-meta span{
  border-color:rgba(11,99,246,.14) !important;
}

body.subpage .activity-time,
body.subpage .activity-meta span,
body.subpage .talk-page .call-side .activity-meta span{
  background:rgba(15,164,78,.09) !important;
  color:var(--sematec-green-strong) !important;
  -webkit-text-fill-color:var(--sematec-green-strong) !important;
}

body.subpage .activity-time{
  border:1px solid rgba(11,99,246,.14) !important;
  box-shadow:none !important;
}

body.subpage .btn-glow,
body.subpage .stab-active,
body.subpage .call-side .btn-glow{
  background:var(--sematec-action-gradient) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border-color:rgba(11,99,246,.18) !important;
  box-shadow:0 14px 34px rgba(11,99,246,.24) !important;
}

body.subpage .btn-glow::before,
body.subpage .call-side .btn-ghost::before{
  background:linear-gradient(135deg, rgba(11,99,246,.28), rgba(25,200,255,.22)) !important;
}

body.subpage .call-side .btn-ghost{
  border-color:rgba(15,164,78,.24) !important;
  color:var(--sematec-green-strong) !important;
  -webkit-text-fill-color:var(--sematec-green-strong) !important;
  background:rgba(15,164,78,.07) !important;
}

body.subpage .talk-detail-image{
  border-color:rgba(11,99,246,.16) !important;
  box-shadow:0 20px 54px rgba(11,99,246,.12) !important;
}

/* Ajuste final: palestras internas com degrade das chamadas */

body.subpage.talk-page .call-hero.activity-violet,
body.subpage.talk-page .call-hero.activity-cyan,
body.subpage.talk-page .call-hero.activity-amber,
body.subpage.talk-page .call-hero.activity-rose{
  background:var(--sematec-internal-blue-gradient) !important;
}

body.subpage.talk-page .call-hero.activity-violet::before,
body.subpage.talk-page .call-hero.activity-cyan::before,
body.subpage.talk-page .call-hero.activity-amber::before,
body.subpage.talk-page .call-hero.activity-rose::before{
  content:'' !important;
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  background:
    radial-gradient(circle at 18% 22%, rgba(255,255,255,.24), transparent 26%),
    radial-gradient(circle at 82% 16%, rgba(255,255,255,.18), transparent 28%) !important;
  filter:none !important;
  transform:none !important;
}

body.subpage.talk-page .call-hero.activity-violet::after,
body.subpage.talk-page .call-hero.activity-cyan::after,
body.subpage.talk-page .call-hero.activity-amber::after,
body.subpage.talk-page .call-hero.activity-rose::after{
  background:
    linear-gradient(90deg, rgba(4,23,52,.18), rgba(4,23,52,.04) 48%, rgba(4,23,52,.18)),
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.02)) !important;
}

/* Alinha o título dos heros de atividade à lateral (mesma margem do conteúdo abaixo)
   em vez de encolher e centralizar dentro do hero flex. */
body.subpage .call-hero.activity-violet .wrap,
body.subpage .call-hero.activity-cyan .wrap,
body.subpage .call-hero.activity-amber .wrap,
body.subpage .call-hero.activity-rose .wrap{
  width:100%;
  max-width:1160px;
  margin-left:auto;
  margin-right:auto;
  text-align:left;
}

/* Mapa (Local): remove a máscara/overlay decorativa e faz o iframe
   ocupar toda a altura do quadro (sem sobrar espaço embaixo). */
#local .local-map-panel{
  display:none !important;
}

#local .local-map{
  height:100% !important;
  align-self:stretch !important;
}

#local .local-map iframe{
  height:100% !important;
}

/* Mobile: reduz o título dos heros de subpágina (chamadas/atividades) para
   não ficar grande demais e colado nas bordas em telas pequenas. */
@media (max-width:640px){
  body.subpage .call-hero h1{
    font-size:2.1rem !important;
    line-height:1.08 !important;
    letter-spacing:-.01em !important;
  }
}

/* Mobile pequeno: cabeçalho dos drawers de organização. Agrupa o título e a
   contagem (sem o vão gigante do space-between) e mantém o botão "+" no canto
   sem sobrepor o texto. Regra no fim do arquivo para vencer o override anterior. */
@media (max-width:420px){
  .org-drawer summary{
    flex-direction:column !important;
    align-items:flex-start !important;
    justify-content:center !important;
    gap:6px !important;
    min-height:0 !important;
    padding:14px 58px 14px 16px !important;
    position:relative !important;
  }

  .org-drawer summary::after{
    position:absolute !important;
    top:50% !important;
    right:14px !important;
    transform:translateY(-50%) !important;
  }

  .org-drawer[open] summary::after{
    transform:translateY(-50%) rotate(180deg) !important;
  }

  .org-drawer summary strong{
    margin-left:0 !important;
  }
}

/* Menu mobile da home: contraste do painel aberto sobre o cabeçalho claro. */
@media (max-width:768px){
  body.home-page .nav-links{
    bottom:auto !important;
    height:calc(100svh - 24px) !important;
    max-height:calc(100svh - 24px) !important;
    overflow-y:auto !important;
    background:rgba(7,22,38,.98) !important;
    border-right:1px solid rgba(255,255,255,.12) !important;
    box-shadow:22px 0 54px rgba(0,0,0,.28) !important;
  }

  body.home-page .nav:not(.scrolled) .nav-links.open a,
  body.home-page .nav.scrolled .nav-links.open a,
  body.home-page .nav-links.open a{
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    border-color:rgba(255,255,255,.12) !important;
    background:rgba(255,255,255,.08) !important;
    font-weight:600 !important;
  }

  body.home-page .nav-links.open a:hover{
    color:#8cc9f4 !important;
    -webkit-text-fill-color:#8cc9f4 !important;
  }

  body.home-page .nav-close{
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    border-color:rgba(255,255,255,.18) !important;
    background:rgba(255,255,255,.1) !important;
  }

  body.home-page .nav.scrolled .nav-burger span{
    background:#fff !important;
  }

  body.home-page .nav-burger.open{
    opacity:0 !important;
    pointer-events:none !important;
  }
}

/* Programação: centraliza ícone e texto dentro dos cabeçalhos de categoria. */
.sched-col-head{
  min-height:40px !important;
  padding:8px 10px !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
}

/* Home: usa nos botões o mesmo degradê azul das páginas internas. */
body.home-page .btn-glow::before,
body.home-page .btn-ghost::before,
body.home-page .act-more::before,
body.home-page .sub-link::before,
body.home-page .price-button::before,
body.home-page #submissoes .sub-link::before,
body.home-page #submissoes .sub-card:hover .sub-link::before,
body.home-page #inscricoes .ticket-action .price-button::before{
  background:var(--sematec-action-gradient) !important;
}

/* Minicursos: garante a marca escura sobre o cabeçalho claro. */
.nav-logo-img.nav-logo-on-light{
  filter:brightness(0) drop-shadow(0 10px 26px rgba(22,103,67,.1)) !important;
}

/* Chamada de Trabalhos: duas modalidades — grid centralizado e bem dimensionado. */
#submissoes .sub-grid{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  max-width:760px;
  margin-left:auto !important;
  margin-right:auto !important;
  justify-content:center;
}
@media (max-width:700px){
  #submissoes .sub-grid{
    grid-template-columns:1fr !important;
    max-width:420px;
  }
}

/* Título do card: sobreposto e centralizado exatamente na faixa (156px, igual às atividades). */
#submissoes .sub-grid .sub-card{
  padding-top:172px !important;   /* faixa (156px) + respiro (16px) */
}
#submissoes .sub-grid .sub-card h3{
  position:absolute !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  height:156px !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 28px !important;
  box-sizing:border-box !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:center !important;
  text-align:left !important;
  z-index:4 !important;
}
#submissoes .sub-grid .sub-card h3 .sub-title-main{
  white-space:nowrap !important;
  display:block !important;
}
#submissoes .sub-grid .sub-card h3 .sub-sub{
  display:block !important;
  margin-top:4px !important;
  font-size:.58em !important;
  font-weight:600 !important;
  letter-spacing:.005em !important;
  opacity:.92 !important;
}
#submissoes .sub-grid .sub-card > p{
  margin-top:0 !important;
}

/* Links dentro das listas das chamadas: aparência clara de hyperlink. */
.call-list a{
  color:var(--sematec-blue,#0b63f6) !important;
  -webkit-text-fill-color:var(--sematec-blue,#0b63f6) !important;
  text-decoration:underline !important;
  text-underline-offset:2px !important;
  text-decoration-thickness:1px !important;
  font-weight:600 !important;
  transition:color .2s !important;
}
.call-list a:hover{
  color:#1292ff !important;
  -webkit-text-fill-color:#1292ff !important;
}

/* Card de Minicurso/Oficinas: bullets logo abaixo do texto; só data e botão ficam embaixo. */
#submissoes .sub-grid .sub-cyan ul{
  margin-top:0 !important;
}
#submissoes .sub-grid .sub-cyan .sub-deadline{
  margin-top:auto !important;
}

/* ===== Subtítulo do hero de chamada (ex.: "Short paper" abaixo de "Artigo curto") ===== */
.call-hero .call-subtitle{
  max-width:none;
  margin:-12px 0 0;
  font-size:clamp(1.3rem,3.4vw,2.4rem);
  font-weight:500;
  line-height:1.15;
  letter-spacing:.01em;
  color:rgba(255,255,255,.92);
}

/* ===== Link inline clássico (azul + sublinhado) dentro do conteúdo de chamadas ===== */
.call-content .inline-link{
  color:#1565d8;
  text-decoration:underline;
  text-underline-offset:2px;
  font-weight:600;
  transition:color .18s ease;
}
.call-content .inline-link:hover,
.call-content .inline-link:focus-visible{
  color:#0d47a1;
  text-decoration:underline;
}

/* ===== Comitê Científico: cards uniformes, label acima e e-mail (preto) abaixo ===== */
.sci-committee{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin:0 0 48px;
}
.sci-member{
  display:flex;
  align-items:center;
  gap:14px;
  padding:14px 16px;
  border:1px solid var(--sematec-line, rgba(17,108,212,.16));
  border-radius:10px;
  background:rgba(255,255,255,.9);
  box-shadow:0 12px 30px rgba(6,24,43,.07);
}
.sci-member-photo{
  width:52px;
  height:52px;
  flex:0 0 auto;
  border-radius:50%;
  background:var(--sematec-gradient-soft, linear-gradient(135deg, rgba(11,99,246,.12), rgba(22,214,163,.14)));
  border:1px solid var(--sematec-line, rgba(17,108,212,.16));
}
.sci-member-photo img{
  display:block;
  width:100%;
  height:100%;
  border-radius:50%;
  object-fit:cover;
  object-position:center;
}
.sci-member-info{
  display:flex;
  flex-direction:column;
  gap:2px;
  min-width:0;
}
.sci-member-info h4{
  margin:0;
  color:var(--sematec-navy, #06182b);
  font-size:.95rem;
  font-weight:750;
  line-height:1.25;
}
.sci-member-label{
  margin:6px 0 0 !important;
  color:var(--muted);
  font-size:.72rem;
  font-weight:600;
  line-height:1.2;
}
.sci-member-email{
  color:#1565d8;
  font-size:.84rem;
  font-weight:600;
  line-height:1.3;
  text-decoration:none;
  word-break:break-word;
}
.sci-member-email:hover{
  text-decoration:underline;
}
@media (max-width:720px){
  .sci-committee{
    grid-template-columns:1fr;
  }
}

/* Chamadas de Trabalho: botões "Ver chamada" (home) e "Submeter" (páginas de chamada)
   no mesmo degradê azul→verde da marca (--sematec-gradient), inclusive no hover. */
body.home-page #submissoes .sub-link,
body.home-page #submissoes .sub-link::before,
body.home-page #submissoes .sub-card:hover .sub-link,
body.home-page #submissoes .sub-card:hover .sub-link::before,
body.subpage .call-side .btn-glow,
body.subpage .call-side .btn-glow::before{
  background:var(--sematec-gradient) !important;
}
