html{scroll-behavior:auto}.memo-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;padding-block:56px 72px;align-items:start}.memo-intro{padding-block:20px}.memo-intro h1{font-size:clamp(64px,7vw,108px);margin-bottom:28px}.memo-intro>p{max-width:480px}.memo-instruction{color:var(--muted);margin-top:28px}.practice-carousel{min-width:0}.practice-track{gap:20px;scrollbar-width:none}.practice-track::-webkit-scrollbar{display:none}.practice-card{flex:0 0 100%;min-width:0;scroll-snap-align:start;display:flex;flex-direction:column;gap:24px;min-height:0;padding:32px;border:1px solid var(--card-paper);background:var(--card-paper);color:#000;--card-paper:#d8c5a6;--card-muted:#494238;--card-line:rgba(0,0,0,.2)}.practice-card h2{font-size:48px;line-height:1.06}.practice-copy p+p{margin-top:20px}.illustration-slot{display:grid;place-items:center;min-height:72px;margin-top:0;border-block:1px solid var(--card-line);color:var(--card-muted);font-size:14px;letter-spacing:.06em}.practice-note{font-size:17px;color:var(--card-muted);line-height:1.4}.restart{border:0;background:none;padding:0;color:inherit;font:400 28px/1.2 var(--heading-font);cursor:pointer;align-self:flex-start}.memo-about{border-top:1px solid var(--line);padding-block:40px 56px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px 64px}.memo-about h2{font-size:52px}.memo-about .button{grid-column:2}.memo-about p{max-width:620px}
@media(max-width:900px){.memo-layout{gap:32px}.practice-card{padding:24px}.practice-card h2{font-size:42px}}
@media(max-width:700px){.memo-layout{display:block;padding-top:28px;padding-bottom:48px}.memo-intro{min-height:0;padding-block:0 24px}.memo-intro h1{font-size:68px}.memo-intro .eyebrow{font-size:16px}.memo-intro>p{font-size:18px}.memo-instruction{margin-top:20px}.practice-card{gap:20px;min-height:0;padding:24px 20px}.practice-card h2{font-size:42px}.practice-copy{font-size:18px}.practice-copy p+p{margin-top:18px}.practice-note{font-size:16px}.memo-about{display:block;padding-block:32px 40px}.memo-about h2{margin-bottom:20px}.memo-about .button{margin-top:28px;font-size:28px}.illustration-slot{min-height:56px}}

/* Each step is a separate sheet in the same muted palette. */
.practice-card:nth-child(2){--card-paper:#bbc3ad}
.practice-card:nth-child(3){--card-paper:#cfb4ad}
.practice-card:nth-child(4){--card-paper:#afbec3}
.practice-card:nth-child(5){--card-paper:#f3e8d4}
.practice-card :is(button,a):focus-visible{outline-color:#000}

/* Supplied SVG geometry, transparent over each card's own paper. */
.illustration-slot{border:0;min-height:0;letter-spacing:normal}
.memo-art{display:block;width:min(100%,320px);height:auto;overflow:visible}
.memo-art>*{transform-box:fill-box;transform-origin:center}
.practice-track{touch-action:pan-x pan-y pinch-zoom;overscroll-behavior-x:contain}
.practice-card{scroll-snap-stop:always}

/* Keep text and artwork together; each slide follows its own content height. */
.practice-card>*{flex-shrink:0}
.practice-card .illustration-slot{margin-top:0}
.practice-card .practice-note{margin-top:0}
@media(max-width:900px) and (min-width:701px){.memo-layout{grid-template-columns:1fr}.memo-intro>p{max-width:620px}.memo-intro h1{max-width:none}}
@media(max-width:700px){.memo-art{width:min(100%,280px)}}

.practice-track{align-items:flex-start;overflow-y:hidden;transition:height 240ms ease}
@media(prefers-reduced-motion:reduce){.practice-track{transition:none}}
