/* V3 — scroll scenes and responsive choreography. The V2 visual base is preserved. */
.pulsion-page{--nav-height:80px;--scene-progress:0;--pointer-x:0deg;--pointer-y:0deg}
.pulsion-page{scroll-behavior:auto;scroll-padding-top:var(--nav-height)}
.pulsion-page.pulsion{--nav-height:76px}
.pulsion-page .scroll-scene{height:230svh;position:relative;isolation:isolate}
.pulsion-page .scene-stage{position:sticky;top:var(--nav-height);height:calc(100svh - var(--nav-height));min-height:600px;overflow:clip;isolation:isolate}
.pulsion-page .scene-topline{position:absolute;top:28px;left:5%;right:5%;display:flex;justify-content:space-between;gap:20px;font:600 8px/1.5 PulsionInter,sans-serif;letter-spacing:.15em;z-index:10}
.pulsion-page .scene-bottom{position:absolute;bottom:25px;left:5%;right:5%;z-index:12;display:flex;align-items:end;justify-content:space-between;gap:25px}
.pulsion-page .scroll-invitation{font:10px/1.5 PulsionInter,sans-serif;display:flex;align-items:center;gap:10px;opacity:.75}
.pulsion-page .scroll-invitation i{font-style:normal;font-size:20px;animation:pulsion-scrollNudge 2s ease-in-out infinite}
.pulsion-page .scene-navigation{position:relative;display:flex;gap:25px;padding-bottom:14px}
.pulsion-page .scene-navigation button{font:10px/1.5 PulsionInter,sans-serif;padding:6px 0;background:none;opacity:.42;transition:opacity .3s}
.pulsion-page .scene-navigation button span{font-size:8px;display:block;margin-bottom:4px}
.pulsion-page .scene-navigation button[aria-pressed=true]{opacity:1}
.pulsion-page .scene-navigation button:hover{opacity:1}
.pulsion-page .scene-progress{position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;opacity:.5}
.pulsion-page .scene-progress i{display:block;width:100%;height:3px;background:currentColor;transform:scaleX(var(--scene-progress));transform-origin:left;position:relative;top:-1px}
.pulsion-page .motion-control{bottom:20px;right:20px;width:40px;height:40px;z-index:90}
.pulsion-page .scene-stage .cta{position:relative;overflow:hidden;isolation:isolate}
.pulsion-page .scene-stage .cta:before{content:'';position:absolute;inset:0;background:#ffffff13;transform:translateX(-105%);transition:transform .5s;z-index:-1}
.pulsion-page .scene-stage .cta:hover:before{transform:translateX(0)}
.pulsion-page .scene-stage .cta .arrow{transition:transform .35s}
.pulsion-page .scene-stage .cta:hover .arrow{transform:rotate(45deg)}
@keyframes pulsion-scrollNudge{0%,100%{transform:translateY(-3px)}50%{transform:translateY(4px)}}

/* L’Atelier: a real hinged cover, loose paper and a working flashcard. */
.pulsion-page .atelier-scene{background:#f5efe3}
.pulsion-page .atelier-scene .scene-stage{background:radial-gradient(ellipse at 75% 60%,#dfc8a65e,transparent 55%),#f5efe3}
.pulsion-page .atelier-grid{position:absolute;inset:0;background-image:linear-gradient(#9a794613 1px,transparent 1px),linear-gradient(90deg,#9a794613 1px,transparent 1px);background-size:40px 40px;mask-image:linear-gradient(90deg,transparent 25%,#0008);transform:translateY(var(--grid-y,0px));pointer-events:none}
.pulsion-page .atelier-scene-copy{position:absolute;z-index:6;top:50%;left:7%;width:38%;transform:translateY(calc(-49% + var(--copy-y,0px)))}
.pulsion-page .handwritten{display:block;font:italic 450 18px/1.5 PulsionFraunces,Georgia,serif;letter-spacing:-.02em;color:#aa6746;transform:rotate(-4deg);transform-origin:left;margin-bottom:18px}
.pulsion-page .atelier-scene-copy h2{font-size:clamp(58px,5.4vw,84px);line-height:.98;letter-spacing:-.045em;font-weight:480;word-spacing:.015em}
.pulsion-page .atelier-scene-copy h2 em{font-size:.92em;line-height:1.07;display:inline-block;margin-top:10px}
.pulsion-page .atelier-scene-copy p{font-size:12px;line-height:1.8;margin:22px 0 22px;max-width:320px}
.pulsion-page .atelier-scene-copy>small{display:block;margin-top:14px;font-size:9px}
.pulsion-page .atelier-scene-copy .cta{font-size:12px;min-height:52px}
.pulsion-page .live-desk{position:absolute;width:710px;height:530px;left:71%;top:48%;transform:translate(-50%,-50%) scale(var(--desk-scale,1));transform-origin:center;z-index:5;perspective:1600px}
.pulsion-page .desk-tilt{position:relative;width:100%;height:100%;transform-style:preserve-3d;transform:rotateX(var(--pointer-y)) rotateY(var(--pointer-x))}
.pulsion-page .desk-shadow{position:absolute;left:100px;right:0;bottom:5px;height:90px;background:#6a4e2330;filter:blur(35px);border-radius:50%;transform:scaleX(var(--shadow-scale,.7));opacity:.55}
.pulsion-page .opening-book{position:absolute;left:47%;top:95px;width:260px;height:357px;transform:translate(var(--book-x,0px),var(--book-y,0px)) rotate(var(--book-rotation,-7deg));transform-style:preserve-3d;z-index:4;perspective:1400px}
.pulsion-page .book-pages{position:absolute;inset:0;background:linear-gradient(90deg,#e0d6c1,#fffcf2 9%,#fdf9ec 97%,#e6dccb);border:1px solid #c9bba0;border-radius:3px 9px 9px 3px;box-shadow:2px 3px 0 #e8deca,4px 6px 0 #b9ae97,6px 9px 0 #faf5e8,8px 12px 0 #bdb09a,18px 26px 35px #5c442127;padding:24px 20px 20px 26px;color:#3e4938;overflow:hidden}
.pulsion-page .page-index{font:600 7px/1.5 PulsionInter,sans-serif;letter-spacing:.13em;color:#8d947a}
.pulsion-page .book-pages h3{font:480 27px/1.04 PulsionFraunces,Georgia,serif;letter-spacing:-.045em;margin-top:12px}
.pulsion-page .book-pages h3 em{color:#8f694e}
.pulsion-page .book-muscle{height:105px;width:100%;object-fit:contain;margin:6px 0}
.pulsion-page .book-pages p{font-size:8px;line-height:1.7;color:#756d5e;max-width:180px}
.pulsion-page .book-hierarchy{display:flex;gap:5px;align-items:center;margin-top:15px;font:8px/1.5 PulsionInter,sans-serif}
.pulsion-page .book-hierarchy i{font-style:normal;transform:rotate(-90deg);color:#a87747}
.pulsion-page .book-hierarchy span{padding:4px;border-bottom:1px solid #9cba8a;opacity:var(--ink-opacity,0);transform:translateY(var(--ink-y,8px))}
.pulsion-page .book-pages>a{font-size:8px;display:inline-block;margin-top:14px;border-bottom:1px solid #a8b394;padding-bottom:3px;position:relative;z-index:2}
.pulsion-page .page-number{position:absolute;bottom:14px;right:18px;font:italic 12px PulsionFraunces,serif;color:#a1906d}
.pulsion-page .book-cover{position:absolute;inset:0;transform-origin:left center;transform:rotateY(var(--book-angle,0deg));transform-style:preserve-3d;background:transparent;padding:0;border-radius:3px 10px 10px 3px;z-index:5;text-align:left;cursor:pointer}
.pulsion-page .cover-face{position:absolute;inset:0;backface-visibility:hidden;border-radius:3px 10px 10px 3px;display:flex;flex-direction:column}
.pulsion-page .cover-front{padding:27px 25px 26px 30px;background:linear-gradient(90deg,#39472e,#788b60 4%,#82936d 6%,#687d53 9%,#86986e);color:#f9f1d9;border:1px solid #5b6d4d;box-shadow:0 1px 4px #31422330;overflow:hidden}
.pulsion-page .cover-front:after{content:'';position:absolute;top:0;bottom:0;right:17px;width:8px;background:#43552e80;box-shadow:2px 0 2px #0002}
.pulsion-page .book-brand{font:700 9px/1.5 PulsionInter,sans-serif;letter-spacing:.22em}
.pulsion-page .cover-kicker{font:8px/1.5 PulsionInter,sans-serif;letter-spacing:.11em;margin-top:29px;opacity:.8}
.pulsion-page .cover-front strong{font:480 31px/1.01 PulsionFraunces,Georgia,serif;letter-spacing:-.04em;margin-top:20px}
.pulsion-page .cover-front strong em{color:#e9dca8;font-weight:450}
.pulsion-page .embossed-star{position:absolute;right:29px;bottom:35px;font:80px/1 Georgia,serif;color:#d4dbad54;transform:rotate(var(--star-angle,-10deg))}
.pulsion-page .cover-action{margin-top:auto;font:9px/1.5 PulsionInter,sans-serif;position:relative;z-index:1}
.pulsion-page .cover-inside{transform:rotateY(180deg);padding:30px 25px;background:linear-gradient(90deg,#ded5be,#ede5cf 95%,#a99f84);border:1px solid #baaf92;color:#535d43}
.pulsion-page .cover-inside small{font-size:7px;line-height:1.8;letter-spacing:.13em;max-width:150px}
.pulsion-page .cover-inside>img{height:95px;width:95px;object-fit:contain;margin:17px 0;filter:sepia(.25)}
.pulsion-page .cover-inside strong{font:450 28px/1.05 PulsionFraunces,Georgia,serif;letter-spacing:-.035em}
.pulsion-page .cover-inside strong em{color:#9f6b43}
.pulsion-page .cover-inside>span{font-size:8px;line-height:1.7;margin-top:auto;color:#8b8169}
.pulsion-page .loose-photo{position:absolute;left:26px;top:32px;width:205px;height:254px;background:#fffdf5;padding:13px 13px 42px;box-shadow:0 15px 25px #664f2529;transform:translate(var(--photo-x,0px),var(--photo-y,0px)) rotate(var(--photo-r,-9deg));text-align:center;z-index:6;cursor:grab;touch-action:pan-y;user-select:none}
.pulsion-page .loose-photo:active{cursor:grabbing;box-shadow:0 24px 35px #664f2540}
.pulsion-page .loose-photo>img{width:100%;height:100%;object-fit:cover;pointer-events:none}
.pulsion-page .photo-label{display:block;position:absolute;bottom:17px;left:10px;right:10px;font:italic 450 13px/1 PulsionFraunces,Georgia,serif;color:#8c7655}
.pulsion-page .photo-tape{position:absolute;top:-12px;left:55px;width:95px;height:26px;background:#e3cfa58a;transform:rotate(3deg);z-index:3}
.pulsion-page .drag-label{position:absolute;top:100%;left:20px;right:0;font:italic 13px/1.5 PulsionFraunces,serif;opacity:0;transform:translateY(7px);transition:opacity .25s,transform .25s;color:#a0744c;padding-top:10px}
.pulsion-page .loose-photo:hover .drag-label,.pulsion-page .loose-photo:focus-visible .drag-label{opacity:1;transform:translateY(0)}
.pulsion-page .loose-flash{position:absolute;right:0;bottom:6px;width:210px;transform:translate(var(--card-x,0px),var(--card-y,0px)) rotate(var(--card-r,11deg));z-index:8}
.pulsion-page .loose-flash .flash{height:255px;border-radius:4px}
.pulsion-page .loose-flash .flash-front,.pulsion-page .loose-flash .flash-back{padding:23px 20px;border-radius:4px;box-shadow:3px 5px 0 #f6e7d6,6px 8px 0 #cdb9a2,10px 20px 25px #6a4b2a27}
.pulsion-page .loose-flash .flash-front{background:repeating-linear-gradient(0deg,transparent 0 23px,#8b674410 23px 24px),#e7cbb7;color:#734d34}
.pulsion-page .loose-flash .flash-back{background:#8a5c40;color:#fbf4df}
.pulsion-page .loose-flash .flash strong{font-size:29px;line-height:1.06}
.pulsion-page .loose-flash .flash small{font-size:6px;letter-spacing:.08em}
.pulsion-page .loose-flash .flash-icon{width:73px;top:45px;right:15px;opacity:.6}
.pulsion-page .loose-flash .flash-bottom{font-size:7px;line-height:1.5}
.pulsion-page .loose-flash .flash-bottom b{font-size:20px}
.pulsion-page .loose-flash .flash-back>span:not(.flash-bottom){font-size:9px;line-height:1.5;margin-top:15px}
.pulsion-page .card-hint{font:italic 14px/1.5 PulsionFraunces,serif;color:#a0744c;display:block;margin:16px 0 0 25px}
.pulsion-page .little-note{position:absolute;left:130px;bottom:0;width:165px;height:108px;background:#eedb91;padding:18px 20px;transform:translateY(var(--note-y,0px)) rotate(-6deg);box-shadow:2px 10px 15px #7a5c2026;z-index:7;border-radius:0 0 20px 0}
.pulsion-page .little-note span{font:italic 11px PulsionFraunces,serif;color:#957635}
.pulsion-page .little-note strong{display:block;margin-top:8px;font:450 24px/1.1 PulsionFraunces,serif;letter-spacing:-.04em;color:#6c572a}
.pulsion-page .little-note svg{width:126px;height:20px;overflow:visible}
.pulsion-page .little-note path{fill:none;stroke:#a17436;stroke-width:1.5;stroke-dasharray:400;stroke-dashoffset:var(--underline-dash,400)}
.pulsion-page .pencil{position:absolute;bottom:5px;left:310px;width:12px;height:210px;background:linear-gradient(90deg,#9f4930 25%,#cd8058 25% 70%,#a55f3f 70%);transform:translateY(var(--pencil-y,0px)) rotate(var(--pencil-r,25deg));border-radius:3px 3px 0 0;z-index:3;box-shadow:4px 5px 7px #62432338}
.pulsion-page .pencil:after{content:'';position:absolute;bottom:-29px;width:100%;height:30px;background:linear-gradient(0deg,#2d2c20 0 20%,#c8a277 20%);clip-path:polygon(0 0,100% 0,50% 100%)}
.pulsion-page .pencil:before{content:'';position:absolute;top:-17px;height:20px;left:0;right:0;background:linear-gradient(0deg,#b7ad9e 40%,#c5a18d 40%);border-radius:4px 4px 0 0}
.pulsion-page .pencil>span{position:absolute;left:2px;top:15px;writing-mode:vertical-rl;color:#f4d8b0;font:5px PulsionInter,sans-serif;letter-spacing:.06em}

/* Pulsion: the photograph expands while the track is drawn. */
.pulsion-page .pulsion-scene{background:#d1ff55;height:250svh}
.pulsion-page .pulsion-scene .scene-stage{background:#d1ff55;color:#182011}
.pulsion-page .race-backdrop{position:absolute;inset:-1px;clip-path:inset(var(--race-inset,7% 6% 9% 50%) round var(--race-radius,2px));transform:rotate(var(--race-rotation,5deg)) scale(1.035);z-index:0;background:#161e14;will-change:clip-path,transform}
.pulsion-page .race-backdrop>img{width:100%;height:100%;object-fit:cover;object-position:75% 42%;filter:grayscale(1) contrast(1.13);transform:scale(var(--race-scale,1.14));opacity:.98}
.pulsion-page .race-shade{position:absolute;inset:0;background:linear-gradient(90deg,#111c12e8,#111c1250 70%),linear-gradient(0deg,#0d170fda,transparent 50%);opacity:var(--shade-opacity,0)}
.pulsion-page .track-drawing{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:#d1ff55;stroke-width:1;stroke-dasharray:1;stroke-dashoffset:var(--track-dash,1);opacity:.5;pointer-events:none;z-index:2}
.pulsion-page .track-drawing path:nth-child(2){opacity:.55}.pulsion-page .track-drawing path:nth-child(3){opacity:.4}
.pulsion-page .pulsion-scene .scene-topline{color:var(--race-color,#182011);transition:color .15s}
.pulsion-page .race-opening{position:absolute;left:6%;right:6%;top:90px;z-index:5}
.pulsion-page .race-opening h2{font:700 clamp(110px,11.5vw,180px)/.8 PulsionBarlow,Impact,sans-serif;letter-spacing:-.02em;width:80%;pointer-events:none}
.pulsion-page .race-word{display:block;width:max-content;transform:translate(var(--word-x,0px),var(--word-y,0px)) rotate(var(--word-rotation,0deg));opacity:var(--opening-opacity,1)}
.pulsion-page .word-one{--word-x:var(--word-one-x,0px)}
.pulsion-page .word-two{--word-x:var(--word-two-x,0px);font-size:.66em;line-height:1.2;background:#d1ff55;padding-right:10px;box-shadow:6px 0 #d1ff55}
.pulsion-page .word-three{--word-x:var(--word-three-x,0px);color:#f3f4df!important;-webkit-text-stroke:1px #192513;filter:drop-shadow(4px 4px 0 #192513)}
.pulsion-page .race-copy{margin-top:25px;max-width:480px;opacity:var(--opening-opacity,1);transform:translateY(var(--opening-y,0px));color:#26341a}
.pulsion-page .race-copy p{font-size:12px;line-height:1.7;color:inherit;margin-bottom:18px}
.pulsion-page .race-copy .cta{min-height:50px}
.pulsion-page .race-copy>small{font-size:9px;display:inline-block;margin-left:16px}
.pulsion-page .race-stamp{position:absolute;top:57%;right:10%;width:118px;height:118px;border-radius:50%;background:#d1ff55;color:#151d10;z-index:4;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:translate(var(--stamp-x,0px),var(--stamp-y,0px)) rotate(var(--stamp-r,14deg));box-shadow:0 5px 15px #1112;opacity:var(--stamp-opacity,1)}
.pulsion-page .race-stamp span{font:600 10px/1.3 PulsionInter,sans-serif;letter-spacing:.06em}.pulsion-page .race-stamp b{font:24px/1.5 PulsionInter,sans-serif}
.pulsion-page .race-finish{position:absolute;top:50%;left:7%;width:65%;z-index:6;transform:translateY(calc(-44% + var(--finish-y,100px)));opacity:var(--finish-opacity,0);color:#f6f7e6;pointer-events:none}
.pulsion-page .pulsion-scene[data-phase="2"] .race-opening{pointer-events:none}
.pulsion-page .pulsion-scene[data-phase="2"] .race-finish{pointer-events:auto}
.pulsion-page .finish-kicker{font:600 9px/1.5 PulsionInter,sans-serif;letter-spacing:.16em;color:#d5edb5}
.pulsion-page .race-finish h3{font:700 clamp(100px,10vw,165px)/.85 PulsionBarlow,Impact,sans-serif;margin:28px 0;letter-spacing:-.02em}
.pulsion-page .race-finish h3 em{color:#d1ff55}
.pulsion-page .race-finish p{font-size:13px;line-height:1.8;color:#d1d9c5;margin-bottom:25px}
.pulsion-page .race-finish .cta{--button:#d1ff55;--button-text:#19230f}
.pulsion-page .finish-skip{display:inline-block;font-size:10px;color:#e5e9d9;margin-left:20px;border-bottom:1px solid #c4d7b455;padding-bottom:4px}
.pulsion-page .race-ticket{position:absolute;right:8%;top:50%;width:245px;height:290px;padding:28px;background:#d1ff55;z-index:4;transform:translateY(var(--ticket-y,230px)) rotate(var(--ticket-r,18deg));opacity:var(--finish-opacity,0);color:#152011;clip-path:polygon(0 0,100% 0,100% 45%,96% 47%,96% 53%,100% 55%,100% 100%,0 100%,0 55%,4% 53%,4% 47%,0 45%)}
.pulsion-page .race-ticket>span{font:600 7px/1.7 PulsionInter,sans-serif;letter-spacing:.14em}
.pulsion-page .race-ticket strong{display:block;font:700 57px/.9 PulsionBarlow,Impact,sans-serif;margin-top:30px;letter-spacing:-.025em}
.pulsion-page .race-ticket>div{display:flex;justify-content:space-between;align-items:center;border-top:1px dashed #273f1866;margin-top:25px;padding-top:15px;font-size:7px}
.pulsion-page .race-ticket b{font:32px PulsionInter,sans-serif}
.pulsion-page .race-coordinate{position:absolute;right:4%;top:30%;z-index:4;display:flex;flex-direction:column;align-items:center;gap:16px;color:#e7f4c8;font-size:7px;letter-spacing:.16em;writing-mode:vertical-rl;opacity:.75}
.pulsion-page .race-mark{font-size:30px;font-weight:200;line-height:1}
.pulsion-page .pulsion-scene .scene-bottom{color:var(--race-color,#182011)}
.pulsion-page.pulsion .sports-ticker{margin-top:-1px;margin-bottom:0;position:relative;z-index:3;transform:none;padding:21px 0;border-top:1px solid #d1ff5555}
.pulsion-page.pulsion .sports-ticker>div{font-size:46px;animation-duration:20s}

/* Motion continues below the opening scene, with different rhythms. */
.pulsion-page.motion-ready .reveal{opacity:0;translate:0 45px;transition:opacity .8s ease,translate .9s cubic-bezier(.2,.7,.1,1);transition-delay:var(--reveal-delay,0ms)}
.pulsion-page.motion-ready .reveal.is-visible{opacity:1;translate:0 0}
.pulsion-page.pulsion .reveal{translate:-60px 0;transition-duration:.6s}
.pulsion-page .atelier .paper-steps article{border:1px solid #cfc0a4;background:#fffbef;padding:30px;box-shadow:4px 5px #e6dcc8,0 18px 45px #7451270d;rotate:var(--paper-r,-3deg);transition:rotate .5s,box-shadow .5s,translate .8s,opacity .8s;transform-origin:center bottom}
.pulsion-page .atelier .paper-steps article:nth-child(2){--paper-r:3deg}.pulsion-page .atelier .paper-steps article:nth-child(3){--paper-r:-2deg}
.pulsion-page .atelier .paper-steps article:hover{rotate:0deg;box-shadow:6px 7px #e0d0b3,0 22px 50px #74512724}
.pulsion-page .atelier .paper-steps article:before{content:'';position:absolute;top:-13px;left:35%;width:90px;height:27px;background:#cbbb9790;rotate:-3deg}
.pulsion-page .atelier .paper-steps h3{font-size:28px}.pulsion-page .atelier .paper-steps p{font-size:12px}
.pulsion-page .atelier .paper-n{font-size:60px}.pulsion-page .atelier .paper-sketch{margin-top:25px}
.pulsion-page .atelier .format-lab{transform:perspective(1100px) rotateX(var(--lab-tilt,0deg));transition:box-shadow .4s;transform-origin:center center}
.pulsion-page .atelier .format-tabs button{transition:transform .4s,box-shadow .4s}
.pulsion-page .atelier .format-tabs button:hover{transform:translateX(8px)}
.pulsion-page .atelier .format-tabs button[aria-selected=true]{transform:translateX(14px)}
.pulsion-page .atelier .format-panels>[role=tabpanel]:not([hidden]){animation:pulsion-paperTurn .55s cubic-bezier(.2,.7,.2,1)}
@keyframes pulsion-paperTurn{from{opacity:0;transform:perspective(850px) rotateY(-12deg) translateX(15px)}to{opacity:1;transform:perspective(850px) rotateY(0) translateX(0)}}
.pulsion-page.pulsion .training-lanes>a{position:relative;isolation:isolate;overflow:clip;min-height:142px}
.pulsion-page.pulsion .training-lanes>a:before{content:'';position:absolute;inset:0;background:#d1ff55;transform:translateX(-101%);transition:transform .45s cubic-bezier(.2,.7,.2,1);z-index:-1}
.pulsion-page.pulsion .training-lanes>a:hover:before,.pulsion-page.pulsion .training-lanes>a:focus-visible:before{transform:translateX(0)}
.pulsion-page.pulsion .training-lanes>a:hover,.pulsion-page.pulsion .training-lanes>a:focus-visible{color:#17230e;padding-left:20px;background:transparent}
.pulsion-page.pulsion .training-lanes>a:hover>span,.pulsion-page.pulsion .training-lanes>a:focus-visible>span{color:#263d18}
.pulsion-page.pulsion .training-lanes>a>img{transition:transform .45s}
.pulsion-page.pulsion .training-lanes>a:hover>img{transform:rotate(-15deg) scale(1.12)}
.pulsion-page.pulsion .training-lanes>a:after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:#d1ff5570;transform:scaleX(0);transform-origin:left;transition:transform 1.2s ease}
.pulsion-page.pulsion .training-lanes>a.is-visible:after{transform:scaleX(1)}
.pulsion-page.pulsion .training-head h2{overflow:clip}
.pulsion-page.pulsion .sports-challenge .quiz{transition:box-shadow .35s,transform .35s}
.pulsion-page.pulsion .sports-challenge .quiz:focus-within{box-shadow:17px 17px 0 #182215;transform:translate(-3px,-3px)}
.pulsion-page .answers button{overflow:hidden;position:relative}
.pulsion-page .answers button.correct{animation:pulsion-answerLands .4s ease-out}
.pulsion-page .answers button.correct b{background:#2c4c23;color:#fff;border-color:#2c4c23}
@keyframes pulsion-answerLands{0%{transform:scale(.985)}55%{transform:scale(1.012)}100%{transform:scale(1)}}
.pulsion-page .subject-row{position:relative;isolation:isolate;overflow:hidden}
.pulsion-page .subject-row:before{content:'';position:absolute;inset:0;background:#ffffff55;transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.2,.7,.2,1);z-index:-1}
.pulsion-page .subject-row:hover:before{transform:scaleX(1)}
.pulsion-page .social-row>a .arrow{transition:transform .35s}.pulsion-page .social-row>a:hover .arrow{transform:translate(4px,-4px) rotate(5deg)}
.pulsion-page .social-row>a>img{transition:transform .35s}.pulsion-page .social-row>a:hover>img{transform:rotate(-8deg) scale(1.15)}
.pulsion-page .qr-panel{transform-origin:top right;animation:pulsion-qrUnfold .35s ease both}
@keyframes pulsion-qrUnfold{from{opacity:0;transform:scale(.9) rotate(-3deg)}to{opacity:1;transform:scale(1) rotate(0)}}
.pulsion-page .footer-word{overflow:hidden;display:flex;justify-content:space-between}
.pulsion-page .footer-word>span{display:inline-block;transform:translateY(110%) rotate(7deg);transition:transform .85s cubic-bezier(.15,.75,.2,1);transition-delay:calc(var(--letter) * 55ms)}
.pulsion-page .footer-word.is-visible>span{transform:translateY(0) rotate(0)}
.pulsion-page.pulsion .footer-word>span{transition-duration:.6s;transition-delay:calc(var(--letter) * 35ms)}
.pulsion-page .scene-enter .handwritten{animation:pulsion-sceneInk .8s .1s both}.pulsion-page .scene-enter .atelier-scene-copy h2{animation:pulsion-sceneInk 1s .2s both}
.pulsion-page .scene-enter .atelier-scene-copy p,.pulsion-page .scene-enter .atelier-scene-copy .cta,.pulsion-page .scene-enter .atelier-scene-copy>small{animation:pulsion-sceneInk .8s .4s both}
.pulsion-page .scene-enter .race-opening h2{animation:pulsion-raceEntrance .85s cubic-bezier(.15,.7,.2,1) both}
.pulsion-page .scene-enter .race-stamp{animation:pulsion-stampEntrance .8s .3s both}
@keyframes pulsion-sceneInk{from{opacity:0;translate:0 20px}to{opacity:1;translate:0 0}}
@keyframes pulsion-raceEntrance{from{opacity:0;translate:-100px 0;filter:blur(5px)}to{opacity:1;translate:0 0;filter:blur(0)}}
@keyframes pulsion-stampEntrance{from{scale:1.5}to{scale:1}}

@media(min-width:1650px){.pulsion-page .live-desk{left:70%;--desk-scale:1.1;}.pulsion-page .atelier-scene-copy{left:10%;width:33%}.pulsion-page .race-opening{top:85px}.pulsion-page .race-copy{margin-top:30px}.pulsion-page .race-finish{left:9%}}
@media(max-height:760px) and (min-width:801px){.pulsion-page .scene-stage{min-height:540px}.pulsion-page .atelier-scene-copy h2{font-size:55px}.pulsion-page .atelier-scene-copy{top:48%}.pulsion-page .atelier-scene-copy p{margin:17px 0;font-size:11px}.pulsion-page .handwritten{font-size:15px;margin-bottom:12px}.pulsion-page .live-desk{--desk-scale:.82;left:72%}.pulsion-page .race-opening{top:70px}.pulsion-page .race-opening h2{font-size:140px}.pulsion-page .race-copy{margin-top:15px}.pulsion-page .race-copy p{margin-bottom:12px}.pulsion-page .race-finish h3{font-size:120px;margin:20px 0}.pulsion-page .race-ticket{scale:.85;transform-origin:right center}.pulsion-page .scene-bottom{bottom:18px}}
@media(max-width:1100px){.pulsion-page .atelier-scene-copy{left:5%;width:37%}.pulsion-page .atelier-scene-copy h2{font-size:60px}.pulsion-page .live-desk{left:73%;--desk-scale:.82;}.pulsion-page .race-opening h2{font-size:15vw}.pulsion-page .race-finish h3{font-size:12.5vw}.pulsion-page .race-ticket{right:6%;width:210px;height:265px;padding:24px}.pulsion-page .race-ticket strong{font-size:51px}.pulsion-page .race-finish{width:67%}.pulsion-page .finish-skip{display:block;margin:18px 0 0;width:max-content}}
@media(max-width:800px){.pulsion-page,.pulsion-page.pulsion{--nav-height:68px}.pulsion-page .scene-stage{min-height:680px}.pulsion-page .atelier-scene-copy{left:6%;top:42%;width:41%}.pulsion-page .atelier-scene-copy h2{font-size:57px}.pulsion-page .handwritten{font-size:15px}.pulsion-page .live-desk{left:76%;top:52%;--desk-scale:.7;}.pulsion-page .atelier-scene-copy p{max-width:250px;font-size:11px}.pulsion-page .scene-topline{font-size:7px}.pulsion-page .scene-bottom{gap:20px}.pulsion-page .scroll-invitation{font-size:9px;max-width:230px}.pulsion-page .scene-navigation{gap:18px}.pulsion-page .scene-navigation button{font-size:9px}.pulsion-page .race-opening{top:100px}.pulsion-page .race-opening h2{font-size:16.5vw}.pulsion-page .race-copy{max-width:300px;margin-top:40px}.pulsion-page .race-copy>small{display:block;margin:14px 0 0}.pulsion-page .race-stamp{right:8%;top:60%;width:98px;height:98px}.pulsion-page .race-finish{left:6%;top:44%;width:74%}.pulsion-page .race-finish h3{font-size:13.5vw}.pulsion-page .race-ticket{top:59%;right:7%;width:170px;height:205px;padding:20px}.pulsion-page .race-ticket strong{font-size:40px;margin-top:18px}.pulsion-page .race-ticket>div{margin-top:18px;padding-top:10px;font-size:5px}.pulsion-page .race-ticket>span{font-size:6px}.pulsion-page .race-coordinate{display:none}.pulsion-page .atelier .paper-steps{gap:24px}.pulsion-page .atelier .paper-steps article{padding:22px}.pulsion-page .atelier .paper-steps h3{font-size:25px}}
@media(max-width:600px){
 .pulsion-page,.pulsion-page.pulsion{--nav-height:64px}
 .pulsion-page .scroll-scene{height:210svh}.pulsion-page .pulsion-scene{height:230svh}
 .pulsion-page .scene-stage{height:calc(100svh - 64px);min-height:650px}
 .pulsion-page .scene-topline{top:19px;left:6%;right:6%;font-size:6px;letter-spacing:.11em}.pulsion-page .scene-topline>span:last-child{max-width:112px;text-align:right}
 .pulsion-page .atelier-scene-copy{left:6%;right:6%;top:57px;width:auto;transform:translateY(var(--copy-y,0px));text-align:left}
 .pulsion-page .handwritten{font-size:12px;margin:0 0 10px;transform:rotate(-3deg)}
 .pulsion-page .atelier-scene-copy h2{font-size:42px;line-height:.98;letter-spacing:-.05em;max-width:350px}
 .pulsion-page .atelier-scene-copy h2 br:nth-of-type(1),.pulsion-page .atelier-scene-copy h2 em br{display:none}
 .pulsion-page .atelier-scene-copy h2 em{font-size:1.03em;margin-top:6px;white-space:nowrap;word-spacing:.02em}
 .pulsion-page .atelier-scene-copy p{font-size:10px;line-height:1.6;margin:16px 0 13px;max-width:245px}
 .pulsion-page .atelier-scene-copy .cta{font-size:10px;min-height:42px;padding:9px 12px 9px 15px;gap:12px}.pulsion-page .atelier-scene-copy>small{font-size:7px;margin:10px 0 0}
 .pulsion-page .live-desk{width:710px;height:530px;left:50%;top:60%;--desk-scale:.56;}
 .pulsion-page .loose-photo{left:65px;top:17px;rotate:2deg}.pulsion-page .loose-flash{right:14px;bottom:1px}
 .pulsion-page .little-note{left:190px;bottom:-12px}.pulsion-page .pencil{left:370px;bottom:-20px}.pulsion-page .card-hint{font-size:16px}.pulsion-page .drag-label{display:none}
 .pulsion-page .scene-bottom{left:6%;right:6%;bottom:23px;display:block}.pulsion-page .scroll-invitation{font-size:8px;margin-bottom:15px;max-width:none;gap:7px}.pulsion-page .scroll-invitation i{font-size:15px}
 .pulsion-page .scene-navigation{gap:0;justify-content:space-between;padding-bottom:10px}.pulsion-page .scene-navigation button{font-size:8px;min-height:35px;padding:2px 0}.pulsion-page .scene-navigation button span{font-size:7px;margin-bottom:3px}
 .pulsion-page .race-opening{top:77px;left:6%;right:6%}.pulsion-page .race-opening h2{font-size:27.5vw;line-height:.83;width:100%}.pulsion-page .word-two{font-size:.65em;line-height:1.13;padding-right:5px;box-shadow:3px 0 #d1ff55}.pulsion-page .word-three{filter:drop-shadow(2px 2px 0 #192513)}
 .pulsion-page .race-backdrop{clip-path:inset(var(--race-inset,28% 6% 20% 24%));transform:rotate(var(--race-rotation,5deg)) scale(1.03)}
 .pulsion-page .race-backdrop>img{object-position:61% center}
 .pulsion-page .race-copy{margin-top:165px;max-width:285px}.pulsion-page .race-copy p{font-size:10px;line-height:1.6;margin:0 0 14px;max-width:230px}
 .pulsion-page .race-copy .cta{min-height:43px;padding:10px 12px 10px 17px;font-size:10px}.pulsion-page .race-copy>small{font-size:7px;margin:10px 0 0}
 .pulsion-page .race-stamp{top:48%;right:9%;width:75px;height:75px}.pulsion-page .race-stamp span{font-size:7px}.pulsion-page .race-stamp b{font-size:19px;line-height:1.3}
 .pulsion-page .race-finish{top:26%;left:6%;right:6%;width:auto;transform:translateY(var(--finish-y,100px))}
 .pulsion-page .finish-kicker{font-size:7px;letter-spacing:.1em}.pulsion-page .race-finish h3{font-size:25vw;line-height:.88;margin:23px 0}.pulsion-page .race-finish p{font-size:11px;max-width:280px;margin-bottom:22px}.pulsion-page .race-finish .cta{font-size:10px;padding:10px 15px;min-height:46px}.pulsion-page .finish-skip{font-size:8px;margin-top:19px}
 .pulsion-page .race-ticket{display:none}
 .pulsion-page.pulsion .sports-ticker>div{font-size:32px}.pulsion-page.pulsion .sports-ticker{padding:15px 0}
 .pulsion-page.pulsion .training-lanes>a{min-height:120px;overflow:visible}.pulsion-page.pulsion .training-lanes>a:hover{padding-left:8px}
 .pulsion-page .atelier .paper-steps{gap:35px}.pulsion-page .atelier .paper-steps article{margin:0;padding:28px 24px 28px 95px}.pulsion-page .atelier .paper-steps article:nth-child(2){margin:0 8px}.pulsion-page .atelier .paper-steps article:nth-child(3){margin:0}
 .pulsion-page .atelier .paper-n{left:22px;top:27px;font-size:46px}.pulsion-page .atelier .paper-steps h3{font-size:27px;margin:0 0 15px}.pulsion-page .atelier .paper-steps p{font-size:11px}.pulsion-page .atelier .paper-sketch{position:absolute;left:20px;top:90px;width:52px;height:52px;margin:0}.pulsion-page .atelier .paper-sketch img{width:50px}
 .pulsion-page .atelier .format-tabs button[aria-selected=true]{transform:translateY(-4px)}.pulsion-page .atelier .format-tabs button:hover{transform:translateY(-2px)}
 .pulsion-page .motion-control{width:34px;height:34px;bottom:12px;right:12px;font-size:11px}
}
@media(max-width:360px){.pulsion-page .atelier-scene-copy h2{font-size:37px}.pulsion-page .live-desk{--desk-scale:.5;top:61%}.pulsion-page .race-copy{margin-top:170px}.pulsion-page .scene-stage{min-height:640px}}
@media(min-width:601px) and (max-height:650px){.pulsion-page .scroll-scene .scene-stage{min-height:530px}.pulsion-page .atelier-scene-copy h2{font-size:49px}.pulsion-page .live-desk{--desk-scale:.7}.pulsion-page .race-opening h2{font-size:120px}.pulsion-page .scene-topline{top:17px}}
/* Pausing also stops decorative transitions, while functional controls keep working. */
.pulsion-page.motion-paused .reveal{opacity:1;translate:none;transition:none}.pulsion-page.motion-paused .footer-word>span{transform:none;transition:none}
.pulsion-page.motion-paused .book-cover,.pulsion-page.motion-paused .desk-tilt,.pulsion-page.motion-paused .race-backdrop{will-change:auto}
.pulsion-page.motion-paused *{scroll-behavior:auto!important;transition-duration:.01ms!important}
@media(prefers-reduced-motion:reduce){
 .pulsion-page .scroll-scene,.pulsion-page .pulsion-scene{height:auto}.pulsion-page .scene-stage{position:relative;top:0}.pulsion-page .scene-navigation,.pulsion-page .scroll-invitation{display:none}
 .pulsion-page.motion-ready .reveal{opacity:1;translate:none;transition:none}.pulsion-page .footer-word>span{transform:none;transition:none}
 .pulsion-page .book-cover,.pulsion-page .desk-tilt,.pulsion-page .race-backdrop{will-change:auto}.pulsion-page .handwritten{animation:none}.pulsion-page .scene-stage *{animation:none!important}
 .pulsion-page .atelier .format-lab{transform:none}.pulsion-page .race-word,.pulsion-page .race-copy,.pulsion-page .race-finish,.pulsion-page .race-ticket{transition:none}
}

.pulsion-page .pulsion-scene .scene-navigation{background:#172015df;color:#e8f4d0;padding:10px 18px 15px;border:1px solid #d1ff5533}.pulsion-page .pulsion-scene .scene-progress{left:18px;right:18px;bottom:7px}.pulsion-page .pulsion-scene .scene-bottom{align-items:center}
@media(max-width:600px){.pulsion-page .pulsion-scene .scene-navigation{padding:8px 12px 13px}.pulsion-page .pulsion-scene .scene-progress{left:12px;right:12px;bottom:6px}.pulsion-page .pulsion-scene .scroll-invitation{margin-bottom:10px}}
/* Keep the invitation and controls clear at every stage of the transition. */
.pulsion-page .race-opening{top:70px;bottom:115px}.pulsion-page .race-opening h2{font-size:clamp(110px,11.5vw,170px)}.pulsion-page .race-copy{position:absolute;left:0;bottom:0;margin:0;padding:8px 12px 9px 0;background:#d1ff55;max-width:520px;width:max-content}.pulsion-page .race-copy p{margin-bottom:14px}.pulsion-page .race-copy .cta{min-height:48px}.pulsion-page .race-copy>small{margin-left:12px;font-size:8px}
@media(min-width:1650px){.pulsion-page .race-opening{top:70px}.pulsion-page .race-copy{margin:0}}
@media(max-width:1100px){.pulsion-page .race-opening h2{font-size:15vw}.pulsion-page .race-copy{max-width:430px}.pulsion-page .race-copy>small{display:block;margin:10px 0 0}}
@media(max-width:800px){.pulsion-page .race-opening{top:80px;bottom:130px}.pulsion-page .race-opening h2{font-size:16.5vw}.pulsion-page .race-copy{max-width:300px;margin:0}.pulsion-page .race-copy>small{margin:10px 0 0}}
@media(max-width:600px){.pulsion-page .loose-photo{top:100px;left:45px}.pulsion-page .loose-flash{right:30px}.pulsion-page .race-opening{top:77px;bottom:125px}.pulsion-page .race-opening h2{font-size:27.5vw}.pulsion-page .race-copy{max-width:285px;padding:7px 9px 9px 0;margin:0}.pulsion-page .race-copy p{font-size:10px;margin-bottom:10px}.pulsion-page .race-copy .cta{min-height:42px}.pulsion-page .race-copy>small{font-size:7px;margin-top:9px}.pulsion-page .scene-navigation button{min-height:40px}}
@media(max-width:600px) and (max-height:720px){
 .pulsion-page .scene-stage{min-height:0}.pulsion-page .scene-topline{top:15px;font-size:5.5px}.pulsion-page .atelier-scene-copy{top:43px}.pulsion-page .handwritten{font-size:10px;margin-bottom:8px}.pulsion-page .atelier-scene-copy h2{font-size:34px}.pulsion-page .atelier-scene-copy p{font-size:9px;margin:11px 0 10px}.pulsion-page .atelier-scene-copy .cta{min-height:37px;font-size:9px}.pulsion-page .atelier-scene-copy>small{font-size:6px;margin-top:8px}.pulsion-page .live-desk{--desk-scale:.43;top:65%}.pulsion-page .scene-bottom{bottom:14px}.pulsion-page .scene-navigation button{min-height:34px;font-size:7px}.pulsion-page .scene-navigation button span{font-size:6px}.pulsion-page .scroll-invitation{font-size:7px;margin-bottom:7px}.pulsion-page .scroll-invitation i{font-size:12px}.pulsion-page .race-opening{top:52px;bottom:110px}.pulsion-page .race-opening h2{font-size:24vw}.pulsion-page .race-copy p{font-size:9px;line-height:1.5;margin-bottom:9px}.pulsion-page .race-copy .cta{min-height:36px;font-size:9px;padding:7px 12px}.pulsion-page .race-copy>small{font-size:6px;margin-top:7px}.pulsion-page .race-stamp{width:65px;height:65px}.pulsion-page .race-finish{top:23%}.pulsion-page .race-finish h3{font-size:24vw;margin:18px 0}.pulsion-page .race-finish p{font-size:10px;margin-bottom:15px}.pulsion-page .finish-kicker{font-size:6px}.pulsion-page .race-finish .cta{min-height:39px}.pulsion-page .finish-skip{margin-top:13px;font-size:7px}.pulsion-page .pulsion-scene .scene-navigation{padding-top:4px;padding-bottom:9px}
}
@media(min-width:801px) and (max-height:760px){.pulsion-page .race-opening{top:60px;bottom:100px}.pulsion-page .race-opening h2{font-size:128px}.pulsion-page .race-copy p{font-size:10px;line-height:1.5;margin-bottom:10px}.pulsion-page .race-copy .cta{min-height:40px;padding:8px 15px;font-size:10px}.pulsion-page .race-copy>small{font-size:7px}.pulsion-page .race-copy{padding-top:5px;padding-bottom:5px}}

.pulsion-page .race-bridge{position:absolute;left:9%;top:45%;transform:translateY(calc(-40% + var(--bridge-y,25px)));opacity:var(--bridge-opacity,0);z-index:6;pointer-events:none;color:#f4f6e5;background:#172015ed;padding:30px 40px 33px;box-shadow:10px 10px 0 #d1ff55;rotate:-2deg}
.pulsion-page .race-bridge>span{font:600 8px/1.5 PulsionInter,sans-serif;letter-spacing:.14em;color:#c6d8ab}.pulsion-page .race-bridge h3{font:700 115px/.86 PulsionBarlow,Impact,sans-serif;margin:22px 0;letter-spacing:-.015em}.pulsion-page .race-bridge h3 em{color:#d1ff55}.pulsion-page .race-bridge p{font-size:12px;line-height:1.7;color:#cdd7bd}.pulsion-page .race-finish h3>span{white-space:nowrap}
.pulsion-page .pulsion-scene .scene-topline>span{padding:4px 7px;background:var(--meta-bg,#d1ff55)}.pulsion-page .pulsion-scene .scroll-invitation{background:var(--meta-bg,#d1ff55);padding:4px 8px}
@media(max-width:600px){.pulsion-page .race-bridge{left:9%;right:9%;top:44%;padding:23px 25px 26px;box-shadow:7px 7px 0 #d1ff55}.pulsion-page .race-bridge>span{font-size:7px}.pulsion-page .race-bridge h3{font-size:23vw;line-height:.88;margin:20px 0}.pulsion-page .race-bridge p{font-size:10px}.pulsion-page .race-finish{top:20%}.pulsion-page .race-finish h3{font-size:21.5vw;line-height:.92}.pulsion-page .race-finish h3>span{display:block}.pulsion-page .race-finish p{font-size:11px}.pulsion-page .pulsion-scene .scene-topline>span{padding:3px 4px}.pulsion-page[data-scene-visible=true] .motion-control{bottom:115px}}
@media(max-width:600px) and (max-height:720px){.pulsion-page .race-finish{top:20%}.pulsion-page .race-finish h3{font-size:21vw}.pulsion-page .race-bridge{top:43%;padding:20px}.pulsion-page .race-bridge h3{font-size:21vw;margin:16px 0}.pulsion-page .race-bridge p{font-size:9px}.pulsion-page[data-scene-visible=true] .motion-control{bottom:100px}}
@media(max-width:600px) and (max-height:720px){.pulsion-page .little-note{bottom:24px}}
@media(min-width:601px) and (max-width:900px){
 .pulsion-page .atelier-scene-copy{top:45px;left:6%;right:6%;width:auto;transform:translateY(var(--copy-y,0px));text-align:center}.pulsion-page .handwritten{transform:none;font-size:14px;margin-bottom:12px}.pulsion-page .atelier-scene-copy h2{font-size:50px;line-height:1.02}.pulsion-page .atelier-scene-copy h2 br:first-of-type,.pulsion-page .atelier-scene-copy h2 em br{display:none}.pulsion-page .atelier-scene-copy h2 em{display:block;margin-top:8px;font-size:1.03em}.pulsion-page .atelier-scene-copy p{font-size:11px;line-height:1.6;margin:15px auto 16px;max-width:360px}.pulsion-page .atelier-scene-copy .cta{min-height:43px;font-size:11px}.pulsion-page .atelier-scene-copy>small{margin-top:10px;font-size:8px}.pulsion-page .live-desk{left:50%;top:65%;--desk-scale:.6}.pulsion-page .loose-photo{left:45px;top:100px}.pulsion-page .loose-flash{right:25px}.pulsion-page .little-note{bottom:12px}.pulsion-page[data-scene-visible=true] .motion-control{bottom:110px}
}

.pulsion-page .sports-ticker>div,.pulsion-page .scroll-invitation i{animation-play-state:var(--ambient-state,paused)}
