/* intro v25 — Sagmeister ticket: corner patch, spiral binding, ticket perforation, square thumb */

/* Corner accent patch → triangle */
.intro-tkt__patch {
    width: 10rem;
    height: 10rem;
    clip-path: polygon(0 0, 100% 0, 0 100%);
    opacity: 0.9;
}
.intro-tkt__spiral { height: 1rem; }
.intro-tkt__body { min-width: 0; }
.intro-tkt__close { width: 2rem; height: 2rem; }

/* Torn notebook spiral binding holes (colour from Tailwind text-*, holes via mask) */
.intro-tkt__spiral {
    -webkit-mask: radial-gradient(circle 5px at center, black 98%, transparent 100%) 0 0 / 30px 100%;
    mask: radial-gradient(circle 5px at center, black 98%, transparent 100%) 0 0 / 30px 100%;
    background: currentColor;
    opacity: 0.5;
}

/* Square cropped thumbnail */
.intro-tkt__thumb {
    width: 6rem;
    height: 6rem;
    object-fit: cover;
}

/* Ticket stub perforation (currentColor from the card text) */
.intro-tkt__ticket { transition: box-shadow 240ms ease; }
.intro-tkt__ticket::after {
    content: "";
    position: absolute;
    top: 0.75rem;
    bottom: 0.75rem;
    left: 7.5rem;
    border-left: 2px dashed currentColor;
    opacity: 0.25;
    pointer-events: none;
}
@media (max-width: 575.98px) {
    .intro-tkt__ticket::after { display: none; }
}

/* glossary ledger — icon tile sizes, footnote icon size, hover motion (matches stats-style sections) */
.glossary-ledger__icon-cell,
.glossary-ledger__index {
    width: 3.25rem;
    height: 3.25rem;
}

.glossary-ledger__index {
    min-width: 3.25rem;
}

.glossary-ledger__icon-fa {
    font-size: 1.25rem;
    line-height: 1;
}

.glossary-ledger__note-wrap {
    width: 3.5rem;
    height: 3.5rem;
}

.glossary-ledger__note-icon {
    font-size: 1.35rem;
    line-height: 1;
}

.glossary-ledger__accent {
    height: 0.28rem;
}

.glossary-ledger__card {
    transition: transform 0.28s ease;
}

.glossary-ledger__card:hover .glossary-ledger__accent {
    transform: scaleX(1);
}

.glossary-ledger .glossary-ledger__accent {
    transform: scaleX(0.88);
    transform-origin: left center;
    transition: transform 0.3s ease;
}

.tips-interactive__badge {
    z-index: 20;
}

.tips-interactive__inner {
    z-index: 10;
}

.tips-interactive__panel {
    z-index: 50;
}

.tips-interactive__thumb {
    width: 4rem;
    height: 4rem;
}

.tips-interactive__thumb--sm {
    width: 3rem;
    height: 3rem;
}

.tips-interactive__panel--collapsed {
    opacity: 0;
    pointer-events: none;
    transform: translateY(-1rem);
}

.tips-interactive__panel--open {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
}

.faq-reader__tab, .faq-reader__step { appearance: none; -webkit-appearance: none; font: inherit; cursor: pointer; }
.faq-reader__tab { transition: background-color 250ms ease, border-color 250ms ease, box-shadow 250ms ease, transform 250ms ease; }
.faq-reader__tab:hover { transform: translateX(.25rem); }
.faq-reader__arrow { opacity: 0; transform: translateX(-.5rem); transition: opacity 250ms ease, transform 250ms ease; }
.faq-reader__tab.is-active .faq-reader__arrow { opacity: 1; transform: none; }
.faq-reader__q { min-width: 0; }

.faq-reader__seg { height: .375rem; }
.faq-reader__fill { width: 0; }
.faq-reader__step { width: 2.75rem; height: 2.75rem; }
.faq-reader__bulb { width: 2.25rem; height: 2.25rem; }

.faq-reader__stage { min-height: 16rem; }
@keyframes faq-reader-in { from { opacity: 0; transform: translateX(1.5rem); } to { opacity: 1; transform: none; } }
.faq-reader__panel.is-current { animation: faq-reader-in 500ms cubic-bezier(.2, .8, .2, 1) both; }

@media (min-width: 992px) {
    .faq-reader__stage { min-height: 20rem; }
}

@media (prefers-reduced-motion: reduce) {
    .faq-reader__tab, .faq-reader__arrow { transition: none; }
    .faq-reader__tab:hover { transform: none; }
    .faq-reader__panel.is-current { animation: none; }
}

