.r54-methods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;margin-top:40px}
.r54-method{padding:28px;border:1px solid #dce4de;border-radius:20px;background:#fff;min-width:0;color:#202522}
.r54-method header{display:block;padding:0;margin:0;border:0;max-width:none}
.r54-source-brand{display:flex;align-items:center;gap:18px;min-height:60px;text-decoration:none;width:fit-content;color:inherit}
.r54-source-brand img{display:block;width:116px;height:54px;object-fit:contain}
.r54-method:nth-child(2) .r54-source-brand img{width:70px;height:58px}
.r54-source-brand span{font-size:14px;font-weight:600;line-height:1.6}.r54-source-brand small{font-size:13px;color:#59675f;font-weight:400}
.r54-method h3{font-size:30px;letter-spacing:-1px;margin:24px 0 8px}.r54-method header p{font-size:16px;color:#59675f;margin:0;line-height:1.6}
.r54-gap,.r54-wbs{margin-top:26px;background:#f6f8f6;border:1px solid #e1e7e2;border-radius:12px;padding:20px;height:354px;position:relative;overflow:hidden}
.r54-diagram-top{display:flex;justify-content:space-between;gap:8px;align-items:baseline;border-bottom:1px solid #dce4de;padding-bottom:14px}.r54-diagram-top b{font-size:14px;font-weight:600}.r54-diagram-top small{font-size:13px;color:#59675f}
.r54-rate{display:grid;grid-template-columns:1fr 1fr 1fr;margin-top:28px;text-align:center;align-items:end}.r54-rate small{font-size:13px;color:#59675f;display:block}.r54-rate b{font-size:40px;font-weight:650;line-height:1.2;letter-spacing:-1px}.r54-rate b span{font-size:24px;margin-left:2px}.r54-delta b{font-size:26px;color:#ba3d16}.r54-target b{color:#285e45}
.r54-scale{position:relative;height:48px;margin:22px 16.667% 0 0}.r54-scale-track,.r54-scale-fill{position:absolute;left:0;top:18px;height:8px;width:100%;background:#dce4de;border-radius:6px}.r54-scale-fill{width:66.667%;background:#285e45;transform-origin:left}.r54-current-mark,.r54-target-mark{position:absolute;left:66.667%;top:15px;width:14px;height:14px;border-radius:50%;background:#285e45;border:3px solid #f6f8f6;transform:translateX(-50%)}.r54-target-mark{left:100%;background:#fff;border:2px solid #285e45}
.r54-gap-span{position:absolute;left:66.667%;width:33.333%;height:12px;top:0;border:1.5px solid #ba3d16;border-bottom:0;transform-origin:left}
.r54-records{border-top:1px solid #dce4de;padding-top:18px;margin-top:14px}.r54-records>small{font-size:13px;color:#59675f}.r54-records>div{display:flex;align-items:center;justify-content:space-between;gap:5px;margin-top:12px}.r54-records b{font-size:14px;background:white;border:1px solid #dce4de;border-radius:6px;padding:10px 12px}.r54-records span{color:#59675f}
.r54-wbs-root{position:relative;text-align:center;display:flex;justify-content:center;align-items:center;gap:12px;background:#173f31;color:#fff;border-radius:8px;padding:13px;margin:16px auto 0;max-width:230px}.r54-wbs-root small{font-size:13px;color:#d4e4d9}.r54-wbs-root b{font-size:17px;font-weight:600}
.r54-wbs-branches{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding-top:27px}.r54-wbs-branches:before{content:'';position:absolute;top:13px;left:16.667%;right:16.667%;height:1px;background:#9bb6a5}.r54-wbs-branches:after{content:'';position:absolute;left:50%;top:0;height:13px;border-left:1px solid #9bb6a5}
.r54-branch{position:relative;background:white;border:1px solid #dce4de;border-radius:6px;padding:10px 6px;text-align:center}.r54-branch:before{content:'';position:absolute;top:-14px;left:50%;height:13px;border-left:1px solid #9bb6a5}.r54-branch small{display:block;font-size:13px;color:#59675f}.r54-branch b{font-size:14px;display:block;margin-top:3px}.r54-branch.active{border-color:#8faf9a;background:#edf4ef;color:#173f31}
.r54-work{position:relative;border-left:3px solid #285e45;background:#fff;border-radius:0 6px 6px 0;padding:12px 14px;margin-top:18px}.r54-work>small{font-size:13px;color:#59675f}.r54-work>b{display:block;font-size:16px;margin-top:5px}.r54-work dl{margin:10px 0 0;display:grid;gap:5px}.r54-work dl>div{display:grid;grid-template-columns:36px 1fr;gap:8px;font-size:13px;line-height:1.5}.r54-work dt{color:#59675f}.r54-work dd{margin:0}
.r54-motion-foot{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:12px}.r54-motion-foot>span{font-size:13px;color:#59675f}.r54-motion-foot button{font:inherit;font-size:13px;border:1px solid #dce4de;background:#fff;color:#173f31;border-radius:24px;min-width:56px;min-height:44px;cursor:pointer}.r54-method button:focus-visible,.r54-method a:focus-visible{outline:2px solid #285e45;outline-offset:4px}
.r54-method details{border-top:1px solid #dce4de;margin-top:18px;padding:16px 0 0}.r54-method summary{font-size:16px;font-weight:600;cursor:pointer}.r54-method details p{font-size:16px;line-height:1.8;color:#59675f;margin-top:12px}.r54-source-link{font-size:13px;color:#59675f;display:inline-block;margin-top:18px;text-underline-offset:4px}.r54-handbook{display:flex;align-items:center;gap:12px;width:fit-content;text-decoration:none}.r54-handbook img{width:32px;height:42px;object-fit:contain}.r54-handbook span{line-height:1.6}.r54-handbook small{font-size:13px;text-decoration:underline;text-underline-offset:4px}.r54-attribution{font-size:13px!important;color:#59675f;margin-top:18px!important}
/* One eight-second sequence: reveal, explain, hold. Reduced motion shows the completed diagram. */
.r54-method :is(.r54-current,.r54-target,.r54-delta,.r54-gap-span,.r54-records,.r54-wbs-root,.r54-wbs-branches,.r54-work){animation:r54-reveal 8s cubic-bezier(.22,1,.36,1) infinite both;animation-play-state:paused}
.r54-method[data-running=true] *{animation-play-state:running}
.r54-current{--reveal:0}.r54-target{animation-name:r54-target!important}.r54-delta,.r54-gap-span{animation-name:r54-gap!important}.r54-records{animation-name:r54-records!important}.r54-wbs-branches{animation-name:r54-target!important}.r54-work{animation-name:r54-records!important}
.r54-scale-fill{animation:r54-fill 8s cubic-bezier(.22,1,.36,1) infinite both;animation-play-state:paused}
@keyframes r54-reveal{0%{opacity:0;transform:translateY(8px)}8%,95%{opacity:1;transform:none}100%{opacity:0;transform:none}}
@keyframes r54-target{0%,14%{opacity:0;transform:translateY(8px)}24%,95%{opacity:1;transform:none}100%{opacity:0;transform:none}}
@keyframes r54-gap{0%,28%{opacity:0;transform:translateY(5px)}38%,95%{opacity:1;transform:none}100%{opacity:0;transform:none}}
@keyframes r54-records{0%,42%{opacity:0;transform:translateY(8px)}54%,95%{opacity:1;transform:none}100%{opacity:0;transform:none}}
@keyframes r54-fill{0%{transform:scaleX(0)}12%,100%{transform:scaleX(1)}}
@media(max-width:1000px){.r54-method{padding:22px}.r54-source-brand{gap:12px}.r54-source-brand img{width:96px}.r54-gap,.r54-wbs{padding:16px}.r54-records b{padding:10px 7px}.r54-diagram-top{flex-wrap:wrap}.r54-wbs-branches{gap:6px}}
@media(max-width:700px){.r54-methods{grid-template-columns:1fr;gap:22px;margin-top:28px}.r54-method{padding:20px}.r54-gap,.r54-wbs{height:354px}.r54-method h3{font-size:28px}.r54-attribution{line-height:1.7}.r54-source-brand img{width:110px}}
@media(max-width:360px){.r54-method{padding:16px}.r54-gap,.r54-wbs{padding:12px;height:360px}.r54-source-brand{gap:10px}.r54-source-brand img{width:94px}.r54-source-brand span{font-size:13px}.r54-rate b{font-size:34px}.r54-delta b{font-size:24px}.r54-motion-foot>span{max-width:150px;line-height:1.6}.r54-records b{font-size:13px;padding:9px 5px}.r54-work{padding:12px 10px}.r54-work dl>div{grid-template-columns:28px 1fr;gap:6px}}
@media(prefers-reduced-motion:reduce){.r54-method *{animation:none!important;opacity:1;transform:none}.r54-motion-foot{display:none}}
.r54-gap,.r54-wbs{height:400px}
