
.concept-note{display:flex;justify-content:space-between;gap:20px;padding:10px 3%;font-size:10px;letter-spacing:.09em;background:#f4f3ef;color:#555}
.home{padding:24px 0 44px;min-height:0;overflow:visible}
.cutout-intro{width:min(100% - 48px,1000px);display:flex;align-items:center;justify-content:center;gap:20px;font-size:11px}
.cutout-intro>img{width:164px;height:auto;filter:brightness(0)}
.cutout-intro>span:last-child{font-size:9px;letter-spacing:.12em}
.cutout-art{position:relative;width:min(100%,1000px);margin:12px auto 0}
.cutout-art svg{display:block;width:100%;height:auto;overflow:visible}
.cutout-caption{font-family:Helvetica,Arial,sans-serif;font-size:16px;fill:#26241f}
.paper-disc{transition:transform 1.1s cubic-bezier(.22,.7,.2,1);transition-delay:var(--delay)}
.is-scattered .paper-disc{transform:translate(var(--dx),var(--dy))}
.cutout-toggle{position:absolute;right:20px;top:calc(43.295% - 22px);font-size:10px;color:#68645b;padding:8px;text-underline-offset:4px}
.cutout-toggle:hover{text-decoration:underline}
.cutout-bottom{width:min(100% - 48px,1000px);display:flex;justify-content:space-between;align-items:center;gap:24px;padding-top:36px;font-size:9px;letter-spacing:.08em}
.cutout-bottom .enter{min-width:0;font-size:13px;letter-spacing:0;padding-bottom:7px}
@media(max-width:700px){.home{padding-top:24px}.cutout-intro{width:calc(100% - 36px);justify-content:center;flex-direction:column;gap:13px}.cutout-intro>img{width:150px}.cutout-intro>span:last-child{display:none}.cutout-art{margin-top:18px}.cutout-caption{font-size:21px}.cutout-toggle{position:static;display:block;margin:15px auto 0;font-size:11px}.cutout-bottom{width:calc(100% - 36px);padding-top:22px;flex-wrap:wrap;justify-content:center;gap:20px}.cutout-bottom>span{font-size:8px}.cutout-bottom .enter{order:-1;flex-basis:100%;text-align:center;border:0}}
@media(prefers-reduced-motion:reduce){.paper-disc{transition:none}}

.cutout-toggle{right:36px;font-size:9px}.cutout-art{margin-top:0}.cutout-caption{font-size:14px}@media(max-width:700px){.cutout-toggle{font-size:11px}.cutout-caption{font-size:21px}}

.paper-edge,.paper-depth,.hole-edges{transition:opacity .4s}.is-scattered .paper-edge,.is-scattered .paper-depth,.is-scattered .hole-edges{opacity:0}.is-scattered .disc-face{filter:none}@media(prefers-reduced-motion:reduce){.paper-edge,.paper-depth,.hole-edges{transition:none}}

.is-starting .paper-disc,.is-starting .paper-edge,.is-starting .paper-depth,.is-starting .hole-edges{transition:none}

/* Paper depth is baked into small sprites instead of filtered every frame. */
.piece-flat{opacity:0}
.piece-raised,.piece-flat{transition:opacity .35s}
.is-scattered .piece-flat{opacity:1}
.is-scattered .piece-raised{opacity:0}
.is-starting .piece-raised,.is-starting .piece-flat{transition:none}
@media(prefers-reduced-motion:reduce){.piece-raised,.piece-flat{transition:none}}
