/* Editorial rows preserve the approved number / heading / description composition. */
.result-section {
    --result-paper: var(--c-white);
    background: var(--result-paper);
    border-top: 24px solid var(--c-ink);
}
.result-section::before { display: none; }
.result-head { margin: 0 0 32px; padding: 0 0 40px; border-bottom: 1px solid var(--c-ink); }
.result-heading { max-width: 1160px; font-size: clamp(44px, 6.8vw, 88px); font-weight: 900; line-height: .98; letter-spacing: -.055em; }
.result-stack { position: relative; isolation: isolate; border-left: 2px solid var(--c-accent); padding-left: 32px; }
.result-card {
    --cover: 0;
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    align-items: center;
    gap: 40px;
    margin: 0;
    padding: 32px 0;
    min-height: 248px;
    border-bottom: 1px solid var(--c-line-soft);
    background: var(--result-paper);
}
.result-card::before { content: ''; position: absolute; left: -40px; top: calc(50% + (var(--stack-strip, 0px) - var(--stack-height, 0px)) * var(--cover) / 2); width: 14px; height: 5px; background: var(--c-accent); border: 3px solid var(--result-paper); box-sizing: content-box; }
.result-card-head { display: grid; grid-template-columns: 128px minmax(0, 1fr); align-items: center; gap: 32px; min-width: 0; }
.result-number { font-size: clamp(76px, 8vw, 108px); font-weight: 800; line-height: .95; letter-spacing: -.07em; color: transparent; -webkit-text-stroke: 1px var(--c-ink); font-variant-numeric: tabular-nums; transform-origin: left center; }
.result-title { position: relative; overflow-wrap: break-word; font-size: clamp(26px, 3vw, 38px); line-height: 1.08; font-weight: 850; letter-spacing: -.045em; transform-origin: left center; }
.result-title::before { content: ''; position: absolute; width: 30px; height: 3px; left: -42px; top: .55em; background: var(--c-accent); }
.result-text { margin: 0; max-width: 560px; font-size: clamp(17px, 1.7vw, 22px); line-height: 1.5; color: #37342f; text-wrap: pretty; }
.result-text strong { color: var(--c-ink); font-weight: 650; text-decoration: underline; text-decoration-color: var(--c-accent); text-decoration-thickness: 3px; text-underline-offset: 5px; }
.result-stack.is-stacked .result-card {
    position: sticky;
    top: calc(var(--stack-top) + var(--card-index) * var(--stack-strip));
    height: var(--stack-height);
    z-index: calc(1 + var(--card-index));
    margin-bottom: 32px;
    box-shadow: 0 -12px 24px -22px rgba(0, 0, 0, .25);
}
.result-stack.is-stacked .result-card-head { transform: translateY(calc((var(--stack-strip) - var(--stack-height)) * var(--cover) / 2)); }
.result-stack.is-stacked .result-number { transform: scale(calc(1 - .6 * var(--cover))); }
.result-stack.is-stacked .result-title { transform: scale(calc(1 - .4 * var(--cover))); }
.result-stack.is-stacked .result-card:last-child { margin-bottom: 0; }
@media (max-width: 1000px) and (min-width: 701px) {
    .result-card { gap: 28px; }
    .result-card-head { grid-template-columns: 72px minmax(0, 1fr); gap: 24px; }
    .result-number { font-size: 64px; }
    .result-title { font-size: 24px; }
    .result-title::before { width: 18px; left: -24px; }
}
@media (max-width: 700px) {
    .result-head { margin-bottom: 20px; padding-bottom: 28px; }
    .result-heading { font-size: clamp(38px, 10.5vw, 64px); }
    .result-stack { padding-left: 18px; }
    .result-card { grid-template-columns: minmax(0, 1fr); gap: 20px; padding: 20px 0 28px; min-height: 0; align-content: start; }
    .result-card-head { grid-template-columns: 60px minmax(0, 1fr); gap: 20px; }
    .result-number { font-size: 64px; }
    .result-title { font-size: clamp(20px, 5.8vw, 24px); }
    .result-title::before { width: 14px; left: -20px; }
    .result-text { font-size: 17px; line-height: 1.55; }
    .result-card::before { left: -26px; top: 46px; }
    .result-stack.is-stacked .result-card-head { transform: none; }
    .result-stack.is-stacked .result-number { transform: scale(calc(1 - .4 * var(--cover))); }
    .result-stack.is-stacked .result-title { transform: scale(calc(1 - .2 * var(--cover))); }
}
@media (prefers-reduced-motion: reduce) {
    .result-stack.is-stacked .result-card { position: relative; top: auto; height: auto; box-shadow: none; }
    .result-stack.is-stacked .result-card-head,
    .result-stack.is-stacked .result-number,
    .result-stack.is-stacked .result-title { transform: none; }
}
