/* Impresso — capa de efectos visuales. Se carga despues de styles.css y no sustituye ninguna regla base. */

#dissolve-text{position:relative;display:inline-block}
.dissolve-canvas{position:absolute;inset:0;z-index:3;pointer-events:none}
.dissolving{visibility:hidden}

@media(min-width:820px){
  .process.process-pin{height:500vh;position:relative;overflow:hidden}
  .process.process-pin .process-list{position:absolute;top:0;left:0;display:flex;flex-wrap:nowrap;width:500vw;height:100vh;margin:0;padding:0;overflow:hidden;will-change:transform}
  .process.process-pin .process-list li{flex:0 0 100vw;width:100vw;height:100vh;box-sizing:border-box;grid-template-columns:70px minmax(0,720px)}
  .process.process-pin .process-list>li>span{font-size:clamp(90px,12vw,200px);line-height:.75;opacity:.92}
}

.quotes blockquote>p.typing::after{content:"";display:inline-block;width:.5ch;margin-left:2px;border-right:2px solid var(--red);animation:impresso-caret .8s steps(1) infinite}
@keyframes impresso-caret{50%{border-color:transparent}}

@media(prefers-reduced-motion:reduce){
  .dissolve-canvas{display:none!important}
  .dissolving{visibility:visible!important}
  .process.process-pin{height:auto!important;overflow:visible!important}
  .process.process-pin .process-list{position:static!important;display:grid!important;width:auto!important;height:auto!important;transform:none!important}
}
