/* Existing paper / blue / lime / coral palette, extended through every chapter. */
.hero-contact-link{font-size:12px;display:flex;align-items:center;gap:18px;padding:16px 10px;border-bottom:1px solid var(--ink)}
.ride-story{background:var(--blue);color:var(--paper)}
.story-heading p,.journey-steps p{color:#fff}.journey-steps article{opacity:.66}.journey-steps article.active{opacity:1}.map-contour{stroke:#ffffff26}.map-labels{fill:#fff}.map-points{fill:var(--blue)}
.philosophy{position:relative;overflow:hidden}.philosophy:before{content:"↗";position:absolute;font-size:38vw;line-height:1;right:-3vw;top:2%;color:var(--blue);opacity:.035;pointer-events:none}
.rider-lineup{position:relative;display:grid;grid-template-columns:1fr 1.7fr;align-items:center;gap:24px;margin-top:80px;padding:40px 35px 0;background:var(--lime);border-radius:2px;overflow:hidden}
.lineup-copy{align-self:start;padding-top:30px}.lineup-copy>span{font-size:9px;letter-spacing:.12em}.lineup-copy strong{display:block;font-size:clamp(22px,2.5vw,38px);line-height:1.6;letter-spacing:-.055em;margin:28px 0}.lineup-copy p{font-size:11px}
.lineup-cast{display:flex;align-items:end;min-width:0}.lineup-cast figure{width:30%;margin:0 -3% 0 0;position:relative;flex-shrink:0;animation:cast-arrive 6s ease-in-out infinite;animation-delay:calc(var(--cast-index)*-.8s)}.lineup-cast img{width:100%;height:350px;object-fit:contain;object-position:bottom}.lineup-cast figure:nth-child(even){padding-bottom:22px}
@keyframes cast-arrive{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
.product-intro{position:relative;padding-bottom:65px;overflow:hidden}.product-intro:after{content:"↗";position:absolute;right:4%;top:13%;font-size:24vw;color:var(--lime);opacity:.12;pointer-events:none}.product-statement{position:relative;z-index:1}
.product-stage{grid-template-columns:1.1fr 1fr}.quest-world{position:relative;min-height:700px;overflow:hidden;background:var(--lime);color:var(--ink)}
.quest-world-label{position:absolute;top:35px;left:35px;font-size:10px;letter-spacing:.15em;z-index:3}.quest-mascot{position:absolute;width:57%;height:60%;object-fit:contain;top:9%;left:22%;z-index:2;animation:takopas-float 5s ease-in-out infinite;filter:drop-shadow(0 25px 0 #1011170b)}
@keyframes takopas-float{50%{transform:translateY(-18px) rotate(4deg)}}
.quest-orbits{position:absolute;inset:5%;display:grid;place-items:center}.quest-orbits i{position:absolute;width:85%;aspect-ratio:1;border:1px solid #10111725;border-radius:50%;transform:rotateX(52deg) rotate(-25deg)}.quest-orbits i:nth-child(2){width:65%;transform:rotateX(30deg) rotate(45deg)}.quest-orbits i:nth-child(3){width:105%}
.quest-route{position:absolute;inset:0}.quest-route svg{width:100%;height:100%}.quest-route path{fill:none;stroke:var(--blue);stroke-width:2;stroke-dasharray:8 12;animation:quest-dash 8s linear infinite}@keyframes quest-dash{to{stroke-dashoffset:-200}}
.quest-chip{position:absolute;z-index:3;padding:12px 17px;background:var(--paper);font-size:12px;font-weight:700;border:1px solid var(--ink);box-shadow:4px 4px 0 var(--ink)}.chip-ride{top:22%;left:9%;transform:rotate(-8deg)}.chip-play{top:47%;right:6%;transform:rotate(7deg)}.chip-grow{top:61%;left:12%;transform:rotate(-5deg)}
.quest-sign{position:absolute;bottom:40px;left:35px;right:35px;border-top:1px solid #10111735;padding-top:20px}.quest-sign span{font-size:9px;letter-spacing:.15em}.quest-sign strong{display:block;font-size:clamp(28px,3vw,46px);line-height:1.4;margin-top:12px}
.product-story{background:var(--blue);color:#fff}.product-capabilities li{border-color:#ffffff30;transition:padding .25s,background .25s}.product-capabilities li:hover{padding-left:15px;background:#ffffff09}.product-capabilities li>span{color:var(--lime)}.product-capabilities small{color:#ffffffb0}
.outcome-grid{gap:18px;border:0;counter-reset:outcome}.outcome-grid article{position:relative;overflow:hidden;background:var(--lime);min-height:310px;padding:30px;transition:transform .4s}.outcome-grid article+article{border:0}.outcome-grid article:nth-child(2){background:var(--blue);color:#fff}.outcome-grid article:nth-child(3){background:var(--coral)}.outcome-grid article>span{color:inherit}.outcome-grid article:before{content:"↗";display:block;position:absolute;font-size:130px;line-height:1;right:12px;top:20px;opacity:.16;transition:transform .6s}.outcome-grid article:hover:before{transform:translate(8px,-8px)}.outcome-grid article:hover{transform:translateY(-6px)}.outcome-grid h3{position:relative;margin-top:130px}.outcome-grid p{position:relative}
.vision-panel{position:relative;overflow:hidden;isolation:isolate}.vision-panel h2{position:relative;font-size:clamp(40px,6.6vw,106px)}.vision-globe{position:absolute;width:50vw;aspect-ratio:1;right:-4%;top:4%;z-index:-1;border:1px solid #ffffff30;border-radius:50%;animation:globe-turn 40s linear infinite}.vision-globe i{position:absolute;inset:0 25%;border:1px solid #ffffff30;border-radius:50%}.vision-globe i:nth-child(2){inset:25% 0}.vision-globe i:nth-child(3){inset:5%;transform:rotate(45deg)}.vision-globe b{position:absolute;font-size:20vw;color:var(--lime);opacity:.15;left:28%;top:20%}@keyframes globe-turn{to{transform:rotate(360deg)}}
.lab-scene{display:grid;grid-template-columns:1fr 1.4fr 1fr;align-items:center;gap:10px;margin-top:60px;padding:30px 24px 0;background:var(--paper);border:1px solid var(--line);overflow:hidden}.lab-character{position:relative;align-self:end;text-align:center}.lab-character img{height:280px;width:100%;object-fit:contain;object-position:bottom;animation:cast-arrive 7s ease-in-out infinite}.lab-character:last-child img{animation-delay:-3s}.lab-character>span{display:block;font-size:10px;letter-spacing:.1em;padding:15px 0 22px}.lab-diagram{text-align:center;position:relative;z-index:1}.lab-diagram>span{font-size:8px;letter-spacing:.12em}.lab-diagram strong{display:block;font-size:clamp(21px,2.5vw,37px);line-height:1.5;margin:24px 0}.lab-diagram em{font-style:normal;color:var(--blue)}.lab-flow{display:flex;justify-content:center;align-items:center;gap:10px}.lab-flow span{padding:8px 10px;background:var(--lime);font-size:10px}.lab-flow b{font-weight:400;color:var(--blue)}.lab-diagram svg{width:100%;height:65px;margin-top:15px}.lab-diagram path{fill:none;stroke:var(--blue);stroke-width:2;stroke-dasharray:440;animation:lab-signal 5s linear infinite}@keyframes lab-signal{0%{stroke-dashoffset:440}70%,100%{stroke-dashoffset:0}}
.tech-feature-grid{margin-top:18px}.tech-card{min-height:460px}.tech-card h3{font-size:clamp(28px,3.2vw,48px)}
.origin-map{isolation:isolate}.origin-map img{opacity:.85}.origin-radar{position:absolute;inset:0;z-index:2;pointer-events:none;display:grid;place-items:center}.origin-radar i{position:absolute;width:20%;aspect-ratio:1;border:1px solid var(--lime);border-radius:50%;animation:origin-wave 7s linear infinite}.origin-radar i:nth-child(2){animation-delay:-2.33s}.origin-radar i:nth-child(3){animation-delay:-4.66s}@keyframes origin-wave{0%{transform:scale(.6);opacity:.9}100%{transform:scale(5.5);opacity:0}}
.origin-copy{position:relative}.origin-copy:after{content:"↗";font-size:130px;position:absolute;right:25px;top:80px;color:var(--lime);line-height:1;opacity:.65}.origin-copy>*{position:relative;z-index:1}
.team-grid{gap:24px}.rider-card{display:flex;flex-direction:column;background:var(--paper);color:var(--ink);border:1px solid var(--line);overflow:hidden}.rider-image{min-height:450px;height:450px;background:#fff;overflow:hidden;position:relative}.rider-image>span{color:var(--blue);z-index:2}.rider-image img{width:100%;height:100%;max-height:100%;object-fit:contain;object-position:center;image-rendering:auto!important;padding:25px;transition:transform .7s}.rider-card:hover .rider-image img{transform:scale(1.04)}.rider-copy{padding:36px;min-height:370px;background:var(--blue);color:#fff}.rider-coral .rider-copy{background:var(--coral);color:var(--ink)}.rider-copy small{color:inherit;opacity:.8}.rider-copy h3{margin:20px 0;font-size:42px}.rider-copy h4{color:inherit}.rider-copy>p{color:inherit;opacity:.85}.rider-copy>div span{border-color:currentColor;color:inherit}.rider-image:after{content:"↗";position:absolute;right:22px;bottom:20px;display:grid;place-items:center;width:55px;height:55px;border-radius:50%;background:var(--lime);font-size:30px;transition:transform .4s}.rider-card:hover .rider-image:after{transform:rotate(45deg)}
.company-copy{position:relative}.company-seal{display:flex;align-items:center;gap:20px;margin:0 0 35px}.company-seal span{font-size:10px;letter-spacing:.13em}.company-seal b{display:grid;place-items:center;width:52px;height:52px;border:1px solid var(--blue);border-radius:50%;color:var(--blue);font-size:28px}.news-item{transition:background .25s,padding .25s}.news-item:hover{padding-left:12px;background:#e8ff6040}.news-item a{transition:transform .3s,background .3s}.news-item a:hover{transform:rotate(45deg)}
.contact{position:relative;overflow:hidden;padding-top:160px}.contact-track{position:absolute;top:28px;left:0;right:0;overflow:hidden;opacity:.25;pointer-events:none}.contact-track span{display:block;width:max-content;white-space:nowrap;font-size:clamp(40px,7vw,100px);font-weight:800;letter-spacing:-.05em;animation:contact-run 28s linear infinite}@keyframes contact-run{to{transform:translateX(-50%)}}.contact-bottom a{background:var(--ink);color:#fff;display:flex;gap:30px;align-items:center}.contact-bottom a:hover{background:var(--blue);border-color:var(--blue)}
@media(max-width:1000px){.rider-lineup{grid-template-columns:1fr;padding:30px 25px 0}.lineup-copy{padding:0}.lineup-copy strong{margin:16px 0}.lineup-cast{justify-content:center}.lineup-cast figure{width:25%;margin:0}.lineup-cast img{height:300px}.product-stage{grid-template-columns:1fr}.quest-world{min-height:640px}.quest-mascot{width:50%;left:25%}.lab-character img{height:220px}.lab-scene{padding:24px 12px 0}.lab-diagram strong{font-size:24px}.lab-flow{gap:4px}.lab-flow span{padding:6px;font-size:9px}.team-grid{grid-template-columns:1fr 1fr}.rider-image{height:360px;min-height:360px}.rider-copy{padding:25px}.rider-copy h3{font-size:32px}.rider-copy h4{font-size:19px}.rider-copy>p{font-size:13px}.outcome-grid article{padding:20px}.outcome-grid h3{font-size:25px}}
@media(max-width:680px){.hero-contact-link{padding:13px 0;font-size:10px;gap:10px}.ride-hero .hero-actions>a:first-child{gap:12px;padding:15px}.rider-lineup{margin-top:45px;padding:25px 18px 0}.lineup-copy strong{font-size:25px}.lineup-cast img{height:190px}.lineup-cast figure{width:29%;margin:0 -2%}.lineup-cast figure:nth-child(even){padding-bottom:12px}.quest-world{min-height:530px}.quest-world-label{top:22px;left:22px;font-size:8px}.quest-mascot{width:68%;left:16%;height:55%;top:9%}.quest-chip{font-size:9px;padding:9px 12px}.chip-ride{left:5%;top:24%}.chip-play{right:5%;top:46%}.chip-grow{left:10%;top:57%}.quest-sign{bottom:25px;left:22px;right:22px}.quest-sign strong{font-size:28px}.outcome-grid{gap:12px}.outcome-grid article{min-height:245px;padding:25px}.outcome-grid h3{margin-top:80px}.vision-globe{width:95vw;right:-25%;top:20%}.vision-panel h2{font-size:10.5vw}.lab-scene{grid-template-columns:1fr 1fr;gap:0}.lab-diagram{grid-column:1/-1;grid-row:1;padding:10px 14px}.lab-diagram strong{font-size:28px;margin:16px 0}.lab-flow span{padding:8px 14px;font-size:10px}.lab-diagram svg{height:40px}.lab-character img{height:210px}.lab-character>span{font-size:9px}.team-grid{grid-template-columns:1fr}.rider-image{height:390px;min-height:390px}.rider-copy{min-height:0;padding:28px 24px}.rider-copy h3{font-size:36px}.origin-copy:after{font-size:90px;top:105px}.company-seal{margin-bottom:30px}.contact{padding-top:125px}.contact-track{top:25px}.contact-bottom a{font-size:12px}.contact h2{font-size:11vw}}
.rider-dark .rider-image,.rider-coral .rider-image{background:#fff;border-top:6px solid var(--blue)}.rider-coral .rider-image{border-top-color:var(--coral)}.rider-image img{filter:none}
.lineup-cast img{width:170%;max-width:none;margin-left:-35%}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.journey-steps article{opacity:1}}
