/* Two original brand characters, presented as an editorial product illustration. */
.duo-section{--motion-play:paused;--cycle:8s;--art-line:#d5d6d5;padding-top:54px;padding-bottom:40px;background:transparent;border:0;border-radius:0;box-shadow:none}
.duo-section.is-playing{--motion-play:running}
.duo-section .section-heading{margin-bottom:26px}
.duo-section .section-heading h2{font-size:clamp(26px,2.5vw,32px);font-weight:500;letter-spacing:-.025em;line-height:1.5}
.duo-section .section-heading h2 span{color:var(--orange)}
.duo-mobile-break{display:none}
.duo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px;max-width:900px;margin:0 auto;isolation:isolate}
.duo-role{min-width:0;padding:8px 0 0}
.advisor-role,.writer-role{background:transparent;border:0;border-radius:0;box-shadow:none}
.duo-role-heading{text-align:center}
.duo-role-heading h3{display:flex;justify-content:center;align-items:center;gap:12px;font-size:21px;font-weight:500;letter-spacing:-.02em;line-height:1.5;margin:0}
.duo-role-heading h3 span{font-size:13px;font-weight:400;letter-spacing:0;border-left:1px solid #c7c7c3;padding-left:12px;color:#60636a}
.duo-role-heading p{color:#6a6d72;font-size:13px;line-height:1.7;margin:7px 0 10px}
.role-art{width:100%;max-width:380px;margin:auto}
.role-art>svg{display:block;width:100%;height:auto;overflow:visible}
.role-art svg text{font-family:inherit;font-size:16px;fill:#454a50;text-anchor:middle;font-weight:450}
.graph-paths path{fill:none;stroke:var(--art-line);stroke-width:2.5;stroke-linecap:round}
.signal{fill:none;stroke:var(--orange);stroke-width:3;stroke-linecap:round;stroke-dasharray:12 88;stroke-dashoffset:100;animation:signal-flow var(--cycle) ease-in-out infinite}
.signal-two{animation-delay:.4s}.signal-three{animation-delay:.8s}.signal-result{animation-delay:2.5s}
.source-tile>rect{fill:#fff;stroke:#eeefec;stroke-width:1;filter:url(#advisor-shadow)}
.writer-art .source-tile>rect{filter:url(#writer-shadow)}
.source-tile{transform-box:fill-box;transform-origin:center;transition:transform .35s cubic-bezier(.16,1,.3,1)}
.source-tile:hover{transform:translateY(-4px)}
.tile-icon{stroke:#8b9296;fill:none;stroke-width:2.7;stroke-linecap:round;stroke-linejoin:round}
.tile-icon .icon-accent{stroke:var(--orange)}
.advisor-float{animation:advisor-breathe var(--cycle) ease-in-out infinite;transform-origin:260px 240px}
.branch-nodes{fill:#cbd0d1;stroke:#fff;stroke-width:3;filter:url(#advisor-shadow)}
.selected-path{fill:none;stroke:#ffb297;stroke-width:3;stroke-linecap:round}
.direction-node{filter:url(#advisor-shadow);transform-origin:322px 348px;animation:result-emphasis var(--cycle) ease-in-out infinite}
.direction-node circle{fill:var(--orange);stroke:#fff;stroke-width:3}
.direction-node path{stroke:#fff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;fill:none}
.direction-label rect{fill:#fff;stroke:#eeefec;filter:url(#advisor-shadow)}
.direction-label text{font-size:14px}
.paper-back{fill:#f8f7f4;stroke:#e8e5e1;filter:url(#writer-shadow)}
.main-paper{filter:url(#writer-shadow)}
.paper-face{fill:#fff;stroke:#eeebe7}
.paper-fold{fill:#f0efec;stroke:#eeebe7}
.paper-lines{stroke:#dce0e1;stroke-width:6;stroke-linecap:round;fill:none}
.paper-section{stroke:#ff9473;stroke-width:8;stroke-linecap:round;fill:none;animation:paper-write var(--cycle) ease-in-out infinite;transform-box:fill-box;transform-origin:left}
.section-b{animation-delay:1s}.section-c{animation-delay:2s}
.writer-art .evidence-label{font-size:14px;text-anchor:start}
.data-table{fill:#f5f5f3;stroke:#d9dedd;stroke-width:1}
.data-table .data-cell{fill:#ff936f;stroke:none}
.checklist rect{fill:#ff9878}.checklist path{stroke:#fff;stroke-width:1.6;fill:none;stroke-linecap:round;stroke-linejoin:round}
.evidence-lines{stroke:#d8dbdc;stroke-width:6;stroke-linecap:round;fill:none}
.writer-signal-one{animation-delay:0s}.writer-signal-two{animation-delay:1s}.writer-signal-three{animation-delay:2s}
.paper-anchors{fill:#ff946f;stroke:#fff;stroke-width:2}
.writer-float{animation:writer-breathe var(--cycle) ease-in-out infinite}
.quality-seal{filter:url(#writer-shadow);transform-origin:421px 336px;animation:seal-emphasis var(--cycle) ease-in-out infinite}
.seal-outer{fill:#ffe2d2;stroke:#fff;stroke-width:3}
.seal-inner{fill:#fff3e9;stroke:#ffb59c;stroke-width:1.5}
.quality-seal path{fill:none;stroke:var(--orange);stroke-width:6;stroke-linecap:round;stroke-linejoin:round}
.duo-section .role-art *{animation-play-state:var(--motion-play)}
.role-capabilities{display:flex;align-items:center;justify-content:center;gap:16px;margin:8px 0 0;font-size:12px;color:#646a70;line-height:1.7}
.role-capabilities span+span::before{content:"";display:inline-block;width:3px;height:3px;border-radius:50%;background:#b8b9b5;vertical-align:middle;margin-right:16px}
@keyframes signal-flow{0%,12%{stroke-dashoffset:100;opacity:0}16%{opacity:1}43%{stroke-dashoffset:0;opacity:1}48%,100%{stroke-dashoffset:-12;opacity:0}}
@keyframes advisor-breathe{0%,100%{transform:translateY(0)}35%,55%{transform:translateY(-5px)}}
@keyframes result-emphasis{0%,35%,80%,100%{transform:scale(1)}49%,64%{transform:scale(1.1)}}
@keyframes paper-write{0%,12%{transform:scaleX(.68)}40%,100%{transform:scaleX(1)}}
@keyframes writer-breathe{0%,100%{transform:translateY(0)}48%{transform:translateY(-4px)}}
@keyframes seal-emphasis{0%,49%,85%,100%{transform:scale(1) rotate(0)}64%,72%{transform:scale(1.09) rotate(-5deg)}}
@media(max-width:1000px){.duo-grid{gap:32px}.duo-role-heading h3{font-size:20px;gap:8px}.duo-role-heading h3 span{font-size:12px;padding-left:8px}.role-capabilities{gap:10px;font-size:12px}.role-capabilities span+span::before{margin-right:10px}}
@media(max-width:720px){.duo-section{padding-top:42px;padding-bottom:32px}.duo-section .section-heading{margin-bottom:22px}.duo-mobile-break{display:block}.duo-grid{grid-template-columns:1fr;gap:32px;max-width:400px}.duo-role{padding:0}.duo-role-heading h3{font-size:20px}.duo-role-heading h3 span{font-size:12px}.duo-role-heading p{font-size:12px;margin-bottom:4px}.role-art{max-width:320px}.role-capabilities{margin-top:6px}}
@media(prefers-reduced-motion:reduce){.duo-section .role-art *{animation:none!important;transition:none!important}.signal{display:none}}
