/* V13: actual drawn hand/head/body poses, not a translated static cutout. */
.actor-frames{position:absolute;width:180px;height:180px;left:-70px;top:0;overflow:hidden}
.actor-pose{position:absolute;inset:0;background-image:url(tanwen-actions.png);background-size:400% 400%;background-repeat:no-repeat;background-position:calc(var(--frame)*100%/3) var(--row,100%);opacity:0}
.actor-pose:first-child{opacity:1}
[data-action=scan]{--row:0%}[data-action=write]{--row:33.333333%}[data-action=collate]{--row:66.666667%}[data-action=think]{--row:100%}
[data-action=scan] .actor-pose:nth-child(2),[data-action=scan] .actor-pose:nth-child(4){background-position-x:66.666667%}
[data-action=scan] .actor-pose:nth-child(3){background-position-x:0%}
[data-animate=true] .actor-pose{animation:tanwen-performance 4s steps(1,end) infinite;animation-delay:var(--delay)}
@keyframes tanwen-performance{0%,24.999%{opacity:1}25%,100%{opacity:0}}
.growth-companion.on-stage .companion-stage{width:144px;height:144px;left:50%;margin-left:-72px}
.on-stage .actor-frames{inset:0;width:144px;height:144px}
.growth-companion.on-stage{bottom:20px}
.on-stage button{left:86px;bottom:2px}
.surface-map{padding:70px 110px 45px 6%;border-top:1px solid var(--line)}
.surface-intro{display:grid;grid-template-columns:1fr 1fr;column-gap:8%;max-width:1200px;margin:auto auto 35px}
.surface-intro .eyebrow{grid-column:1/-1}.surface-intro h2{margin-bottom:10px}.surface-intro>p:not(.eyebrow){align-self:center;font-size:16px;line-height:1.7;max-width:430px}.surface-intro small{grid-column:1/-1;font-size:11px;color:var(--muted)}
.surface-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;max-width:1200px;margin:auto}
.surface-card{padding:22px;min-height:0;border-radius:12px;background:#fbf9f1;box-shadow:0 8px 24px #19352e08;display:flex;flex-direction:column}
.surface-title{display:flex;align-items:center;gap:12px}.surface-title>span{font-size:11px;color:#6d8165;border:1px solid #bbc8ad;border-radius:50%;width:30px;height:30px;display:grid;place-items:center;flex-shrink:0}.surface-title h3{font:600 16px Inter,Arial,sans-serif;letter-spacing:-.02em;margin:0}.surface-meaning{font-size:12px;line-height:1.5;min-height:36px;margin:15px 0}
.surface-preview{height:156px;background:white;border:1px solid #dbe0d2;border-radius:7px;padding:14px;overflow:hidden;flex-shrink:0;font-size:11px;color:#253c33;box-shadow:0 5px 10px #22372b08}
.surface-preview p{font-size:10px;line-height:1.45;margin:7px 0}.surface-preview b{display:block;font-size:13px;line-height:1.35}.surface-preview small{display:block;font-size:9px;margin:9px 0;color:#5e6c5b}.mock-bar{display:flex;gap:4px;border-bottom:1px solid #e1e5db;padding-bottom:7px;margin:-4px -4px 9px}.mock-bar i{width:4px;height:4px;border-radius:50%;background:#bdc8b2}.mock-brand{font-size:7px;letter-spacing:.1em;display:block;margin-bottom:8px}.mock-button{display:inline-block;padding:5px 9px;background:#214737;color:white;border-radius:3px;font-size:8px}.mock-query{border:1px solid #d1d9c7;border-radius:12px;padding:6px 9px;font-size:9px;display:flex;justify-content:space-between}.search-link{color:#3f618d}.mock-map{height:56px;margin:-14px -14px 10px;background:repeating-linear-gradient(30deg,#e4e9dc 0 18px,#cbd5bd 18px 21px,#e4e9dc 21px 36px);display:grid;place-items:center}.mock-map span{font-size:36px;color:#ad6747;line-height:1}.directory-row{display:flex;align-items:center;gap:9px;margin:14px 0}.directory-row i{display:grid;place-items:center;font-style:normal;background:#dfe8d1;border-radius:6px;width:35px;height:40px;font-size:13px;flex-shrink:0}.directory-line{height:1px;background:#dce3d2;margin:15px 0}.mock-question{display:block;text-align:right;font-size:9px;background:#edf1e5;border-radius:8px;padding:7px;margin-bottom:12px}.mock-reply{border-left:2px solid #6e8962;padding-left:10px}.surface-check{font-size:12px!important;line-height:1.6!important;margin-bottom:0}.surface-check b{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:5px;color:#5c7750}
.facet-number{position:absolute;right:8px;bottom:5px;font:600 8px Inter;color:#5c7750}.brand-facet .facet-art{opacity:.7}.cinema[data-phase='3'] .facet-fault{color:#345e46}
@media(max-width:900px){.surface-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.surface-card{padding:16px}.surface-title h3{font-size:14px}}
@media(max-width:700px){.surface-map{padding:45px 84px 30px 6%}.surface-intro{display:block}.surface-intro h2{font-size:38px}.surface-intro>p:not(.eyebrow){font-size:14px}.surface-intro small{font-size:10px;line-height:1.5;display:block}.surface-grid{grid-template-columns:1fr;gap:16px}.surface-card{padding:18px}.surface-meaning{min-height:0}.surface-preview{height:156px}.surface-title h3{font-size:16px}.assembly-cinema .studio-rig{height:330px}.growth-companion.on-stage .companion-stage{width:112px;height:112px;margin-left:-56px}.on-stage .actor-frames{width:112px;height:112px}.actor-frames{width:150px;height:150px;left:-59px}.on-stage button{left:65px}.facet-number{font-size:6px;right:4px;bottom:3px}}
@media(prefers-reduced-motion:reduce){.actor-pose{animation:none!important;opacity:0!important}.actor-pose:first-child{opacity:1!important}}
/* Keep the corner companion above the entering stage, in a reserved heading gutter. */
.cinema-headings{padding-right:90px}
@media(max-width:700px){.cinema-headings{padding-right:78px}}
.cinema:not(.is-cinema) .finding-card{min-height:0;padding:20px;margin-bottom:10px}.cinema:not(.is-cinema) .finding-card p{margin:10px 0}
@media(max-width:700px){.assembly-cinema .studio-rig{height:300px}.growth-companion.on-stage .companion-stage{width:96px;height:96px;margin-left:-48px}.on-stage .actor-frames{width:96px;height:96px}.is-cinema .cinema-heading{width:calc(100% - 78px)}}
.growth-companion button{min-height:32px;min-width:64px;font-size:10px}.companion-caption span{font-size:10px}.on-stage button{bottom:0}
/* A brief dissolve joins the authored poses; acting stays within one fixed cell. */
[data-animate=true] .actor-pose{animation:tanwen-performance 2.8s linear infinite;animation-delay:calc((4 - var(--frame)) * -.7s)}
@keyframes tanwen-performance{0%{opacity:0}6%,25%{opacity:1}31%,100%{opacity:0}}
