:root {
  --t-micro: 180ms;
  --t-reveal: 420ms;
  --t-scene: 640ms;
  --t-transform: 1100ms;

  --ease-entry: cubic-bezier(0.16, 1, 0.3, 1);      
  --ease-exit:  cubic-bezier(0.7, 0, 0.84, 0);      
  --ease-move:  cubic-bezier(0.65, 0, 0.35, 1);     
}

[data-reveal] > .prose > *,
[data-reveal] > .prose > .prose__points > li {
  opacity: 0;
  transform: translateY(16px);          
  transition:
    opacity var(--t-reveal) var(--ease-entry),
    transform var(--t-reveal) var(--ease-entry);
}

[data-revealed='true'] > .prose > *,
[data-revealed='true'] > .prose > .prose__points > li {
  opacity: 1;
  transform: none;
}

[data-revealed='true'] > .prose > *:nth-child(1) { transition-delay: 0ms; }
[data-revealed='true'] > .prose > *:nth-child(2) { transition-delay: 70ms; }
[data-revealed='true'] > .prose > *:nth-child(3) { transition-delay: 140ms; }
[data-revealed='true'] > .prose > *:nth-child(4) { transition-delay: 210ms; }
[data-revealed='true'] > .prose > *:nth-child(5) { transition-delay: 280ms; }
[data-revealed='true'] > .prose > *:nth-child(n+6) { transition-delay: 350ms; }

[data-reveal] .media,
[data-reveal] .pgal__frame {
  clip-path: inset(0 0 0 100%);
  transition: clip-path var(--t-scene) var(--ease-entry);
}
[dir='rtl'] [data-reveal] .media,
[dir='rtl'] [data-reveal] .pgal__frame {
  clip-path: inset(0 100% 0 0);        
}
[data-revealed='true'] .media,
[data-revealed='true'] .pgal__frame {
  clip-path: inset(0 0 0 0);
}

[data-reveal] .pgal__item {
  opacity: 0;
  transform: translateY(12px);
  transition:
    opacity var(--t-reveal) var(--ease-entry),
    transform var(--t-reveal) var(--ease-entry);
}
[data-revealed='true'] .pgal__item { opacity: 1; transform: none; }

[data-revealed='true'] .pgal__item:nth-child(1) { transition-delay: 60ms; }
[data-revealed='true'] .pgal__item:nth-child(2) { transition-delay: 120ms; }
[data-revealed='true'] .pgal__item:nth-child(3) { transition-delay: 180ms; }
[data-revealed='true'] .pgal__item:nth-child(4) { transition-delay: 240ms; }
[data-revealed='true'] .pgal__item:nth-child(n+5) { transition-delay: 300ms; }

[data-reveal] .cmp__pane--before {
  opacity: 0;
  transform: translateY(10px);
  transition: opacity var(--t-reveal) var(--ease-entry),
              transform var(--t-reveal) var(--ease-entry);
}
[data-reveal] .cmp__pane--after {
  opacity: 0;
  transform: translateY(18px) scale(0.982);   
  transition: opacity var(--t-scene) var(--ease-entry) 140ms,
              transform var(--t-scene) var(--ease-entry) 140ms;
}
[data-revealed='true'] .cmp__pane--before,
[data-revealed='true'] .cmp__pane--after {
  opacity: 1;
  transform: none;
}

.cmp__state-btn { transition: background var(--t-micro) var(--ease-move),
                              border-color var(--t-micro) var(--ease-move),
                              color var(--t-micro) var(--ease-move); }

[data-reveal] .chapter__rule {
  transform: scaleX(0);
  transform-origin: right center;        
  transition: transform var(--t-scene) var(--ease-entry);
}
[dir='ltr'] [data-reveal] .chapter__rule { transform-origin: left center; }
[data-revealed='true'] .chapter__rule { transform: scaleX(1); }

[data-reveal] .chapter__num {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity var(--t-transform) var(--ease-entry),
              transform var(--t-transform) var(--ease-entry);
}
[data-revealed='true'] .chapter__num { opacity: 0.5; transform: none; }

[data-reveal] .chapter__title,
[data-reveal] .chapter__en,
[data-reveal] .chapter__lead,
[data-reveal] .chapter__span {
  opacity: 0;
  transform: translateY(14px);
  transition: opacity var(--t-scene) var(--ease-entry),
              transform var(--t-scene) var(--ease-entry);
}
[data-revealed='true'] .chapter__title { transition-delay: 90ms; }
[data-revealed='true'] .chapter__en    { transition-delay: 150ms; }
[data-revealed='true'] .chapter__lead  { transition-delay: 210ms; }
[data-revealed='true'] .chapter__span  { transition-delay: 260ms; }
[data-revealed='true'] .chapter__title,
[data-revealed='true'] .chapter__en,
[data-revealed='true'] .chapter__lead,
[data-revealed='true'] .chapter__span { opacity: 1; transform: none; }

[data-reveal] .prose__stat-value {
  opacity: 0;
  transform: translateY(12px);
  transition: opacity var(--t-scene) var(--ease-entry) 120ms,
              transform var(--t-scene) var(--ease-entry) 120ms;
}
[data-revealed='true'] .prose__stat-value { opacity: 1; transform: none; }

.btn, .chapter-link, .pgal__src { transition:
  background var(--t-micro) var(--ease-move),
  border-color var(--t-micro) var(--ease-move),
  color var(--t-micro) var(--ease-move),
  transform var(--t-micro) var(--ease-move); }

.btn--primary:active, .btn--ghost:active { transform: translateY(1px); }

@media (hover: hover) and (pointer: fine) {
  .pgal__item:hover .pgal__frame { transform: scale(1.028); }
}
.pgal__frame { transition: transform var(--t-reveal) var(--ease-move),
                           box-shadow var(--t-reveal) var(--ease-move); }

[data-motion='off'] [data-reveal] > .prose > *,
[data-motion='off'] [data-reveal] > .prose > .prose__points > li,
[data-motion='off'] [data-reveal] .pgal__item,
[data-motion='off'] [data-reveal] .cmp__pane--before,
[data-motion='off'] [data-reveal] .cmp__pane--after,
[data-motion='off'] [data-reveal] .chapter__num,
[data-motion='off'] [data-reveal] .chapter__title,
[data-motion='off'] [data-reveal] .chapter__en,
[data-motion='off'] [data-reveal] .chapter__lead,
[data-motion='off'] [data-reveal] .chapter__span,
[data-motion='off'] [data-reveal] .prose__stat-value,
[data-motion='off'] [data-reveal] {
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
  transition-delay: 0ms !important;
}
[data-motion='off'] [data-reveal] .chapter__num { opacity: 0.5 !important; }

[data-motion='off'] [data-reveal] .media,
[data-motion='off'] [data-reveal] .pgal__frame {
  clip-path: none !important;
  transition: none !important;
}

[data-motion='off'] [data-reveal] .chapter__rule {
  transform: none !important;
  transition: none !important;
}

@media (prefers-reduced-motion: reduce) {
  [data-reveal] > .prose > *,
  [data-reveal] > .prose > .prose__points > li,
  [data-reveal] .pgal__item,
  [data-reveal] .cmp__pane--before,
  [data-reveal] .cmp__pane--after,
  [data-reveal] .chapter__num,
  [data-reveal] .chapter__title,
  [data-reveal] .chapter__en,
  [data-reveal] .chapter__lead,
  [data-reveal] .chapter__span,
  [data-reveal] .prose__stat-value {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
    transition-delay: 0ms !important;
  }
  [data-revealed='true'] .chapter__num { opacity: 0.5 !important; }

  
  [data-reveal] .media,
  [data-reveal] .pgal__frame,
  [data-revealed='true'] .media,
  [data-revealed='true'] .pgal__frame {
    clip-path: none !important;
    transition: none !important;
  }

  [data-reveal] .chapter__rule,
  [data-revealed='true'] .chapter__rule {
    transform: none !important;
    transition: none !important;
  }

  @media (hover: hover) {
    .pgal__item:hover .pgal__frame { transform: none; }
  }
}
