.funding-section>.section-heading{max-width:42rem;margin:0 auto 2.25rem;text-align:center}
.funding-section-links{display:flex;justify-content:space-between;gap:.5rem 1rem;flex-wrap:wrap;margin-top:.8rem;font-size:.75rem}
.engine-design-link{color:var(--dim)}
.shared-engine{--engine-accent:var(--blue);position:relative;isolation:isolate;overflow:hidden;border:1px solid #34415a;border-radius:1.2rem;background:radial-gradient(ellipse at 30% 0,#21314966,transparent 64%),var(--bg);box-shadow:0 1px 0 #d8e6ff08 inset}
.shared-engine[data-engine-stage="3"]{--engine-accent:var(--mint)}
.engine-topline{display:flex;justify-content:space-between;align-items:center;gap:.5rem;padding:.6rem 1rem;border-bottom:1px solid #26324880;color:var(--dim);font-size:.54rem;letter-spacing:.1em}
.engine-topline>span{display:flex;align-items:center;gap:.55rem}
.engine-topline>span>i{width:5px;height:5px;background:var(--blue);box-shadow:0 0 9px #b9d2ff80;border-radius:50%;flex-shrink:0}
.engine-pause{display:flex;gap:.45rem;align-items:center;justify-content:center;min-height:44px;padding:.25rem .4rem;color:var(--muted);font-size:.65rem;letter-spacing:0;white-space:nowrap}
.engine-pause-symbol{font-size:.9rem;width:.8rem}
.engine-pause:disabled{cursor:default;opacity:.7}
.engine-visual{position:relative}
.engine-art{position:relative;height:250px;overflow:hidden;background-image:radial-gradient(#53678e22 .7px,transparent .7px);background-size:18px 18px}
.engine-art>svg{position:absolute;inset:0;width:100%;height:100%;fill:none;pointer-events:none}
.engine-trace{stroke:#405373;stroke-width:1;vector-effect:non-scaling-stroke}
.engine-current{stroke:var(--engine-accent);stroke-width:2;stroke-dasharray:28 460;stroke-linecap:round;opacity:.85;vector-effect:non-scaling-stroke;animation:engine-current 5s linear infinite;animation-play-state:paused;filter:drop-shadow(0 0 4px #9bb9ee66)}
.trace-branches{stroke:#2c3b54;stroke-width:1;vector-effect:non-scaling-stroke}
.engine-art circle{fill:#526583;stroke:none}
.engine-scroll-markers{position:absolute;inset:0;pointer-events:none;visibility:hidden}
.engine-scroll-markers i{position:absolute;height:1px;width:1px;left:50%}
.engine-scroll-markers i:nth-child(1){top:8%}.engine-scroll-markers i:nth-child(2){top:36%}.engine-scroll-markers i:nth-child(3){top:64%}.engine-scroll-markers i:nth-child(4){top:94%}
.engine-station{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.65rem;min-width:0;min-height:44px;padding:.5rem .2rem;color:#8293ae;transition:color .3s ease}
.station-number{font-size:.6rem;letter-spacing:.08em;color:var(--dim)}
.station-glyph{display:grid;place-items:center;width:48px;height:48px;border:1px solid #34425a;border-radius:.8rem;background:linear-gradient(145deg,#1b2638,#0c111d);box-shadow:0 2px 8px #0004;transition:border-color .3s,box-shadow .3s,background .3s,transform .3s}
.station-glyph svg{width:23px;height:23px}
.station-name{font-size:.68rem;line-height:1.2}
.engine-station[aria-pressed="true"]{color:var(--engine-accent)}
.engine-station[aria-pressed="true"] .station-number{color:var(--engine-accent)}
.engine-station[aria-pressed="true"] .station-glyph{border-color:#abc8f6b3;background:linear-gradient(145deg,#2a3d5b,#111c2f);box-shadow:0 0 0 4px #b9d2ff09,0 0 28px #b9d2ff1b}
.engine-station:hover .station-glyph{border-color:var(--blue);transform:translateY(-2px)}
.engine-narration{display:grid;grid-template-columns:2rem minmax(0,1fr);gap:1rem;padding:1.3rem 1rem;border-top:1px solid #26324880;background:linear-gradient(110deg,#141c2b66,#0b0f1900)}
.engine-narration-index{padding-top:.35rem;font-variant-numeric:tabular-nums}
.engine-narration-index>span{display:block;font-size:1rem;letter-spacing:-.05em;color:var(--blue)}
.engine-narration-index small{display:block;margin-top:.2rem;color:var(--dim);font-size:.55rem}
.engine-narration h3{font-size:clamp(1.2rem,2.5vw,1.8rem);letter-spacing:-.045em;line-height:1.25}
.engine-narration p{min-height:8.5em;max-width:40rem;margin-top:.65rem;font-size:.74rem;line-height:1.7}
.engine-metric{grid-column:2;display:flex;gap:.65rem;align-items:baseline}
.engine-metric strong{font-weight:500;font-size:1.6rem;letter-spacing:-.07em;line-height:1;color:var(--engine-accent)}
.engine-metric>span{color:var(--muted);font-size:.64rem}
.engine-bottomline{padding:0 1rem 1rem}
.engine-step-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 .8rem;border-top:1px solid var(--line)}
.engine-step-nav button{position:relative;min-width:0;min-height:44px;display:flex;gap:.6rem;align-items:center;text-align:left;color:var(--muted);font-size:.68rem;border-bottom:1px solid #26324880;padding:.7rem .25rem}
.engine-step-nav button>span{color:var(--dim);font-size:.53rem;font-variant-numeric:tabular-nums}
.engine-step-nav button>i{margin-left:auto;width:4px;height:4px;border-radius:50%;background:var(--line)}
.engine-step-nav button[aria-pressed="true"]{color:var(--engine-accent)}
.engine-step-nav button[aria-pressed="true"]>i{background:var(--engine-accent);box-shadow:0 0 8px #b9d2ff55}
.engine-step-nav button::after{content:'';position:absolute;bottom:-1px;left:0;height:1px;width:100%;background:var(--engine-accent);transform:scaleX(0);transform-origin:left;transition:transform .35s ease}
.engine-step-nav button[aria-pressed="true"]::after{transform:scaleX(1)}
.engine-instruction{display:block;font-size:.58rem;color:var(--dim);margin-top:.8rem}
.engine-small-label{font-size:.52rem;color:var(--dim);letter-spacing:.16em}
.signal-board-label{display:flex;justify-content:space-between;padding:1.5rem 1.25rem;font-size:.49rem;letter-spacing:.12em;color:var(--dim)}
.signal-stations{position:absolute;top:46%;transform:translateY(-50%);inset-inline:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.signal-subtitles{position:absolute;top:77%;inset-inline:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));text-align:center;font-size:.5rem;line-height:1.5;color:var(--dim)}
.signal-main.engine-current{stroke-dasharray:45 685;animation-duration:4.5s}
.core-board{height:310px;background-image:none}
.core-station{position:absolute;transform:translate(-50%,-50%);gap:.35rem;width:80px}
.core-station .station-number{position:absolute;top:.4rem;left:.5rem}
.core-station .station-glyph{width:37px;height:37px;border-radius:.6rem}
.core-station .station-glyph svg{width:20px;height:20px}
.core-station-0{left:17%;top:21%}.core-station-1{left:17%;top:76%}.core-station-2{left:83%;top:21%}.core-station-3{left:83%;top:76%}
.proof-chip{position:absolute;left:50%;top:47%;transform:translate(-50%,-50%);width:112px;height:142px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #879fcb88;border-radius:.7rem;background:linear-gradient(145deg,#28384e,#101622 75%);box-shadow:0 1px 0 #d8e6ff0a inset,0 12px 35px #0005}
.proof-chip>img{width:35px;height:35px;margin-bottom:.6rem;opacity:.94}
.proof-chip>span{font-size:.52rem;letter-spacing:.2em;color:var(--blue)}
.proof-chip>strong{font-size:1.25rem;font-weight:500;letter-spacing:-.04em;margin-top:.2rem}
.proof-chip>small{font-size:.38rem;letter-spacing:.14em;color:var(--dim);margin-top:.5rem}
.chip-scan{position:absolute;inset:-1px;border:1px solid #c7d9ff50;border-radius:inherit;animation:engine-chip 4s ease-in-out infinite;animation-play-state:paused}
.core-board-label{position:absolute;bottom:12px;inset-inline:0;text-align:center;letter-spacing:.16em;font-size:.48rem;color:var(--dim)}
.core-input.engine-current{animation-duration:4s}.core-output.engine-current{animation-duration:4s;animation-direction:reverse}
.cascade-board{height:auto;padding:1rem;min-height:320px}
.cascade-row{position:relative;display:flex;align-items:center;gap:.65rem;min-height:72px;width:100%;text-align:left;border-top:1px solid #27344c;padding:.7rem .5rem;color:var(--muted);transition:background .3s ease,transform .3s ease}
.cascade-row:first-of-type{border-top:0}
.cascade-number{font-size:.57rem;color:var(--dim);width:1.3rem;flex-shrink:0}
.cascade-symbol{width:23px;height:23px;flex-shrink:0}
.cascade-symbol>svg{width:100%;height:100%}
.cascade-text{min-width:0}
.cascade-text>strong{display:block;font-weight:500;font-size:.85rem;color:var(--text)}
.cascade-text>small{display:block;font-size:.59rem;line-height:1.55;margin-top:.3rem;color:var(--dim)}
.cascade-end{margin-left:auto;flex-shrink:0;font-size:.63rem;color:var(--dim)}
.cascade-row[aria-pressed="true"]{background:linear-gradient(90deg,#20375477,transparent);color:var(--blue)}
.cascade-row[aria-pressed="true"] .cascade-number,.cascade-row[aria-pressed="true"] .cascade-text>strong,.cascade-row[aria-pressed="true"] .cascade-end{color:var(--engine-accent)}
.cascade-current{position:absolute;top:1rem;bottom:1rem;left:1rem;width:1px;background:#395075}
.cascade-current>i{position:absolute;top:0;width:2px;height:42px;background:linear-gradient(transparent,var(--blue),transparent);animation:engine-cascade 4s linear infinite;animation-play-state:paused;box-shadow:0 0 10px #b9d2ff33}
.voucher-board{height:320px;perspective:1100px}
.voucher-input,.voucher-output{position:absolute;top:50%;transform:translateY(-50%);width:25%;text-align:center}
.voucher-input{left:0}.voucher-output{right:0}
.voucher-input .engine-station,.voucher-output .engine-station{width:100%}
.voucher-input>span,.voucher-output>span{display:block;font-size:.46rem;color:var(--dim);margin-top:.5rem}
.voucher-input .station-glyph,.voucher-output .station-glyph{width:37px;height:37px}
.voucher-stack{position:absolute;left:50%;top:47%;width:140px;height:158px;transform:translate(-50%,-50%);transform-style:preserve-3d}
.voucher-sheet{position:absolute;inset:0;border:1px solid #4e6487;border-radius:.55rem;background:linear-gradient(145deg,#1e2c42,#0e1522);padding:1rem;box-shadow:0 9px 23px #0006;transform-origin:50% 90%;transition:transform .8s cubic-bezier(.22,1,.36,1)}
.voucher-sheet-back{transform:translate(-16px,-14px) rotate(-10deg);opacity:.5}
.voucher-sheet-middle{transform:translate(15px,-7px) rotate(8deg);opacity:.75}
.voucher-sheet-front{transform:rotate(-3deg);border-color:#a9bfdfb3;background:linear-gradient(145deg,#344963,#18273f 65%,#101a2b);animation:engine-voucher 6s ease-in-out infinite;animation-play-state:paused}
.voucher-heading{display:flex;align-items:center;gap:.5rem;margin-bottom:.85rem}
.voucher-heading>img{width:18px;height:18px}
.voucher-heading>span{font-size:.4rem;letter-spacing:.08em;color:var(--blue)}
.voucher-sheet>b{display:block;font-weight:500;letter-spacing:-.035em;font-size:.87rem;white-space:nowrap}
.voucher-sheet>span{font-size:.46rem;letter-spacing:.06em;color:var(--muted)}
.voucher-sheet>i{display:block;width:80%;height:2px;background:#586f91;margin-top:.7rem}
.voucher-caption{display:block;margin-top:.65rem}
.voucher-code{height:16px;max-width:85px;background:repeating-linear-gradient(90deg,#b9d2ff88 0 1px,transparent 1px 4px,#b9d2ff88 4px 6px,transparent 6px 9px);margin-top:1rem}
.voucher-sheet>small{display:block;font-size:.4rem;color:var(--muted);margin-top:.5rem;line-height:1.5}
.voucher-board-label{position:absolute;bottom:17px;inset-inline:0;text-align:center;font-size:.5rem;letter-spacing:.13em;color:var(--dim)}
.shared-engine[data-engine-stage="2"] .voucher-sheet-back{transform:translate(-26px,-19px) rotate(-15deg)}
.shared-engine[data-engine-stage="2"] .voucher-sheet-middle{transform:translate(24px,-10px) rotate(12deg)}
.loop-board{height:340px}
.loop-traces .engine-current{stroke-dasharray:40 1620;animation-duration:7s}
.loop-divider{stroke:#34425b;stroke-dasharray:2 6}
.loop-center{position:absolute;top:48%;left:50%;transform:translate(-50%,-50%);width:72%;text-align:center;background:radial-gradient(ellipse,#14233970,transparent 70%)}
.loop-center>strong{display:block;font-size:1.4rem;letter-spacing:-.045em;font-weight:500;margin:.55rem 0 .35rem}
.loop-center>span:last-child{font-size:.6rem;color:var(--muted)}
.loop-center b{font-weight:500;color:var(--blue)}
.loop-station{position:absolute;transform:translate(-50%,-50%);flex-direction:row;gap:.35rem;min-height:44px;padding:.4rem .6rem;border:1px solid #34425b;border-radius:.65rem;background:#101722;white-space:nowrap}
.loop-station .station-number{font-size:.5rem}
.loop-station .station-glyph{border:0;background:none;box-shadow:none;width:23px;height:23px}
.loop-station .station-glyph>svg{width:18px;height:18px}
.loop-station .station-name{font-size:.61rem}
.loop-station[aria-pressed="true"]{border-color:var(--engine-accent);background:#1d2c42}
.loop-station[aria-pressed="true"] .station-glyph{border:0;box-shadow:none;background:none}
.loop-station-0{left:24%;top:20%}.loop-station-1{left:76%;top:20%}.loop-station-2{left:76%;top:79%}.loop-station-3{left:24%;top:79%}
.loop-return{position:absolute;inset-inline:0;bottom:7px;text-align:center;font-size:.5rem;color:var(--dim)}
.loop-return>span{color:var(--mint);margin-left:.5rem;font-size:.9rem}
.shared-engine.is-running .engine-current,.shared-engine.is-running .chip-scan,.shared-engine.is-running .cascade-current>i,.shared-engine.is-running .voucher-sheet-front{animation-play-state:running}
@keyframes engine-current{to{stroke-dashoffset:-1460}}
@keyframes engine-chip{0%,100%{opacity:.2}50%{opacity:1;box-shadow:0 0 22px #b9d2ff20}}
@keyframes engine-cascade{to{top:calc(100% - 42px)}}
@keyframes engine-voucher{0%,100%{transform:rotate(-3deg) translateY(0)}50%{transform:rotate(-1deg) translateY(-6px)}}
@media(min-width:375px){.engine-narration p{min-height:6.8em}.voucher-stack{width:160px;height:165px}.voucher-sheet>b{font-size:1rem}.voucher-sheet>small{font-size:.44rem}}
@media(min-width:600px){
  .engine-topline{padding:.65rem 1.8rem;font-size:.58rem}.engine-art{height:300px}
  .station-glyph{width:64px;height:64px;border-radius:1rem}.station-glyph svg{width:29px;height:29px}.station-name{font-size:.8rem}.station-number{font-size:.65rem}
  .signal-board-label{padding:1.8rem 2rem;font-size:.56rem}.signal-subtitles{font-size:.64rem}
  .engine-narration{grid-template-columns:2.5rem minmax(0,1fr) 7.8rem;padding:1.7rem 1.8rem;gap:1.4rem}
  .engine-narration p{font-size:.8rem;min-height:5.1em}.engine-metric{grid-column:auto;display:flex;flex-direction:column;justify-content:center;gap:.6rem;padding-left:1.5rem;border-left:1px solid #34425b}.engine-metric strong{font-size:2.5rem}.engine-metric>span{font-size:.66rem;line-height:1.6}
  .engine-bottomline{padding:0 1.8rem 1.2rem}.engine-step-nav{grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem}.engine-step-nav button{font-size:.75rem;min-height:54px}.engine-instruction{font-size:.6rem}
  .core-board{height:330px}.core-station{width:150px;flex-direction:row;gap:.7rem;padding:.6rem .8rem;border:1px solid #33425c;border-radius:.7rem;background:#101725}.core-station .station-number{position:static}.core-station .station-name{font-size:.72rem}.core-station[aria-pressed="true"]{border-color:#9ebae39c;background:#1b2b43}
  .proof-chip{width:155px;height:165px}.proof-chip>img{width:43px;height:43px}.proof-chip>strong{font-size:1.55rem}.proof-chip>small{font-size:.45rem}
  .cascade-board{min-height:340px;padding:1rem 2rem}.cascade-current{left:2rem}.cascade-row{padding:.9rem 1.2rem;gap:1.3rem;min-height:76px;width:calc(100% - 4.5rem)}.cascade-row:nth-of-type(2){margin-left:1.5rem}.cascade-row:nth-of-type(3){margin-left:3rem}.cascade-row:nth-of-type(4){margin-left:4.5rem}.cascade-text>strong{font-size:1rem}.cascade-text>small{font-size:.7rem}.cascade-symbol{width:28px;height:28px}.cascade-end{font-size:.8rem}
  .voucher-board{height:330px}.voucher-stack{width:225px;height:205px}.voucher-sheet{padding:1.25rem}.voucher-sheet>b{font-size:1.45rem}.voucher-heading>img{width:25px;height:25px}.voucher-heading>span{font-size:.57rem}.voucher-sheet>span{font-size:.55rem}.voucher-code{max-width:130px;height:23px}.voucher-sheet>small{font-size:.53rem}.voucher-input .station-glyph,.voucher-output .station-glyph{width:54px;height:54px}.voucher-input>span,.voucher-output>span{font-size:.61rem}
  .loop-board{height:340px}.loop-center>strong{font-size:2rem}.loop-center>span:last-child{font-size:.75rem}.loop-station{padding:.6rem 1rem;gap:.8rem}.loop-station .station-name{font-size:.75rem}.loop-return{font-size:.6rem;bottom:11px}
}
@media(min-width:1024px){.engine-art{height:320px}.engine-narration p{min-height:3.4em}.core-board,.voucher-board,.loop-board{height:350px}.cascade-board{height:auto}.engine-narration{padding:1.9rem 2.25rem;grid-template-columns:3rem minmax(0,1fr) 10.5rem;gap:2rem}.engine-bottomline{padding-inline:2.25rem}.engine-metric strong{font-size:2.8rem}.engine-metric>span{font-size:.7rem}.engine-narration-index>span{font-size:1.25rem}.engine-topline{padding-inline:2.25rem}.signal-board-label{padding-inline:2.5rem}}
@media(prefers-reduced-motion:reduce){.shared-engine *, .shared-engine *::after{animation:none!important;transition:none!important}.engine-current{stroke-dasharray:10 50;opacity:.45}.engine-station:hover .station-glyph{transform:none}}

/* The review page mounts one design at a time, using the same component as home. */
.engine-lab-header{max-width:1200px;margin:auto;padding:1.25rem;display:flex;justify-content:space-between;align-items:center;gap:1rem}
.engine-lab-header>a:last-child{min-height:44px;display:flex;align-items:center;gap:.5rem;color:var(--muted);font-size:.75rem}
.engine-lab-main{max-width:1120px;margin:auto;padding:2rem 1.25rem 4rem}
.engine-lab-heading{max-width:42rem}
.engine-lab-heading h1{font-size:clamp(2.5rem,6vw,4.2rem);line-height:1.08;letter-spacing:-.055em;margin:1.2rem 0}
.engine-lab-heading h1>span{color:var(--muted)}
.engine-lab-heading>p{max-width:35rem;font-size:.85rem}
.engine-design-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:2.25rem 0 1.5rem;gap:.5rem}
.engine-design-picker>button{min-height:70px;display:flex;align-items:center;gap:.65rem;text-align:left;border:1px solid var(--line);border-radius:.6rem;padding:.8rem .75rem;background:var(--surface);color:var(--muted)}
.engine-design-picker>button>span{font-size:.65rem;color:var(--dim)}
.engine-design-picker strong{font-size:.72rem;font-weight:500;display:block;line-height:1.4}
.engine-design-picker small{font-size:.43rem;letter-spacing:.07em;display:block;margin-top:.35rem;color:var(--dim)}
.engine-design-picker>button[aria-pressed="true"]{color:var(--blue);border-color:#7892b9;background:#172237}
.engine-design-picker>button[aria-pressed="true"]>span{color:var(--blue)}
.engine-lab-caption{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;align-items:center;margin-bottom:1rem}
.engine-lab-caption h2{font-size:1.2rem;letter-spacing:-.03em}
.engine-lab-caption p{font-size:.7rem;margin-top:.4rem}
.engine-lab-caption>a{font-size:.72rem}
.engine-lab-foot{font-size:.65rem;margin-top:1rem;max-width:45rem}
@media(min-width:768px){.engine-lab-main{padding-top:3rem}.engine-design-picker{grid-template-columns:repeat(5,minmax(0,1fr));gap:.65rem}.engine-design-picker>button{padding:1rem .9rem;min-height:84px}.engine-design-picker strong{font-size:.76rem}.engine-design-picker small{font-size:.45rem}}
