.rail-prog{flex:1;height:2px;background:rgba(255,255,255,.2);position:relative;overflow:hidden}
.rail-prog i{position:absolute;inset:0 auto 0 0;width:30%;background:var(--red);transition:transform .12s linear}
#practice .pr__head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px clamp(32px,5vw,80px);align-items:start}
#practice .pr__head h2{line-height:1}
#practice .pr__head h2{font-size:clamp(34px,4.6vw,60px);color:var(--solar);max-width:none}
.pr__lede{font-family:var(--display);font-size:clamp(19px,1.9vw,24px);font-weight:300;line-height:1.45;color:var(--solar);max-width:34ch}
.pr__rows{margin-top:clamp(48px,6vw,88px)}
.pr__row{display:grid;grid-template-columns:clamp(120px,12vw,170px) minmax(0,.85fr) minmax(0,1.35fr);gap:clamp(20px,3.4vw,56px);align-items:start;padding:clamp(34px,4vw,56px) 0;border-top:1px solid rgba(43,45,66,.14)}
.pr__row:last-child{border-bottom:1px solid rgba(43,45,66,.14)}
.pr__name h3{font-size:clamp(24px,2.3vw,32px);font-weight:400;letter-spacing:-.02em;line-height:1.12;color:var(--solar)}
.pr__name p{margin-top:12px;font-size:16.5px;line-height:1.55;color:var(--muted);max-width:30ch}
.pr__body>p{margin-top:18px;font-size:16px;line-height:1.7;color:#44475E;max-width:62ch}
.pr__tags{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 0;padding:0;list-style:none}
.pr__tags li{font-size:14px;font-weight:500;padding:7px 14px;border-radius:999px;background:var(--paper);color:var(--solar);box-shadow:inset 0 0 0 1px var(--line)}
.pr__art{width:100%;height:auto;overflow:visible;fill:none;stroke:#8C90A6;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.pr__art .us,.pr__art .new,.pr__art .clean,.pr__art .tick,.pr__art .end,.pr__art .tether{stroke:var(--red)}
.pr__art .us{fill:rgba(230,48,84,.12)}
.pr__art .node{fill:#8C90A6;stroke:none}
.pr__art .node.end{fill:var(--red)}
.pr__art--models .us{transition:transform .9s cubic-bezier(.2,.7,.3,1)}
.pr__art--models .p1 .us{transform:translateX(0)}
.pr__art--models .p2 .us{transform:translateX(0)}
.pr__art--models .p3 .us{transform:translateX(0)}
.pr__art--models .p4 .us{transform:translateX(0)}
.pr__art--models .tether{opacity:0;transition:opacity .4s .9s}
.is-in .pr__art--models .p2 .us{transform:translateX(14px)}
.is-in .pr__art--models .p3 .us{transform:translateX(26px)}
.is-in .pr__art--models .p4 .us{transform:translateX(44px)}
.is-in .pr__art--models .tether{opacity:1}
.pr__art--models .p4 .tether{transform:translateX(0)}
.pr__art--process .tangle{transition:opacity .8s ease .3s}
.pr__art--process .clean{stroke-width:2;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.3s cubic-bezier(.3,.7,.3,1) .5s}
.is-in .pr__art--process .tangle{opacity:.18}
.is-in .pr__art--process .clean{stroke-dashoffset:0}
.pr__art--systems .old,.pr__art--systems .new{transition:transform .9s cubic-bezier(.2,.7,.3,1) .3s,opacity .6s .3s}
.pr__art--systems .new{fill:rgba(230,48,84,.1);transform:translateY(-46px);opacity:0}
.is-in .pr__art--systems .old{transform:translateY(46px);opacity:0}
.is-in .pr__art--systems .new{transform:none;opacity:1}
.pr__art--collab .you{transition:transform .9s cubic-bezier(.2,.7,.3,1) .2s;transform:translateX(-14px)}
.pr__art--collab .us{transition:transform .9s cubic-bezier(.2,.7,.3,1) .2s;transform:translateX(14px)}
.pr__art--collab .tick{stroke-width:2.4;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset .6s ease 1s}
.is-in .pr__art--collab .you,.is-in .pr__art--collab .us{transform:none}
.is-in .pr__art--collab .tick{stroke-dashoffset:0}
.pr__row{--grow:0}
.pr__row.is-in{--grow:1}
.pr__row:hover .pr__art{stroke:var(--solar)}
.pr__cta{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(28px,4vw,64px);align-items:center;margin-top:clamp(48px,6vw,80px)}
.pr__ctaL{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px 32px;align-items:end}
.pr__ctaL .btn{justify-self:end}
@media (max-width:1100px){
.pr__ctaL{grid-template-columns:1fr}
.pr__ctaL .btn{justify-self:start}
}
@media (max-width:800px){
.pr__cta{grid-template-columns:1fr}
}
.pr__cta h3{font-size:clamp(26px,3vw,40px);font-weight:400;letter-spacing:-.025em;line-height:1.1;color:var(--solar);max-width:22ch}
.pr__cta p{margin-top:14px;font-size:16.5px;line-height:1.6;color:var(--muted);max-width:54ch}
@media (max-width:1000px){
.pr__row{grid-template-columns:110px minmax(0,1fr)}
.pr__body{grid-column:1/-1}
#practice .pr__head{grid-template-columns:1fr}
}
@media (max-width:560px){
.pr__row{grid-template-columns:1fr}
.pr__art{max-width:130px}
}
@media (prefers-reduced-motion:reduce){
.pr__row{--grow:1}
}
.pr__rows{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(32px,5vw,80px);margin-top:clamp(32px,4vw,56px)}
.pr__row{grid-template-columns:clamp(72px,6.5vw,96px) minmax(0,1fr);gap:8px clamp(16px,2vw,26px);padding:clamp(26px,2.8vw,36px) 0}
.pr__row:last-child{border-bottom:0}
.pr__rows .pr__row:nth-last-child(-n+2){border-bottom:1px solid rgba(43,45,66,.14)}
@media (max-width:1000px){
.pr__rows .pr__row:nth-last-child(2){border-bottom:0}
}
.pr__row .pr__art{grid-row:1;align-self:center}
.pr__row .pr__name{grid-row:1;align-self:center}
.pr__row .pr__body{grid-column:1/-1}
.pr__name h3{font-size:clamp(21px,1.9vw,26px)}
.pr__name p{margin-top:6px;font-size:15px;max-width:44ch}
.pr__rows .pr__row{align-content:start}
.pr__body>p{margin-top:12px;font-size:15px;line-height:1.62}
.pr__tags{margin-top:4px}
.pr__tags li{font-size:13px;padding:5px 12px}
.pr__cta{margin-top:clamp(36px,4vw,56px)}
.pr__cta h3{font-size:clamp(24px,2.6vw,34px)}
.pr__cta p{margin-top:10px}
#practice .pr__head h2{font-size:clamp(32px,4vw,52px)}
@media (max-width:1000px){
.pr__rows{grid-template-columns:1fr}
.pr__row{grid-template-columns:84px minmax(0,1fr)}
}
@media (max-width:560px){
.pr__row{grid-template-columns:64px minmax(0,1fr)}
.pr__art{max-width:none}
}
.orch__bandhead p{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 12px;margin:0}
.orch__bandhead .orch__sep{color:var(--onDarkQuiet);font-size:20px}
.orch__bandhead .orch__line{font-family:var(--display);font-size:clamp(17px,1.7vw,21px);font-weight:300;color:var(--onDark)}
@media (max-width:560px){
.orch__sep{display:none}
.orch__bandhead p{flex-direction:column}
}
.orch__sys li[data-swap]{display:grid;place-items:center}
.orch__sys li[data-swap]>span{grid-area:1/1;transition:opacity .5s ease,transform .5s ease}
.s-new{opacity:0;transform:translateY(6px);display:flex;flex-direction:column;align-items:center}
.s-new b{font-weight:600;color:var(--solar)}
.s-new small{margin-top:3px;font-size:12px;color:#2F6B3C}
.orch.is-replace li[data-swap]{background:var(--paper);box-shadow:inset 0 0 0 1.5px #41824F,inset 0 0 0 1.5px rgba(230 48 84 / var(--lit))}
.orch.is-replace li[data-swap] .s-old{opacity:0;transform:translateY(-6px)}
.orch.is-replace li[data-swap] .s-new{opacity:1;transform:none}
.orch.is-replace li[data-swap]::before{content:"New";position:absolute;top:-9px;right:8px;font-size:11px;font-weight:600;line-height:1;padding:4px 7px;border-radius:999px;background:#41824F;color:#fff}
.orch__sys li{position:relative;transition:background .5s ease}
.crail-wrap{margin-top:clamp(36px,4.4vw,56px)}
.crail{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:var(--gutter);padding:4px var(--gutter) 10px;scrollbar-width:none;overscroll-behavior-x:contain;cursor:grab}
.crail::-webkit-scrollbar{display:none}
.crail::after{content:"";flex:0 0 1px}
.crail.is-dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}
.crail:focus-visible{outline:2px solid var(--red);outline-offset:-2px}
.ccard__go{margin-top:20px;align-self:flex-start;padding:0;border:0;background:none;cursor:pointer;font:600 15px/1.4 var(--body);color:var(--redi);text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.ccard__go:hover{text-decoration-thickness:2px}
.crail__count{font-size:14px;color:var(--muted);min-width:7ch;text-align:right}
#work .reqrow{border-top:1px solid var(--line);margin-top:clamp(40px,5vw,64px)}
@media (max-width:640px){
#work .band__head .rail-btns{display:none}
}
.orch{position:relative;margin:clamp(48px,6vw,80px) 0 0;padding:0}
.orch>*:not(.orch__wires){position:relative;z-index:1}
.orch__wires{position:absolute;inset:0;z-index:0;overflow:visible;pointer-events:none}
.orch__out{display:flex;justify-content:center;gap:clamp(40px,10vw,160px);margin:0 0 64px;padding:0;list-style:none}
.orch__out li{--lit:0;display:flex;align-items:center;gap:10px;font-family:var(--display);font-size:clamp(18px,2vw,24px);color:var(--solar);background:var(--paper);padding:4px 8px}
.orch__tick{width:22px;height:22px;flex:0 0 22px;overflow:visible;transform:scale(calc(1 + var(--lit)*.35));filter:drop-shadow(0 0 calc(var(--lit)*6px) rgba(65 130 79 / calc(var(--lit)*.55)))}
.orch__tick circle{fill:rgba(65 130 79 / calc(.12 + var(--lit)*.88));stroke:#41824F;stroke-width:1.5}
.orch__tick path{fill:none;stroke:color-mix(in srgb,#41824F calc(100% - var(--lit)*100%),#fff);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.orch__band{background:var(--solar);color:#fff;border-radius:8px;padding:clamp(20px,2.4vw,30px)}
.orch__bandhead{display:flex;align-items:baseline;justify-content:space-between;gap:12px 24px;flex-wrap:wrap}
.orch__bandhead b{font-family:var(--display);font-size:clamp(20px,2vw,24px);font-weight:500}
.orch__bandhead span{font-size:14.5px;color:var(--onDarkQuiet)}
.orch__mods{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:20px}
.orch__mod{--lit:0;border-radius:6px;padding:18px;background:rgba(255 255 255 / calc(.04 + var(--lit)*.07));box-shadow:inset 0 0 0 1px rgba(255 255 255 / .14),inset 0 0 0 1.5px rgba(230 48 84 / var(--lit))}
.orch__mod svg{width:26px;height:26px;fill:none;stroke:rgba(255,255,255,.8);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.orch__mod svg .acc{stroke:var(--red)}
.orch__mod b{display:block;margin-top:12px;font-family:var(--display);font-size:18px;font-weight:500}
.orch__mod span{display:block;margin-top:6px;font-size:14px;line-height:1.5;color:var(--onDark)}
.orch__sys{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:10px;margin:76px 0 4px;padding:0;list-style:none}
.orch__sys li{--lit:0;display:flex;align-items:center;justify-content:center;text-align:center;min-height:66px;padding:10px;border-radius:6px;background:var(--mist);font-size:14px;line-height:1.35;color:var(--solar);box-shadow:inset 0 0 0 1px var(--line),inset 0 0 0 1.5px rgba(230 48 84 / var(--lit))}
.corpus-sec>.orch__bar{display:flex;justify-content:flex-end;margin-top:14px}
@media (max-width:1000px){
.orch__sys{grid-template-columns:repeat(4,minmax(0,1fr))}
.orch__mods{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:560px){
.orch__sys{grid-template-columns:repeat(2,minmax(0,1fr))}
.orch__out{gap:14px}
.orch__out li{font-size:16px;padding:4px 2px}
}
.layers{margin-top:clamp(56px,7vw,96px)}
.layers__title{display:flex;align-items:center;gap:clamp(16px,2vw,28px);text-align:center;font-size:clamp(22px,2.2vw,28px);font-weight:400;color:var(--solar)}
.layers__title::before,.layers__title::after{content:"";flex:1;border-top:1px solid var(--line)}
.layers__list{list-style:none;margin:clamp(28px,3.4vw,44px) 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(20px,3vw,44px)}
.layers__list li{position:relative}
.layers__list li:not(:last-child)::after{content:"";position:absolute;top:11px;left:44px;right:calc(-1 * clamp(20px,3vw,44px) + 8px);border-top:1px solid var(--line)}
.layers__list li:last-child::after{content:"";position:absolute;top:11px;left:44px;right:0;border-top:1px solid var(--line)}
.layers__n{display:inline-block;font-size:14px;font-weight:500;color:var(--redi);background:var(--paper);padding-right:10px;position:relative;z-index:1}
.layers__list h4{margin:18px 0 0;font-family:var(--display);font-size:clamp(20px,1.8vw,23px);font-weight:500;letter-spacing:-.015em;color:var(--solar)}
.layers__list p{margin-top:10px;font-size:15.5px;line-height:1.65;color:var(--muted)}
.layers__eg{display:block;margin-top:14px;font-size:14px;line-height:1.5;color:var(--solar)}
@media (max-width:1000px){
.layers__list{grid-template-columns:repeat(2,minmax(0,1fr))}
.layers__list li::after,.layers__list li:last-child::after{display:none}
}
@media (max-width:600px){
.layers__list{grid-template-columns:1fr}
}
.probs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;padding:0 var(--gutter);margin-top:clamp(40px,5vw,64px)}
.prob{display:flex;flex-direction:column;border:1px solid var(--hair);border-radius:6px;padding:clamp(24px,2.4vw,32px);background:rgba(255,255,255,.03)}
.prob__icon{width:48px;height:48px;stroke:rgba(255,255,255,.72);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.prob__icon .dot{stroke:var(--red);stroke-width:2.2}
.prob h3{margin-top:26px;font-size:clamp(21px,1.9vw,25px);font-weight:500}
.prob p{margin-top:12px;font-size:15.5px;line-height:1.65;color:var(--onDark)}
.prob__sp{flex:1;min-height:22px}
.prob p.prob__fix{margin-top:0;padding-top:18px;border-top:1px solid var(--hair);color:#fff;font-size:15px}
#corpus .band__head h2{max-width:none}
@media (max-width:1100px){
.probs{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
.probs{grid-template-columns:1fr}
}
#work .reqrow{border-top:0;margin-top:clamp(32px,4vw,48px)}
.reqrow{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-top:clamp(44px,5vw,64px);padding-top:30px;border-top:1px solid var(--line)}
.reqrow p{font-family:var(--display);font-size:clamp(20px,2.2vw,26px);max-width:40ch}
.band--deep .reqrow,.band--solar .reqrow{border-top-color:var(--hair)}
.cmore{flex:0 0 clamp(240px,20vw,300px);scroll-snap-align:start;display:flex;flex-direction:column;justify-content:flex-end;gap:10px;min-height:clamp(520px,44vw,600px);padding:28px 26px;border-radius:8px;background:var(--solar);color:#fff;position:relative;overflow:hidden;transition:transform .35s cubic-bezier(.2,.7,.3,1)}
.cmore::after{content:"";position:absolute;right:-70px;top:-70px;width:220px;height:220px;border-radius:50%;border:1px solid rgba(255,255,255,.1);box-shadow:0 0 0 30px rgba(255,255,255,.025),0 0 0 60px rgba(255,255,255,.02)}
.cmore:hover{transform:translateY(-4px)}
.cmore__k{font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.6)}
.cmore__t{font-family:var(--display);font-size:clamp(34px,3.2vw,46px);font-weight:400;letter-spacing:-.03em;line-height:1}
.cmore__arrow{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;margin-top:10px;border-radius:50%;background:var(--red);transition:transform .2s}
.cmore:hover .cmore__arrow{transform:translateX(4px)}
@media (max-width:640px){
.cmore{flex-basis:70%;min-height:360px}
}
.pr__person{position:relative;margin:0;border-radius:10px;overflow:hidden;background:var(--solar);display:grid;grid-template-columns:minmax(0,200px) minmax(0,1fr);align-items:end;gap:0}
.pr__person img{display:block;width:100%;height:100%;object-fit:cover;aspect-ratio:4/5}
.pr__person figcaption{padding:22px;color:#fff}
.pr__person figcaption b{display:block;font-family:var(--display);font-size:clamp(20px,2vw,26px);font-weight:500;letter-spacing:-.02em}
.pr__person figcaption span{display:block;margin-top:6px;font-size:14px;color:rgba(255,255,255,.66)}
@media (max-width:640px){
.pr__person{grid-template-columns:140px minmax(0,1fr)}
.pr__person figcaption{padding:16px}
}
.corpus-sec .orch__bar .corpusanim__toggle{background:#FFFFFF;color:var(--solar);border:1px solid rgba(43,45,66,.38);font:600 13px/1 var(--body);padding:11px 16px;border-radius:4px;box-shadow:0 1px 2px rgba(43,45,66,.06)}
.corpus-sec .orch__bar .corpusanim__toggle:hover{background:var(--solar);color:#FFFFFF;border-color:var(--solar)}
.corpus-sec .orch__bar .corpusanim__toggle:focus-visible{outline:2px solid var(--red);outline-offset:3px}
.rail-prog{overflow:visible}
.rail-prog i{max-width:100%}
.corpusanim__toggle{border:1px solid rgba(43,45,66,.38);color:#2B2D42;background:#FFFFFF;font-weight:600;font-size:12.5px;padding:10px 14px}
@media(max-width:640px){
.corpusanim__toggle{font-size:11px;padding:9px 10px}
}
.corpusanim__toggle:hover{border-color:#2B2D42;background:#2B2D42;color:#fff}
.corpusanim__toggle:focus-visible{outline:2px solid #E63054;outline-offset:2px}
.rail-prog{height:1px}
@media (max-width:360px){
.orch__out{flex-wrap:wrap}
}
