@charset "UTF-8";

:root {
    --banaschak-night: #17130f;
    --banaschak-night-soft: #2a2119;
    --banaschak-paper: #eee8dc;
    --banaschak-paper-deep: #dfd4c2;
    --banaschak-ink: #211b16;
    --banaschak-muted: #70665d;
    --banaschak-red: #a33a2a;
    --banaschak-red-light: #d66b51;
    --banaschak-line: rgba(33, 27, 22, .2);
    --banaschak-serif: Georgia, "Times New Roman", serif;
    --banaschak-sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.banaschak-recovery,
.banaschak-site-header,
.banaschak-site-footer {
    box-sizing: border-box;
    color: var(--banaschak-ink);
    font-family: var(--banaschak-sans);
}

.banaschak-recovery *,
.banaschak-recovery *::before,
.banaschak-recovery *::after,
.banaschak-site-header *,
.banaschak-site-footer * { box-sizing: border-box; }

.banaschak-recovery a,
.banaschak-site-header a,
.banaschak-site-footer a { color: inherit; }

.banaschak-recovery h1,
.banaschak-recovery h2,
.banaschak-recovery h3,
.banaschak-recovery p,
.banaschak-recovery blockquote { margin-top: 0; }

.banaschak-recovery h1,
.banaschak-recovery h2,
.banaschak-recovery h3,
.banaschak-brand,
.banaschak-statement blockquote {
    font-family: var(--banaschak-serif);
    letter-spacing: -.045em;
}

.banaschak-skip {
    position: fixed;
    top: 0;
    left: 1rem;
    z-index: 1000;
    padding: .8rem 1rem;
    color: #111;
    background: #fff;
    transform: translateY(-120%);
}

.banaschak-skip:focus { transform: none; }

.banaschak-standalone {
    margin: 0;
    color: var(--banaschak-ink);
    background: var(--banaschak-paper);
    overflow-x: clip;
}

.banaschak-site-header {
    min-height: 78px;
    padding: 0 clamp(1.2rem, 4.5vw, 5rem);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    color: #f7f2e8;
    background: var(--banaschak-night);
    border-bottom: 1px solid rgba(255, 255, 255, .12);
}

.banaschak-site-mark {
    display: inline-flex;
    align-items: center;
    gap: .75rem;
    color: inherit;
    font-size: .82rem;
    letter-spacing: .055em;
    text-decoration: none;
    text-transform: uppercase;
}

.banaschak-site-mark > span {
    width: 36px;
    height: 36px;
    display: inline-grid;
    place-items: center;
    color: #fff;
    background: var(--banaschak-red);
    border-radius: 50%;
    font-family: var(--banaschak-serif);
    font-size: 1.15rem;
    font-weight: 800;
}

.banaschak-nav {
    display: flex;
    align-items: center;
    gap: clamp(.8rem, 2.5vw, 2.35rem);
}

.banaschak-nav a {
    color: inherit;
    font-size: .72rem;
    font-weight: 750;
    opacity: .66;
    text-decoration: none;
    transition: color .2s ease, opacity .2s ease;
}

.banaschak-nav a:hover,
.banaschak-nav a:focus-visible { color: #f1b29d; opacity: 1; }

.banaschak-recovery {
    --banaschak-pad: clamp(1.25rem, 5vw, 5.75rem);
    width: 100%;
}

.banaschak-home {
    background: var(--banaschak-paper);
    overflow: visible;
}

.banaschak-hero {
    position: relative;
    width: 100%;
    min-height: clamp(650px, calc(100svh - 96px), 920px);
    display: flex;
    align-items: flex-end;
    isolation: isolate;
    color: #fff;
    background: var(--banaschak-night);
    overflow: hidden;
}

.banaschak-js .banaschak-hero {
    width: var(--banaschak-hero-width, 100vw);
    margin-left: var(--banaschak-edge, 0);
}

.banaschak-hero-image {
    position: absolute;
    inset: -4%;
    z-index: -3;
    width: 108%;
    height: 108%;
    object-fit: cover;
    object-position: center;
    transform: translate3d(0, var(--banaschak-parallax, 0), 0) scale(1.025);
    will-change: transform;
}

.banaschak-hero-shade {
    position: absolute;
    inset: 0;
    z-index: -2;
    background:
        linear-gradient(90deg, rgba(13, 11, 9, .99) 0%, rgba(13, 11, 9, .94) 30%, rgba(13, 11, 9, .56) 56%, rgba(13, 11, 9, .2) 82%),
        linear-gradient(0deg, rgba(13, 11, 9, .9), transparent 58%);
}

.banaschak-hero-inner {
    width: min(1440px, 100%);
    margin: 0 auto;
    padding: clamp(4.5rem, 9vh, 7.5rem) var(--banaschak-pad) clamp(4rem, 8vh, 6.5rem);
}

.banaschak-eyebrow,
.banaschak-kicker {
    margin-bottom: 1rem;
    color: var(--banaschak-red-light);
    font-size: .68rem;
    font-weight: 850;
    letter-spacing: .18em;
    text-transform: uppercase;
}

.banaschak-brand {
    margin: 0 0 clamp(3.5rem, 8vh, 6rem);
    color: #fff;
    font-size: clamp(4rem, 9.5vw, 10.5rem);
    font-weight: 800;
    line-height: .76;
    letter-spacing: -.075em;
}

.banaschak-hero h1 {
    max-width: 860px;
    margin: 0 0 1.4rem;
    color: #fff;
    font-size: clamp(2.7rem, 5vw, 5.7rem);
    font-weight: 700;
    line-height: .92;
}

.banaschak-lede {
    max-width: 620px;
    margin-bottom: 2rem;
    color: rgba(255, 255, 255, .74);
    font-size: clamp(1rem, 1.45vw, 1.2rem);
    line-height: 1.68;
}

.banaschak-actions {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    flex-wrap: wrap;
}

.banaschak-button {
    min-height: 50px;
    padding: .9rem 1.3rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff !important;
    background: var(--banaschak-red);
    border: 1px solid #c35c49;
    border-radius: 2px;
    font-size: .8rem;
    font-weight: 850;
    text-decoration: none;
    transition: background .2s ease, transform .2s ease;
}

.banaschak-button:hover,
.banaschak-button:focus-visible { background: #b54835; transform: translateY(-3px); }

.banaschak-button-light {
    color: var(--banaschak-ink) !important;
    background: #f4ede1;
    border-color: #f4ede1;
}

.banaschak-button-light:hover,
.banaschak-button-light:focus-visible { background: #fff; }

.banaschak-quiet-link {
    display: inline-flex;
    align-items: center;
    gap: .55rem;
    color: #fff !important;
    padding-bottom: .18rem;
    font-size: .8rem;
    font-weight: 750;
    text-decoration: none;
    border-bottom: 1px solid rgba(255, 255, 255, .5);
}

.banaschak-quiet-link span,
.banaschak-text-link span { transition: transform .2s ease; }

.banaschak-quiet-link:hover span,
.banaschak-quiet-link:focus-visible span { transform: translate(.2rem, -.15rem); }

.banaschak-intro,
.banaschak-method {
    padding: clamp(5rem, 10vw, 10rem) var(--banaschak-pad);
    display: grid;
    grid-template-columns: minmax(150px, .55fr) minmax(0, 1.45fr);
    gap: clamp(2rem, 8vw, 9rem);
}

.banaschak-intro h2,
.banaschak-method h2 {
    max-width: 980px;
    margin-bottom: 1.5rem;
    font-size: clamp(2.65rem, 6.2vw, 6.9rem);
    font-weight: 700;
    line-height: .92;
}

.banaschak-intro div > p {
    max-width: 760px;
    color: #5c534c;
    font-size: clamp(1rem, 1.4vw, 1.17rem);
    line-height: 1.82;
}

.banaschak-index { border-top: 1px solid var(--banaschak-line); }

.banaschak-index-row {
    min-height: 176px;
    padding: 2.2rem var(--banaschak-pad);
    display: grid;
    grid-template-columns: minmax(70px, .22fr) minmax(0, 1fr) auto;
    align-items: center;
    gap: 1rem;
    text-decoration: none;
    border-bottom: 1px solid var(--banaschak-line);
    transition: background .25s ease, color .25s ease, padding .25s ease;
}

.banaschak-index-number {
    color: #8d5146;
    font-family: ui-monospace, "SFMono-Regular", Consolas, monospace;
    font-size: .7rem;
    font-weight: 800;
    letter-spacing: .12em;
}

.banaschak-index-row h3 {
    margin: 0 0 .4rem;
    font-size: clamp(1.85rem, 3.7vw, 4rem);
    font-weight: 700;
    line-height: 1;
}

.banaschak-index-row p {
    max-width: 690px;
    margin: 0;
    color: var(--banaschak-muted);
    line-height: 1.55;
}

.banaschak-index-row > b {
    font-size: 1.4rem;
    font-weight: 400;
    transition: transform .2s ease;
}

.banaschak-index-row:hover,
.banaschak-index-row:focus-visible {
    padding-left: calc(var(--banaschak-pad) + .8rem);
    color: #fff;
    background: var(--banaschak-night);
}

.banaschak-index-row:hover p,
.banaschak-index-row:focus-visible p { color: rgba(255, 255, 255, .64); }

.banaschak-index-row:hover .banaschak-index-number,
.banaschak-index-row:focus-visible .banaschak-index-number { color: #e98770; }

.banaschak-index-row:hover > b,
.banaschak-index-row:focus-visible > b { transform: translate(.25rem, -.25rem); }

.banaschak-method { background: var(--banaschak-paper-deep); }

.banaschak-method h2 { font-size: clamp(2.5rem, 5.3vw, 5.7rem); }

.banaschak-method-list {
    margin: 0;
    padding: 0;
    list-style: none;
    border-top: 1px solid var(--banaschak-line);
}

.banaschak-method-list li {
    min-height: 112px;
    padding: 1.5rem 0;
    display: grid;
    grid-template-columns: minmax(90px, .35fr) minmax(0, 1fr);
    align-items: start;
    gap: 1.5rem;
    border-bottom: 1px solid var(--banaschak-line);
}

.banaschak-method-list span {
    color: var(--banaschak-red);
    font-size: .7rem;
    font-weight: 850;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.banaschak-method-list p {
    margin: 0;
    color: #514941;
    line-height: 1.65;
}

.banaschak-statement {
    min-height: 720px;
    padding: clamp(5rem, 10vw, 10rem) var(--banaschak-pad);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    color: #fff;
    background: var(--banaschak-red);
}

.banaschak-statement .banaschak-kicker { color: #f2b7a7; }

.banaschak-statement blockquote {
    max-width: 1100px;
    margin-bottom: 2rem;
    color: #fff;
    font-size: clamp(3rem, 7vw, 7.5rem);
    font-weight: 700;
    line-height: .91;
}

.banaschak-statement > p:not(.banaschak-kicker) {
    max-width: 720px;
    margin-bottom: 2rem;
    color: rgba(255, 255, 255, .75);
    line-height: 1.75;
}

/* Standalone article pages */
.banaschak-route { background: var(--banaschak-paper); }

.banaschak-route-hero {
    position: relative;
    min-height: clamp(590px, calc(88svh - 78px), 870px);
    padding: clamp(5rem, 10vw, 9rem) var(--banaschak-pad);
    display: flex;
    align-items: flex-end;
    isolation: isolate;
    color: #fff;
    background: var(--banaschak-night);
    overflow: hidden;
}

.banaschak-route-hero-image {
    position: absolute;
    inset: -3%;
    z-index: -3;
    background: url("banaschak.net-chess-study.webp") center / cover no-repeat;
    transform: translate3d(0, var(--banaschak-route-parallax, 0), 0) scale(1.035);
    will-change: transform;
}

.banaschak-route-hero-shade {
    position: absolute;
    inset: 0;
    z-index: -2;
    background:
        linear-gradient(90deg, rgba(14, 11, 9, .99) 0%, rgba(14, 11, 9, .91) 45%, rgba(14, 11, 9, .22) 100%),
        linear-gradient(0deg, rgba(14, 11, 9, .92), transparent 62%);
}

.banaschak-route-hero-inner {
    position: relative;
    z-index: 1;
    width: min(1330px, 100%);
    margin: 0 auto;
}

.banaschak-route-number {
    position: absolute;
    right: 0;
    bottom: -.13em;
    margin: 0;
    color: rgba(255, 255, 255, .08);
    font-family: var(--banaschak-serif);
    font-size: clamp(12rem, 27vw, 30rem);
    font-weight: 800;
    line-height: .65;
    pointer-events: none;
}

.banaschak-route h1 {
    position: relative;
    max-width: 1100px;
    margin: .75rem 0 1.5rem;
    color: #fff;
    font-size: clamp(3.2rem, 7.7vw, 8.7rem);
    font-weight: 700;
    line-height: .87;
    overflow-wrap: anywhere;
}

.banaschak-route-intro {
    position: relative;
    max-width: 810px;
    margin-bottom: 0;
    color: rgba(255, 255, 255, .73);
    font-size: clamp(1rem, 1.5vw, 1.18rem);
    line-height: 1.76;
}

.banaschak-article-layout {
    width: min(1420px, 100%);
    margin: 0 auto;
    padding: clamp(4.5rem, 9vw, 9rem) var(--banaschak-pad);
    display: grid;
    grid-template-columns: minmax(0, 1.3fr) minmax(260px, .55fr);
    gap: clamp(3rem, 9vw, 10rem);
}

.banaschak-prose {
    padding: 0 0 clamp(4.5rem, 8vw, 8rem);
}

.banaschak-prose:not(:first-child) {
    padding-top: clamp(4rem, 7vw, 7rem);
    border-top: 1px solid var(--banaschak-line);
}

.banaschak-prose h2 {
    max-width: 880px;
    margin: 0 0 1.7rem;
    font-size: clamp(2.45rem, 5vw, 5.7rem);
    font-weight: 700;
    line-height: .94;
}

.banaschak-prose > p:not(.banaschak-kicker) {
    max-width: 790px;
    color: #504841;
    font-size: clamp(1rem, 1.25vw, 1.12rem);
    line-height: 1.86;
}

.banaschak-piece-list,
.banaschak-test-grid {
    margin-top: 2.5rem;
    border-top: 1px solid var(--banaschak-line);
}

.banaschak-piece-list > div,
.banaschak-test-grid > div {
    padding: 1.6rem 0;
    display: grid;
    grid-template-columns: minmax(150px, .42fr) minmax(0, 1fr);
    gap: 1.5rem;
    border-bottom: 1px solid var(--banaschak-line);
}

.banaschak-piece-list h3,
.banaschak-test-grid h3 {
    margin: 0;
    font-size: clamp(1.3rem, 2vw, 1.8rem);
    line-height: 1.15;
}

.banaschak-piece-list p,
.banaschak-test-grid p {
    margin: 0;
    color: #5d544c;
    line-height: 1.7;
}

.banaschak-numbered {
    margin: 2rem 0 2rem;
    padding: 0;
    list-style: none;
    counter-reset: banaschak-steps;
    border-top: 1px solid var(--banaschak-line);
}

.banaschak-numbered li {
    position: relative;
    min-height: 76px;
    padding: 1.35rem 0 1.35rem 3.7rem;
    color: #514941;
    line-height: 1.65;
    border-bottom: 1px solid var(--banaschak-line);
    counter-increment: banaschak-steps;
}

.banaschak-numbered li::before {
    position: absolute;
    top: 1.42rem;
    left: 0;
    content: "0" counter(banaschak-steps);
    color: var(--banaschak-red);
    font-family: ui-monospace, "SFMono-Regular", Consolas, monospace;
    font-size: .7rem;
    font-weight: 850;
    letter-spacing: .1em;
}

.banaschak-evidence-table {
    margin-top: 2.5rem;
    border-top: 1px solid var(--banaschak-line);
}

.banaschak-evidence-table > div {
    padding: 1.15rem 0;
    display: grid;
    grid-template-columns: .7fr 1.15fr 1.15fr;
    gap: 1.2rem;
    color: #564d46;
    line-height: 1.55;
    border-bottom: 1px solid var(--banaschak-line);
}

.banaschak-evidence-table > div:first-child {
    color: var(--banaschak-ink);
    font-size: .66rem;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.banaschak-text-link {
    display: inline-flex;
    align-items: center;
    gap: .7rem;
    margin-top: .7rem;
    padding-bottom: .25rem;
    color: var(--banaschak-red) !important;
    font-weight: 800;
    text-decoration: none;
    border-bottom: 1px solid rgba(163, 58, 42, .4);
}

.banaschak-text-link:hover span,
.banaschak-text-link:focus-visible span { transform: translateX(.3rem); }

.banaschak-link-list { border-top: 1px solid var(--banaschak-line); }

.banaschak-link-list a {
    padding: 1.35rem 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    font-family: var(--banaschak-serif);
    font-size: clamp(1.35rem, 2.4vw, 2.4rem);
    font-weight: 700;
    text-decoration: none;
    border-bottom: 1px solid var(--banaschak-line);
}

.banaschak-link-list small {
    display: block;
    margin-bottom: .3rem;
    color: var(--banaschak-red);
    font-family: var(--banaschak-sans);
    font-size: .62rem;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.banaschak-link-list b {
    font-weight: 400;
    transition: transform .2s ease;
}

.banaschak-link-list a:hover b,
.banaschak-link-list a:focus-visible b { transform: translate(.3rem, -.25rem); }

.banaschak-article-aside { align-self: stretch; }

.banaschak-article-aside > div {
    position: sticky;
    top: 2rem;
    border-top: 1px solid var(--banaschak-line);
}

.banaschak-article-aside .banaschak-kicker { padding-top: 1.3rem; }

.banaschak-article-aside dl { margin: 0; }

.banaschak-article-aside dl > div {
    padding: 1.2rem 0;
    border-bottom: 1px solid var(--banaschak-line);
}

.banaschak-article-aside dt {
    margin-bottom: .35rem;
    color: var(--banaschak-muted);
    font-size: .62rem;
    font-weight: 850;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.banaschak-article-aside dd {
    margin: 0;
    font-family: var(--banaschak-serif);
    font-size: clamp(1.1rem, 1.55vw, 1.5rem);
    line-height: 1.3;
}

.banaschak-related {
    width: min(1420px, 100%);
    margin: 0 auto;
    padding: 0 var(--banaschak-pad) clamp(5rem, 9vw, 9rem);
}

.banaschak-related > .banaschak-kicker { margin-bottom: 1.4rem; }

.banaschak-related a {
    padding: 1.2rem 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    font-family: var(--banaschak-serif);
    font-size: clamp(1.2rem, 2.1vw, 1.9rem);
    font-weight: 700;
    text-decoration: none;
    border-top: 1px solid var(--banaschak-line);
}

.banaschak-related a:last-child { border-bottom: 1px solid var(--banaschak-line); }

.banaschak-related b {
    font-weight: 400;
    transition: transform .2s ease;
}

.banaschak-related a:hover b,
.banaschak-related a:focus-visible b { transform: translate(.3rem, -.2rem); }

.banaschak-site-footer {
    padding: clamp(3rem, 6vw, 5.5rem) clamp(1.25rem, 5vw, 5.75rem);
    display: grid;
    grid-template-columns: minmax(230px, .55fr) minmax(0, 1.2fr);
    gap: 3rem;
    color: rgba(255, 255, 255, .66);
    background: #110e0b;
}

.banaschak-site-footer p {
    max-width: 760px;
    margin: 0;
    line-height: 1.7;
}

.banaschak-site-footer b {
    display: block;
    margin-bottom: .35rem;
    color: #fff;
    letter-spacing: .04em;
}

.banaschak-site-footer span { font-size: .76rem; }

/* Motion activated only when JavaScript is available. */
.banaschak-js .banaschak-hero-inner > *,
.banaschak-js .banaschak-route-hero-inner > * {
    opacity: 0;
    transform: translateY(22px);
    transition: opacity .62s ease, transform .62s ease;
}

.banaschak-js .banaschak-hero.is-ready .banaschak-hero-inner > *,
.banaschak-js .banaschak-route-hero.is-ready .banaschak-route-hero-inner > * { opacity: 1; transform: none; }

.banaschak-js .banaschak-hero.is-ready .banaschak-hero-inner > :nth-child(2),
.banaschak-js .banaschak-route-hero.is-ready .banaschak-route-hero-inner > :nth-child(2) { transition-delay: .08s; }

.banaschak-js .banaschak-hero.is-ready .banaschak-hero-inner > :nth-child(3),
.banaschak-js .banaschak-route-hero.is-ready .banaschak-route-hero-inner > :nth-child(3) { transition-delay: .15s; }

.banaschak-js .banaschak-hero.is-ready .banaschak-hero-inner > :nth-child(4),
.banaschak-js .banaschak-route-hero.is-ready .banaschak-route-hero-inner > :nth-child(4) { transition-delay: .22s; }

.banaschak-js .banaschak-hero.is-ready .banaschak-hero-inner > :nth-child(5) { transition-delay: .29s; }

.banaschak-js .banaschak-reveal {
    opacity: 0;
    transform: translateY(32px);
    transition: opacity .72s ease, transform .72s ease;
}

.banaschak-js .banaschak-reveal.is-visible { opacity: 1; transform: none; }

/* GeneratePress owns the header, footer, main grid, and live sidebar on /. */
.banaschak-wordpress-home { overflow-x: clip; }
.banaschak-recovery-active .site-content,
.banaschak-wordpress-home .content-area { overflow: visible; }
.banaschak-wordpress-home .banaschak-home { margin-top: 0; }
.banaschak-wordpress-home .banaschak-intro,
.banaschak-wordpress-home .banaschak-method {
    grid-template-columns: 1fr;
    gap: 1.5rem;
}
.banaschak-wordpress-home .banaschak-method h2,
.banaschak-wordpress-home .banaschak-intro h2 { font-size: clamp(2.5rem, 4.8vw, 5.2rem); }
.banaschak-recovery-active #right-sidebar {
    position: relative;
    z-index: 2;
    margin-top: clamp(650px, calc(100svh - 96px), 920px);
}

@media (max-width: 900px) {
    .banaschak-site-header { align-items: flex-start; flex-direction: column; padding-block: 1rem; gap: .8rem; }
    .banaschak-nav { width: 100%; padding-bottom: .25rem; overflow-x: auto; }
    .banaschak-nav a { white-space: nowrap; }
    .banaschak-intro,
    .banaschak-method,
    .banaschak-article-layout,
    .banaschak-site-footer { grid-template-columns: 1fr; }
    .banaschak-intro,
    .banaschak-method { gap: 1.5rem; }
    .banaschak-article-layout { gap: 1rem; }
    .banaschak-article-aside { order: -1; }
    .banaschak-article-aside > div { position: static; }
    .banaschak-article-aside dl { display: grid; grid-template-columns: 1fr 1fr; }
    .banaschak-article-aside dl > div:nth-child(odd) { padding-right: 1rem; }
    .banaschak-article-aside dl > div:nth-child(even) { padding-left: 1rem; border-left: 1px solid var(--banaschak-line); }
}

@media (max-width: 768px) {
    .banaschak-recovery-active #right-sidebar { margin-top: 0; }
    .banaschak-brand { margin-bottom: 3.2rem; }
    .banaschak-hero-shade,
    .banaschak-route-hero-shade {
        background: linear-gradient(90deg, rgba(13, 11, 9, .96), rgba(13, 11, 9, .52)), linear-gradient(0deg, rgba(13, 11, 9, .92), transparent 58%);
    }
    .banaschak-index-row { min-height: 142px; grid-template-columns: 48px minmax(0, 1fr) auto; }
    .banaschak-route-number { opacity: .7; }
}

@media (max-width: 620px) {
    .banaschak-hero { min-height: calc(100svh - 72px); }
    .banaschak-hero-inner { padding-top: 4.5rem; }
    .banaschak-brand { font-size: clamp(3rem, 13.4vw, 4.6rem); }
    .banaschak-hero h1 { font-size: clamp(2.55rem, 13vw, 4.5rem); }
    .banaschak-index-row { padding-block: 1.7rem; grid-template-columns: 36px minmax(0, 1fr); }
    .banaschak-index-row > b { display: none; }
    .banaschak-index-row p { font-size: .9rem; }
    .banaschak-method-list li,
    .banaschak-piece-list > div,
    .banaschak-test-grid > div { grid-template-columns: 1fr; gap: .6rem; }
    .banaschak-statement { min-height: 620px; }
    .banaschak-route-hero { min-height: 640px; }
    .banaschak-route h1 { font-size: clamp(3rem, 15vw, 5.6rem); }
    .banaschak-article-aside dl { grid-template-columns: 1fr; }
    .banaschak-article-aside dl > div:nth-child(odd),
    .banaschak-article-aside dl > div:nth-child(even) { padding-inline: 0; border-left: 0; }
    .banaschak-evidence-table > div {
        padding: 1.2rem 0;
        grid-template-columns: 1fr;
        gap: .45rem;
    }
    .banaschak-evidence-table > div:first-child { display: none; }
    .banaschak-evidence-table span::before {
        display: block;
        margin-bottom: .2rem;
        color: var(--banaschak-muted);
        font-size: .6rem;
        font-weight: 850;
        letter-spacing: .08em;
        text-transform: uppercase;
    }
    .banaschak-evidence-table span:nth-child(1)::before { content: "Evidence"; }
    .banaschak-evidence-table span:nth-child(2)::before { content: "Can establish"; }
    .banaschak-evidence-table span:nth-child(3)::before { content: "Cannot establish alone"; }
}

@media (prefers-reduced-motion: reduce) {
    .banaschak-recovery *,
    .banaschak-recovery *::before,
    .banaschak-recovery *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
    .banaschak-js .banaschak-hero-inner > *,
    .banaschak-js .banaschak-route-hero-inner > *,
    .banaschak-js .banaschak-reveal { opacity: 1; transform: none; }
    .banaschak-hero-image,
    .banaschak-route-hero-image { transform: none; }
}
