/* Additional motion stays within the recruitment page. */
.r4-nav::after{content:"";position:absolute;left:0;bottom:0;width:100%;height:3px;background:var(--r4-green);transform:scaleX(var(--r4-progress,0));transform-origin:left;pointer-events:none}
@media(prefers-reduced-motion:no-preference){
 /* The cover opens in three beats; no full-screen loading overlay. */
 .r4-hero__type>span{animation:r4-cover-type 1.15s cubic-bezier(.16,1,.3,1) both}
 .r4-hero__type>span:nth-child(2){animation-delay:.16s}
 .r4-hero__type>span:nth-child(3){animation-delay:.32s}
 .r4-hero__photo{animation:r4-cover-photo 1.65s cubic-bezier(.16,1,.3,1) .18s both}
 .r4-hero__copy{animation:r4-copy-in 1s cubic-bezier(.16,1,.3,1) .65s both}
 .r4-entry-orbit{animation:r4-orbit-in 1.2s cubic-bezier(.22,1,.36,1) .9s both}
 .r4-motion .r4-hero__photo img,.r4-motion .r4-message__visual figure img,.r4-motion .r4-culture__photo img{transform:translateY(var(--r4-photo-y,0px)) scale(1.1);will-change:transform}
 .r4-motion .r4-culture__photo img{transform:none;object-position:50% calc(50% + var(--r4-photo-y,0px));will-change:auto}
 .r4-motion .r4-flower{transform:rotate(var(--r4-flower-turn,12deg))}
 .r4-motion .r4-entry__english{translate:var(--r4-entry-shift,0px) 0}
 /* Each section label draws its rule before the content arrives. */
 .r4-motion .r4-section-label{position:relative;border-top-color:transparent}
 .r4-motion .r4-section-label::before{content:"";position:absolute;left:0;right:0;top:-1px;border-top:1px solid currentColor;transform:scaleX(0);transform-origin:left;transition:transform 1.1s cubic-bezier(.16,1,.3,1)}
 .r4-motion .r4-section-label.is-visible::before{transform:scaleX(1)}
 .r4-motion .will-reveal{opacity:0;translate:0 36px;transition:opacity .9s ease,translate 1.05s cubic-bezier(.16,1,.3,1);transition-delay:var(--r4-delay,0ms)}
 .r4-motion h2.will-reveal{clip-path:inset(0 0 100% 0);translate:0 22px;transition:clip-path 1.2s cubic-bezier(.16,1,.3,1),opacity .9s ease,translate 1.2s cubic-bezier(.16,1,.3,1)}
 .r4-motion .will-reveal.is-visible{opacity:1;translate:0 0}
 .r4-motion h2.will-reveal.is-visible{clip-path:inset(0 0 -5% 0)}
 .r4-motion .r4-message__visual figure{transition:clip-path 1.3s cubic-bezier(.16,1,.3,1);clip-path:inset(0 0 100% 0)}
 .r4-motion .r4-message__visual.is-visible figure{clip-path:inset(0)}
 .r4-motion .r4-facts strong{font-variant-numeric:tabular-nums}
 /* Short mouse responses; no perpetual movement or touch hover dependency. */
 .r4-motion .r4-nursery{transform:perspective(900px) rotateY(var(--r4-tilt,0deg));transition:transform .35s ease,opacity .9s ease,translate 1.05s cubic-bezier(.16,1,.3,1);transition-delay:0s,var(--r4-delay,0ms),var(--r4-delay,0ms)}
 .r4-motion .r4-entry__button{transform:perspective(800px) rotateY(var(--r4-tilt,0deg));transition:transform .3s,background .3s}
 .r4-entry__button b{transition:transform .4s cubic-bezier(.16,1,.3,1)}
 .r4-entry__button:hover b,.r4-entry__button:focus-visible b{transform:translate(5px,-5px)}
 .r4-role summary{position:relative;isolation:isolate}
 .r4-role summary::before{content:"";position:absolute;inset:0;background:#e8eddd;transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.16,1,.3,1);z-index:-1}
 .r4-role summary:hover{background:transparent}
 .r4-role summary:hover::before,.r4-role summary:focus-visible::before{transform:scaleX(1)}
 .r4-role[open] .r4-role__content>div{animation:r4-copy-in .65s cubic-bezier(.16,1,.3,1) both}
 .r4-role[open] .r4-plus{background:var(--r4-green);color:var(--r4-paper);transition:background .3s,color .3s}
}
@keyframes r4-cover-type{from{clip-path:inset(0 0 100% 0);transform:translateY(48px);opacity:0}to{clip-path:inset(-10% -5%);transform:translateY(0);opacity:1}}
@keyframes r4-cover-photo{from{clip-path:inset(0 100% 0 0);transform:rotate(-3deg) translateY(30px);opacity:.25}to{clip-path:inset(0);transform:rotate(3deg);opacity:1}}
@keyframes r4-copy-in{from{opacity:0;translate:0 22px}to{opacity:1;translate:0 0}}
@keyframes r4-orbit-in{from{opacity:0;transform:rotate(-28deg) scale(.72)}to{opacity:1;transform:rotate(9deg) scale(1)}}
@media(max-width:767px) and (prefers-reduced-motion:no-preference){
 .r4-motion .will-reveal{translate:0 22px}
 .r4-motion .will-reveal.is-visible{translate:0 0}
 .r4-motion .r4-hero__photo img,.r4-motion .r4-message__visual figure img,.r4-motion .r4-culture__photo img{transform:translateY(var(--r4-photo-y,0px)) scale(1.07)}
 .r4-motion .r4-culture__photo img{transform:none}
}
@media(prefers-reduced-motion:reduce){
 .r4 .will-reveal{opacity:1;translate:none;clip-path:none}
 .r4-nav::after{display:none}
}
