/* Motion study: preserve the approved opening composition and artwork. */
.living-motion{scroll-snap-type:none;scroll-behavior:auto}
.living-motion main{height:100svh;position:relative;isolation:isolate;overflow:hidden;background:#30483e}
.living-motion .scene{position:absolute;inset:0;height:100%;min-height:0;scroll-snap-align:none;will-change:opacity}
.living-motion .scene-frame{height:100%;min-height:0}
.living-motion .scene-copy,.living-motion .hero-character,.living-motion .night-character{--travel:0;transform:none}
.living-motion .world,.living-motion .river-media{will-change:transform;transform-origin:50% 65%}
.living-motion .phone-stage{--travel:0}
.living-motion footer{scroll-snap-align:none}
.living-motion .hero-character{filter:contrast(1.055) saturate(1.055)}
.living-motion .hero-shade{background:linear-gradient(90deg,#f6f0ddd0 0%,#f6f0dd88 24%,#f6f0dd00 59%),linear-gradient(180deg,#f9f4e750,transparent 28%)}
.living-motion .hero .sunlight{z-index:1;opacity:.13;mix-blend-mode:soft-light}
.living-motion .river-media{inset:0}
.living-motion .river-media video{inset:0 2% 0 auto;width:58%;height:100%;object-fit:contain;object-position:center;mask-image:linear-gradient(90deg,transparent,#000 16%,#000 87%,transparent)}
.living-motion .river-shade{background:linear-gradient(90deg,#183a2bd9,#183a2b88 30%,#183a2b00 67%)}
.primary,.hello{position:relative;isolation:isolate;border:1px solid #ffffff16;transition:background .28s ease,box-shadow .32s ease,scale .2s ease,color .25s ease;transform:none;overflow:hidden}
.primary{background:linear-gradient(150deg,#3c594b,#2c463a);box-shadow:inset 0 1px 0 #ffffff15,0 2px 3px #162f2512,0 8px 22px #162f251c;padding:20px 29px;min-height:62px}
.primary:after,.hello:after{content:'';position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px #fff0;pointer-events:none;transition:box-shadow .3s}
.primary svg{transition:rotate .45s cubic-bezier(.2,.8,.2,1),scale .45s cubic-bezier(.2,.8,.2,1)}
.hello{position:absolute;background:#f8f6eaf5;border:1px solid #fff9;box-shadow:inset 0 1px 0 #fff8,0 2px 3px #1b35270d,0 8px 24px #173a2415;width:164px;min-height:48px;justify-content:center;scale:1;transition:background-color .22s ease,box-shadow .22s ease,color .22s ease}
@media(hover:hover) and (pointer:fine){
 .primary:hover{transform:none;scale:1.018;background:linear-gradient(150deg,#466352,#304e3e);box-shadow:inset 0 1px 0 #ffffff20,0 3px 6px #162f2515,0 12px 26px #162f2526}
 .primary:hover:after{box-shadow:inset 0 0 0 1px #fff2}.primary:hover svg{rotate:-9deg;scale:1.06}
 .hello:hover{background:#fffdf1;scale:1;box-shadow:inset 0 1px 0 #fff,0 3px 8px #173a2418,0 9px 25px #173a2420}
 .nav-link:hover span,.quiet-cta:hover span{translate:3px -3px}
}
.primary:active,.hello:active{scale:.973;transition-duration:.12s;box-shadow:inset 0 2px 5px #142d2820,0 2px 6px #173a2412}
.hello:active{scale:1;background:#edf0e2;box-shadow:inset 0 1px 3px #173a241a,0 2px 7px #173a2414}
.primary:focus-visible,.hello:focus-visible{outline:2px solid #fbf6df;outline-offset:4px;box-shadow:0 0 0 7px #30483e80}
.hello.playing{background:#ecf0df;border-color:#fff9}
.nav-link span,.quiet-cta span{display:inline-block;transition:translate .3s ease}
.hello[aria-busy="true"] .sound-bars{animation:awaitVoice 1s ease-in-out infinite alternate}
@keyframes awaitVoice{to{opacity:.35}}
.air-leaves{position:absolute;inset:0;z-index:2;overflow:hidden;pointer-events:none}
.air-leaves i{position:absolute;width:11px;height:20px;background:#798e59;opacity:0;border-radius:90% 8% 85% 15%;animation:airborne 19s linear infinite;box-shadow:inset 3px 0 #a0ac7833}
.air-leaves i:nth-child(1){left:17%;top:22%;animation-delay:-2s;scale:.7}
.air-leaves i:nth-child(2){left:76%;top:8%;animation-delay:-9s;scale:.55}
.air-leaves i:nth-child(3){left:3%;top:58%;animation-delay:-14s;filter:blur(1px)}
.air-leaves i:nth-child(4){left:64%;top:40%;animation-delay:-5s;scale:.6}
.air-leaves i:nth-child(5){left:43%;top:13%;animation-delay:-17s;scale:.45}
@keyframes airborne{0%{transform:translate(-70px,-50px) rotate(-30deg);opacity:0}15%{opacity:.38}50%{transform:translate(60px,25px) rotate(70deg);opacity:.52}85%{opacity:.3}100%{transform:translate(180px,130px) rotate(150deg);opacity:0}}
html:not(.living-motion) .air-leaves{display:none}
body:has(dialog[open]) .air-leaves i,body:has(dialog[open]) .foreground{animation-play-state:paused}
@media(max-width:700px){
 .primary{padding:16px 24px;min-height:54px}.hello{left:50%;right:auto;margin-left:-82px;transform:none;min-height:45px;min-width:138px}
 .living-motion .hero-shade{background:linear-gradient(180deg,#f6f0ddd9 0%,#f6f0dd70 22%,#f6f0dd00 47%)}
 .living-motion .river-shade{background:linear-gradient(180deg,#16351fd0 0%,#16351f25 43%,transparent 65%,#10281d55)}
 .living-motion .river-media video{inset:0;width:100%;object-fit:cover;object-position:center 48%;mask-image:none}
}
@media(prefers-reduced-motion:reduce){.primary,.hello,.primary svg,.nav-link span,.quiet-cta span{transition:none}.air-leaves{display:none}.primary:hover,.hello:hover,.primary:active,.hello:active{scale:1}}
