/* V23: actions tell the story; dialogue settles in place to be read. */
.trust-reader{--arrival-cycle:14s;--action-ink:#355c4d;--door-wood:#735441}
.trust-reader.is-animated .is-current .trust-bubble{animation:trust-speech-arrives .48s cubic-bezier(.2,.8,.3,1) both}
.trust-reader.is-animated .is-current .trust-speech-bottom{animation-delay:.4s}
.trust-reader.is-animated .is-current .trust-sfx{animation:trust-reaction-stamp 8s ease-out infinite}
.trust-reader.is-animated .is-current .trust-art>svg{animation:none}
.trust-reader.is-animated .is-current .trust-art{animation:trust-cut-panel .55s cubic-bezier(.16,.85,.3,1) both}
@keyframes trust-speech-arrives{from{opacity:0;translate:0 12px;scale:.92}to{opacity:1;translate:0 0;scale:1}}
@keyframes trust-reaction-stamp{0%{opacity:0;scale:.45;rotate:-9deg}7%{opacity:1;scale:1.22;rotate:4deg}12%,94%{opacity:1;scale:1;rotate:0deg}100%{opacity:0;scale:1}}
@keyframes trust-cut-panel{from{opacity:.3;translate:40px 12px;rotate:2deg;scale:.94}to{opacity:1;translate:0 0;rotate:0deg;scale:1}}

/* Arrival: a closed door opens, a person steps through, then the reply lands. */
.trust-arrival .trust-picture{perspective:900px;overflow:visible}
.trust-arrival .trust-art{overflow:hidden;background:#e7d9c4}
.trust-arrival .trust-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 52%}
.trust-doorway,.trust-door-leaf{position:absolute;right:3%;top:-9%;bottom:0;width:25%;border:6px solid #674d3e;border-bottom:0;box-sizing:border-box;pointer-events:none}
.trust-doorway{z-index:1;background:linear-gradient(150deg,#162334,#293b4c 60%,#718070);box-shadow:0 1px 7px #372e3650,inset 0 0 18px #101d2a80}
.trust-doorway:after{content:'';position:absolute;left:0;right:0;bottom:0;height:12%;background:linear-gradient(#88908055,#a89e7d);transform-origin:center bottom}
.trust-doorway>i{position:absolute;right:10%;top:13%;width:4px;height:4px;border-radius:50%;background:#e8dfb4;box-shadow:-24px 17px 1px #d6d1b5,8px 54px 2px #dfd9ae}
.trust-door-leaf{z-index:5;transform-origin:100% 50%;transform:rotateY(78deg);backface-visibility:hidden;background:repeating-linear-gradient(91deg,#ffffff03 0px 2px,#00000003 3px 5px,transparent 6px 11px),linear-gradient(90deg,#5c4436,#8a6850 17%,#76523c 62%,#5f4637);box-shadow:inset 0 0 0 3px #b2947750,3px 2px 7px #202d3a45;border-color:#583d2e;border-width:2px;border-bottom:2px solid #583d2e;will-change:transform}
.trust-door-leaf:before{content:'';position:absolute;inset:8% 12%;border:1px solid #322e2a70;box-shadow:inset 1px 1px 1px #d4b79355,1px 1px 0 #bc987a50}
.door-handle{position:absolute;right:9%;top:49%;width:17%;height:5px;background:linear-gradient(#f0efdb,#a4a99e);border:1px solid #646a65;border-radius:2px;transform-origin:right center;box-shadow:1px 2px 2px #2225}
.door-handle:before{content:'';position:absolute;right:-2px;top:-5px;width:6px;height:14px;border:1px solid #838c84;background:#b7bdb1;border-radius:2px}
.door-keyhole{position:absolute;left:9%;top:59%;width:4px;height:6px;border-radius:2px;background:#303d39}
.trust-door-leaf{backface-visibility:visible}
.door-handle{left:9%;right:auto;transform-origin:left center}
.door-handle:before{left:-2px;right:auto}
.trust-arrival .trust-husband{z-index:3;transform-origin:50% 100%;translate:-105px 0;opacity:1;will-change:transform,opacity}
.trust-arrival .trust-sfx{left:3%;right:auto;top:auto;bottom:3%;max-width:none;white-space:nowrap;z-index:8}
.trust-reader.is-animated .trust-arrival.is-current .trust-art{animation:none}
.trust-reader.is-animated .trust-arrival.is-current .trust-husband{animation:husband-comes-home var(--arrival-cycle) cubic-bezier(.2,.7,.3,1) infinite}
.trust-reader.is-animated .trust-arrival.is-current .trust-husband img{animation:none}
.trust-reader.is-animated .trust-arrival.is-current .trust-wife{animation:wife-turns-to-door var(--arrival-cycle) ease-in-out infinite;transform-origin:50% 85%}
.trust-reader.is-animated .trust-arrival.is-current .trust-door-leaf{animation:door-opens-home var(--arrival-cycle) ease-in-out infinite}
.trust-reader.is-animated .trust-arrival.is-current .door-handle{animation:handle-turns var(--arrival-cycle) ease-in-out infinite}
.trust-reader.is-animated .trust-arrival.is-current .trust-speech-top{animation:arrival-greeting var(--arrival-cycle) ease-out infinite}
.trust-reader.is-animated .trust-arrival.is-current .trust-speech-bottom{animation:arrival-reply var(--arrival-cycle) ease-out infinite}
.trust-reader.is-animated .trust-arrival.is-current .trust-sfx{animation:arrival-call var(--arrival-cycle) ease-out infinite}
.trust-door-sound,.trust-steps{position:absolute;z-index:7;color:#6d705c;font:900 26px/1.2 var(--body);paint-order:stroke fill;-webkit-text-stroke:4px #fff;pointer-events:none;opacity:0}
.trust-door-sound{right:13%;top:5%;rotate:9deg}.trust-steps{right:6%;bottom:10%;rotate:-9deg;font-size:24px}
.trust-reader.is-animated .trust-arrival.is-current .trust-door-sound{animation:door-click var(--arrival-cycle) ease-out infinite}
.trust-reader.is-animated .trust-arrival.is-current .trust-steps{animation:entrance-footsteps var(--arrival-cycle) ease-out infinite}
@keyframes door-opens-home{0%,6%{transform:rotateY(0deg);filter:brightness(.88)}18%,88%{transform:rotateY(78deg);filter:brightness(1)}97%,100%{transform:rotateY(0deg);filter:brightness(.88)}}
@keyframes handle-turns{0%,3%,18%,100%{transform:rotate(0deg)}7%,11%{transform:rotate(22deg)}}
@keyframes husband-comes-home{0%,10%{opacity:0;translate:45px 17px;scale:.62}16%{opacity:1;translate:30px 12px;scale:.72}27%{opacity:1;translate:-112px -3px;scale:1.025}32%,88%{opacity:1;translate:-105px 0;scale:1}95%,100%{opacity:0;translate:35px 12px;scale:.68}}
@keyframes wife-turns-to-door{0%,8%,100%{translate:0 0;rotate:0deg}19%{translate:9px -3px;rotate:-2deg}33%,88%{translate:2px 0;rotate:0deg}95%{translate:0 0;rotate:0deg}}
@keyframes arrival-greeting{0%,12%,98%,100%{opacity:0;scale:.85;translate:0 9px}20%{opacity:1;scale:1.05;translate:0 -3px}25%,91%{opacity:1;scale:1;translate:0 0}}
@keyframes arrival-reply{0%,25%,98%,100%{opacity:0;scale:.85;translate:0 9px}33%{opacity:1;scale:1.04;translate:0 -3px}39%,91%{opacity:1;scale:1;translate:0 0}}
@keyframes arrival-call{0%,32%,95%,100%{opacity:0;scale:.3;rotate:-8deg}39%{opacity:1;scale:1.1;rotate:5deg}46%,88%{opacity:1;scale:1;rotate:0deg}}
@keyframes door-click{0%,3%,16%,100%{opacity:0;translate:0 6px;scale:.65}7%{opacity:1;translate:0 -3px;scale:1.13}11%{opacity:1;translate:0 0;scale:1}}
@keyframes entrance-footsteps{0%,18%,31%,100%{opacity:0;translate:15px 4px;scale:.8}23%{opacity:1;translate:-3px -4px;scale:1.15}27%{opacity:1;translate:-8px 0;scale:1}}

/* The next panels introduce moving objects instead of floating paragraphs. */
.trust-check-sheet,.trust-phone-cutin,.trust-proof-cutin,.trust-company-card{position:absolute;z-index:6;pointer-events:none;transform-origin:50% 80%}
.trust-check-sheet{left:2%;bottom:3%;width:26%;padding:13px 17px;background:#fffef6;border:1px solid #b6c6b2;box-shadow:4px 5px 0 #25493819;rotate:-5deg;color:#3d6250;font:500 12px/1.9 var(--body)}
.trust-check-sheet>b{display:block;font-size:10px;border-bottom:1px solid #cfdcca;padding-bottom:4px;margin-bottom:5px}.trust-check-sheet>span{display:block;white-space:nowrap}.trust-check-sheet i{font-style:normal;margin-right:8px;color:#447b55;font-weight:900;display:inline-block}
.trust-reader.is-animated .trust-check.is-current .trust-check-sheet{animation:check-sheet-opens 9s cubic-bezier(.2,.8,.3,1) infinite}
.trust-reader.is-animated .trust-check.is-current .trust-check-sheet>span{animation:check-line 9s ease-out infinite}
.trust-reader.is-animated .trust-check.is-current .trust-check-sheet>span:nth-of-type(2){animation-delay:.3s}.trust-reader.is-animated .trust-check.is-current .trust-check-sheet>span:nth-of-type(3){animation-delay:.6s}
@keyframes check-sheet-opens{0%{opacity:0;translate:-75px 40px;rotate:-18deg;scale:.65}14%,88%{opacity:1;translate:0 0;rotate:0deg;scale:1}100%{opacity:0;translate:0 -12px;rotate:0deg;scale:1}}
@keyframes check-line{0%,15%{opacity:0;translate:-13px 0}22%,88%{opacity:1;translate:0 0}100%{opacity:0;translate:0 0}}
.trust-phone-cutin{right:2%;bottom:-2%;width:15%;height:88%;background:#354c4b;border:2px solid #203a39;border-radius:15px;padding:10px 6px 8px;rotate:9deg;box-shadow:5px 7px 0 #22422a16;color:var(--action-ink)}
.trust-phone-cutin>div{height:100%;background:#f7faf7;border-radius:8px;padding:19% 9% 7%;text-align:center;position:relative;overflow:hidden}.trust-phone-cutin>div:before{content:'';position:absolute;top:5px;left:36%;right:36%;height:4px;background:#243f3b;border-radius:4px}.trust-phone-cutin i{display:block;height:6%;background:#d6e0d7;margin-bottom:12%;border-radius:2px}.trust-phone-cutin strong{display:block;font-size:11px;white-space:nowrap}.trust-phone-cutin b{display:block;font:900 43px/1.3 var(--body);color:#8b783d}
.trust-reader.is-animated .trust-puzzled.is-current .trust-phone-cutin{animation:phone-search-cut 8s cubic-bezier(.2,.8,.3,1) infinite}
.trust-reader.is-animated .trust-puzzled.is-current .trust-phone-cutin b{animation:search-question 8s ease-out infinite}
@keyframes phone-search-cut{0%,7%{opacity:0;translate:110px 75px;rotate:18deg;scale:.5}18%{opacity:1;translate:-7px -5px;rotate:-4deg;scale:1.08}24%,88%{opacity:1;translate:0 0;rotate:0deg;scale:1}100%{opacity:0;translate:25px 15px;rotate:3deg;scale:.95}}
@keyframes search-question{0%,20%{opacity:0;scale:.3}29%{opacity:1;scale:1.4;rotate:-9deg}36%,88%{opacity:1;scale:1;rotate:0deg}100%{opacity:0;scale:1}}
.trust-impact-lines{position:absolute;inset:-8%;z-index:3;pointer-events:none;opacity:0;background:repeating-conic-gradient(from 10deg at 72% 55%,transparent 0deg 14deg,#fdfdf2dd 15deg 17deg,transparent 18deg 27deg);mask-image:radial-gradient(ellipse at 72% 55%,transparent 10%,#000 65%);clip-path:polygon(3% 6%,98% 0,100% 95%,0 100%)}
.trust-reader.is-animated .trust-concern.is-current .trust-art{animation:concern-frame-impact 8s ease-out infinite}
.trust-reader.is-animated .trust-concern.is-current .trust-impact-lines{animation:concern-rays 8s ease-out infinite}
@keyframes concern-frame-impact{0%{translate:30px 0;rotate:2deg;scale:.97}8%{translate:-7px -3px;rotate:-2deg;scale:1.025}11%{translate:5px 0;rotate:1deg;scale:1.02}15%,90%{translate:0 0;rotate:0deg;scale:1}100%{translate:0 0;rotate:0deg;scale:1}}
@keyframes concern-rays{0%{opacity:0;scale:.8}8%,21%{opacity:1;scale:1}34%,100%{opacity:0;scale:1.12}}
.trust-proof-cutin{left:2%;bottom:3%;width:26%;padding:11px 13px;background:#fffef5;border:1px solid #b5c7b1;box-shadow:4px 6px 0 #224d3318;rotate:-5deg}.trust-proof-cutin>img{display:block;width:110px;height:47px;object-fit:contain;margin:0 auto 6px}.trust-proof-cutin>span{display:flex;align-items:center;justify-content:center;gap:8px;border-top:1px solid #dce6d8;padding-top:7px;font:700 11px/1.6 var(--body);color:#396c4c;white-space:nowrap}.trust-proof-cutin svg{width:26px;height:29px;fill:none;stroke:#487950;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}.trust-proof-cutin svg path:last-child{stroke-dasharray:40;stroke-dashoffset:0}
.trust-reader.is-animated .trust-answer.is-current .trust-proof-cutin{animation:proof-folder-in 9s cubic-bezier(.2,.8,.3,1) infinite}.trust-reader.is-animated .trust-answer.is-current .trust-proof-cutin>span{animation:proof-second-line 9s ease-out infinite}.trust-reader.is-animated .trust-answer.is-current .trust-proof-cutin svg path:last-child{animation:proof-check-draw 9s ease-out infinite}
@keyframes proof-folder-in{0%{opacity:0;translate:-70px 40px;rotate:-16deg;scale:.7}14%,90%{opacity:1;translate:0 0;rotate:0deg;scale:1}100%{opacity:0;translate:0 -10px;rotate:0deg;scale:1}}
@keyframes proof-second-line{0%,19%{opacity:0;translate:0 13px}28%,90%{opacity:1;translate:0 0}100%{opacity:0;translate:0 0}}
@keyframes proof-check-draw{0%,27%{stroke-dashoffset:40}38%,100%{stroke-dashoffset:0}}
.trust-company-card{left:3%;bottom:3%;width:39%;padding:13px 49px 13px 17px;background:#fffef6;border:1px solid #bbccb5;border-left:4px solid #4b7759;box-shadow:5px 7px 0 #224d3315;rotate:-4deg;color:var(--action-ink);font:500 12px/1.8 var(--body)}.trust-company-card small{display:block;font-size:9px;color:#758b71}.trust-company-card strong{display:block;font-size:16px;white-space:nowrap;margin-block:4px}.trust-company-card>span{font-size:11px}.trust-company-card svg{position:absolute;right:10px;top:34%;width:37px;height:37px;stroke:#4b8056;stroke-width:2.2;fill:none;stroke-linecap:round;stroke-linejoin:round}.trust-company-card svg path{stroke-dasharray:50}
.trust-reader.is-animated .trust-relief.is-current .trust-company-card{animation:company-card-in 10s cubic-bezier(.2,.8,.3,1) infinite}.trust-reader.is-animated .trust-relief.is-current .trust-company-card svg{animation:company-seal 10s ease-out infinite}.trust-reader.is-animated .trust-relief.is-current .trust-company-card svg path{animation:company-check 10s ease-out infinite}
@keyframes company-card-in{0%{opacity:0;translate:0 80px;rotate:12deg;scale:.65}15%{opacity:1;translate:0 -7px;rotate:-2deg;scale:1.025}21%,91%{opacity:1;translate:0 0;rotate:0deg;scale:1}100%{opacity:0;translate:0 -12px;rotate:0deg;scale:1}}
@keyframes company-seal{0%,22%{opacity:0;scale:2}30%{opacity:1;scale:.9}35%,100%{opacity:1;scale:1}}
@keyframes company-check{0%,30%{stroke-dashoffset:50}41%,100%{stroke-dashoffset:0}}

/* Desktop: keep the call beside its speaker, with room to see the entry. */
@media(min-width:651px){
 .trust-page{grid-template-rows:18px 78px minmax(150px,1fr) 76px;gap:8px}
 .trust-bubble{padding:10px 22px;font-size:15px;line-height:1.65}
 .trust-speech-bottom{font-size:14px}
 .trust-arrival .trust-sfx{left:auto;right:24%;top:auto;bottom:4%;font-size:27px}
}
@media(max-width:650px){
 .trust-arrival .trust-art img{object-position:39% center}
 .trust-doorway,.trust-door-leaf{right:0;top:-4%;bottom:0;width:49%;border-width:4px}
 .trust-door-leaf{border-width:2px}
 .trust-arrival .trust-husband{translate:-15px 0;right:0;width:50%}
 .trust-arrival .trust-wife{left:-2%;width:51%}
 .trust-door-sound{right:5%;top:8%;font-size:23px}.trust-steps{right:6%;bottom:10%;font-size:21px}
 .trust-reader.is-animated .trust-arrival.is-current .trust-husband{animation-name:husband-comes-home-phone}
 .trust-arrival .trust-sfx{left:3%;right:auto;bottom:3%;font-size:21px}
 .trust-check-sheet{left:2%;bottom:3%;width:49%;padding:9px 10px;font-size:10px}.trust-check-sheet>b{font-size:8px}.trust-check-sheet i{margin-right:5px}
 .trust-phone-cutin{width:29%;height:67%;right:-1%;bottom:-2%;padding:8px 4px 5px;border-radius:10px}.trust-phone-cutin>div{padding:23% 7% 5%;border-radius:6px}.trust-phone-cutin strong{font-size:8px}.trust-phone-cutin b{font-size:31px}
 .trust-proof-cutin{width:47%;padding:8px}.trust-proof-cutin>img{width:88px;height:37px}.trust-proof-cutin>span{font-size:9px;gap:4px}.trust-proof-cutin svg{width:22px;height:25px}
 .trust-company-card{left:1%;bottom:3%;width:72%;padding:9px 30px 9px 10px}.trust-company-card small{font-size:7px}.trust-company-card strong{font-size:11px}.trust-company-card>span{font-size:9px}.trust-company-card svg{width:26px;height:26px;right:6px;top:38%}
 @keyframes husband-comes-home-phone{0%,10%{opacity:0;translate:23px 14px;scale:.66}16%{opacity:1;translate:16px 9px;scale:.76}27%{opacity:1;translate:-18px -3px;scale:1.025}32%,88%{opacity:1;translate:-15px 0;scale:1}95%,100%{opacity:0;translate:23px 14px;scale:.68}}
}
/* Pausing/reduced motion presents the open door and readable finished panels. */
.comic-paused .trust-reader *{animation:none!important}
@media(prefers-reduced-motion:reduce){.trust-reader *{animation:none!important;transition:none!important}}
