/* Motion is progressive: text and images stay visible before enhancement. */
.concept-stages{list-style:none;padding:0;margin:28px 0 0}.concept-stages>li+li{margin-top:24px}.concept-step-label{display:block;font-size:12px;font-weight:600;letter-spacing:.12em;color:var(--blue);margin-bottom:10px}.concept-stages h3{font-size:22px;letter-spacing:-.035em;line-height:1.5}.concept-stages p{font-size:15px;line-height:1.8;color:var(--muted);margin-top:8px}.concept-progress{display:none}.concept-stages+.concept-description{display:none}
.is-scroll-story{height:235svh;position:relative;--story-progress:0}.is-scroll-story .concept-sticky{position:sticky;top:68px;height:calc(100svh - 100px);min-height:600px;display:flex;flex-direction:column;justify-content:center;gap:44px}.is-scroll-story .concept-layout{width:100%;gap:48px}.is-scroll-story .concept-copy{min-width:0}.is-scroll-story .chapter-label{font-size:26px;margin-bottom:18px}.is-scroll-story .concept-copy h2{font-size:clamp(34px,4.2vw,54px);line-height:1.35}.is-scroll-story .concept-copy .text-link{display:none}.is-scroll-story .concept-stages{display:grid;grid-template-areas:'step';min-height:128px;margin-top:30px}.is-scroll-story .concept-stages>li{grid-area:step;margin:0;opacity:0;transform:translateY(20px);transition:none;pointer-events:none}.is-scroll-story .concept-stages>li.is-active{opacity:1;transform:translateY(0);transition:opacity .45s ease,transform .65s cubic-bezier(.16,1,.3,1)}.is-scroll-story .concept-visual{padding-block:32px;position:relative;isolation:isolate}.is-scroll-story .concept-visual::before{content:'';position:absolute;inset:18% 0 5%;border-radius:50%;background:radial-gradient(ellipse,#cddff555,transparent 67%);z-index:-1;transform:scale(calc(.75 + var(--story-progress)*.3))}.is-scroll-story .concept-visual img{will-change:transform}.is-scroll-story .concept-visual figcaption{position:relative;text-align:center;margin-top:24px}.is-scroll-story .concept-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;width:100%;max-width:660px;margin-inline:auto}.concept-progress>span{position:relative;border-top:2px solid #d9dce2;padding-top:12px;color:var(--muted);font-size:11px;letter-spacing:.1em}.concept-progress>span::before{content:'';position:absolute;left:0;right:0;top:-2px;height:2px;background:var(--blue);transform-origin:left;transform:scaleX(clamp(0,calc(var(--story-progress)*3),1))}.concept-progress>span:nth-child(2)::before{transform:scaleX(clamp(0,calc(var(--story-progress)*3 - 1),1))}.concept-progress>span:nth-child(3)::before{transform:scaleX(clamp(0,calc(var(--story-progress)*3 - 2),1))}
@keyframes product-breathe{0%,100%{translate:0 0}50%{translate:0 -12px}}@keyframes product-light{0%{transform:translateX(-140%) rotate(-24deg)}45%,100%{transform:translateX(160%) rotate(-24deg)}}
.motion-enabled .hero-product{position:relative;isolation:isolate}.motion-enabled .hero-product::before{content:'';position:absolute;z-index:-1;inset:13% -8% 2%;border-radius:50%;background:radial-gradient(ellipse,#c7dff366,transparent 65%);pointer-events:none}.motion-enabled .hero-product .spray-stage{animation:product-breathe 5.5s ease-in-out 1.7s 3;animation-play-state:paused}.motion-enabled .hero-product.motion-in-view .spray-stage{animation-play-state:running}.motion-paused .hero-product .spray-stage{animation-play-state:paused!important}.motion-enabled .hero-number{display:inline-block;position:relative;overflow:hidden}.motion-enabled .hero-number::after{content:'';position:absolute;inset:0 -15%;pointer-events:none;background:linear-gradient(100deg,transparent 25%,#ffffff88 48%,transparent 72%);transform:translateX(-140%) rotate(-24deg);animation:product-light 3s ease-in-out .55s 1}.motion-enabled .button,.motion-enabled .header-cta{transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s,background .2s}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.button:hover,.header-cta:hover{transform:translateY(-3px);box-shadow:0 12px 25px #00000012}.media-card img,.editorial-image img{transition:transform .9s cubic-bezier(.16,1,.3,1)}.media-card:hover img,.editorial-card:hover img{transform:scale(1.045)}}
@media(max-width:760px){.concept-stages{margin-top:22px}.concept-stages h3{font-size:19px}.concept-stages p{font-size:14px}.is-scroll-story{height:225svh}.is-scroll-story .concept-sticky{top:70px;height:calc(100svh - 158px);min-height:570px;gap:16px;padding-block:12px}.is-scroll-story .concept-layout{grid-template-columns:1fr;gap:0}.is-scroll-story .concept-copy .eyebrow{font-size:13px;margin-bottom:12px}.is-scroll-story .chapter-label{display:none}.is-scroll-story .concept-copy h2{font-size:32px;line-height:1.4}.is-scroll-story .concept-stages{min-height:110px;margin-top:18px}.is-scroll-story .concept-step-label{font-size:11px;margin-bottom:6px}.is-scroll-story .concept-stages h3{font-size:19px}.is-scroll-story .concept-visual{width:min(390px,100%);padding:6px 0 0;margin-inline:auto}.is-scroll-story .concept-visual img{max-height:235px;object-fit:contain}.is-scroll-story .concept-visual figcaption{font-size:10px;margin-top:7px}.is-scroll-story .concept-progress{gap:14px}.concept-progress>span{font-size:9px;padding-top:8px}}
@media(prefers-reduced-motion:reduce){.hero-product .spray-stage,.hero-number::after{animation:none!important;translate:none!important}.concept-stages>li{opacity:1!important;transform:none!important;transition:none!important}.concept-visual img{will-change:auto!important}}
.motion-line{display:block;overflow:clip;padding-block:.1em;margin-block:-.1em}.motion-line-inner{display:block;transform-origin:0 100%}.header::after{content:"";position:absolute;left:0;bottom:-1px;width:100%;height:2px;background:var(--blue);transform:scaleX(var(--reading-progress,0));transform-origin:left;pointer-events:none}.motion-scene{perspective:1200px}.motion-scene-image{backface-visibility:hidden;transform-origin:50% 65%}.motion-scene-concept{overflow:visible}.motion-photo-frame{overflow:hidden;aspect-ratio:1.4;isolation:isolate}.motion-photo-frame>img{width:100%;height:100%;object-fit:cover;transform-origin:50% 50%}.motion-tilt{transform-origin:50% 50%;transition:transform .45s cubic-bezier(.16,1,.3,1),box-shadow .45s,border-color .3s,background .3s}.mechanism-flow>li{position:relative}.mechanism-flow>li::after{content:"";position:absolute;top:-1px;left:0;height:2px;width:100%;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform 1.3s cubic-bezier(.16,1,.3,1)}.mechanism-flow>li.motion-arrived::after{transform:scaleX(1)}.mechanism-flow>li:nth-child(2)::after{transition-delay:.11s}.mechanism-flow>li:nth-child(3)::after{transition-delay:.22s}.mechanism-flow>li:nth-child(4)::after{transition-delay:.33s}.text-link>span,.card-link>span,.partner-primary>span,.audience-action>span{display:inline-block;transition:transform .4s cubic-bezier(.16,1,.3,1)}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.motion-tilt:hover{transform:perspective(1100px) translateY(-6px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));box-shadow:0 18px 42px #1212210c}.text-link:hover>span,.card-link:hover>span,.partner-primary:hover>span{transform:translateX(5px)}.model-card:focus-within{border-color:#a9ccef}}
@media(prefers-reduced-motion:reduce){.motion-line{overflow:visible}.motion-scene-image,.motion-line-inner,.motion-tilt{transform:none!important}.motion-photo-frame>img{transform:none!important}.header::after{display:none}.mechanism-flow>li::after{transition:none;transform:scaleX(1)}.motion-tilt,.text-link>span,.card-link>span,.partner-primary>span,.audience-action>span{transition:none!important}}

/* The photo and the spray stay in one responsive coordinate system. */
.spray-stage{position:relative;width:100%;margin-inline:auto;line-height:0;isolation:isolate}
.spray-stage>img{display:block;width:100%;height:auto;max-height:none!important}
.spray-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}
.spray-controls{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:14px;line-height:1.5}
.spray-replay{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:8px 13px;border:1px solid #0066cc30;border-radius:24px;background:#ffffffb8;color:#0066cc;font:inherit;font-size:12px;font-weight:500;cursor:pointer;transition:background .2s,border-color .2s}
.spray-replay svg{width:19px;height:19px;flex:none}
.spray-replay:disabled{opacity:.45;cursor:default}
.spray-replay:hover{background:#eaf3ff;border-color:#0066cc66}
.spray-replay:focus-visible{outline:2px solid #0066cc;outline-offset:4px}
.spray-replay[aria-busy=true]{background:#eaf3ff}
.spray-note{font-size:10px;color:var(--muted)}
@media(max-width:760px){.is-scroll-story .concept-visual .spray-stage{max-width:359.5px}.spray-controls{margin-top:9px;gap:10px}.is-scroll-story .concept-visual .spray-controls{margin-top:6px}}
@media(max-width:600px){.hero-product .spray-stage{max-width:336.6px}.spray-replay{font-size:11px}}
@media(max-width:370px){.hero-product .spray-stage{max-width:293.7px}}
@media(prefers-reduced-motion:reduce){.spray-canvas,.spray-controls{display:none}.spray-stage{animation:none!important;translate:none!important}}
