/* Different rhythms for editorial sections, product art and direct interaction. */
.reading-progress { position:fixed;top:0;left:0;right:0;height:2px;z-index:1200;transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,#69eff2,#a9a4ff);box-shadow:0 0 12px #6ee9ff80;pointer-events:none; }
@media (prefers-reduced-motion:no-preference) {
  .reveal[data-motion="rise"] { transform:translateY(36px) scale(.975); }
  .reveal[data-motion="left"] { transform:translateX(-36px); }
  .reveal[data-motion="right"] { transform:translateX(36px); }
  .reveal[data-motion="unfold"] { transform:perspective(1000px) translateY(28px) rotateX(7deg);transform-origin:50% 100%; }
  .reveal[data-motion].visible { transform:none; }
  h2.reveal { position:relative; }
  h2.reveal::after { content:'';display:block;width:58px;height:2px;margin-top:19px;background:linear-gradient(90deg,#70e7ef,#a7a5fb);transform:scaleX(0);transform-origin:left;transition:transform .9s .25s cubic-bezier(.16,1,.3,1); }
  h2.reveal.visible::after { transform:scaleX(1); }
  #unidades .segment-card.visible:hover { transform:perspective(1100px) translateY(-7px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)); }
  #unidades .segment-card .brand-art { transition:translate .5s cubic-bezier(.16,1,.3,1); }
  #unidades .segment-card:hover .brand-art { translate:var(--art-x,0px) var(--art-y,0px); }
  .motion-inview .chart-line { stroke-dasharray:500;animation:chart-trace 2.2s ease both; }
  .motion-inview .candle-chart i { animation:candle-breathe 3s ease-in-out infinite alternate;transform-origin:center; }
  .candle-chart i:nth-child(2n) { animation-delay:-1s; }
  .candle-chart i:nth-child(3n) { animation-delay:-2s; }
  .motion-inview .order-slip { animation:ticket-float 5s ease-in-out infinite; }
  .motion-inview .training-bars i { animation:training-pulse 1.8s ease-in-out infinite alternate;transform-origin:bottom; }
  .training-bars i:nth-child(2n) { animation-delay:-.6s; }
  .training-bars i:nth-child(3n) { animation-delay:-1.2s; }
  .motion-inview .blueprint { animation:blueprint-focus 5s ease-in-out infinite alternate; }
  .motion-inview .alliance-network circle { animation:network-signal 3.5s ease-in-out infinite; }
  .alliance-network circle:nth-of-type(2n) { animation-delay:-1.7s; }
  .motion-inview .post-front { animation:post-float 5.5s ease-in-out infinite; }
  .motion-inview .credit-card { animation:credit-float 6s ease-in-out infinite; }
  .motion-inview .paper-chart b { animation:paper-grow 1.1s cubic-bezier(.16,1,.3,1) both;transform-origin:bottom; }
  .model-step-icon,.tech-item-icon,.partners-point-icon { transition:transform .45s cubic-bezier(.16,1,.3,1),box-shadow .45s; }
  .model-step:hover .model-step-icon,.tech-item:hover .tech-item-icon,.partners-point:hover .partners-point-icon { transform:translateY(-3px) rotate(-7deg) scale(1.08);box-shadow:0 7px 24px #58ddef24; }
  .people-section .founder-card img { transition:filter .6s,translate .6s; }
  .people-section .founder-card:hover img { filter:saturate(1.12);translate:0 -3px; }
  .footer-brand-group a img { transition:transform .35s; }
  .footer-brand-group a:hover img { transform:scale(1.12) rotate(-4deg); }
  .click-wave { position:absolute;pointer-events:none;width:18px;height:18px;border:1px solid currentColor;border-radius:50%;transform:translate(-50%,-50%);animation:click-wave .65s ease-out forwards;opacity:.5; }
  .btn-glow,.btn-glow-secondary,#unidades .btn-outline { position:relative;overflow:hidden; }
}
@keyframes chart-trace { from { stroke-dashoffset:500; } to { stroke-dashoffset:0; } }
@keyframes candle-breathe { to { scale:1 1.14; } }
@keyframes ticket-float { 50% { translate:0 -7px;rotate:-3deg; } }
@keyframes training-pulse { to { scale:1 .65;opacity:.55; } }
@keyframes blueprint-focus { to { opacity:.85;translate:0 -4px; } }
@keyframes network-signal { 50% { stroke:#f7e4b7;stroke-width:2; } }
@keyframes post-float { 50% { translate:-3px -7px;rotate:-4deg; } }
@keyframes credit-float { 50% { translate:0 -8px;rotate:4deg; } }
@keyframes paper-grow { from { scale:1 .1;opacity:0; } to { scale:1;opacity:1; } }
@keyframes click-wave { to { width:320px;height:320px;opacity:0; } }
.motion-paused .motion-inview * { animation-play-state:paused!important; }
@media (pointer:coarse) { #unidades .segment-card.visible:hover { transform:none; } }
@media (prefers-reduced-motion:reduce) { .reading-progress { display:none; } }
