/* popup de inscrição em etapas + barra fixa (compartilhado pelas duas versões) */
body.lock{overflow:hidden}
.modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:16px;overflow-y:auto;overflow-x:hidden}
.modal[hidden]{display:none}
.modal-bg{position:fixed;inset:0;background:rgba(2,6,23,.72);backdrop-filter:blur(8px);animation:fade .25s ease}
.modal-box{position:relative;width:min(520px,100%);margin:auto;padding:30px 30px 24px;border-radius:var(--card-r);background:rgba(13,20,38,.96);box-shadow:inset 0 0 0 1px rgba(255,255,255,.16),0 40px 100px rgba(0,0,0,.6),0 0 80px rgba(37,99,235,.18);animation:pop .35s cubic-bezier(.2,.9,.3,1.1)}
@keyframes fade{from{opacity:0}}
@keyframes pop{from{opacity:0;transform:translateY(18px) scale(.97);filter:blur(6px)}}
.modal-x{position:absolute;top:14px;right:14px;width:36px;height:36px;border-radius:50%;border:0;cursor:pointer;color:#fff;font-size:1.4rem;line-height:1;background:rgba(255,255,255,.08);transition:background .2s}
.modal-x:hover{background:rgba(255,255,255,.16)}
.modal-box h3{font-size:1.45rem;font-weight:500;margin:18px 0 4px;padding-right:30px}
.steps-head{padding-right:44px}
.steps-meta{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:.78rem;color:rgba(255,255,255,.55)}
.steps-count b{color:#fff;font-weight:600}
.bar{height:4px;border-radius:9px;background:rgba(255,255,255,.1);margin-top:12px;overflow:hidden}
.bar i{display:block;height:100%;width:33.33%;border-radius:9px;background:linear-gradient(90deg,var(--accent),#bfdbfe);transition:width .4s cubic-bezier(.2,.8,.2,1)}
.step{animation:stepin .35s ease}
.step[hidden]{display:none}
@keyframes stepin{from{opacity:0;transform:translateX(14px)}}
.step-sub{font-size:.92rem;margin:4px 0 0;color:rgba(255,255,255,.6)}
.recap{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0 4px}
.recap div{padding:10px 12px;border-radius:var(--field-r);background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);min-width:0}
.recap span{display:block;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.45)}
.recap b{display:block;font-weight:500;font-size:.88rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.steps-nav{display:flex;gap:10px;margin-top:20px}
.steps-nav .btn{flex:1}
.steps-nav .btn[hidden]{display:none}
.steps-nav #snext{flex:2}
@media(max-width:480px){.recap{grid-template-columns:1fr}.modal-box{padding:24px 20px 20px}}

/* barra fixa "Inscrever-se" */
.sticky-bar{position:fixed;left:50%;bottom:18px;z-index:60;width:min(540px,100% - 24px);display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 12px 12px 22px;border-radius:20px;color:#fff;
  background:linear-gradient(135deg,#444b52,#2b3037);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1),0 18px 50px rgba(0,0,0,.5);backdrop-filter:blur(14px);
  transform:translate(-50%,160%);opacity:0;pointer-events:none;transition:transform .5s cubic-bezier(.2,.9,.3,1.05),opacity .4s}
.sticky-bar.show{transform:translate(-50%,0);opacity:1;pointer-events:auto}
.sb-info strong{display:block;font-weight:500;font-size:1.02rem;letter-spacing:-.01em}
.sb-info span{font-size:.76rem;color:rgba(255,255,255,.62)}
.sb-info i{font-style:normal;margin:0 3px;opacity:.6}
.sb-btn{flex:none;display:inline-flex;align-items:center;gap:10px;min-height:46px;padding:0 22px;border:0;border-radius:14px;cursor:pointer;font:inherit;font-weight:500;font-size:.95rem;color:#0f2a33;background:#d3eef3;transition:transform .2s,background .2s}
.sb-btn:hover{background:#e3f6fa;transform:translateY(-1px)}
.sb-btn:active{transform:scale(.97)}
@media(max-width:420px){.sb-info span{display:none}.sb-btn{padding:0 16px}}
body.lock .sticky-bar{opacity:0;pointer-events:none}

/* arte do hero (versão 2) */
.hero-art{position:relative;max-width:440px;margin-inline:auto;width:100%}
.hero-art .photo{aspect-ratio:4/4.6;box-shadow:0 30px 80px rgba(0,0,0,.5),inset 0 0 0 1px rgba(255,255,255,.12)}
.hero-art img{object-position:top}
.hero-art .chip{position:absolute;left:-18px;bottom:26px;padding:12px 18px;border-radius:10px;background:rgba(10,10,10,.78);backdrop-filter:blur(12px);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)}
.hero-art .chip b{display:block;font-weight:600}
.hero-art .chip span{font-size:.78rem;color:rgba(255,255,255,.6)}
@media(max-width:940px){.hero-art .chip{left:12px}}
