/* Handwritten emphasis remains visible even without JavaScript. */
.do-tank{position:relative;display:inline-block;white-space:nowrap;font-weight:inherit;padding-bottom:.16em}
.do-word{display:inline-block;font-style:normal;font-weight:800;color:#a314a3;background:linear-gradient(115deg,#7924d8 8%,#a819c3 38%,#c51180 68%,#8521c3 95%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.handwritten-underline{position:absolute;left:-2%;bottom:-.02em;width:104%;height:.32em;overflow:visible;fill:none;stroke:#e5ac24;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.handwritten-underline path:nth-child(2){stroke:#f3c52d;stroke-width:3.5}.handwritten-underline path:nth-child(3){stroke:#dba329;stroke-width:3}
.do-tank.is-drawing path{stroke-dasharray:1;animation:handwrite 1s ease-out both}.do-tank.is-drawing path:nth-child(2){animation-delay:.65s}.do-tank.is-drawing path:nth-child(3){animation-delay:1.3s}
@keyframes handwrite{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
.philosophy-copy .intent-word{display:inline;font-weight:600;color:#273c51;background:linear-gradient(100deg,#ffe56b,#ffdc49);background-repeat:no-repeat;background-position:left 65%;background-size:100% 85%;box-decoration-break:clone;-webkit-box-decoration-break:clone;padding:0 .07em}
.philosophy-copy .is-highlighting .intent-word{animation:yellow-highlight 1.1s ease-out both}.philosophy-copy .is-highlighting .intent-include{animation-delay:.55s}.philosophy-copy .is-highlighting .intent-innovate{animation-delay:1.1s}
@keyframes yellow-highlight{from{background-size:0% 85%}to{background-size:100% 85%}}
@media(prefers-reduced-motion:reduce){.do-tank.is-drawing path,.philosophy-copy .is-highlighting .intent-word{animation:none;stroke-dashoffset:0}}
.last-mile-bridge{margin:32px auto 28px;padding:30px;background:#f3f7fa;border:1px solid #dce6ec;border-radius:18px;max-width:1000px;text-align:center}
.bridge-eyebrow{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:#715075;font-weight:600}
.last-mile-heading h2{font-size:clamp(1.4rem,2.8vw,2.15rem);line-height:1.25;letter-spacing:-.025em;color:#18384d;margin:12px 0}
.last-mile-heading>p{font-size:.95rem;line-height:1.7;color:#4c6272;margin:0}
.last-mile-route{display:grid;grid-template-columns:1fr 1.1fr 1fr;gap:20px;list-style:none;margin:26px 0 0;padding:0;align-items:stretch}
.last-mile-route li{padding:24px 16px;border-radius:12px;background:white;position:relative}
.last-mile-route svg{height:42px;width:42px;color:#267c83;margin-bottom:10px}
.last-mile-route h3{font-size:1.02rem;line-height:1.4;color:#18384d;margin:0 0 12px}
.last-mile-route p{font-size:.86rem;line-height:1.65;margin:0;color:#455f6f}
.last-mile-route .mile-connection{background:#eee5f5;border:1px solid #e0ceea;padding-top:28px}
.mile-connection h3{color:#712779}.bridge-track{display:flex;align-items:center;justify-content:space-between;height:3px;background:linear-gradient(90deg,#418895,#a726a4,#418895);margin:16px 8px 30px}.bridge-track i{display:block;width:9px;height:9px;background:#a726a4;border:3px solid #eee5f5;border-radius:50%;box-sizing:content-box}
.mile-direction{position:absolute;right:-22px;top:50%;font-size:1.65rem;color:#8a268d;z-index:1}
.mile-connection::before{content:"→";position:absolute;left:-22px;top:50%;font-size:1.65rem;color:#8a268d;z-index:1}
.mile-localisation{max-width:78ch;font-size:.9rem;line-height:1.75;color:#405b6d;margin:22px auto 0}.mile-localisation strong{color:#18384d}
@media(max-width:650px){.last-mile-bridge{padding:22px 16px;margin-top:24px}.last-mile-heading h2 br{display:none}.last-mile-route{grid-template-columns:1fr;gap:22px}.last-mile-route li{padding:20px 16px}.mile-connection::before{content:"↓";left:calc(50% - 9px);top:-26px}.mile-direction{left:calc(50% - 9px);right:auto;top:auto;bottom:-26px;transform:rotate(90deg)}.bridge-track{max-width:170px;margin:0 auto 18px}.last-mile-route .mile-connection{padding-top:22px}}
@media(prefers-reduced-motion:reduce){.do-word,.do-word::before,.do-word::after,.philosophy-copy .intent-word{animation:none}}
@media(forced-colors:active){.do-word{background:none;color:CanvasText;-webkit-text-fill-color:CanvasText}.philosophy-copy .intent-word{color:CanvasText;background:none;text-decoration:underline}.do-word::after{background:CanvasText}}

/* Connect organizational capacity with people's agency, including the return path. */
.participation-cycle{max-width:1100px}.participation-cycle .last-mile-heading>p{max-width:74ch;margin:0 auto}
.participation-stages{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:28px 0 0;text-align:left}
.participation-stages li{background:#fff;border-top:3px solid #2b7c87;border-radius:0 0 10px 10px;padding:20px 16px;position:relative;display:flex;flex-direction:column}
.participation-stages li:nth-child(2){border-color:#846091}.participation-stages li:nth-child(3){border-color:#ad288c}.participation-stages li:nth-child(4){background:#173b4b;border-color:#54a79d;color:white}
.participation-stages li:not(:last-child)::after{content:"→";position:absolute;right:-17px;top:45%;color:#8d3c94;font-size:1.3rem;z-index:1}
.stage-number{font-size:.72rem;font-weight:600;letter-spacing:.12em;color:#607789}.participation-stages h3{font-size:1.05rem;line-height:1.35;margin:12px 0;color:#173b4b}.participation-stages p{font-size:.85rem;line-height:1.7;margin:0 0 18px;color:#425b6e}
.stage-caption{display:block;border-top:1px solid #dce6eb;padding-top:12px;margin-top:auto;font-size:.72rem;font-weight:600;line-height:1.5;color:#466476}.participation-stages li:last-child h3{color:#fff}.participation-stages li:last-child p,.participation-stages li:last-child .stage-number{color:#d9e9ed}.participation-stages li:last-child .stage-caption{color:#b8e5dd;border-color:#547582}
.community-return{display:flex;align-items:center;gap:16px;margin:14px 0 0;padding:14px 22px;border:1px solid #c7dadc;border-top:0;border-radius:0 0 18px 18px;color:#256a68;text-align:center;justify-content:center}.community-return>span{font-size:2.2rem}.community-return p{font-size:.84rem;line-height:1.65;margin:0}.participation-cycle .mile-localisation{margin-top:18px;font-size:.85rem}
@media(max-width:800px){.participation-stages{grid-template-columns:1fr;gap:22px}.participation-stages li{padding:18px 20px}.participation-stages li:not(:last-child)::after{content:"↓";right:calc(50% - 7px);top:auto;bottom:-25px}.community-return{padding:16px 12px;border-top:1px solid #c7dadc;border-radius:12px}.community-return>span{transform:rotate(90deg)}}

/* A visible human question leads into the practical delivery story. */
.soul-question{max-width:980px;margin:30px auto 34px;padding:28px 36px;background:#fff1a0;border:1px solid #f0d45a;border-left:7px solid #e7b527;border-radius:18px;text-align:left;color:#18384d}
.soul-eyebrow{display:block;font-size:.7rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:#675116}
.story-philosophy .soul-question h2{font-size:clamp(1.6rem,3.1vw,2.65rem);line-height:1.22;letter-spacing:-.035em;margin:12px 0 16px;color:#18384d}
.soul-question h2 em{font-style:normal;color:#890077;text-decoration:underline;text-decoration-color:#dfad18;text-decoration-thickness:3px;text-underline-offset:5px}
.soul-question a{color:#18384d;font-size:.85rem;font-weight:600;text-underline-offset:4px}.soul-question a:focus-visible{outline:3px solid #890077;outline-offset:5px}
.participation-cycle{background:#f8fafc;border-color:#dce5ec}
.participation-stages li{background:#e5f1fc;border-top:5px solid #347da6}
.participation-stages li:nth-child(2){background:#eae0f4;border-color:#b88ae0;box-shadow:none}
.participation-stages li:nth-child(2) h3,.participation-stages li:nth-child(2) p,.participation-stages li:nth-child(2) .stage-number,.participation-stages li:nth-child(2) .stage-caption{color:#49335f}.participation-stages li:nth-child(2) .stage-caption{border-color:#ffffff55}
.participation-stages li:nth-child(3){background:#e0f2ef;border-color:#26877b}
.participation-stages li:nth-child(4){background:#fff0b0;border-color:#d99b08}
.participation-stages li:last-child h3,.participation-stages li:last-child p,.participation-stages li:last-child .stage-number,.participation-stages li:last-child .stage-caption{color:#18384d}
.participation-stages .stage-caption{border-color:#18384d30;color:#18384d}.participation-stages li:last-child .stage-caption{border-color:#18384d40}
.community-return{background:#edf2f6;border-color:#d5e0e8;color:#18384d}
@media(max-width:650px){.soul-question{padding:22px 20px;margin:24px auto;border-left-width:5px}.story-philosophy .soul-question h2{font-size:1.65rem}}


.participation-stages li{border-top:0;border-radius:10px}
.soul-question{max-width:760px;background:#fff7ce;padding:24px 28px;border-radius:10px}
.story-philosophy .soul-question h2{font-size:clamp(1.5rem,2.5vw,2rem)}
