/* Sporeworks-inspired editorial details, redrawn for BadMonkey. */
:root{--copper:#efaa77;--leaf:#bdcca1;--detail-mono:ui-monospace,SFMono-Regular,Menlo,monospace}
.chapter-kicker{display:flex;align-items:center;gap:12px;color:var(--copper);letter-spacing:.27em}
.chapter-kicker::before{content:"";height:1px;width:29px;background:currentColor;transform-origin:left;flex-shrink:0}
.chapter-hero .chapter-kicker{justify-content:center;color:#efeedf}
.chapter-hero .chapter-kicker::before{display:none}
.headline-word{display:inline-block;opacity:0;transform:translateY(13px);transition:opacity .48s ease,transform .58s cubic-bezier(.2,.7,.2,1);transition-delay:0ms}
.is-active .headline-word{opacity:1;transform:none;transition-delay:var(--word-delay)}
.chapter.is-active .chapter-kicker::before{animation:topic-draw .6s ease both}
@keyframes topic-draw{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.shape-readout{display:flex;align-items:center;gap:12px;font:8px var(--detail-mono);letter-spacing:.15em;color:#ebeede}
.shape-readout strong{font-weight:400;font-variant-numeric:tabular-nums;color:var(--copper);min-width:4ch;text-align:right}
.shape-meter{display:block;width:76px;height:2px;background:#e5e9d22e;overflow:hidden}
.shape-meter i{display:block;width:100%;height:100%;background:linear-gradient(90deg,var(--leaf),#f0d490);transform:scaleX(var(--story-progress,0));transform-origin:left}
.journey-rail,.journey[data-chapter="5"] .journey-rail{left:var(--gutter);right:auto;top:auto;bottom:100px;width:320px;height:64px;transform:none;display:block;z-index:5}
.chapter-vine{position:absolute;inset:0;width:100%;height:100%;fill:none;pointer-events:none}
.chapter-vine path{stroke-width:.9;vector-effect:non-scaling-stroke}.vine-base{stroke:#d4dec132}
#vine-growth{stroke:var(--leaf);stroke-dasharray:1;stroke-dashoffset:1}
.trail-caption{position:absolute;left:0;top:-11px;display:flex;gap:14px;font:6px var(--detail-mono);letter-spacing:.16em;color:#c3cfb380;pointer-events:none}
.trail-caption b{font-weight:400;color:#dce4cf}
.journey-rail button{position:absolute;left:calc(var(--node-x)*1%);top:calc(var(--node-y)*1%);width:30px;height:30px;min-width:0;padding:0;transform:translate(-50%,-50%);display:grid;place-items:center;border-radius:50%}
.journey-rail button:nth-of-type(1){--node-x:4.375;--node-y:68.75}.journey-rail button:nth-of-type(2){--node-x:17.5;--node-y:34.375}.journey-rail button:nth-of-type(3){--node-x:30.625;--node-y:68.75}.journey-rail button:nth-of-type(4){--node-x:43.75;--node-y:34.375}.journey-rail button:nth-of-type(5){--node-x:56.875;--node-y:68.75}.journey-rail button:nth-of-type(6){--node-x:70;--node-y:34.375}.journey-rail button:nth-of-type(7){--node-x:83.125;--node-y:68.75}.journey-rail button:nth-of-type(8){--node-x:96.25;--node-y:34.375}
.journey-rail button i{width:7px;height:7px;border:1px solid #dbe5c775;background:#142016;border-radius:50%;transition:background .2s,border-color .2s,box-shadow .2s}
.journey-rail button.is-visited i{border-color:var(--leaf);background:#4c6141}
.journey-rail button.is-active i{background:var(--copper);border-color:var(--copper);transform:none;box-shadow:0 0 0 4px #edc6861c,0 0 0 5px #c9d5b530}
.journey-rail button span{right:auto;left:50%;top:-18px;transform:translateX(-50%);font:8px var(--detail-mono);padding:5px 7px;background:#09140fea}
.journey-rail button:hover i,.journey-rail button:focus-visible i{border-color:#fff9dd;box-shadow:0 0 0 4px #edc68630}
.journey-rail button.is-active span{opacity:0}.journey-rail button:hover span,.journey-rail button:focus-visible span{opacity:1}
.journey-atmosphere{position:absolute;inset:0;pointer-events:none;z-index:4;overflow:hidden}
.journey-atmosphere i{position:absolute;width:3px;height:3px;border-radius:50%;background:#f6dfb4;box-shadow:0 0 7px #dfdabb50;animation:drifting-dust .8s ease-out forwards}
@keyframes drifting-dust{0%{opacity:.45;transform:translate(0,0) scale(1)}100%{opacity:0;transform:translate(var(--drift),-22px) scale(.2)}}
.chapter .text-link{border-bottom:1px solid #efaa7770;padding-bottom:8px;font-size:10px;letter-spacing:.06em;transition:color .2s,border-color .2s,gap .3s}
.chapter .text-link:hover{border-color:var(--leaf);gap:32px}
.text-link>span:last-child,.button>span:last-child,.lab-arrow{transition:transform .3s cubic-bezier(.2,.7,.2,1)}
.text-link:hover>span:last-child,.button:hover>span:last-child{transform:translate(3px,-3px)}
.chapter>.button,.form-submit{clip-path:polygon(9px 0,100% 0,100% calc(100% - 9px),calc(100% - 9px) 100%,0 100%,0 9px)}
.chapter>.button:focus-visible,.form-submit:focus-visible{clip-path:none}
.desktop-nav a{position:relative}.desktop-nav a::after{content:"";position:absolute;left:0;bottom:-8px;width:100%;height:1px;background:var(--copper);transform:scaleX(0);transform-origin:left;transition:transform .25s}
.desktop-nav a:hover::after,.desktop-nav a:focus-visible::after{transform:scaleX(1)}
.part-label span{font-family:var(--detail-mono);font-weight:400;letter-spacing:.08em}.part-label::before{content:"";position:absolute;left:-8px;top:4px;width:3px;height:3px;background:var(--copper)}
.section-heading .eyebrow{letter-spacing:.16em}.section-heading .index{color:var(--copper)}.about .section-heading .index{color:#8a552f}
.credibility-strip strong{font-family:var(--serif);font-style:italic;letter-spacing:-.02em;font-size:44px}
.engagement-steps>div{position:relative}.engagement-steps>div::before{content:"";position:absolute;top:-3px;left:0;width:5px;height:5px;background:var(--copper);border-radius:50%;box-shadow:0 0 0 4px #efaa7710}
.engagement-steps>div::after{content:"";position:absolute;top:-1px;left:0;height:1px;width:100%;background:linear-gradient(90deg,var(--copper),transparent);transform:scaleX(0);transform-origin:left}
.engagement-steps>.detail-in::after{animation:topic-draw 1s ease both}.engagement-steps>div:nth-child(2)::after{animation-delay:.15s}.engagement-steps>div:nth-child(3)::after{animation-delay:.3s}
.service summary{transition:background .3s}.service summary:hover{background:linear-gradient(90deg,#bed3a808,transparent)}
.lab-row:hover .lab-arrow{transform:translate(5px,-5px)}
.signature{display:flex;align-items:center;gap:14px}.signature-print{width:62px;height:62px;fill:none;stroke:#34462d;stroke-width:.48}.signature-print circle{stroke-width:.55;stroke-dasharray:1 3}
.signature>span{font:7px var(--detail-mono);letter-spacing:.13em;line-height:1.8}.signature small{display:block;font:10px var(--sans);letter-spacing:0;margin-top:5px}
.signature.detail-in .signature-print{animation:seal-in 1.2s ease both}
@keyframes seal-in{from{opacity:0;transform:rotate(-16deg) scale(.95)}to{opacity:1;transform:none}}
.motion-off .headline-word,.no-js .headline-word{opacity:1;transform:none;transition:none}
.motion-off .journey-atmosphere,.motion-off .journey-rail{display:none}
@media(max-width:1150px){.shape-readout{font-size:7px}.shape-meter{width:55px}.signature{gap:10px}.signature-print{width:48px;height:48px}}
@media(max-width:800px){
 .chapter-hero .chapter-kicker{display:none}.chapter-kicker{gap:9px;letter-spacing:.2em}.chapter-kicker::before{width:20px}
 .hero-topline{align-items:flex-start}.hero-topline>span:first-child{font-size:5px;max-width:100px;line-height:1.8}.shape-readout{font-size:5px;letter-spacing:.08em;gap:6px}.shape-meter{width:30px}
 .journey-rail,.journey[data-chapter="5"] .journey-rail{bottom:79px;left:var(--gutter);width:210px;height:42px;top:auto;right:auto}.trail-caption{display:none}.journey-rail button{width:26px;height:26px}.journey-rail button i{width:5px;height:5px}.journey-rail button span{font-size:7px}
 .chapter,.chapter-engineering{bottom:147px}.chapter-hero{bottom:auto}.chapter .text-link{font-size:9px;padding-bottom:6px}.chapter-engineering h2{font-size:28px}.chapter-engineering .chapter-description{font-size:11px}
 .part-label::before{display:none}.part-label span{font-size:6px}.signature-print{width:54px;height:54px}.signature>span{font-size:7px}
}
@media(max-width:800px) and (max-height:720px){.chapter,.chapter-engineering{bottom:132px}.chapter-hero{bottom:auto}.chapter-description{font-size:10px;line-height:1.6}.chapter-engineering h2{font-size:25px}.chapter .text-link{margin-top:11px}.journey-rail,.journey[data-chapter="5"] .journey-rail{bottom:74px}}
@media(max-height:700px) and (min-width:801px){.journey-rail,.journey[data-chapter="5"] .journey-rail{left:auto;right:var(--gutter);bottom:92px;width:260px;height:52px}.chapter h2{font-size:38px}}
@media(prefers-reduced-motion:reduce){.headline-word{opacity:1;transform:none;transition:none}.journey-atmosphere{display:none}.chapter.is-active .chapter-kicker::before,.engagement-steps>.detail-in::after,.signature.detail-in .signature-print{animation:none}.engagement-steps>div::after{transform:scaleX(1)}.text-link,.text-link>span,.button>span{transition:none}}
