/* ==========================================================
   33º Congresso AutoData Perspectivas 2027 — ajustes
   ========================================================== */
:root{
  --grad-a:#0a8fd1;
  --grad-b:#00e3c2;
  --teal:#18c9c6;
  --ease:cubic-bezier(.2,.75,.2,1);
}

/* ---------- Topo ---------- */
.hero-copy{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:46rem;margin:0 auto;width:100%}
.hero-logo{width:clamp(170px,22vw,290px);height:auto;margin-bottom:clamp(1.25rem,2.4vw,2rem);filter:drop-shadow(0 18px 40px rgba(0,0,0,.35))}
.hero-date{display:flex;align-items:center;justify-content:center;gap:.55rem;font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--teal)}
.hero-title{margin:.9rem 0 0;font-family:Montserrat,Arial,sans-serif;font-weight:800;line-height:1.02;letter-spacing:-.01em;font-size:clamp(2.1rem,4.4vw,4.1rem);color:var(--hero-foreground)}
.hero-title span{display:block;background:linear-gradient(90deg,var(--grad-a),var(--grad-b));-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-lead{margin:1.1rem auto 0;max-width:40rem;font-size:clamp(.95rem,1.25vw,1.12rem);line-height:1.65;color:var(--hero-muted)}
.hero-meta{margin-top:1.5rem;display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem 1.75rem;font-size:.9rem;font-weight:600;color:var(--hero-foreground)}
.hero-meta span{display:inline-flex;align-items:center;gap:.5rem;text-align:left}
.hero-meta svg{color:var(--teal);flex-shrink:0}
.hero-meta small{display:block;font-weight:400;color:var(--hero-muted);font-size:.8rem}

/* Faixa de fotos no celular: mais baixa, a logo é o destaque */
@media (max-width:639px){
  .hero-mobile-photo{height:190px!important}
  .hero-copy{padding-top:.5rem}
  .hero-logo{width:min(62vw,230px);margin-top:-5.5rem;position:relative;z-index:2}
  .hero-date{font-size:.62rem;letter-spacing:.12em}
  .hero-meta{flex-direction:column;align-items:center;font-size:.85rem}
}

/* ---------- Programa ---------- */
.programa{background:var(--ink);color:var(--ink-foreground);padding:clamp(4rem,8vw,8rem) 0}
.programa .wrap{max-width:80rem;margin:0 auto;padding:0 1.25rem}
@media (min-width:1024px){.programa .wrap{padding:0 2rem}}
.prog-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1.5rem 3rem;margin-bottom:2.5rem}
.prog-head .eyebrow{color:var(--teal)}
.prog-head .section-title{margin-top:.75rem}
.prog-note{font-size:.8rem;line-height:1.6;color:var(--ink-muted);max-width:22rem}
.prog-note b{display:inline-flex;align-items:center;gap:.35rem;color:var(--ink-foreground);font-weight:600}

.tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--ink-line);border:1px solid var(--ink-line);margin-bottom:0}
.tab{appearance:none;border:0;background:var(--ink);color:var(--ink-muted);text-align:left;padding:1.1rem 1.25rem;cursor:pointer;font:inherit;display:flex;flex-direction:column;gap:.3rem;position:relative;transition:background .3s,color .3s}
.tab::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,var(--grad-a),var(--grad-b));transform:scaleX(0);transform-origin:0 50%;transition:transform .45s var(--ease)}
.tab[aria-selected="true"]{background:var(--ink-soft);color:var(--ink-foreground)}
.tab[aria-selected="true"]::after{transform:scaleX(1)}
.tab:hover{color:var(--ink-foreground)}
.tab:focus-visible{outline:2px solid var(--teal);outline-offset:-2px}
.tab-day{font-size:.7rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--teal)}
.tab-title{font-family:Montserrat,Arial,sans-serif;font-size:clamp(1rem,1.6vw,1.3rem);font-weight:700;line-height:1.25}

.day-panel{border:1px solid var(--ink-line);border-top:0}
.day-panel[hidden]{display:none}
.day-panel.enter{animation:dayIn .5s var(--ease)}
@keyframes dayIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.day-tools{display:flex;justify-content:flex-end;padding:.9rem 1.25rem;border-bottom:1px solid var(--ink-line)}
.ag-all{appearance:none;background:none;border:1px solid var(--ink-line);color:var(--ink-foreground);font:inherit;font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:.6rem 1rem;cursor:pointer;transition:background .25s,border-color .25s}
.ag-all:hover{border-color:var(--ink-foreground)}

.ag-item{border-bottom:1px solid var(--ink-line);transition:background .35s}
.ag-item:last-child,.ag-row:last-child{border-bottom:0}
.ag-item.open{background:var(--ink-soft)}
.ag-head{appearance:none;width:100%;background:none;border:0;color:inherit;font:inherit;text-align:left;cursor:pointer;
  display:grid;grid-template-columns:5.5rem 7.5rem minmax(0,1fr) 2.5rem;column-gap:1.25rem;align-items:center;padding:1.15rem 1.25rem}
.ag-head:focus-visible{outline:2px solid var(--teal);outline-offset:-2px}
.ag-time{font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:.95rem;font-weight:600;color:var(--ink-foreground)}
.badge{display:inline-flex;align-items:center;height:1.6rem;padding:0 .65rem;font-size:.62rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}
.badge.abertura{background:rgba(255,255,255,.08);color:var(--ink-foreground)}
.badge.painel{background:var(--primary);color:#fff}
.badge.palestra{background:var(--teal);color:#04121c}
.badge.mercado{background:transparent;color:var(--teal);box-shadow:inset 0 0 0 1px var(--teal)}
.ag-title{font-family:Montserrat,Arial,sans-serif;font-size:clamp(.95rem,1.3vw,1.1rem);font-weight:700;line-height:1.3;display:flex;flex-direction:column;gap:.3rem}
.ag-title small{font-family:inherit;font-size:.8rem;font-weight:500;color:var(--ink-muted)}
.ag-icon{position:relative;width:2.25rem;height:2.25rem;border:1px solid var(--ink-line);border-radius:50%;justify-self:end;transition:background .3s,border-color .3s,transform .45s var(--ease)}
.ag-icon::before,.ag-icon::after{content:"";position:absolute;left:50%;top:50%;width:.8rem;height:2px;margin:-1px 0 0 -.4rem;background:var(--ink-foreground);transition:transform .45s var(--ease)}
.ag-icon::after{transform:rotate(90deg)}
.ag-head:hover .ag-icon{border-color:var(--ink-foreground)}
.ag-item.open .ag-icon{background:var(--teal);border-color:var(--teal);transform:rotate(180deg)}
.ag-item.open .ag-icon::before,.ag-item.open .ag-icon::after{background:#04121c}
.ag-item.open .ag-icon::after{transform:rotate(0)}

.ag-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .5s var(--ease)}
.ag-item.open .ag-panel{grid-template-rows:1fr}
.ag-inner{overflow:hidden;min-height:0;padding:0 5.25rem 0 16.75rem}
.ag-inner>*{opacity:0;transform:translateY(10px);transition:opacity .35s ease,transform .45s var(--ease)}
.ag-item.open .ag-inner>*{opacity:1;transform:none}
.ag-item.open .ag-inner>*:nth-child(1){transition-delay:.1s}
.ag-item.open .ag-inner>*:nth-child(2){transition-delay:.2s}
.ag-inner>:last-child{margin-bottom:1.5rem}
.ag-desc{font-size:.92rem;line-height:1.65;color:var(--ink-muted);margin:0 0 1rem;max-width:46rem}
.ag-desc b{color:var(--ink-foreground);font-weight:600}
.people{display:grid;grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:.6rem}
.person{border:1px solid var(--ink-line);background:rgba(255,255,255,.03);padding:.8rem .95rem;font-size:.8rem;line-height:1.45;color:var(--ink-muted);transition:border-color .3s,transform .35s var(--ease)}
.person:hover{border-color:var(--teal);transform:translateY(-2px)}
.person strong{display:block;color:var(--ink-foreground);font-size:.88rem;font-weight:600}
.ok{display:inline-flex;align-items:center;gap:.3rem;margin-top:.45rem;font-size:.62rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--teal)}
.ok::before{content:"";width:.45rem;height:.45rem;border-radius:50%;background:var(--teal);box-shadow:0 0 0 3px rgba(24,201,198,.2)}

.ag-row{display:grid;grid-template-columns:5.5rem minmax(0,1fr);column-gap:1.25rem;align-items:center;padding:.8rem 1.25rem;border-bottom:1px solid var(--ink-line);background:rgba(255,255,255,.025)}
.ag-row .ag-time{color:var(--ink-muted);font-size:.85rem}
.ag-row .ag-label{font-size:.85rem;font-weight:600;color:var(--ink-muted)}
.ag-row.end{background:transparent;padding:1.1rem 1.25rem}
.ag-row.end .ag-label{font-family:Montserrat,Arial,sans-serif;font-size:.95rem;font-weight:700;color:var(--ink-foreground)}

/* Presidentes convidados */
.ceos{margin-top:3.5rem}
.ceos-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem 2rem;margin-bottom:1.25rem}
.ceos-head h3{font-family:Montserrat,Arial,sans-serif;font-size:clamp(1.3rem,2vw,1.75rem);font-weight:700;margin:0}
.ceos-head p{margin:0;font-size:.8rem;color:var(--ink-muted)}
.ceo-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;background:var(--ink-line);border:1px solid var(--ink-line)}
.ceo{background:var(--ink);padding:1.1rem 1.1rem 1.2rem;display:flex;flex-direction:column;gap:.3rem;transition:background .3s}
.ceo:hover{background:var(--ink-soft)}
.ceo span{font-size:.62rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--teal)}
.ceo strong{font-size:.95rem;font-weight:600;color:var(--ink-foreground);line-height:1.3}
.ceo .ok{margin-top:.2rem}

@media (max-width:1023px){
  .ag-head{grid-template-columns:4.75rem minmax(0,1fr) 2.25rem;grid-template-areas:"time kind icon" "title title icon";row-gap:.55rem}
  .ag-head .ag-time{grid-area:time}.ag-head .ag-kind{grid-area:kind}.ag-head .ag-title{grid-area:title}.ag-head .ag-icon{grid-area:icon}
  .ag-inner{padding:0 1.25rem}
  .ceo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:639px){
  .prog-head{margin-bottom:1.75rem}
  .prog-note{max-width:none}
  .tab{padding:.9rem .85rem}
  .tab-day{font-size:.6rem;letter-spacing:.12em}
  .tab-title{font-size:.88rem}
  .day-tools{padding:.75rem 1rem}
  .ag-head{grid-template-columns:4rem minmax(0,1fr) 2.1rem;column-gap:.75rem;padding:1rem}
  .ag-inner{padding:0 1rem}
  .ag-row{grid-template-columns:4rem minmax(0,1fr);column-gap:.75rem;padding:.75rem 1rem}
  .people{grid-template-columns:1fr}
  .ceo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (prefers-reduced-motion:reduce){
  .ag-panel,.ag-inner>*,.ag-icon,.ag-icon::before,.ag-icon::after,.tab::after{transition:none!important}
  .day-panel.enter{animation:none}
}
.hero-meta > span > span{display:flex;flex-direction:column;align-items:flex-start;line-height:1.3}
@media (max-width:639px){.hero-meta > span{min-width:15rem}}

/* Computador: primeira dobra alinhada à esquerda */
@media (min-width:1024px){
  .hero-copy{align-items:flex-start;text-align:left;margin:0;max-width:44rem}
  .hero-date,.hero-meta{justify-content:flex-start}
  .hero-lead{margin-left:0;margin-right:0}
}

/* ==========================================================
   INGRESSOS
   ========================================================== */
.tk-live{display:inline-block;width:.5rem;height:.5rem;border-radius:50%;background:var(--teal);margin-right:.5rem;position:relative;vertical-align:middle}
.tk-live::after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid var(--teal);animation:tkPing 1.8s ease-out infinite}
@keyframes tkPing{from{transform:scale(1);opacity:.8}to{transform:scale(2.6);opacity:0}}

/* Card do topo (no lugar do formulário) */
.tk-hero{background:var(--surface);color:var(--foreground);padding:2rem;box-shadow:0 30px 80px -30px rgba(0,0,0,.6);position:relative;overflow:hidden}
.tk-hero::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,var(--grad-a),var(--grad-b))}
.tk-eyebrow{margin:0;font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--primary);display:flex;align-items:center}
.tk-hero-title{margin:.8rem 0 0;font-family:Montserrat,Arial,sans-serif;font-size:1.55rem;font-weight:800;line-height:1.15}
.tk-hero-price{margin-top:1.4rem;padding-top:1.2rem;border-top:1px solid var(--border);display:flex;flex-wrap:wrap;align-items:baseline;gap:.2rem .7rem}
.tk-hero-price s{font-size:.95rem;color:var(--muted-foreground)}
.tk-hero-price strong{font-family:Montserrat,Arial,sans-serif;font-size:2.3rem;font-weight:800;color:var(--primary);line-height:1}
.tk-hero-price span{flex-basis:100%;font-size:.82rem;color:var(--muted-foreground)}
.tk-hero-deadline{margin:1rem 0 1.2rem;font-size:.85rem;color:var(--foreground)}
.tk-hero-btn{text-decoration:none}
.tk-hero-foot{margin:.9rem 0 0;font-size:.75rem;color:var(--muted-foreground)}

/* Seção */
.ingressos{background:var(--hero);color:var(--hero-foreground);padding:clamp(4rem,8vw,7.5rem) 0;scroll-margin-top:0}
.ingressos .wrap{max-width:80rem;margin:0 auto;padding:0 1.25rem}
@media (min-width:1024px){.ingressos .wrap{padding:0 2rem}}
.ing-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1.25rem 3rem;margin-bottom:2.25rem}
.ing-head .eyebrow{color:var(--teal)}
.ing-head .section-title{margin-top:.75rem}
.ing-count{display:flex;align-items:center;font-size:.85rem;font-weight:600;color:var(--hero-foreground);padding:.7rem 1rem;border:1px solid var(--hero-line)}

.tk-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--hero-line);border:1px solid var(--hero-line)}
.tk-step{appearance:none;border:0;background:var(--hero);color:var(--hero-muted);font:inherit;text-align:left;padding:1rem 1.2rem;cursor:pointer;display:flex;flex-direction:column;gap:.3rem;position:relative;transition:background .3s,color .3s}
.tk-step::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,var(--grad-a),var(--grad-b));transform:scaleX(0);transform-origin:0 50%;transition:transform .45s var(--ease)}
.tk-step[aria-selected="true"]{background:rgba(255,255,255,.06);color:var(--hero-foreground)}
.tk-step[aria-selected="true"]::after{transform:scaleX(1)}
.tk-step:focus-visible{outline:2px solid var(--teal);outline-offset:-2px}
.tk-step-top{display:flex;align-items:center;gap:.6rem;font-family:Montserrat,Arial,sans-serif;font-size:1.05rem;font-weight:700}
.tk-step-top em{font-style:normal;font-family:inherit;font-size:.58rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:.2rem .45rem;border:1px solid currentColor;opacity:.8}
.tk-step.is-atual .tk-step-top em{background:var(--teal);border-color:var(--teal);color:#04121c;opacity:1}
.tk-step.is-encerrado{text-decoration:none}
.tk-step.is-encerrado .tk-step-top{text-decoration:line-through;text-decoration-thickness:1px}
.tk-step-date{font-size:.78rem}

.tk-body{border:1px solid var(--hero-line);border-top:0;padding:1.5rem}
.tk-body.tk-enter{animation:tkIn .45s var(--ease)}
@keyframes tkIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.tk-lote-head{margin-bottom:1.25rem}
.tk-lote-name{margin:0;font-family:Montserrat,Arial,sans-serif;font-size:clamp(1.1rem,1.8vw,1.45rem);font-weight:700}
.tk-lote-note{margin:.35rem 0 0;font-size:.82rem;color:var(--hero-muted)}
.tk-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;align-items:start}
.tk-box{background:var(--surface);color:var(--foreground)}
.tk-box-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.4rem 1rem;padding:1.1rem 1.25rem;border-bottom:1px solid var(--border)}
.tk-box-head h3{margin:0;font-family:Montserrat,Arial,sans-serif;font-size:1.05rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.tk-group-tag{font-size:.72rem;font-weight:700;color:var(--primary)}
.tk-box-group .tk-box-head{background:color-mix(in oklab,var(--primary) 7%,white)}
.tk-opt{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:1rem;padding:1.1rem 1.25rem;border-bottom:1px solid var(--border);transition:background .25s}
.tk-opt:last-child{border-bottom:0}
.tk-opt:hover{background:var(--background)}
.tk-opt-name{font-weight:700;font-size:.98rem;display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}
.tk-selo{font-size:.6rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:.22rem .45rem;background:linear-gradient(90deg,var(--grad-a),var(--grad-b));color:#fff}
.tk-opt-det{font-size:.8rem;color:var(--muted-foreground);margin-top:.2rem}
.tk-opt-price{text-align:right;display:flex;flex-direction:column;align-items:flex-end;line-height:1.15}
.tk-opt-price s{font-size:.75rem;color:var(--muted-foreground)}
.tk-opt-price strong{font-family:Montserrat,Arial,sans-serif;font-size:1.45rem;font-weight:800;color:var(--primary)}
.tk-opt-price span{font-size:.7rem;color:var(--muted-foreground)}
.tk-buy{appearance:none;border:0;background:var(--primary);color:#fff;font:inherit;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;min-height:2.75rem;padding:0 1.1rem;cursor:pointer;transition:background .2s,transform .2s}
.tk-buy:hover{background:color-mix(in oklab,var(--primary) 84%,black)}
.tk-buy:active{transform:translateY(1px)}
.tk-buy:disabled{background:var(--secondary);color:var(--muted-foreground);cursor:not-allowed}
.tk-legend{margin:1.25rem 0 0;font-size:.8rem;color:var(--hero-muted)}
.tk-legend b{color:var(--hero-foreground)}

@media (max-width:1023px){.tk-grid{grid-template-columns:1fr}}
@media (max-width:639px){
  .tk-hero{padding:1.5rem}
  .tk-steps{grid-template-columns:repeat(3,minmax(0,1fr))}
  .tk-step{padding:.8rem .7rem}
  .tk-step-top{flex-direction:column;align-items:flex-start;gap:.3rem;font-size:.95rem}
  .tk-step-date{font-size:.7rem}
  .tk-body{padding:1rem}
  .tk-opt{grid-template-columns:minmax(0,1fr) auto;padding:1rem}
  .tk-opt .tk-buy{grid-column:1 / -1;width:100%}
  .ing-count{width:100%}
}

/* ---------- Popup ---------- */
html.tk-lock{overflow:hidden}
.tk-modal{border:0;padding:0;margin:auto;width:min(560px,calc(100% - 2rem));max-height:calc(100dvh - 2rem);background:var(--surface);color:var(--foreground);box-shadow:0 40px 120px -20px rgba(0,0,0,.6);overflow:auto}
.tk-modal::backdrop{background:rgba(3,8,20,.72);backdrop-filter:blur(3px)}
.tk-modal[open]{animation:tkPop .35s var(--ease)}
.tk-modal[open]::backdrop{animation:tkFade .3s ease}
@keyframes tkPop{from{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:none}}
@keyframes tkFade{from{opacity:0}to{opacity:1}}
.tk-m-top{position:sticky;top:0;z-index:1;background:var(--hero);color:var(--hero-foreground);padding:1.25rem 3.5rem 1.2rem 1.5rem}
.tk-m-top::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,var(--grad-a),var(--grad-b))}
.tk-m-lote{margin:0;font-size:.68rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--teal)}
.tk-m-opt{margin:.4rem 0 0;font-family:Montserrat,Arial,sans-serif;font-size:1.2rem;font-weight:700;line-height:1.25}
.tk-m-unit{margin:.25rem 0 0;font-size:.82rem;color:var(--hero-muted)}
.tk-x{position:absolute;top:.9rem;right:.9rem;width:2.5rem;height:2.5rem;border:1px solid var(--hero-line);background:transparent;color:#fff;cursor:pointer;display:grid;place-items:center}
.tk-x:hover{border-color:#fff}
.tk-m-form{padding:1.25rem 1.5rem 1.5rem;display:grid;gap:.85rem}
.tk-m-form .row2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}
.tk-m-form .field select{border:1px solid var(--border);background:var(--background);width:100%;min-height:2.75rem;padding:0 .8rem;font:inherit;font-size:.85rem;font-weight:400}
.tk-m-qtd,.tk-m-dia{display:grid;gap:.4rem}
.tk-m-qtd label,.tk-m-dia > label > span{font-size:.72rem;font-weight:700}
.tk-qty{display:inline-flex;align-items:stretch;border:1px solid var(--border);width:max-content}
.tk-qty button{appearance:none;border:0;background:var(--background);width:2.75rem;font-size:1.2rem;cursor:pointer;color:var(--foreground)}
.tk-qty button:hover{background:var(--secondary)}
.tk-qty input{width:4rem;text-align:center;border:0;border-left:1px solid var(--border);border-right:1px solid var(--border);font:inherit;font-weight:700;min-height:2.75rem}
.tk-m-total{display:flex;justify-content:space-between;align-items:baseline;padding:.9rem 1rem;background:var(--background);border:1px solid var(--border)}
.tk-m-total span{font-size:.8rem;color:var(--muted-foreground)}
.tk-m-total strong{font-family:Montserrat,Arial,sans-serif;font-size:1.5rem;font-weight:800;color:var(--primary)}
.tk-m-err{margin:0;padding:.7rem .9rem;font-size:.82rem;font-weight:600;background:#fdecec;color:#8a1c1c}
.tk-m-form .cta.is-loading{opacity:.6;pointer-events:none}
.tk-m-legal{margin:0;font-size:.72rem;line-height:1.5;color:var(--muted-foreground)}
.tk-m-done{padding:2.5rem 1.5rem;text-align:center}
.tk-m-done h3{margin:.8rem 0 .5rem;font-family:Montserrat,Arial,sans-serif;font-size:1.4rem;font-weight:800}
.tk-m-done p{margin:0 auto;max-width:26rem;font-size:.9rem;color:var(--muted-foreground)}
.tk-check{width:64px;height:64px;margin:0 auto}
.tk-check circle{fill:none;stroke:var(--teal);stroke-width:3;stroke-dasharray:190;stroke-dashoffset:190;animation:tkDraw .8s var(--ease) .1s forwards}
.tk-check path{fill:none;stroke:var(--teal);stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:50;stroke-dashoffset:50;animation:tkDraw .45s var(--ease) .7s forwards}
@keyframes tkDraw{to{stroke-dashoffset:0}}
body{transition:opacity .3s ease}
body.tk-leaving{opacity:0}
@media (max-width:639px){
  .tk-modal{width:100%;max-width:none;max-height:92dvh;margin:auto 0 0;}
  .tk-modal[open]{animation:tkSheet .4s var(--ease)}
  @keyframes tkSheet{from{transform:translateY(100%)}to{transform:none}}
  .tk-m-form .row2{grid-template-columns:1fr}
  .tk-m-form{padding:1.1rem 1.1rem 1.4rem}
}
@media (prefers-reduced-motion:reduce){
  .tk-live::after{animation:none}
  .tk-modal[open],.tk-modal[open]::backdrop,.tk-body.tk-enter{animation:none}
  .tk-check circle,.tk-check path{animation:none;stroke-dashoffset:0}
}

/* ==========================================================
   PATROCINADORES — duas faixas animadas
   ========================================================== */
.spc{background:var(--surface);padding:clamp(4rem,7vw,6.5rem) 0;overflow:hidden;border-bottom:1px solid var(--border)}
.spc-head{max-width:80rem;margin:0 auto 2.75rem;padding:0 1.25rem;text-align:center}
.spc-head .section-title{font-size:clamp(1.9rem,3.4vw,3rem);margin-top:.75rem}
.spc-marquee{--gap:80px;--speed:46s;overflow:hidden;padding:14px 0;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 10%,#000 90%,transparent 100%);
          mask-image:linear-gradient(90deg,transparent 0,#000 10%,#000 90%,transparent 100%)}
.spc-marquee + .spc-marquee{border-top:1px solid var(--border)}
.spc-track{display:flex;width:max-content;animation:spcMove var(--speed) linear infinite}
.spc-marquee.is-rev .spc-track{animation-direction:reverse;animation-duration:calc(var(--speed) * 1.1)}
.spc-marquee:hover .spc-track{animation-play-state:paused}
.spc-group{display:flex;align-items:center;gap:var(--gap);padding:0 calc(var(--gap)/2);margin:0;list-style:none}
.spc-item{flex-shrink:0;height:96px;display:flex;align-items:center;justify-content:center}
.spc-item img{width:var(--w);height:auto;max-width:none;opacity:.78;transition:opacity .3s,transform .4s var(--ease)}
.spc-item:hover img{opacity:1;transform:scale(1.07)}
@keyframes spcMove{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (max-width:1023px){.spc-marquee{--gap:60px;--speed:40s}}
@media (max-width:639px){
  .spc-head{margin-bottom:1.75rem}
  .spc-marquee{--gap:40px;--speed:32s;padding:8px 0}
  .spc-item{height:72px}
  .spc-item img{width:calc(var(--w) * .68);opacity:.85}
}
@media (prefers-reduced-motion:reduce){
  .spc-marquee{-webkit-mask-image:none;mask-image:none}
  .spc-track{animation:none;width:auto;justify-content:center}
  .spc-group{flex-wrap:wrap;justify-content:center;row-gap:20px}
  .spc-group[aria-hidden="true"]{display:none}
}

/* ==========================================================
   INSCRIÇÃO PELO RD STATION (popup)
   ========================================================== */
.tk-m-body{padding:1.25rem 1.5rem 1.6rem}
.tk-m-top.is-generic .tk-m-lote{color:var(--teal)}
.ing-cta{margin-top:1.75rem;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem 2rem;padding:1.25rem 1.5rem;border:1px solid var(--hero-line);background:rgba(255,255,255,.03)}
.ing-cta p{margin:0;max-width:40rem;font-size:.92rem;line-height:1.6;color:var(--hero-muted)}
.ing-cta-btn{width:auto!important;padding:0 1.5rem!important;text-decoration:none;flex-shrink:0}
@media (max-width:639px){.ing-cta{padding:1.1rem}.ing-cta-btn{width:100%!important}.tk-m-body{padding:1rem 1.1rem 1.4rem}}

.rd-host{position:relative;min-height:360px}
.rd-host.rd-loaded{min-height:0}
.rd-skeleton{display:flex;flex-direction:column;gap:.85rem}
.rd-skeleton span{display:block;height:2.9rem;background:linear-gradient(90deg,#eef2f7 0%,#f7f9fb 50%,#eef2f7 100%);background-size:200% 100%;animation:rdShimmer 1.3s linear infinite}
.rd-skeleton span.btn{height:3.2rem;background:var(--primary);opacity:.18;animation:none}
@keyframes rdShimmer{to{background-position:-200% 0}}
.rd-loaded .rd-skeleton,.rd-failed .rd-skeleton{display:none}
.rd-fallback{margin:0;font-size:.85rem;line-height:1.5;color:#8a1c1c;background:#fdecec;padding:.8rem .9rem}

.rd-host [id^="rd-section"],.rd-host [id^="rd-row"],.rd-host [id^="rd-column"],.rd-host [id^="rd-form"],
.rd-host .bricks--section,.rd-host .bricks--row,.rd-host .bricks--column,.rd-host .bricks--component-form{
  background:transparent!important;background-image:none!important;border:0!important;box-shadow:none!important;border-radius:0!important;
  margin:0!important;padding:0!important;width:100%!important;max-width:none!important;min-height:0!important;flex:1 1 auto!important}
.rd-host .bricks--section>div,.rd-host .bricks--column>div{padding:0!important;margin:0!important;background:transparent!important;max-width:none!important;border-radius:0!important}
.rd-host .bricks--component-text,.rd-host [id^="rd-text-"],.rd-host .bricks--component-image,.rd-host [id^="rd-image"]{display:none!important}
.rd-host form,.rd-host .bricks-form{margin:0!important;padding:0!important;width:100%!important;max-width:none!important;background:transparent!important;font-family:inherit!important}
.rd-host .bricks-form__fieldset{display:flex!important;flex-direction:column!important;gap:.85rem!important;margin:0!important;padding:0!important;border:0!important;width:100%!important}
.rd-host .bricks-form__field{margin:0!important;padding:0!important;width:100%!important;display:flex!important;flex-direction:column!important;gap:.3rem!important}
.rd-host .bricks-form__label,.rd-host label{font-family:inherit!important;font-size:.72rem!important;font-weight:700!important;color:var(--foreground)!important;line-height:1.35!important;margin:0!important;padding:0!important;text-align:left!important}
.rd-host input[type="text"],.rd-host input[type="email"],.rd-host input[type="tel"],.rd-host input[type="number"],.rd-host input[type="url"],.rd-host select,.rd-host textarea,
.rd-host .bricks-form__input:not([type="checkbox"]):not([type="radio"]){
  font-family:inherit!important;font-size:.9rem!important;font-weight:400!important;color:var(--foreground)!important;
  width:100%!important;max-width:none!important;height:2.9rem!important;min-height:2.9rem!important;margin:0!important;padding:0 .9rem!important;
  border:1px solid var(--border)!important;border-radius:var(--radius)!important;background:var(--background)!important;box-shadow:none!important;outline:none!important;
  box-sizing:border-box!important;transition:border-color .2s,box-shadow .2s!important;appearance:none;-webkit-appearance:none}
.rd-host textarea{height:6rem!important;padding:.8rem .9rem!important}
.rd-host select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23334' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right .9rem center!important;padding-right:2.5rem!important}
.rd-host input::placeholder,.rd-host textarea::placeholder{color:var(--muted-foreground)!important;opacity:.85!important}
.rd-host input:focus,.rd-host select:focus,.rd-host textarea:focus{border-color:var(--primary)!important;box-shadow:0 0 0 3px color-mix(in oklab,var(--primary) 15%,transparent)!important;background:#fff!important}
.rd-host .iti,.rd-host .intl-tel-input,.rd-host .phone-input-group{width:100%!important;display:block!important}
.rd-host .iti input,.rd-host .intl-tel-input input{padding-left:3.3rem!important}
.rd-host .bricks-form__field__option,.rd-host .checkbox{display:flex!important;align-items:flex-start!important;gap:.6rem!important;margin:0!important}
.rd-host .bricks-form__field__option .bricks-form__label,.rd-host .checkbox label{font-size:.75rem!important;font-weight:400!important;color:var(--muted-foreground)!important;display:flex!important;gap:.6rem!important;align-items:flex-start!important}
.rd-host input[type="checkbox"],.rd-host input[type="radio"]{width:1rem!important;height:1rem!important;min-width:1rem!important;margin:.15rem 0 0!important;accent-color:var(--primary)}
.rd-host .bricks-form__static,.rd-host .bricks-form__static p,.rd-host .legal-bases,.rd-host .legal-bases p{font-size:.72rem!important;line-height:1.5!important;color:var(--muted-foreground)!important;margin:0!important;text-align:left!important}
.rd-host a{color:var(--primary)!important}
.rd-host label.error,.rd-host .error-msg,.rd-host .bricks-form__field .error{font-size:.72rem!important;font-weight:600!important;color:#b42318!important}
.rd-host input.error,.rd-host select.error{border-color:#e5484d!important}
.rd-host .bricks-form__submit{margin:.35rem 0 0!important;padding:0!important;width:100%!important}
.rd-host button[type="submit"],.rd-host .bricks--component-button,.rd-host [id^="rd-button"]{
  width:100%!important;max-width:none!important;height:3.2rem!important;margin:0!important;padding:0 1rem!important;border:0!important;border-radius:var(--radius)!important;
  background:var(--primary)!important;color:#fff!important;cursor:pointer!important;box-shadow:none!important;
  font-family:inherit!important;font-size:.8rem!important;font-weight:800!important;letter-spacing:.06em!important;text-transform:uppercase!important;line-height:1!important;transition:background .2s!important}
.rd-host button[type="submit"]:hover,.rd-host [id^="rd-button"]:hover{background:color-mix(in oklab,var(--primary) 84%,var(--ink))!important}
.rd-host .bricks-form__success,.rd-host [class*="success"]{font-size:.92rem!important;line-height:1.5!important;color:#0b5a36!important;background:#e6f6ee!important;padding:1rem!important;text-align:left!important}
.rd-loaded form{animation:rdIn .45s var(--ease)}
@keyframes rdIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media (max-width:639px){.rd-host input,.rd-host select{font-size:16px!important}}
@media (prefers-reduced-motion:reduce){.rd-skeleton span,.rd-loaded form{animation:none}}

/* Ajustes do formulário real do RD (Congresso) */
/* Botões de link que vêm junto do bloco do RD (ex.: "Fisica"/"Juridica" sem link) */
.rd-host a.bricks--component-button,.rd-host a[id^="rd-button"]{display:none!important}
/* Texto do botão centralizado */
.rd-host button[type="submit"],.rd-host button[id^="rd-button"]{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;align-self:stretch!important;text-align:center!important}
/* Celular: bandeira dentro do campo, à esquerda */
.rd-host .phone-input-group{position:relative!important;display:block!important;width:100%!important}
.rd-host .phone-input-group div.form-control.phone-country:not(.select2-container),.rd-host .phone-input-group .country-field{display:none!important}
.rd-host .phone-input-group .select2-container.phone-country{position:absolute!important;left:1px!important;top:1px!important;height:calc(2.9rem - 2px)!important;width:3.4rem!important;margin:0!important;padding:0!important;border:0!important;border-right:1px solid var(--border)!important;background:transparent!important;box-shadow:none!important;z-index:3;display:block!important}
.rd-host .phone-input-group .select2-choice{display:flex!important;align-items:center!important;justify-content:center!important;gap:4px!important;height:100%!important;width:100%!important;padding:0!important;margin:0!important;border:0!important;border-radius:0!important;background:transparent!important;background-image:none!important;box-shadow:none!important;line-height:1!important}
.rd-host .phone-input-group .select2-chosen{margin:0!important;padding:0!important;display:flex!important;align-items:center!important}
.rd-host .phone-input-group .select2-chosen img,.rd-host .phone-input-group img.flag{display:block!important;width:20px!important;height:auto!important;margin:0!important}
.rd-host .phone-input-group .select2-arrow{position:static!important;width:auto!important;height:auto!important;border:0!important;background:transparent!important;display:flex!important;align-items:center!important}
.rd-host .phone-input-group .select2-arrow b{background:none!important;width:0!important;height:0!important;border-left:4px solid transparent!important;border-right:4px solid transparent!important;border-top:5px solid var(--muted-foreground)!important;display:block!important}
.rd-host .phone-input-group .select2-search-choice-close{display:none!important}
.rd-host .phone-input-group input.phone,.rd-host .phone-input-group input[type="tel"]{padding-left:4.1rem!important}
.rd-host .select2-drop{z-index:20!important;border:1px solid var(--border)!important;border-radius:var(--radius)!important;box-shadow:0 12px 30px -10px rgba(0,0,0,.3)!important;background:#fff!important;min-width:260px!important}
.rd-host .select2-drop .select2-input{height:2.4rem!important;min-height:2.4rem!important}
.rd-host .select2-offscreen{position:absolute!important;left:-10000px!important}
.rd-host .phone-input-group input.bricks-form__input:not([type="checkbox"]):not([type="radio"]){padding-left:4.1rem!important}
.rd-host .phone-input-group .select2-container.phone-country{top:0!important;bottom:0!important;height:auto!important}

/* ==========================================================
   PAGAMENTO — escolha PF / PJ no popup
   ========================================================== */
.tk-pay-list{display:flex;flex-direction:column;gap:.75rem}
.tk-pay{display:grid;grid-template-columns:minmax(0,1fr) auto 2.5rem;align-items:center;gap:1rem;padding:1.1rem 1.1rem 1.1rem 1.25rem;border:1px solid var(--border);background:#fff;color:var(--foreground);text-decoration:none;transition:border-color .2s,box-shadow .25s,transform .25s var(--ease)}
.tk-pay:hover{border-color:var(--primary);box-shadow:0 14px 30px -18px rgba(10,95,192,.55);transform:translateY(-2px)}
.tk-pay:focus-visible{outline:2px solid var(--primary);outline-offset:2px}
.tk-pay-info{display:flex;flex-direction:column;gap:.2rem}
.tk-pay-info strong{font-family:Montserrat,Arial,sans-serif;font-size:1.05rem;font-weight:700}
.tk-pay-info small{font-size:.8rem;color:var(--muted-foreground)}
.tk-pay-price{display:flex;flex-direction:column;align-items:flex-end;line-height:1.15}
.tk-pay-price b{font-family:Montserrat,Arial,sans-serif;font-size:1.3rem;font-weight:800;color:var(--primary);white-space:nowrap}
.tk-pay-price small{font-size:.7rem;color:var(--muted-foreground)}
.tk-pay-go{width:2.5rem;height:2.5rem;display:grid;place-items:center;background:var(--primary);color:#fff;transition:transform .25s var(--ease)}
.tk-pay:hover .tk-pay-go{transform:translateX(3px)}
.tk-pay-note{margin:1rem 0 0;font-size:.8rem;line-height:1.55;color:var(--muted-foreground)}
.tk-pay-note b{color:var(--foreground)}
.tk-pay-empty{margin:0;padding:1rem;background:var(--background);font-size:.9rem;color:var(--muted-foreground)}
@media (max-width:639px){
  .tk-pay{grid-template-columns:minmax(0,1fr) auto;gap:.6rem 1rem;padding:1rem}
  .tk-pay-go{display:none}
  .tk-pay-price b{font-size:1.15rem}
}

/* ---------- Boleto / outra forma de pagamento ---------- */
.tk-alt{position:relative;margin-top:1.75rem;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1.25rem 2rem;padding:1.5rem 1.75rem;background:#fff;color:var(--foreground);border-left:6px solid var(--teal);box-shadow:0 24px 60px -24px rgba(24,201,198,.45)}
.tk-alt::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:repeating-linear-gradient(90deg,var(--teal) 0 10px,transparent 10px 16px);opacity:.55}
.tk-alt-kicker{margin:0;font-size:.68rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--primary)}
.tk-alt-title{display:block;margin-top:.3rem;font-family:Montserrat,Arial,sans-serif;font-size:clamp(1.15rem,1.8vw,1.45rem);font-weight:800;line-height:1.2}
.tk-alt-methods{list-style:none;margin:.9rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.6rem}
.tk-alt-methods li{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .85rem;border:1.5px solid var(--border);background:var(--background);font-size:.85rem;font-weight:700}
.tk-alt-methods svg{color:var(--primary);flex-shrink:0}
.tk-alt-methods li:nth-child(2) svg{color:#32bcad}
.tk-alt-sub{display:block;margin-top:.8rem;font-size:.82rem;color:var(--muted-foreground)}
.tk-alt-side{display:flex;flex-direction:column;align-items:stretch;gap:.85rem;min-width:13rem}
.tk-alt-code{width:100%;height:34px;color:var(--foreground);opacity:.85}
.tk-alt-btn{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:0;background:var(--teal);color:#06121f;font:inherit;font-size:.8rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;min-height:3.1rem;padding:0 1.4rem;cursor:pointer;transition:background .2s,transform .2s}
.tk-alt-btn:hover{background:color-mix(in oklab,var(--teal) 82%,black)}
.tk-alt-btn:active{transform:translateY(1px)}
.tk-alt-btn svg{transition:transform .2s}
.tk-alt-btn:hover svg{transform:translateX(3px)}
.tk-pay-alt button{appearance:none;border:0;background:none;padding:0;font:inherit;font-weight:700;color:var(--primary);text-decoration:underline;cursor:pointer}
.tk-b-body{padding:1.25rem 1.5rem 1.5rem;min-height:12rem}
.tk-b-load{margin:2rem 0;text-align:center;font-size:.85rem;color:var(--muted-foreground)}
@media (max-width:639px){
  .tk-alt{grid-template-columns:1fr;padding:1.25rem 1.1rem}
  .tk-alt-side{min-width:0}
  .tk-alt-code{display:none}
  .tk-alt-methods li{font-size:.8rem;padding:.45rem .7rem}
  .tk-b-body{padding:1rem 1.1rem 1.4rem}
}

/* Apoio */
.spc-apoio{max-width:80rem;margin:clamp(2.5rem,5vw,4rem) auto 0;padding:clamp(2rem,4vw,3rem) 1.25rem 0;border-top:1px solid var(--border);text-align:center}
.spc-apoio-list{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:28px clamp(40px,7vw,96px);margin:1.5rem 0 0;padding:0;list-style:none}
.spc-apoio-list img{width:auto;height:var(--h);max-width:none;opacity:.78;transition:opacity .3s,transform .4s var(--ease)}
.spc-apoio-list img:hover{opacity:1;transform:scale(1.05)}
@media (max-width:640px){.spc-apoio-list{gap:22px 32px}.spc-apoio-list img{height:calc(var(--h) * .7)}}
