/* ─── TEMA: VARIÁVEIS ────────────────────────────────────── */
:root{
  --c-bg:       #05060a;
  --c-bg2:      #111318;
  --c-bg3:      #161820;
  --c-bg4:      #0a0c10;
  --c-text:     #eae6de;
  --c-text2:    #9c9890;
  --c-text3:    #555250;
  --c-gold:     #c8a84b;
  --c-gold-h:   #e8cc6e;
  --c-border:   rgba(255,255,255,.11);
  --c-border2:  rgba(255,255,255,.06);
  --c-nav-bg:   rgba(10,11,16,.82);
  --c-nav-b:    rgba(255,255,255,.1);
  --c-tg-btn:   rgba(10,11,16,.62);
}

[data-theme="light"]{
  --c-bg:       #f2ede4;
  --c-bg2:      #e8e2d8;
  --c-bg3:      #dfd9cf;
  --c-bg4:      #ede8de;
  --c-text:     #1a1814;
  --c-text2:    #5a5650;
  --c-text3:    #9a9590;
  --c-gold:     #9a7a28;
  --c-gold-h:   #7a5e18;
  --c-border:   rgba(0,0,0,.12);
  --c-border2:  rgba(0,0,0,.07);
  --c-nav-bg:   rgba(240,235,226,.92);
  --c-nav-b:    rgba(0,0,0,.12);
  --c-tg-btn:   rgba(240,235,226,.82);
}

/* ─── RESET ─────────────────────────────────────────────── */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html,body{width:100vw;height:100vh;overflow:hidden;background:var(--c-bg);color:var(--c-text);font-family:'DM Sans',sans-serif;}

/* ─── CANVAS (SEMPRE ATRAS, NUNCA BLOQUEIA) ─────────────── */
#cvBG,#cvPT{
  position:fixed;inset:0;
  width:100%;height:100%;
  pointer-events:none !important;  /* NUNCA bloqueia cliques */
  z-index:1;
}
#cvBG{z-index:1;}
#cvPT{z-index:2;}

/* ─── OVERLAY URGENCIA ───────────────────────────────────── */
#ovlUrg{
  position:fixed;inset:0;z-index:3;
  pointer-events:none !important;
  opacity:0;transition:opacity .4s;
}

/* ─── TELAS (acima dos canvas) ───────────────────────────── */
.tela{
  position:fixed;inset:0;
  z-index:10;                /* acima dos canvas */
  display:none;              /* oculta por padrao */
}
.tela.ativa{display:flex;}   /* visivel = flex */

/* ─── DECO (puramente visual) ────────────────────────────── */
.deco{position:fixed;pointer-events:none;z-index:4;}
.hl{left:0;right:0;height:1px;background:linear-gradient(to right,transparent,rgba(200,168,75,.18),transparent);}
.hl-t{top:64px;}.hl-b{bottom:64px;}
.vl{top:0;bottom:0;width:1px;background:linear-gradient(to bottom,transparent,rgba(200,168,75,.08),transparent);}
.vl-l{left:52px;}.vl-r{right:52px;}
[data-theme="light"] .hl{background:linear-gradient(to right,transparent,rgba(154,122,40,.22),transparent);}
[data-theme="light"] .vl{background:linear-gradient(to bottom,transparent,rgba(154,122,40,.12),transparent);}

/* ═══════════════════════════════════════════════════════════
   TELA 1 — ABERTURA
═══════════════════════════════════════════════════════════ */
#telaAb{
  flex-direction:column;
  align-items:stretch;
}

/* topo */
.ab-top{
  height:64px;flex-shrink:0;
  display:flex;align-items:center;justify-content:space-between;
  padding:0 clamp(20px,4vw,48px);
  background:linear-gradient(to bottom,rgba(5,6,10,.9),transparent);
}
[data-theme="light"] .ab-top{background:linear-gradient(to bottom,rgba(242,237,228,.9),transparent);}
.logo-row{display:flex;align-items:center;gap:10px;}
.logo-dot{
  width:8px;height:8px;border-radius:50%;
  background:var(--c-gold);flex-shrink:0;
  box-shadow:0 0 10px var(--c-gold),0 0 20px rgba(200,168,75,.4);
  animation:dotPulse 2s ease-in-out infinite;
}
@keyframes dotPulse{
  0%,100%{box-shadow:0 0 8px var(--c-gold),0 0 16px rgba(200,168,75,.3);}
  50%{box-shadow:0 0 22px var(--c-gold),0 0 44px rgba(200,168,75,.6);}
}
.logo-txt{font-family:'JetBrains Mono',monospace;font-size:clamp(10px,1.05vw,12px);letter-spacing:4px;color:var(--c-gold);text-transform:uppercase;}
.ab-top-r{font-family:'JetBrains Mono',monospace;font-size:clamp(9px,.95vw,11px);letter-spacing:3px;color:var(--c-text3);text-transform:uppercase;}

/* stage central */
.ab-stage{
  flex:1;
  display:flex;flex-direction:column;
  align-items:center;justify-content:center;
  padding:8px clamp(20px,5vw,60px);
  overflow:hidden;
}

.ab-eyebrow{
  display:flex;align-items:center;gap:14px;
  font-family:'JetBrains Mono',monospace;font-size:clamp(10px,1.1vw,12px);
  letter-spacing:5px;color:var(--c-gold);text-transform:uppercase;
  margin-bottom:clamp(5px,1vh,14px);
  animation:fadeUp .9s ease .4s both;
}
.ab-eyebrow::before,.ab-eyebrow::after{content:'';width:clamp(18px,3vw,40px);height:1px;background:var(--c-gold);opacity:.5;}

.ab-nome{text-align:center;margin-bottom:clamp(2px,.5vh,6px);animation:fadeUp .9s ease .6s both;}
.ab-nome span{display:block;font-family:'Cormorant Garamond',serif;letter-spacing:-2px;line-height:.92;}
.ab-nome .n1{font-weight:700;font-size:clamp(40px,9.5vw,118px);color:var(--c-text);}
.ab-nome .n2{font-weight:300;font-style:italic;font-size:clamp(40px,9.5vw,118px);color:var(--c-gold);line-height:1;}

.ab-sub{
  font-family:'JetBrains Mono',monospace;
  font-size:clamp(9px,1vw,12px);letter-spacing:clamp(3px,.4vw,6px);
  color:var(--c-text2);text-transform:uppercase;text-align:center;
  margin-bottom:clamp(8px,1.8vh,22px);
  animation:fadeUp .9s ease .8s both;
}

/* anel contador */
.anel-wrap{
  position:relative;
  width:clamp(110px,18vh,200px);
  height:clamp(110px,18vh,200px);
  margin-bottom:clamp(6px,1.4vh,16px);
  flex-shrink:0;
  animation:fadeUp .9s ease 1s both;
}
.anel-svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg);}
.r-bg  {fill:none;stroke:rgba(0,0,0,.05);stroke-width:3;}
[data-theme="light"] .r-bg{stroke:rgba(0,0,0,.1);}
.r-deco{fill:none;stroke:rgba(200,168,75,.1);stroke-width:1;stroke-dasharray:3 8;}
.r-glow{fill:none;stroke:var(--c-gold);stroke-width:10;stroke-linecap:round;stroke-dasharray:754;stroke-dashoffset:0;opacity:.07;transition:stroke-dashoffset 1s linear;}
.r-prog{fill:none;stroke:var(--c-gold);stroke-width:3;stroke-linecap:round;stroke-dasharray:754;stroke-dashoffset:0;transition:stroke-dashoffset 1s linear,stroke .4s ease;filter:drop-shadow(0 0 8px rgba(200,168,75,.8));}
.anel-inner{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;}
.r-num{font-family:'Cormorant Garamond',serif;font-size:clamp(24px,5vh,64px);font-weight:300;color:var(--c-text);line-height:1;letter-spacing:-2px;transition:color .3s;}
.r-unit{font-family:'JetBrains Mono',monospace;font-size:clamp(8px,.9vh,11px);letter-spacing:3px;color:var(--c-text3);text-transform:uppercase;margin-top:4px;}

/* status */
.ab-status{
  font-family:'JetBrains Mono',monospace;
  font-size:clamp(10px,1.1vh,14px);letter-spacing:3px;
  color:var(--c-text2);text-align:center;text-transform:uppercase;line-height:1.8;
  margin-bottom:clamp(10px,2.2vh,26px);
  animation:fadeUp .9s ease 1.2s both;
}
.ab-status .hl{color:var(--c-gold);font-weight:600;}

/* botoes — ISOLADOS, z-index explicito */
.ab-btns{
  display:flex;gap:clamp(8px,1.5vw,14px);
  flex-wrap:wrap;justify-content:center;
  animation:fadeUp .9s ease 1.4s both;
  position:relative;z-index:20;   /* garante acima de tudo */
}
.abtn{
  font-family:'JetBrains Mono',monospace;
  font-size:clamp(10px,1vw,12px);
  letter-spacing:3px;text-transform:uppercase;
  padding:clamp(10px,1.3vh,14px) clamp(14px,2vw,26px);
  border:1px solid;cursor:pointer;white-space:nowrap;
  transition:all .2s;
  position:relative;z-index:20;
}
.abtn:focus{outline:2px solid var(--c-gold);}
.btn-iniciar{background:var(--c-gold);color:var(--c-bg);border-color:var(--c-gold);font-weight:600;}
.btn-iniciar:hover:not(:disabled){background:var(--c-gold-h);border-color:var(--c-gold-h);transform:translateY(-1px);}
.btn-iniciar:disabled{opacity:.5;cursor:not-allowed;}
.btn-reset{background:transparent;color:var(--c-text2);border-color:var(--c-border);}
.btn-reset:hover{color:var(--c-gold);border-color:rgba(200,168,75,.22);background:rgba(200,168,75,.1);}
.btn-skip{background:transparent;color:var(--c-text3);border-color:var(--c-border2);}
.btn-skip:hover{color:#3ecfcf;border-color:rgba(62,207,207,.3);background:rgba(62,207,207,.08);}

/* rodape */
.ab-rodape{
  height:64px;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
  gap:clamp(14px,4vw,48px);
  background:linear-gradient(to top,rgba(5,6,10,.95),transparent);
  pointer-events:none;
}
[data-theme="light"] .ab-rodape{background:linear-gradient(to top,rgba(242,237,228,.95),transparent);}
.b-item{display:flex;flex-direction:column;align-items:center;gap:3px;}
.b-lbl{font-family:'JetBrains Mono',monospace;font-size:clamp(8px,.7vw,9px);letter-spacing:3px;color:var(--c-text3);text-transform:uppercase;}
.b-val{font-family:'Cormorant Garamond',serif;font-size:clamp(13px,1.5vw,18px);font-weight:300;color:var(--c-text2);}
.b-sep{width:1px;height:22px;background:rgba(200,168,75,.2);}

/* ═══════════════════════════════════════════════════════════
   TELA 2 — LAUNCH (ao zerar)
═══════════════════════════════════════════════════════════ */
#telaLaunch{
  z-index:15;
  flex-direction:column;align-items:center;justify-content:center;
  background:var(--c-bg);
  opacity:0;transition:opacity .6s ease;
}
#telaLaunch.ativa{display:flex !important;}
#telaLaunch.visivel{opacity:1;}

.launch-titulo{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(48px,11vw,130px);
  font-weight:300;color:var(--c-text);text-align:center;line-height:.95;
}
.launch-titulo em{color:var(--c-gold);font-style:italic;}

.launch-sub{
  font-family:'JetBrains Mono',monospace;
  font-size:clamp(11px,1.2vw,14px);
  letter-spacing:6px;color:var(--c-text3);text-transform:uppercase;margin-top:24px;
}

.launch-barra{
  margin-top:40px;width:clamp(200px,30vw,400px);height:2px;
  background:var(--c-border2);border-radius:1px;overflow:hidden;
}
.launch-fill{
  height:100%;width:0;
  background:linear-gradient(to right,var(--c-gold),var(--c-gold-h));
  transition:width linear;
  border-radius:1px;
}

/* ═══════════════════════════════════════════════════════════
   TELA 3 — SLIDES
═══════════════════════════════════════════════════════════ */
#telaSlides{z-index:10;background:var(--c-bg);}

.deck{width:100vw;height:100vh;position:relative;}

.slide{
  position:absolute;inset:0;
  display:flex;flex-direction:column;
  justify-content:center;align-items:flex-start;
  padding:clamp(36px,5.5vh,76px) clamp(36px,7vw,96px);
  opacity:0;pointer-events:none;
  transition:opacity .42s ease,transform .42s ease;
  transform:translateX(28px);overflow:hidden;
}
.slide.ativo{opacity:1;pointer-events:all;transform:translateX(0);}
.slide.saindo{opacity:0;transform:translateX(-28px);}
.slide.centro{align-items:center;text-align:center;}

/* decoracoes de slide */
.sg{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.011) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.011) 1px,transparent 1px);background-size:54px 54px;z-index:0;pointer-events:none;}
[data-theme="light"] .sg{background-image:linear-gradient(rgba(0,0,0,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.025) 1px,transparent 1px);}
.so{position:absolute;border-radius:50%;filter:blur(60px);z-index:0;pointer-events:none;}
.so1{width:50vw;height:50vw;background:radial-gradient(circle,rgba(200,168,75,.05) 0%,transparent 70%);top:-15vw;right:-10vw;}
.so2{width:40vw;height:40vw;background:radial-gradient(circle,rgba(62,207,207,.04) 0%,transparent 70%);bottom:-12vw;left:-8vw;}
[data-theme="light"] .so1{background:radial-gradient(circle,rgba(154,122,40,.07) 0%,transparent 70%);}
[data-theme="light"] .so2{background:radial-gradient(circle,rgba(32,160,160,.05) 0%,transparent 70%);}
.svl{position:absolute;top:0;bottom:0;left:clamp(24px,4.5vw,68px);width:1px;background:linear-gradient(to bottom,transparent,rgba(200,168,75,.22) 20%,rgba(200,168,75,.22) 80%,transparent);opacity:.35;z-index:0;pointer-events:none;}
[data-theme="light"] .svl{background:linear-gradient(to bottom,transparent,rgba(154,122,40,.28) 20%,rgba(154,122,40,.28) 80%,transparent);}
.corb{position:absolute;width:60vw;height:60vw;border-radius:50%;background:radial-gradient(circle,rgba(200,168,75,.06) 0%,transparent 70%);top:50%;left:50%;transform:translate(-50%,-50%);filter:blur(40px);z-index:0;pointer-events:none;animation:capaGlow 4s ease-in-out infinite;}
[data-theme="light"] .corb{background:radial-gradient(circle,rgba(154,122,40,.08) 0%,transparent 70%);}
@keyframes capaGlow{0%,100%{opacity:.7;}50%{opacity:1;}}
.sc{position:relative;z-index:1;width:100%;}

/* tipografia slides */
.ey{display:inline-flex;align-items:center;gap:10px;font-family:'JetBrains Mono',monospace;font-size:clamp(10px,1vw,12px);letter-spacing:4px;color:var(--c-gold);text-transform:uppercase;margin-bottom:clamp(10px,2vh,22px);}
.ey::before{content:'';width:clamp(18px,2.2vw,30px);height:1px;background:var(--c-gold);opacity:.6;}
.slt{font-family:'Cormorant Garamond',serif;font-size:clamp(32px,5.4vw,72px);font-weight:300;line-height:1.0;letter-spacing:-.5px;color:var(--c-text);margin-bottom:clamp(10px,2.2vh,26px);}
.slt em{font-style:italic;color:var(--c-gold);}
.slt strong{font-weight:700;color:var(--c-text);}
.ssub{font-size:clamp(14px,1.45vw,19px);color:var(--c-text2);font-weight:300;line-height:1.75;max-width:720px;}
.ssub strong{color:var(--c-text);font-weight:500;}

/* stat cards */
.sg3{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(8px,1.4vw,22px);width:100%;margin-top:clamp(18px,3.5vh,44px);}
.sc3{background:var(--c-bg2);border:1px solid var(--c-border);padding:clamp(14px,2.2vh,28px) clamp(12px,1.8vw,24px);position:relative;overflow:hidden;}
.sc3::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--c-gold);opacity:.5;}
.sc3.d::before{background:#e05c5c;opacity:.7;}.sc3.ok::before{background:#4fb87a;opacity:.5;}.sc3.cy::before{background:#3ecfcf;opacity:.5;}
.sn{font-family:'Cormorant Garamond',serif;font-size:clamp(30px,3.5vw,54px);font-weight:700;color:var(--c-gold);line-height:1;margin-bottom:7px;}
.sc3.d .sn{color:#e05c5c;}.sc3.ok .sn{color:#4fb87a;}.sc3.cy .sn{color:#3ecfcf;}
.slbl{font-size:clamp(12px,1.15vw,15px);color:var(--c-text2);font-weight:300;line-height:1.5;}

/* bullet list */
.bl{list-style:none;margin-top:clamp(12px,2.5vh,28px);display:flex;flex-direction:column;gap:clamp(7px,1.3vh,14px);}
.bl li{display:flex;align-items:flex-start;gap:12px;font-size:clamp(14px,1.45vw,18px);color:var(--c-text2);font-weight:300;line-height:1.5;}
.bl li strong{color:var(--c-text);font-weight:500;}
.bi{width:22px;height:22px;border-radius:50%;flex-shrink:0;margin-top:2px;display:flex;align-items:center;justify-content:center;font-size:11px;background:rgba(200,168,75,.1);border:1px solid rgba(200,168,75,.22);color:var(--c-gold);}
.bi.x{background:rgba(224,92,92,.1);border-color:rgba(224,92,92,.25);color:#e05c5c;}
.bi.ok{background:rgba(79,184,122,.1);border-color:rgba(79,184,122,.25);color:#4fb87a;}

/* two col */
.tc{display:grid;grid-template-columns:1fr 1fr;gap:clamp(10px,1.8vw,26px);margin-top:clamp(14px,2.8vh,32px);width:100%;}
.cc{background:var(--c-bg2);border:1px solid var(--c-border);padding:clamp(12px,1.8vh,24px);}
.cct{font-family:'JetBrains Mono',monospace;font-size:clamp(9px,.85vw,11px);letter-spacing:3px;color:var(--c-text3);text-transform:uppercase;margin-bottom:clamp(7px,1.3vh,14px);padding-bottom:9px;border-bottom:1px solid var(--c-border2);}
.cc.d .cct{color:#e05c5c;}.cc.ok .cct{color:#4fb87a;}
.ci{font-size:clamp(13px,1.25vw,15px);color:var(--c-text2);font-weight:300;line-height:1.55;padding:6px 0;border-bottom:1px solid var(--c-border2);display:flex;align-items:flex-start;gap:9px;}
.ci:last-child{border-bottom:none;}

/* compare table */
.ct{width:100%;border-collapse:collapse;margin-top:clamp(14px,2.8vh,32px);}
.ct th{font-family:'JetBrains Mono',monospace;font-size:clamp(9px,.85vw,11px);letter-spacing:3px;text-transform:uppercase;padding:clamp(9px,1.4vh,15px) clamp(9px,1.4vw,18px);text-align:left;border-bottom:1px solid var(--c-border);color:var(--c-gold);}
.ct th:first-child{color:var(--c-text3);}
.ct td{padding:clamp(9px,1.4vh,15px) clamp(9px,1.4vw,18px);font-size:clamp(13px,1.25vw,15px);border-bottom:1px solid var(--c-border2);color:var(--c-text2);font-weight:300;}
.ct td:first-child{font-family:'JetBrains Mono',monospace;font-size:clamp(10px,.95vw,12px);color:var(--c-text3);}
.ct td.bad{color:#e05c5c;}.ct td.good{color:#4fb87a;}

/* prompt box */
.plbl{font-family:'JetBrains Mono',monospace;font-size:clamp(9px,.9vw,11px);letter-spacing:3px;color:var(--c-text3);text-transform:uppercase;margin-bottom:6px;margin-top:clamp(14px,2.2vh,24px);display:flex;align-items:center;gap:8px;}
.plbl::after{content:'';flex:1;height:1px;background:var(--c-border2);}
.pb{background:var(--c-bg4);border:1px solid var(--c-border);border-left:3px solid var(--c-gold);padding:clamp(12px,1.8vh,22px) clamp(14px,1.8vw,24px);font-family:'JetBrains Mono',monospace;font-size:clamp(12px,1.05vw,14px);line-height:1.85;color:var(--c-text2);white-space:pre-wrap;}
.pb.bad{border-left-color:#e05c5c;}

/* anatomy */
.ag{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(7px,1.1vw,14px);margin-top:clamp(14px,2.8vh,32px);width:100%;}
.ai{background:var(--c-bg2);border:1px solid var(--c-border);padding:clamp(11px,1.7vh,20px);}
.ai:nth-child(6){border-color:rgba(200,168,75,.22);}
.ai:nth-child(6)::before{content:'';display:block;height:2px;background:var(--c-gold);opacity:.5;margin-bottom:12px;}
.an{font-family:'JetBrains Mono',monospace;font-size:clamp(9px,.9vw,11px);color:var(--c-gold);letter-spacing:2px;margin-bottom:7px;opacity:.7;}
.aname{font-size:clamp(14px,1.25vw,16px);font-weight:600;color:var(--c-text);margin-bottom:4px;}
.adesc{font-size:clamp(12px,1.05vw,13px);color:var(--c-text2);font-weight:300;line-height:1.55;}

/* memory box */
.mb{background:var(--c-bg3);border:1px solid rgba(200,168,75,.22);padding:clamp(14px,2.2vh,26px);margin-top:clamp(12px,2.2vh,24px);max-width:700px;position:relative;}
.mb::before{content:'CLAUDE.MD';position:absolute;top:-9px;left:18px;background:var(--c-bg);padding:0 8px;font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:3px;color:var(--c-gold);}
.ml{font-family:'JetBrains Mono',monospace;font-size:clamp(12px,1.05vw,14px);color:var(--c-text2);line-height:2.1;font-weight:300;}
.ml .k{color:var(--c-gold);}.ml .v{color:#3ecfcf;}.ml .c{color:var(--c-text3);}

/* tools grid */
.tg{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(7px,1.1vw,14px);margin-top:clamp(12px,2.5vh,28px);width:100%;}
.tc2{background:var(--c-bg2);border:1px solid var(--c-border);padding:clamp(12px,1.8vh,22px);display:flex;gap:clamp(9px,1.3vw,16px);align-items:flex-start;}
.ticon{font-size:clamp(18px,2.2vw,26px);flex-shrink:0;margin-top:2px;}
.tname{font-size:clamp(14px,1.25vw,16px);font-weight:500;color:var(--c-text);margin-bottom:3px;}
.tdesc{font-size:clamp(12px,1.05vw,13px);color:var(--c-text2);font-weight:300;line-height:1.55;}
.tbadge{display:inline-block;margin-top:5px;font-family:'JetBrains Mono',monospace;font-size:clamp(9px,.8vw,10px);letter-spacing:2px;padding:2px 9px;text-transform:uppercase;}
.bg{background:rgba(200,168,75,.1);color:var(--c-gold);border:1px solid rgba(200,168,75,.22);}
.bok{background:rgba(79,184,122,.08);color:#4fb87a;border:1px solid rgba(79,184,122,.2);}
.bmut{background:var(--c-border2);color:var(--c-text3);border:1px solid var(--c-border2);}

/* uses grid */
.ug{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(7px,1.1vw,14px);margin-top:clamp(12px,2.5vh,28px);width:100%;}
.ui{background:var(--c-bg2);border:1px solid var(--c-border);padding:clamp(12px,1.8vh,20px) clamp(11px,1.4vw,18px);display:flex;align-items:flex-start;gap:11px;}
.ue{font-size:clamp(18px,2.1vw,23px);flex-shrink:0;}
.utxt{font-size:clamp(12px,1.05vw,13px);color:var(--c-text2);font-weight:300;line-height:1.55;}
.utxt strong{color:var(--c-text);font-weight:500;display:block;margin-bottom:2px;}

/* capa */
.ctitle{font-family:'Cormorant Garamond',serif;font-size:clamp(44px,8.4vw,112px);font-weight:300;line-height:.95;letter-spacing:-1px;margin-bottom:8px;}
.ctitle em{font-style:italic;display:block;color:var(--c-gold);}
.ctitle strong{font-weight:700;display:block;color:var(--c-text);}
.csub{font-family:'JetBrains Mono',monospace;font-size:clamp(10px,1.05vw,12px);letter-spacing:5px;color:var(--c-text3);text-transform:uppercase;margin-bottom:clamp(16px,3vh,36px);}
.cdiv{width:44px;height:1px;background:rgba(200,168,75,.22);margin:0 auto clamp(10px,2vh,24px);}
.cauth{display:flex;flex-direction:column;align-items:center;gap:5px;}
.cname{font-family:'Cormorant Garamond',serif;font-size:clamp(17px,1.9vw,23px);font-weight:400;color:var(--c-text);}
.crole{font-family:'JetBrains Mono',monospace;font-size:clamp(9px,.9vw,11px);letter-spacing:3px;color:var(--c-text3);text-transform:uppercase;}
.ctag{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(200,168,75,.22);padding:clamp(6px,1vh,10px) clamp(13px,1.8vw,20px);font-family:'JetBrains Mono',monospace;font-size:clamp(9px,.95vw,11px);letter-spacing:3px;color:var(--c-gold);text-transform:uppercase;margin-top:clamp(14px,2.8vh,28px);}

/* big quote */
.bq{font-family:'Cormorant Garamond',serif;font-size:clamp(24px,3.8vw,54px);font-weight:300;line-height:1.2;color:var(--c-text);border-left:3px solid var(--c-gold);padding-left:clamp(18px,2.5vw,36px);margin:clamp(14px,2.8vh,32px) 0;max-width:900px;}
.bq em{color:var(--c-gold);font-style:italic;}

/* cta */
.ctag3{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(9px,1.4vw,18px);margin-top:clamp(14px,2.8vh,32px);width:100%;}
.ccard{background:var(--c-bg2);border:1px solid var(--c-border);padding:clamp(13px,1.8vh,24px) clamp(11px,1.6vw,20px);text-align:center;position:relative;overflow:hidden;}
.ccard.feat{border-color:rgba(200,168,75,.22);background:linear-gradient(135deg,var(--c-bg2),rgba(200,168,75,.04));}
.ccard.feat::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--c-gold);}
.cprice{font-family:'Cormorant Garamond',serif;font-size:clamp(26px,2.8vw,38px);font-weight:700;color:var(--c-gold);margin-bottom:3px;}
.cplan{font-family:'JetBrains Mono',monospace;font-size:clamp(9px,.9vw,11px);letter-spacing:3px;color:var(--c-text3);text-transform:uppercase;margin-bottom:clamp(10px,1.8vh,16px);}
.cfeat{font-size:clamp(12px,1.05vw,13px);color:var(--c-text2);font-weight:300;padding:5px 0;border-bottom:1px solid var(--c-border2);text-align:left;display:flex;gap:7px;}
.cfeat:last-of-type{border-bottom:none;}

/* QR code slide 30 */
.demo-30{display:flex;flex-direction:column;align-items:flex-start;max-width:1120px;margin:0 auto;}
.demo-30-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(160px,.8fr);gap:clamp(18px,3vw,44px);align-items:center;width:100%;max-width:1040px;margin-top:clamp(6px,1.5vh,18px);}
.demo-30-copy{display:flex;flex-direction:column;align-items:flex-start;text-align:left;min-width:0;max-width:760px;}
.demo-30-qr{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;}
.demo-30-copy .ctag{margin-right:10px;}
.qr-block{display:flex;flex-direction:column;align-items:center;gap:10px;margin:clamp(18px,3vh,28px) 0 clamp(16px,2.8vh,26px);}
.qr-card{
  width:clamp(128px,12vw,178px);
  aspect-ratio:1 / 1;
  padding:8px;
  border:1px solid rgba(200,168,75,.18);
  background:rgba(255,255,255,.96);
  box-shadow:0 14px 34px rgba(0,0,0,.28), 0 0 0 1px rgba(255,255,255,.04) inset;
  cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.qr-card:hover{transform:translateY(-2px) scale(1.01);box-shadow:0 20px 46px rgba(0,0,0,.34), 0 0 0 1px rgba(200,168,75,.14) inset;border-color:rgba(200,168,75,.35);}
.qr-card:focus{outline:2px solid #c8a84b;outline-offset:4px;}
.qr-img{display:block;width:100%;height:100%;object-fit:contain;image-rendering:pixelated;}
.qr-caption{font-family:'JetBrains Mono',monospace;font-size:clamp(9px,.85vw,11px);letter-spacing:3px;text-transform:uppercase;color:var(--c-text3);}

/* QR modal */
.qr-modal{
  position:fixed;
  inset:0;
  z-index:200;
  display:none;
  align-items:center;
  justify-content:center;
  background:rgba(5,6,10,.88);
  backdrop-filter:blur(12px);
  padding:24px;
}
[data-theme="light"] .qr-modal{background:rgba(242,237,228,.88);}
.qr-modal.aberta{display:flex;}
.qr-modal-img{
  width:min(72vw,560px);
  aspect-ratio:1 / 1;
  object-fit:contain;
  background:#fff;
  border:1px solid rgba(200,168,75,.22);
  box-shadow:0 28px 90px rgba(0,0,0,.55);
  padding:18px;
  cursor:pointer;
}

@media (max-width: 900px){
  .demo-30-grid{grid-template-columns:1fr;justify-items:center;}
  .demo-30-copy{align-items:center;text-align:center;max-width:100%;}
  .demo-30-copy .ctag{margin-right:0;}
  .demo-30-qr{margin-top:clamp(10px,2vh,20px);}
}

/* ═══════════════════════════════════════════════════════════
   NAV COLAPSAVEL
═══════════════════════════════════════════════════════════ */
#navToggle{
  position:fixed;
  right:clamp(12px,2.2vw,28px);
  bottom:clamp(10px,2vh,20px);
  left:auto;
  transform:none;
  z-index:100;
  width:clamp(30px,3.2vw,38px);
  height:clamp(30px,3.2vw,38px);
  background:var(--c-tg-btn);
  backdrop-filter:blur(12px);
  border:1px solid var(--c-nav-b);
  cursor:pointer;
  display:none;
  align-items:center;
  justify-content:center;
  font-size:clamp(12px,1.3vw,15px);
  color:var(--c-text2);
  transition:all .2s;
}
#navToggle:hover{color:var(--c-gold);border-color:rgba(200,168,75,.22);background:var(--c-nav-bg);}
#navToggle.vis{display:flex;}

#navBar{
  position:fixed;
  bottom:clamp(52px,7vh,70px);
  right:clamp(12px,2.2vw,28px);
  left:auto;
  transform:translateY(8px);
  z-index:99;
  display:flex;align-items:center;gap:clamp(5px,.9vw,10px);
  background:var(--c-nav-bg);backdrop-filter:blur(18px);
  border:1px solid var(--c-nav-b);
  padding:clamp(6px,.9vh,10px) clamp(9px,1.7vw,18px);
  box-shadow:0 8px 40px rgba(0,0,0,.18);
  opacity:0;pointer-events:none;
  transition:opacity .3s ease,transform .3s ease;
  white-space:nowrap;
  max-width:calc(100vw - 32px);
}
#navBar.aberto{opacity:1;pointer-events:all;transform:translateY(0);}
.nbtn{width:clamp(28px,3.2vw,36px);height:clamp(28px,3.2vw,36px);background:none;border:1px solid var(--c-border);color:var(--c-text2);font-size:clamp(13px,1.4vw,16px);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;}
.nbtn:hover{background:var(--c-bg3);color:var(--c-gold);border-color:rgba(200,168,75,.22);}
.ndots{display:flex;gap:clamp(3px,.4vw,5px);}
.ndot{width:clamp(4px,.45vw,5px);height:clamp(4px,.45vw,5px);border-radius:50%;background:var(--c-text3);transition:all .3s;cursor:pointer;}
.ndot.ativo{background:var(--c-gold);transform:scale(1.4);}
.nctr{font-family:'JetBrains Mono',monospace;font-size:clamp(10px,1vw,12px);color:var(--c-text3);min-width:42px;text-align:center;letter-spacing:1px;}
.nsep{width:1px;height:18px;background:var(--c-border);}
.nfs{font-family:'JetBrains Mono',monospace;font-size:clamp(9px,.85vw,11px);letter-spacing:2px;color:var(--c-text3);background:none;border:1px solid var(--c-border2);padding:4px clamp(6px,.9vw,9px);cursor:pointer;text-transform:uppercase;transition:all .15s;}
.nfs:hover{color:var(--c-gold);border-color:rgba(200,168,75,.22);}

/* botão toggle de tema na navbar */
.ntheme{font-family:'JetBrains Mono',monospace;font-size:clamp(9px,.85vw,11px);letter-spacing:1px;color:var(--c-text3);background:none;border:1px solid var(--c-border2);padding:4px clamp(5px,.8vw,8px);cursor:pointer;transition:all .15s;display:flex;align-items:center;gap:4px;}
.ntheme:hover{color:var(--c-gold);border-color:rgba(200,168,75,.22);}
.ntheme-icon{font-size:clamp(10px,1vw,13px);line-height:1;}

/* ─── KEYFRAMES ─────────────────────────────────────────── */
@keyframes fadeUp{from{opacity:0;transform:translateY(18px);}to{opacity:1;transform:translateY(0);}}
@keyframes gpulse{0%,100%{text-shadow:0 0 20px rgba(200,168,75,.5);}50%{text-shadow:0 0 60px rgba(200,168,75,1),0 0 100px rgba(200,168,75,.3);}}
@keyframes shake{0%,100%{transform:translateX(0);}25%{transform:translateX(-4px);}75%{transform:translateX(4px);}}
@keyframes lpulse{0%,100%{transform:scale(1);}50%{transform:scale(1.02);}}

/* ═══════════════════════════════════════════════════════════
   TEMA CLARO — overrides completos
   Estratégia: selecionar por ID de slide + classes específicas
   Nunca usar seletores genéricos demais que quebrem o dark
═══════════════════════════════════════════════════════════ */

/* Transição suave na troca de tema */
html{transition:background-color .35s ease,color .35s ease;}

/* Canvas: mais suave no tema claro */
[data-theme="light"] #cvBG,[data-theme="light"] #cvPT{opacity:.45;}

/* ── INLINE STYLES GLOBAIS (todos os slides) ─────────────── */
/* Texto branco/claro vira escuro */
[data-theme="light"] .slide [style*="color:#eae6de"]{color:var(--c-text) !important;}
[data-theme="light"] .slide [style*="color:#fff"]{color:var(--c-text) !important;}
[data-theme="light"] .slide [style*="color:white"]{color:var(--c-text) !important;}
[data-theme="light"] .slide [style*="color:#9c9890"]{color:var(--c-text2) !important;}
[data-theme="light"] .slide [style*="color:#a39f98"]{color:var(--c-text2) !important;}
[data-theme="light"] .slide [style*="color:#7b766f"]{color:var(--c-text2) !important;}
[data-theme="light"] .slide [style*="color:#6a6560"]{color:var(--c-text3) !important;}
[data-theme="light"] .slide [style*="color:#555250"]{color:var(--c-text3) !important;}
/* Separadores brancos viram escuros */
[data-theme="light"] .slide [style*="background:rgba(255,255,255,.11)"]{background:rgba(0,0,0,.12) !important;}
[data-theme="light"] .slide [style*="background:rgba(255,255,255,.1)"]{background:rgba(0,0,0,.1) !important;}
[data-theme="light"] .slide [style*="background:rgba(255,255,255,.06)"]{background:rgba(0,0,0,.06) !important;}

/* ── SLIDE 39 — PRICING (Imersão Layer Intelligence) ──────── */
[data-theme="light"] #s39 .pcard{
  background:var(--c-bg2) !important;
  border-color:var(--c-border) !important;
}
[data-theme="light"] #s39 .pcard.featured{
  background:linear-gradient(160deg,var(--c-bg2),rgba(154,122,40,.06)) !important;
  border-color:rgba(154,122,40,.45) !important;
}
[data-theme="light"] #s39 .plan-label{color:var(--c-text2) !important;}
[data-theme="light"] #s39 .price-old{color:var(--c-text3) !important;}
[data-theme="light"] #s39 .price-installment{color:var(--c-text3) !important;}
[data-theme="light"] #s39 .feat-item{color:var(--c-text2) !important;border-bottom-color:var(--c-border2) !important;}
[data-theme="light"] #s39 .prereq-block{background:var(--c-bg3) !important;border-color:var(--c-border) !important;}
[data-theme="light"] #s39 .prereq-title{color:var(--c-text3) !important;}
[data-theme="light"] #s39 .prereq-item{color:var(--c-text2) !important;}
[data-theme="light"] #s39 .prereq-note{color:var(--c-text3) !important;border-top-color:var(--c-border2) !important;}
[data-theme="light"] #s39 .arch-tag{color:var(--c-text2) !important;background:rgba(0,0,0,.04) !important;border-color:var(--c-border) !important;}
[data-theme="light"] #s39 [style*="color:#c8a84b"]{color:var(--c-gold) !important;}

/* ── SLIDE 31 — INFRAESTRUTURA (arch cards) ──────────────── */
[data-theme="light"] #s31 .arch-card,
[data-theme="light"] #s31 .arch-core,
[data-theme="light"] #s31 .arch-base{
  background:var(--c-bg2) !important;
  border-color:var(--c-border) !important;
}
[data-theme="light"] #s31 .arch-wrap{
  background:rgba(0,0,0,.03) !important;
  border-color:var(--c-border) !important;
}
[data-theme="light"] #s31 .arch-wrap::before{opacity:.06 !important;}
[data-theme="light"] #s31 .arch-title{color:var(--c-text) !important;}
[data-theme="light"] #s31 .arch-copy{color:var(--c-text2) !important;}
[data-theme="light"] #s31 .arch-tag{color:var(--c-text2) !important;background:rgba(0,0,0,.04) !important;border-color:var(--c-border) !important;}
[data-theme="light"] #s31 .arch-tag.gold{color:var(--c-gold) !important;}
[data-theme="light"] #s31 .arch-tag.green{color:#3a8f5e !important;}
[data-theme="light"] #s31 .arch-tag.cyan{color:#1a8f8f !important;}
[data-theme="light"] #s31 .arch-tag.purple{color:#7a3fbb !important;}
[data-theme="light"] #s31 .arch-pill{color:var(--c-gold) !important;background:rgba(154,122,40,.06) !important;border-color:rgba(154,122,40,.2) !important;}
[data-theme="light"] #s31 .arch-foot span{color:var(--c-text3) !important;background:rgba(0,0,0,.04) !important;border-color:var(--c-border2) !important;}
[data-theme="light"] #s31 .core-kicker{color:var(--c-gold) !important;}
[data-theme="light"] #s31 .core-title{color:var(--c-text) !important;}
[data-theme="light"] #s31 .core-sub{color:var(--c-text2) !important;}
[data-theme="light"] #s31 .core-pill{color:var(--c-text2) !important;background:rgba(0,0,0,.04) !important;border-color:var(--c-border) !important;}
[data-theme="light"] #s31 .base-title{color:var(--c-text) !important;}
[data-theme="light"] #s31 .base-copy{color:var(--c-text2) !important;}
[data-theme="light"] #s31 .arch-core{
  background:radial-gradient(circle at 50% 42%,rgba(154,122,40,.06) 0%,var(--c-bg3) 33%,var(--c-bg2) 78%) !important;
  border-color:rgba(154,122,40,.2) !important;
}
[data-theme="light"] #s31 .logo-row img,[data-theme="light"] #s31 .base-logos img{
  filter:invert(1) opacity(.6) !important;
}

/* ── SLIDE 41 — Q&A ──────────────────────────────────────── */
[data-theme="light"] #s41 .slt{color:var(--c-text) !important;}
[data-theme="light"] #s41 .qna-big{color:var(--c-text) !important;}
[data-theme="light"] #s41 .support{color:var(--c-text2) !important;}
[data-theme="light"] #s41 .contact-k{color:var(--c-text3) !important;}
[data-theme="light"] #s41 .contact-v{color:var(--c-text) !important;}
[data-theme="light"] #s41 .contact-v.gold{color:var(--c-gold) !important;}
[data-theme="light"] #s41 .contact-sep{background:rgba(0,0,0,.12) !important;}
[data-theme="light"] #s41 [style*="background:rgba(255,255,255,.11)"]{background:rgba(0,0,0,.12) !important;}

/* ── SLIDE 40 — FECHAMENTO ───────────────────────────────── */
[data-theme="light"] #s40 [style*="color:#eae6de"]{color:var(--c-text) !important;}
[data-theme="light"] #s40 [style*="background:rgba(255,255,255,.11)"]{background:rgba(0,0,0,.12) !important;}

/* ── SLIDES COM <style> SCOPED — PADRÃO PARA TODOS ───────── */
/* Cobre qualquer slide que defina essas classes internamente */
[data-theme="light"] .slide .arch-card,
[data-theme="light"] .slide .arch-base,
[data-theme="light"] .slide .pcard,
[data-theme="light"] .slide .case-card{
  background:var(--c-bg2) !important;
  border-color:var(--c-border) !important;
}
[data-theme="light"] .slide .arch-title,
[data-theme="light"] .slide .case-title,
[data-theme="light"] .slide .base-title,
[data-theme="light"] .slide .core-title{color:var(--c-text) !important;}
[data-theme="light"] .slide .arch-copy,
[data-theme="light"] .slide .case-copy,
[data-theme="light"] .slide .base-copy,
[data-theme="light"] .slide .core-sub,
[data-theme="light"] .slide .support{color:var(--c-text2) !important;}
[data-theme="light"] .slide .arch-kicker,
[data-theme="light"] .slide .case-kicker,
[data-theme="light"] .slide .prereq-title,
[data-theme="light"] .slide .contact-k{color:var(--c-text3) !important;}
[data-theme="light"] .slide .case-index,
[data-theme="light"] .slide .core-kicker{color:var(--c-gold) !important;}
[data-theme="light"] .slide .feat-item,
[data-theme="light"] .slide .prereq-item{color:var(--c-text2) !important;}
[data-theme="light"] .slide .feat-item{border-bottom-color:var(--c-border2) !important;}

/* ── SLIDE 42 — OBRIGADO (rede neural) ───────────────────── */
/* O slide usa id="s41" mesmo sendo o 42º — override pelo id real */
[data-theme="light"] #s41 .network-shell{
  background:linear-gradient(180deg, var(--c-bg2), var(--c-bg3)) !important;
  border-color:rgba(154,122,40,.22) !important;
  box-shadow:0 8px 32px rgba(0,0,0,.08) !important;
}
[data-theme="light"] #s41 .network-shell::before{
  background:radial-gradient(circle at 50% 45%, rgba(154,122,40,.07) 0%, transparent 60%) !important;
}
[data-theme="light"] #s41 .nn-labels{color:var(--c-text3) !important;}
[data-theme="light"] #s41 .slt{color:var(--c-text) !important;}
[data-theme="light"] #s41 .sub{color:var(--c-text2) !important;}
[data-theme="light"] #s41 .contact-k{color:var(--c-text3) !important;}
[data-theme="light"] #s41 .contact-v{color:var(--c-text) !important;}
[data-theme="light"] #s41 .footer-contacts{border-top-color:rgba(154,122,40,.18) !important;}

/* Slide 01 */
[data-theme="light"] #s1 [style*="color:#c8a84b"]{color:var(--c-gold) !important;}
[data-theme="light"] #s1 [style*="color:#6a6560"]{color:var(--c-text3) !important;}
