/* ciclo: trilho horizontal. Padrão = carrossel com scroll-snap; .is-pin = pin com GSAP */
.ciclo{position:relative;background:var(--ag-paper);color:var(--ag-ink);padding:var(--sec) 0;overflow:hidden}
.ciclo__head{display:grid;gap:1.4rem;margin-bottom:2rem}
.ciclo__passos{display:flex;gap:0;margin:0;padding:0;list-style:none;position:relative;border-top:2px solid var(--ag-line-ink)}
.ciclo__passos::before{content:"";position:absolute;left:0;right:0;top:-2px;height:4px;background:var(--ag-black);transform:scaleX(var(--p,.2));transform-origin:left}
.ciclo__passos li{flex:1;padding-top:.7rem;font:600 .8rem/1.2 var(--f-title);letter-spacing:.06em;color:var(--ag-mute-ink);opacity:.55;transition:opacity .3s}
.ciclo__passos li.is-on{opacity:1;color:var(--ag-ink)}
.ciclo__passos li b{display:block;font-variant-numeric:tabular-nums}
.ciclo__trilho{display:flex;gap:1.25rem;padding:1rem max(var(--pad),calc((100vw - var(--wrap)) / 2)) 2.5rem;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:var(--ag-ink) transparent}
.etapa{position:relative;flex:none;width:min(84vw,400px);scroll-snap-align:center;display:grid;gap:1.4rem;align-content:start}
.etapa__midia{position:relative;aspect-ratio:4/5;overflow:hidden;background:var(--ag-ink);clip-path:polygon(0 0,100% 0,100% calc(100% - 2.8rem),calc(100% - 2.8rem) 100%,0 100%)}
.etapa__midia img,.etapa__midia video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.etapa__midia--tipo{background:var(--ag-black);color:var(--ag-white);display:grid;place-items:center;padding:1.5rem}
.etapa__midia--tipo img{position:relative;inset:auto;width:62%;height:auto;object-fit:contain;background:var(--ag-paper);border-radius:50%;padding:9%}
.etapa__n{font:700 clamp(3.4rem,6vw,5.5rem)/.9 var(--f-title);letter-spacing:-.04em;font-variant-numeric:tabular-nums;color:var(--ag-ink)}
.etapa__n small{display:block;margin-top:.6rem;font-size:.8rem;letter-spacing:.15em;text-transform:uppercase;color:var(--ag-mute-ink)}
.etapa__tx{display:grid;gap:.8rem;align-content:start}
.etapa__tx p{color:var(--ag-mute-ink)}
.etapa__tx .leg{padding:0;font-size:.84rem;border-top:1px solid var(--ag-line-ink);padding-top:.7rem;margin-top:.3rem}
.etapa__dado{font:700 1.05rem/1.25 var(--f-title);color:var(--ag-ink)!important}
.ciclo__dica{font-size:.85rem;color:var(--ag-mute-ink)}
@media (max-width:860px){.ciclo__passos li{font-size:.66rem;letter-spacing:0}.ciclo__passos li span{display:none}}
@media (min-width:861px){
  .etapa{width:clamp(600px,56vw,820px);grid-template-columns:auto 1fr;gap:2.2rem;align-items:end}
  .etapa__midia{height:clamp(320px,52vh,560px);aspect-ratio:3/4}
  .ciclo.is-pin{height:100vh;padding:calc(var(--hh) + .5rem) 0 0;display:flex;flex-direction:column;justify-content:center}
  .ciclo.is-pin .ciclo__trilho{overflow:visible;width:max-content;scroll-snap-type:none;gap:4.5rem;padding-bottom:1rem;will-change:transform}
  .ciclo.is-pin .ciclo__dica{display:none}
}
@media (prefers-reduced-motion:reduce) and (min-width:861px){.ciclo__trilho{flex-wrap:wrap;overflow:visible;row-gap:3rem}.ciclo__dica{display:none}}
