/* FAQ v8 — flip card states (no Tailwind in script) */
.primer-clarify-query-chapter.primer-clarify-prompt-latent {
    transform: translateY(-100%);
    opacity: 0;
}

.primer-clarify-query-chapter.primer-clarify-prompt-shown {
    transform: translateY(0);
    opacity: 1;
}

.primer-clarify-reply-chapter.primer-clarify-resolve-latent {
    transform: translateY(100%);
    opacity: 0;
}

.primer-clarify-reply-chapter.primer-clarify-resolve-shown {
    transform: translateY(0);
    opacity: 1;
}

.primer-clarify-query-chapter,
.primer-clarify-reply-chapter {
    transition: transform 0.5s ease-in-out, opacity 0.5s ease-in-out;
}

/* Card min-height for flip layout */
.primer-clarify__card-wrap { min-height: 20rem; }

/* Corner blob size */
.primer-clarify__corner-blob { width: 5rem; height: 5rem; }

/* Animation delays */
.primer-clarify__flare--delay-1 { animation-delay: 0.2s; }
.primer-clarify__flare--delay-2 { animation-delay: 0.4s; }
.primer-clarify__flare--delay-3 { animation-delay: 0.8s; }
.primer-clarify__flare--delay-4 { animation-delay: 1s; }
.primer-clarify__flare--delay-5 { animation-delay: 1.2s; }
.primer-clarify__flare--delay-6 { animation-delay: 1.5s; }
.primer-clarify__flare--delay-7 { animation-delay: 2s; }

/* Cluster positions */
.primer-clarify__cluster-a { top: 3rem; left: 2rem; transform: rotate(45deg); }
.primer-clarify__cluster-b { top: 33%; right: 3rem; transform: rotate(-12deg); }
.primer-clarify__cluster-c { bottom: 4rem; left: 25%; transform: rotate(12deg); }

/* Standalone dot positions */
.primer-clarify__dot-a { top: 5rem; right: 5rem; width: 0.5rem; height: 0.5rem; }
.primer-clarify__dot-b { bottom: 6rem; right: 33%; width: 0.75rem; height: 0.75rem; }

/* Inner cluster child positions */
.primer-clarify__inner-a { top: 1rem; left: 1rem; width: 0.75rem; height: 0.75rem; }
.primer-clarify__inner-b { top: 2rem; left: 2rem; width: 0.5rem; height: 0.5rem; }
.primer-clarify__inner-c { top: 1.5rem; left: 1.5rem; width: 0.5rem; height: 0.5rem; }
.primer-clarify__inner-d { top: 3rem; left: 3rem; width: 1rem; height: 1rem; }
.primer-clarify__inner-e { top: 0.75rem; left: 0.75rem; width: 0.75rem; height: 0.75rem; }

/* Decorative lines */
.primer-clarify__line-a { top: 0.25rem; left: 0.25rem; width: 3rem; height: 0.125rem; }
.primer-clarify__line-b { top: 1.25rem; left: 1.25rem; width: 2rem; height: 0.125rem; }
.primer-clarify__line-c { top: 0.75rem; left: 0.75rem; width: 4rem; height: 0.125rem; }
.primer-clarify__line-d { top: 0.25rem; left: 0.25rem; width: 2.5rem; height: 0.125rem; }

@keyframes primer-clarify-flare-ping-cycle {
    75%, 100% { transform: scale(2); opacity: 0; }
}
.primer-clarify__flare--ping {
    animation: primer-clarify-flare-ping-cycle 1s cubic-bezier(0,0,.2,1) infinite;
}

@keyframes primer-clarify-flare-throb-cycle {
    0%, 100% { opacity: 1; }
    50%       { opacity: .5; }
}
.primer-clarify__flare--throb {
    animation: primer-clarify-flare-throb-cycle 2s cubic-bezier(.4,0,.6,1) infinite;
}

@keyframes primer-clarify-flare-rebound-cycle {
    0%, 100% { transform: translateY(0); animation-timing-function: cubic-bezier(.8,0,1,1); }
    50%       { transform: translateY(-25%); animation-timing-function: cubic-bezier(0,0,.2,1); }
}
.primer-clarify__flare--rebound {
    animation: primer-clarify-flare-rebound-cycle 1s infinite;
}

.primer-clarify__flare--lift:hover { transform: scale(1.5); transition: transform .2s ease; }

.primer-clarify__control--lift:hover { transform: scale(1.05); transition: transform .2s ease; }

/* glossary gazette — multi-column flow (not CSS grid), brick avoid breaks, footnote icon */
.glossary-gazette__columns {
    column-count: 1;
    column-gap: 1.25rem;
}

@media (min-width: 768px) {
    .glossary-gazette__columns {
        column-count: 2;
        column-gap: 1.5rem;
    }
}

@media (min-width: 1200px) {
    .glossary-gazette__columns {
        column-count: 3;
    }
}

.glossary-gazette__brick {
    break-inside: avoid;
    margin-bottom: 1rem;
}

.glossary-gazette__note-ico {
    width: 3.25rem;
    height: 3.25rem;
}

.glossary-gazette__note-icon {
    font-size: 1.25rem;
    line-height: 1;
}

.cta-staircase__step-num {
  width: 3rem;
  height: 3rem;
  min-width: 3rem;
  min-height: 3rem;
  flex-shrink: 0;
}

.cta-staircase__stairs {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}

.cta-staircase__step {
  transform: translateX(calc(var(--step, 0) * 20px));
  animation: cta-staircase__fade 600ms ease both;
  animation-delay: calc(var(--step, 0) * 100ms);
}

@keyframes cta-staircase__fade {
  from { opacity: 0; transform: translateX(-30px); }
  to { opacity: 1; transform: translateX(calc(var(--step, 0) * 20px)); }
}

@media (max-width: 768px) {
  .cta-staircase__step {
    transform: translateX(0);
  }
}

