#lap-story button,#lap-story a,#lap-story input{-webkit-tap-highlight-color:transparent}
#lap-story button{font:inherit;cursor:pointer}
#lap-story button:focus-visible,#lap-story a:focus-visible,#lap-story input:focus-visible{outline:2px solid var(--lime);outline-offset:5px}
#lap-story button{color:inherit}
#lap-story.difference-story{height:380svh;padding-top:72px}
#lap-story .stage{height:calc(100svh - 72px);min-height:580px;position:sticky;top:72px;overflow:hidden;isolation:isolate;background:radial-gradient(ellipse at 50% 55%,#1a2425 0, #0c1112 37%,#080b0c 73%)}
#lap-story .ambient{position:absolute;width:60%;height:1px;left:20%;top:53%;background:#d8ff3e30;box-shadow:0 0 80px 15px #d8ff3e08;transform:rotate(-12deg);opacity:.55}
#lap-story .ruler{position:absolute;left:4vw;right:4vw;top:5%;display:flex;align-items:center;gap:16px;font-size:8px;color:#536165;letter-spacing:.1em}
#lap-story .ruler i{height:7px;flex:1;border-top:1px solid #ffffff13;background:repeating-linear-gradient(90deg,#ffffff22 0 1px,transparent 1px 20px)}
#lap-story .eyebrow{font-size:10px;letter-spacing:.16em;color:var(--lime);font-weight:500;margin:0 0 18px}
#lap-story .opening{position:absolute;top:20%;left:0;right:0;text-align:center}
#lap-story .opening-sub{font-size:22px;color:#a8b2b3;margin:0}
#lap-story .gap{position:absolute;left:50%;top:42%;transform:translate(-50%,-50%);font-size:clamp(108px,19vw,290px);font-weight:500;letter-spacing:-.07em;white-space:nowrap;color:var(--lime);font-variant-numeric:tabular-nums;line-height:1;text-shadow:0 0 70px #d8ff3e12;z-index:5;transform-origin:50% 50%}
#lap-story .plus{font-weight:200;font-size:.64em;vertical-align:12%;margin-right:10px}
#lap-story .unit{font-size:.12em;color:#a4b19c;letter-spacing:0;margin-left:15px}
#lap-story .gap-caption{position:absolute;top:65%;width:100%;text-align:center;font-size:11px;letter-spacing:.2em;line-height:2.1;color:#879496}
#lap-story .gap-caption span{color:#e3e8dc}
#lap-story .reveal-heading{position:absolute;left:8%;top:9%;opacity:0}
#lap-story .reveal-heading h2{font-size:clamp(28px,3.5vw,56px);line-height:1.04;letter-spacing:-.04em;font-weight:500;margin:0}
#lap-story em{font-style:normal;color:var(--lime)}
#lap-story .pair{position:absolute;left:8%;right:8%;top:33%;display:grid;grid-template-columns:1fr 1fr;gap:18px;perspective:1400px}
#lap-story .lap{min-width:0;background:#101819;border:1px solid #82949640;border-radius:6px;overflow:hidden;box-shadow:0 28px 65px #0008;opacity:0;will-change:transform,opacity}
#lap-story .selected{z-index:2}
#lap-story .reference{z-index:1}
#lap-story .lap-header{padding:13px 17px;display:flex;align-items:center;justify-content:space-between;gap:10px}
#lap-story .lap-header>span{font-size:10px;color:var(--lime);letter-spacing:.06em}
#lap-story .lap-header small{display:block;font-size:7px;color:#839394;margin-top:5px;padding-left:12px}
#lap-story .lap-header i{display:inline-block;width:4px;height:4px;background:currentColor;margin-right:8px}
#lap-story .lap-header strong{font-size:23px;font-weight:400;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
#lap-story .reference .lap-header>span,#lap-story .reference .lap-color{color:var(--blue)}
#lap-story .lap-color{color:var(--lime)}
#lap-story .image-wrap{position:relative;overflow:hidden}
#lap-story .image-wrap img{width:100%;height:clamp(120px,22svh,235px);display:block;object-fit:cover;object-position:center 52%;filter:saturate(.7)}
#lap-story .image-label{position:absolute;left:14px;bottom:12px;font-size:7px;letter-spacing:.13em;padding:6px 8px;background:#080b0cc2;border:1px solid #ffffff30}
#lap-story .scanline{position:absolute;top:0;bottom:0;left:40%;width:1px;background:#d8ff3e99;box-shadow:0 0 30px 2px #d8ff3e55;opacity:0}
#lap-story .reference .scanline{background:var(--blue)}
#lap-story .lap-foot{padding:9px 17px;display:flex;justify-content:space-between;font-size:7px;letter-spacing:.08em;color:#839394}
#lap-story .evidence{position:absolute;left:8%;right:8%;top:73%;opacity:0}
#lap-story .trace-head{display:flex;justify-content:space-between;font-size:8px;letter-spacing:.1em;color:#8c9b9e;margin-bottom:13px}
#lap-story .trace-head span:first-child{color:var(--chalk)}
#lap-story .trace-head i{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--lime);margin-right:9px}
#lap-story .trace-row{display:grid;grid-template-columns:1fr 210px;gap:32px}
#lap-story .trace-row svg{width:100%;height:clamp(65px,10svh,120px);overflow:visible}
#lap-story .grid{fill:none;stroke:#ffffff0f;stroke-width:1}
#lap-story .trace{fill:none;stroke-width:2;stroke:var(--lime);stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1}
#lap-story .trace.b{stroke:var(--blue)}
#lap-story .cursor{stroke:#ffffff65;stroke-width:1;stroke-dasharray:3 4}
#lap-story .delta-result{border-left:1px solid #ffffff22;padding-left:25px}
#lap-story .delta-result>span{font-size:8px;color:#879698;letter-spacing:.09em}
#lap-story .delta-result strong{display:block;font-size:40px;line-height:1.25;letter-spacing:-.05em;color:var(--lime);font-weight:400}
#lap-story .delta-result small{font-size:15px;margin-left:5px}
#lap-story .delta-result p{font-size:9px;line-height:1.5;color:#839394;margin:5px 0 0}
#lap-story .stage-bottom{position:absolute;left:4vw;right:4vw;bottom:68px;display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap}
#lap-story .stage-bottom p{font-size:9px;letter-spacing:.1em;color:var(--lime);margin:0}
#lap-story .stage-bottom small{font-size:7px;color:#748285;letter-spacing:.09em;width:100%}
#lap-story .scroll-cue{font-size:8px;color:#b0bcbb;letter-spacing:.13em}
#lap-story .scroll-cue b{color:var(--lime);margin-left:12px}
#lap-story .timeline{height:54px;position:fixed;bottom:0;left:0;right:0;z-index:20;display:flex;align-items:center;gap:24px;padding:0 4vw;background:#0b1011f5;border-top:1px solid #ffffff20}
#lap-story .timeline button{background:none;border:0;padding:9px 0;font-size:9px;color:#697b7e;white-space:nowrap}
#lap-story .timeline button span{color:#b2bfbd;margin-left:7px}
#lap-story .timeline button[aria-current=true],#lap-story .timeline button[aria-current=true] span{color:var(--lime)}
#lap-story .timeline label{flex:1}
#lap-story .timeline input{width:100%;height:2px;accent-color:var(--lime);cursor:ew-resize}
#lap-story .progress-readout{font-size:9px;color:#9aaaaa;width:32px}
#lap-story .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@media(max-width:700px){#lap-story.difference-story{padding-top:62px;height:330svh}
#lap-story .stage{top:62px;height:calc(100svh - 62px);min-height:620px}
#lap-story .ruler{top:4%;left:20px;right:20px}
#lap-story .opening{top:23%}
#lap-story .opening .eyebrow{font-size:8px}
#lap-story .opening-sub{font-size:18px}
#lap-story .gap{font-size:23vw;top:44%}
#lap-story .plus{margin-right:3px}
#lap-story .unit{margin-left:8px}
#lap-story .gap-caption{top:58%;font-size:9px}
#lap-story .reveal-heading{left:20px;top:11%}
#lap-story .reveal-heading .eyebrow{font-size:8px;margin-bottom:13px}
#lap-story .reveal-heading h2{font-size:34px}
#lap-story .pair{left:14px;right:14px;top:35%;gap:6px}
#lap-story .lap-header{padding:10px 8px;display:block}
#lap-story .lap-header>span{font-size:8px}
#lap-story .lap-header small{display:none}
#lap-story .lap-header strong{font-size:20px;display:block;margin-top:7px}
#lap-story .image-wrap img{height:155px;object-position:55% center}
#lap-story .image-label{left:5px;bottom:6px;font-size:5px;padding:4px}
#lap-story .lap-foot{padding:8px;font-size:6px}
#lap-story .lap-foot>span:first-child{display:none}
#lap-story .evidence{left:20px;right:20px;top:73%}
#lap-story .trace-head{font-size:6px;gap:12px}
#lap-story .trace-head span:last-child{max-width:105px;text-align:right}
#lap-story .trace-row{grid-template-columns:1fr 90px;gap:12px}
#lap-story .trace-row svg{height:64px}
#lap-story .delta-result{padding-left:10px}
#lap-story .delta-result>span{font-size:6px}
#lap-story .delta-result strong{font-size:22px}
#lap-story .delta-result small{font-size:9px;margin-left:2px}
#lap-story .delta-result p{font-size:7px}
#lap-story .stage-bottom{left:20px;right:20px;bottom:62px;gap:8px}
#lap-story .stage-bottom p{font-size:7px}
#lap-story .stage-bottom small{font-size:6px}
#lap-story .scroll-cue{font-size:6px}
#lap-story .timeline{gap:16px;padding:0 20px}
#lap-story .timeline button{font-size:9px}
#lap-story .timeline button span{display:none}
#lap-story .timeline label{min-width:70px}}
@media(max-height:760px) and (min-width:701px){#lap-story .pair{top:34%}
#lap-story .image-wrap img{height:19svh}
#lap-story .lap-header{padding:9px 14px}
#lap-story .reveal-heading h2{font-size:38px}
#lap-story .reveal-heading .eyebrow{margin-bottom:10px}
#lap-story .evidence{top:73%}
#lap-story .delta-result strong{font-size:30px}
#lap-story .delta-result p{display:none}}
@media(prefers-reduced-motion:reduce){#lap-story.difference-story{height:auto}
#lap-story .stage{position:relative;top:0}
#lap-story .timeline{display:none}
#lap-story .stage-bottom{bottom:20px}}
/* Use the existing site header and contain controls within this sequence. */
#lap-story.difference-story{--ink:#080b0c;--chalk:#f3f1e9;--lime:#d8ff3e;--blue:#75d8f0;--muted:#8e9b9e;--difference-header:80px;padding-top:0;height:380svh;overflow:visible;isolation:auto}
#lap-story .stage{top:var(--difference-header);height:calc(100svh - var(--difference-header));font-family:Oxanium,Arial,sans-serif}
#lap-story .timeline{position:absolute;bottom:0;left:0;right:0;z-index:5}
#lap-story .difference-play{position:absolute;right:4vw;top:8%;z-index:6;border:1px solid #596950;border-radius:3px;background:#080b0c99;padding:10px 14px;color:#d8ff3e;font-size:11px;cursor:pointer}
#lap-story .difference-play span{margin-left:14px}
#lap-story .reveal-heading h2{margin:0}
#lap-story.difference-still,#lap-story:not(.difference-ready){height:auto}
#lap-story.difference-still .stage,#lap-story:not(.difference-ready) .stage{position:relative;top:0}
#lap-story.difference-still .timeline,#lap-story.difference-still .difference-play,#lap-story.difference-still .scroll-cue{display:none}
#lap-story.difference-still .stage-bottom{bottom:20px}
#lap-story:not(.difference-ready) .gap,#lap-story:not(.difference-ready) .gap-caption,#lap-story:not(.difference-ready) .opening{display:none}
#lap-story:not(.difference-ready) .reveal-heading,#lap-story:not(.difference-ready) .lap,#lap-story:not(.difference-ready) .evidence{opacity:1}
#lap-story:not(.difference-ready) .trace{stroke-dashoffset:0}
@media(max-width:700px){#lap-story.difference-story{height:330svh}#lap-story .difference-play{font-size:9px;padding:8px 10px;top:6%;right:20px}#lap-story .reveal-heading{top:15%}#lap-story .reveal-heading h2{font-size:30px}#lap-story.difference-still,#lap-story:not(.difference-ready){height:auto}}
@media(max-width:600px){#lap-story.difference-story{--difference-header:70px}}
