/* The campaign timeline uses the established forest, paper and citrus palette. */
.screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.ownership-section{background:#e5ed90;border-bottom:1px solid #c4cd91}
.ownership-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}
.ownership-grid h2{max-width:19ch}
.ownership-grid p{max-width:62ch}
@media(max-width:760px){.ownership-grid{grid-template-columns:1fr;gap:24px}}
.campaign-flow{margin-top:42px;border:1px solid #536952;border-radius:7px;overflow:hidden;background:#203b31;color:#f4f1e7;contain:layout style}
.flow-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:24px 28px 0}
.flow-label{font:800 10px/1.5 var(--body);letter-spacing:.1em;text-transform:uppercase;color:#c9d4b9}
.flow-state{font-size:11px;color:#e5ed90}
.flow-track{position:relative;margin:10px 16px 0;padding:40px 16px 59px}
.flow-lines{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.flow-lines path{fill:none;stroke:#6d8164;stroke-width:1.4}
.flow-lines path.is-complete{stroke:#c0cc89}
.flow-lines path:last-child{stroke-dasharray:5 6;stroke:#92a578}
.flow-packet{fill:#e5ed90;stroke:#203b31;stroke-width:3}
.flow-packet-trail{fill:#aabc79;opacity:.7}
.flow-stages{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));list-style:none;gap:16px;margin:0;padding:0;position:relative}
.flow-stages li{min-width:0;margin:0;padding:0}
.flow-stages button{appearance:none;display:flex;width:100%;min-width:0;flex-direction:column;align-items:center;border:0;background:transparent;color:#dbe3cc;font:inherit;padding:0;cursor:pointer}
.flow-node{display:grid;place-items:center;width:54px;height:54px;flex-shrink:0;border:1px solid #96aa83;border-radius:50%;background:#203b31;color:#cdd8ba;font:600 17px var(--display);transform:scale(.82);transition:transform .4s cubic-bezier(.22,1,.36,1),background-color .25s,color .25s}
.flow-stage-name{font:800 11px/1.45 var(--body);margin-top:21px;white-space:normal}
.flow-stage-result{font:400 9px/1.45 var(--body);color:#c0ceb2;max-width:17ch;margin-top:5px;text-align:center}
.flow-stages button[aria-pressed=true] .flow-node{transform:scale(1.18);background:#e5ed90;border-color:#e5ed90;color:#203b31}
.flow-stages button[aria-pressed=true] .flow-stage-name{color:#e5ed90}
.flow-stages button.is-complete .flow-node{background:#42583c;color:#eef2d5;border-color:#c0cc89;transform:scale(.98)}
.flow-stages button[aria-pressed=true].is-complete .flow-node{transform:scale(1.18);background:#e5ed90;color:#203b31}
.flow-stages button:hover .flow-node{border-color:#f4f1e7}
.flow-return{position:absolute;left:50%;bottom:5px;transform:translateX(-50%);background:#203b31;padding:5px 14px;white-space:nowrap;font-size:10px;color:#d6e0bc}
.flow-return span{font-size:16px;margin-right:5px;color:#e5ed90}
.flow-context{display:grid;grid-template-columns:1.15fr 1fr;gap:54px;padding:30px 32px 29px;border-top:1px solid #536952;background:#162b24;min-height:245px}
.flow-story .flow-label{margin-bottom:13px;color:#e5ed90}
.flow-story h3{font:600 clamp(23px,2.7vw,32px)/1.12 var(--display);letter-spacing:-.035em;max-width:23ch;margin:0 0 14px;color:#f4f1e7}
.flow-story>p:last-child{font-size:12px;line-height:1.8;max-width:55ch;color:#d4dfca;margin:0}
.flow-outcome{align-self:center;padding:23px 26px;border:1px solid #67805b;border-radius:4px;background:#203b31}
.flow-outcome strong{display:block;font:600 24px/1.15 var(--display);letter-spacing:-.03em;color:#e5ed90;margin:12px 0}
.flow-outcome p{color:#d4dfca;font-size:11px;line-height:1.7;margin:0 0 19px;max-width:48ch}
.flow-progress{height:3px;background:#536952;overflow:hidden}
.flow-progress span{display:block;width:100%;height:100%;background:#e5ed90;transform:scaleX(0);transform-origin:left}
.flow-controls{display:flex;align-items:center;gap:35px;padding:24px 28px;border-top:1px solid #536952}
.flow-controls[hidden]{display:none}
.flow-buttons{display:flex;gap:8px;flex-shrink:0;align-items:center}
.flow-buttons button{border:1px solid #81996e;border-radius:4px;background:transparent;color:#f4f1e7;font:700 11px var(--body);padding:12px 14px;min-height:44px;cursor:pointer}
.flow-buttons .flow-play{background:#e5ed90;border-color:#e5ed90;color:#203b31;min-width:126px}
.flow-buttons button:hover{background:#385139}
.flow-buttons .flow-play:hover{background:#f4f1e7}
.flow-scrubber{display:block;flex:1;min-width:130px}
.flow-scrubber>.flow-label{display:flex;justify-content:space-between;gap:12px;font-size:8px}
.flow-scrubber input{display:block;width:100%;height:25px;margin:6px 0 0;padding:0;accent-color:#e5ed90;cursor:pointer;background:transparent}
.flow-range-labels{display:flex;justify-content:space-between;font-size:8px;color:#cbd7be}
.flow-record{display:flex;align-items:center;gap:17px;border-top:1px solid #536952;padding:20px 28px;background:#e5ed90;color:#203b31}
.flow-record-mark{font:700 37px var(--display);line-height:1}
.flow-record p{font-size:11px;line-height:1.7;margin:0;max-width:85ch}
.flow-record strong{display:block;font-size:12px}
.flow-noscript{font-size:12px;padding:15px 25px}
.campaign-flow :focus-visible{outline:2px solid #e5ed90;outline-offset:5px}
.campaign-flow.is-reduced-motion .flow-packet,.campaign-flow.is-reduced-motion .flow-packet-trail{display:none}
.flow-story.is-changing{animation:flow-copy-in .32s cubic-bezier(.22,1,.36,1)}
@keyframes flow-copy-in{from{opacity:.4;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1000px){.flow-stage-name{font-size:10px}.flow-stage-result{font-size:8px}.flow-controls{flex-direction:column;align-items:stretch;gap:22px}.flow-buttons{justify-content:flex-start}.flow-context{gap:28px}}
@media(max-width:650px){.campaign-flow{margin-top:29px}.flow-heading{padding:20px 18px 0}.flow-label{font-size:9px}.flow-state{font-size:9px}.flow-track{margin:8px 10px 0;padding:32px 10px 47px}.flow-stages{grid-template-columns:repeat(3,minmax(0,1fr));gap:41px 13px}.flow-node{width:46px;height:46px;font-size:15px}.flow-stage-name{font-size:9px;margin-top:14px}.flow-stage-result{font-size:8px;max-width:15ch}.flow-return{font-size:8px;padding:4px 8px;bottom:3px}.flow-context{grid-template-columns:1fr;gap:22px;padding:24px 20px;min-height:0}.flow-story h3{font-size:28px;max-width:22ch}.flow-story>p:last-child{font-size:12px}.flow-outcome{padding:20px}.flow-outcome strong{font-size:23px}.flow-controls{padding:21px 18px;gap:22px}.flow-buttons{gap:6px;justify-content:space-between}.flow-buttons button{font-size:10px;padding:11px 10px}.flow-buttons .flow-play{min-width:115px}.flow-record{padding:18px;gap:12px}.flow-record p{font-size:10px}.flow-record strong{font-size:11px}.flow-record-mark{font-size:31px}}
@media(prefers-reduced-motion:reduce){.campaign-flow *{animation:none!important;transition:none!important}}
