/* A common coordinate system lets the artwork recompose without image swaps. */
.choreo-home{--choreo-poster:1;--choreo-recompose:0;--choreo-band:0;--choreo-bg:#ede5d8;--choreo-ui:#eedcc1;--choreo-entry-left:#805841;--choreo-entry-right:#eedcc1;background:var(--choreo-bg)}
.choreo-stage{position:absolute;inset:0;z-index:1;overflow:hidden;pointer-events:none;background:url('assets/poster-porcelain-v1.png') center/cover no-repeat}
.choreo-field{position:absolute;inset:0;z-index:0;background:var(--choreo-bg);opacity:0}
.choreo-home[data-choreo-ready="true"] .choreo-field{opacity:1}
.choreo-swoop{position:absolute;z-index:1;right:-10%;top:-42%;width:58vw;height:66vw;border-radius:46% 54% 58% 42%;background:#6e2722;rotate:-18deg;opacity:calc(var(--choreo-band)*.95);translate:calc(var(--choreo-type-drift)*.5) 0}
.choreo-image{position:absolute;inset:0;z-index:3;display:block;width:100%;height:100%}
.choreo-foreground{position:absolute;inset:0;z-index:6;pointer-events:none;display:block;width:100%;height:100%}
.choreo-outline{position:absolute;z-index:2;left:7%;top:5%;font:400 clamp(170px,27vw,470px)/.76 Georgia,'Times New Roman',serif;letter-spacing:-.085em;color:transparent;-webkit-text-stroke:1px #6a3029;opacity:var(--choreo-band);translate:var(--choreo-type-drift) 0;white-space:nowrap}
.choreo-italic{position:absolute;z-index:5;left:8%;top:43%;width:84%;font:italic 400 clamp(58px,11.6vw,195px)/.73 Georgia,'Times New Roman',serif;letter-spacing:-.065em;color:#f3e8d4;opacity:var(--choreo-recompose);transform:rotate(-11deg);transform-origin:40% 40%;translate:var(--choreo-image-shift) 0;white-space:nowrap;text-shadow:0 2px 10px #35141016}
.choreo-italic span{display:block}.choreo-italic span+span{margin-left:26%;margin-top:4px}
.choreo-moving{position:absolute;z-index:5;right:7%;top:49%;font:italic 400 clamp(30px,4.8vw,77px)/.86 Georgia,serif;letter-spacing:-.05em;color:#fff0db;opacity:var(--choreo-band);transform:rotate(-9deg);translate:var(--choreo-type-drift) 0}
.choreo-moving em{font:inherit;margin-left:.5em}
.choreo-caption{position:absolute;z-index:5;right:5%;top:73%;font:400 clamp(13px,1.5vw,23px)/1.5 var(--serif);letter-spacing:.1em;color:#764b37;opacity:var(--choreo-band);transform:rotate(-2deg)}
.choreo-side{position:absolute;left:3%;top:25%;z-index:4;writing-mode:vertical-rl;font:8px/1.5 Georgia,serif;letter-spacing:.23em;color:#e4cbb0;opacity:var(--choreo-recompose)}
.choreo-home.poster-home .ceramic-title{opacity:var(--choreo-poster)!important;translate:calc((1 - var(--choreo-poster))*-25px) 0;pointer-events:none}
.choreo-home.poster-home .title-line{animation:none!important;translate:calc(var(--choreo-type-drift)*.3) 0;rotate:0deg}
.choreo-home .poster-entry-title{background:linear-gradient(100deg,var(--choreo-entry-left) 0 35%,var(--choreo-entry-right) 70% 100%);background-clip:text;-webkit-background-clip:text;color:transparent!important}
.choreo-home .poster-entry:hover .poster-entry-title{background-image:linear-gradient(100deg,var(--choreo-entry-left) 0 35%,var(--choreo-entry-right) 70% 100%)}
.choreo-home .poster-entry .works-caption,.choreo-home .poster-entry .works-caption small,.choreo-home .edition-audio,.choreo-home .edition-audio button,.choreo-home .edition-audio label,.choreo-home .edition-audio>span,.choreo-home .music-credit,.choreo-home .edition-scenes,.choreo-home .edition-scenes button{color:var(--choreo-ui)}
.choreo-home .poster-entry-rule{background:var(--choreo-ui);opacity:.6}
.choreo-home .edition-progress{background:#aa887c50}.choreo-home .edition-progress i{background:var(--choreo-ui)}
body:has(.choreo-home) .ceramic-header{background:transparent;backdrop-filter:none}
body:has(.choreo-home) .ceramic-header nav a{color:var(--choreo-nav,#52271f);text-shadow:none}
body:has(.choreo-home) .ceramic-header nav a:first-child{color:var(--choreo-nav-first,#eedcc1)}
.choreo-home .works-dock{z-index:32}
@media(max-width:900px){.choreo-italic{font-size:12vw;top:43%}.choreo-outline{font-size:29vw;top:13%}.choreo-caption{font-size:16px;top:73%}}
@media(max-width:650px){.choreo-italic{font-size:16vw;top:49%;left:6%;line-height:.80}.choreo-italic span+span{margin-left:15%;margin-top:8px}.choreo-outline{font-size:35vw;left:3%;top:15%;line-height:1.15}.choreo-moving{right:6%;top:48%;font-size:8vw}.choreo-caption{left:39%;right:4%;top:69%;font-size:12px}.choreo-side{font-size:6px;left:3%;top:28%}.choreo-home.poster-home .works-dock{bottom:21%;height:14%;min-height:106px}.choreo-home .poster-entry-title{font-size:11vw}}
@media(prefers-reduced-motion:reduce){.choreo-home *{animation:none!important;transition:none!important}}/* Keep the entry clear of the diagonal caption and adapt the wordmark to each field. */
.choreo-italic{left:12%;top:39%;font-size:clamp(58px,10.7vw,180px)}
body:has(.choreo-home) .ceramic-header .edition-mark,body:has(.choreo-home) .ceramic-header .edition-mark>span{color:var(--choreo-nav,#52271f)}
@media(max-width:900px){.choreo-italic{font-size:11vw;top:39%}}
@media(max-width:650px){.choreo-italic{font-size:16vw;top:47%;left:7%}}.choreo-swoop{width:56vw;height:56vw;right:-14%;top:-46%}
.choreo-caption{top:80%;font-size:clamp(13px,1.4vw,21px)}
body:has(.choreo-home) .ceramic-header .edition-mark,body:has(.choreo-home) .ceramic-header .edition-mark>span{color:var(--choreo-brand,#52271f)}
@media(min-width:651px){.choreo-home.poster-home .works-dock{bottom:14%;height:14%;min-height:96px;max-height:110px}.choreo-home .poster-entry-title{font-size:clamp(43px,5.2vw,75px)}}
@media(max-width:650px){.choreo-caption{top:72%;font-size:12px}}