/* intro v18 — Emigre clay: blurred photo, ECG draw, typewriter caret */

/* Blurred background photo, sharp panel sits over it */
.intro-clay [data-photo] {
    width: 66%;
    aspect-ratio: 4 / 3;
}
.intro-clay__img {
    object-fit: cover;
    filter: blur(5px) saturate(1.05);
    transform: scale(1.06);
}

/* Heartbeat / ECG line draw (stroke colour = currentColor from Tailwind text-*) */
.intro-clay__ecg-path {
    stroke-dasharray: 1400;
    stroke-dashoffset: 1400;
    animation: intro-clay-ecg 4s linear infinite;
}
@keyframes intro-clay-ecg {
    0%   { stroke-dashoffset: 1400; }
    60%  { stroke-dashoffset: 0; }
    100% { stroke-dashoffset: -1400; }
}

/* Typewriter caret while typing */
.intro-clay__type .is-typing {
    border-right: 2px solid currentColor;
    animation: intro-clay-caret 800ms step-end infinite;
}
@keyframes intro-clay-caret {
    50% { border-color: transparent; }
}

@media (prefers-reduced-motion: reduce) {
    .intro-clay__ecg-path { animation: none; stroke-dashoffset: 0; }
}

/* path-rail — numbered path with dashed connectors above step cards */
.path-rail__eyebrow {
    letter-spacing: 0.12em;
}

.path-rail__title {
    letter-spacing: -0.02em;
}

.path-rail__mark {
    width: 2.25rem;
    height: 2.25rem;
    z-index: 1;
}

.path-rail__line {
    height: 0;
    top: 50%;
    left: 12.5%;
    right: 12.5%;
    border-top-style: dashed !important;
}

.path-rail__icon {
    width: 3.25rem;
    height: 3.25rem;
}

.path-rail__text {
    max-width: 20rem;
}

@media (max-width: 767.98px) {
    .path-rail__line {
        display: none;
    }
}

.tips-numbered__card {
    max-width: 24rem;
}

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


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

.explain-solver__icon-thumb { width: 3rem; height: 3rem; }

