/* Six task-specific compositions, using the existing ROBIN palette. */
.rvs-scene{min-width:0;padding:30px 0 12px;align-self:center}
.rvs-scene-kicker{font-size:10px;text-transform:uppercase;letter-spacing:.15em;color:#7b8290;margin:0 0 14px}
.rvs .rvs-scene-title{font-size:24px;line-height:1.25;letter-spacing:-.025em;max-width:340px;margin:0 0 18px;font-weight:400}
.rvs-diagram{display:block;width:100%;height:auto;overflow:visible}
.rvs-diagram text{font-family:TTInterfaces,Arial,sans-serif;text-anchor:middle;font-size:13px;fill:#0e1526}
.rvs-diagram .rvs-small{font-size:10px;fill:#68758a}
.rvs-wire,.rvs-return{fill:none;stroke:#a30c33;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.rvs-return{stroke:#929ba5;stroke-dasharray:4 6}
.rvs-orbit{fill:none;stroke:#ded8d3;stroke-dasharray:3 7}
.rvs-node{fill:#fff;stroke:#cec7c1;stroke-width:1}
.rvs-core{fill:#a30c33;stroke:#a30c33}
.rvs-diagram .rvs-core-label{fill:white;font-size:11px;letter-spacing:.05em}
.rvs-paper{fill:#fff;stroke:#ded8d3;stroke-width:1.2}
.rvs-paper-line{fill:none;stroke:#bdc2c9;stroke-width:2;stroke-linecap:round}
.rvs-answer{fill:#eee5e5;stroke:#d7b9c0;stroke-width:1}
.rvs-check{fill:none;stroke:#a30c33;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.rvs-calendar{fill:none;stroke:#c8b6b8;stroke-width:1}
.rvs-wave{fill:none;stroke:#a30c33;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.rvs-scene-caption{display:flex;justify-content:space-between;align-items:center;gap:24px;border-top:1px solid #ded8d3;padding-top:14px;margin-top:12px;font-size:12px;color:#68758a}
.rvs-scene-caption span{color:#a30c33;transition:transform .2s ease}
.rvs-scene-caption:hover span{transform:translateY(3px)}
.rvs-scene-caption:hover{color:#a30c33}
.rvs.rvs--informing .rvs-hero{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:50px}
.rvs--informing .rvs-scene{padding:32px 24px 20px;border-radius:50% 50% 12px 12px;background:#f0ebe6}
.rvs.rvs--support .rvs-hero{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:64px}
.rvs--support .rvs-scene{border-left:1px solid #dcd4cd;padding-left:32px;transform:rotate(-1deg)}
.rvs.rvs--incoming .rvs-hero{grid-template-columns:1fr;padding-top:38px;gap:16px}
.rvs--incoming .rvs-hero>div:first-child{max-width:850px}
.rvs--incoming .rvs-scene{display:grid;grid-template-columns:1fr minmax(0,2fr);align-items:center;gap:0 50px;border-top:1px solid #ded8d3;padding-top:28px}
.rvs--incoming .rvs-scene-kicker{grid-column:1;align-self:end}
.rvs--incoming .rvs-scene-title{grid-column:1;align-self:start}
.rvs--incoming .rvs-diagram{grid-column:2;grid-row:1/4;max-width:570px;justify-self:end}
.rvs--incoming .rvs-scene-caption{grid-column:1;align-self:start}
.rvs.rvs--debt .rvs-hero{grid-template-columns:1fr;gap:10px;padding-bottom:45px}
.rvs--debt .rvs-hero>div:first-child{max-width:850px}
.rvs--debt .rvs-scene{width:100%;display:grid;grid-template-columns:1fr 2fr;align-items:center;border-top:1px solid #ded8d3;padding-top:30px;column-gap:50px}
.rvs--debt .rvs-diagram{grid-column:2;grid-row:1/4;max-height:260px}
.rvs--debt .rvs-scene-kicker,.rvs--debt .rvs-scene-title,.rvs--debt .rvs-scene-caption{grid-column:1}
.rvs.rvs--recruitment .rvs-hero{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:50px}
.rvs--recruitment .rvs-scene{background:#eee9e3;border-radius:12px;padding:30px 24px 20px;position:relative}
.rvs--recruitment .rvs-scene:before{content:'';position:absolute;left:16px;right:16px;top:-7px;height:6px;border:1px solid #dcd4cd;border-bottom:0;border-radius:8px 8px 0 0}
.rvs.rvs--surveys .rvs-hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:60px}
.rvs--surveys .rvs-scene{background:white;padding:30px 24px 20px;border-top:3px solid #a30c33}
.rvs-process{border-top:1px solid #ded8d3}
.rvs-step{border-bottom:1px solid #ded8d3}
.rvs-step summary{display:flex;align-items:center;gap:20px;cursor:pointer;padding:21px 0;font-size:18px;line-height:1.35;list-style:none;font-weight:500}
.rvs-step summary::-webkit-details-marker{display:none}
.rvs-step summary:focus-visible{outline:2px solid #a30c33;outline-offset:3px}
.rvs-step-number{font-size:11px;color:#a30c33;flex-shrink:0;font-variant-numeric:tabular-nums}
.rvs-step-toggle{margin-left:auto;color:#a30c33;font-size:22px;font-weight:400;transition:transform .2s ease}
.rvs-step[open] .rvs-step-toggle{transform:rotate(45deg)}
.rvs-step-body{padding:0 35px 24px}
.rvs-step-body p{margin:0}
.rvs--debt #solution-process .rvs-section-layout,.rvs--incoming #solution-process .rvs-section-layout{grid-template-columns:1fr;gap:12px}
.rvs--debt .rvs-process{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 35px}
.rvs--debt .rvs-step summary{align-items:flex-start;font-size:16px;min-height:90px}
.rvs--debt .rvs-step-body{padding-left:0;padding-right:0}
.rvs--debt .rvs-step-body p{font-size:14px}
.rvs--recruitment .rvs-process{border:0;display:grid;gap:12px}
.rvs--recruitment .rvs-step{border:1px solid #ded8d3;background:#fff;border-radius:8px;padding:0 20px}
.rvs--surveys .rvs-step[open]{border-left:2px solid #a30c33;padding-left:18px}
.rvs--informing #solution-tasks .rvs-copy p{padding:0 0 20px;border-bottom:1px solid #e7e1dc}
.rvs--incoming #solution-tasks .rvs-copy{display:grid;grid-template-columns:1fr 1fr;gap:20px 30px}
.rvs--incoming #solution-tasks .rvs-copy p{border-top:1px solid #dcd4cd;padding-top:18px;margin:0}
.rvs-scene-seen .rvs-wire,.rvs-scene-seen .rvs-wave{stroke-dasharray:850;stroke-dashoffset:0;animation:rvs-draw 2s ease-out both}
.rvs-scene-seen .rvs-check{animation:rvs-check 1.3s ease-out both}
.rvs-button span,.rvs-related a span{transition:transform .2s ease}
.rvs-button:hover span,.rvs-related a:hover span{transform:translate(2px,-2px)}
@keyframes rvs-draw{from{stroke-dashoffset:850}to{stroke-dashoffset:0}}
@keyframes rvs-check{0%,45%{opacity:.2}100%{opacity:1}}
@media(max-width:1000px){.rvs .rvs-hero{gap:32px}.rvs--debt .rvs-process{grid-template-columns:repeat(2,minmax(0,1fr))}.rvs--support .rvs-scene{padding-left:20px}.rvs .rvs-scene-title{font-size:21px}}
@media(max-width:700px){.rvs.rvs .rvs-hero{grid-template-columns:1fr;gap:30px}.rvs--incoming .rvs-scene,.rvs--debt .rvs-scene{display:block}.rvs--incoming .rvs-diagram{max-width:none}.rvs--debt .rvs-diagram{max-height:none}.rvs--support .rvs-scene{transform:none;border-left:0;border-top:1px solid #ded8d3;padding-left:0}.rvs--informing .rvs-scene{border-radius:12px;padding-top:24px}.rvs-scene{padding-top:22px}.rvs--debt .rvs-process{grid-template-columns:1fr}.rvs--debt .rvs-step summary{min-height:0}.rvs--incoming #solution-tasks .rvs-copy{grid-template-columns:1fr}.rvs-step summary{font-size:16px;gap:14px}.rvs-step-body{padding-left:28px;padding-right:0}.rvs-diagram text{font-size:13px}.rvs-diagram .rvs-small{font-size:11px}}
@media(prefers-reduced-motion:reduce){.rvs *, .rvs *:before{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
