/* Independent motion layer; the original layout remains the static fallback. */
#main,.site-footer{position:relative;z-index:1}
.ambient-scene{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;contain:strict}
.ambient-scene>i{position:absolute;width:65vw;height:65vw;min-width:480px;min-height:480px;border-radius:50%;background:radial-gradient(ellipse,#f7d1e545,transparent 68%);opacity:.65}
.ambient-scene>i:nth-child(1){left:-35%;top:20%}
.ambient-scene>i:nth-child(2){right:-33%;top:40%;background:radial-gradient(ellipse,#f7d1e563,transparent 65%)}
.ambient-scene>i:nth-child(3){left:26%;bottom:-65%;opacity:.4}
.ambient-petal{position:absolute;top:-8%;left:5%;width:14px;height:21px;border-radius:80% 5% 75% 25%;background:linear-gradient(135deg,#fff,#edb9d180);border:1px solid #f2d3e155;opacity:0}
.ambient-petal:nth-of-type(2){left:94%;width:11px;height:16px;--delay:-9s;--duration:28s}
.ambient-petal:nth-of-type(3){left:2%;--delay:-17s;--duration:31s}
.ambient-petal:nth-of-type(4){left:97%;width:18px;--delay:-6s;--duration:34s}
.ambient-petal:nth-of-type(5){left:12%;width:9px;height:13px;--delay:-24s;--duration:30s}
.ambient-petal:nth-of-type(6){left:83%;--delay:-14s;--duration:38s}
.hero-atmosphere{position:absolute;inset:0;overflow:hidden;pointer-events:none;contain:strict}
.hero-atmosphere canvas{position:absolute;inset:0;width:100%;height:100%;opacity:.85}
.aurora{position:absolute;display:block;border-radius:50%;pointer-events:none}
.aurora-one{width:75%;height:130%;right:-16%;top:-38%;background:radial-gradient(ellipse,#f0bad46e,transparent 65%)}
.aurora-two{width:68%;height:105%;left:10%;bottom:-67%;background:radial-gradient(ellipse,#e8a2c055,transparent 70%)}
.aurora-three{width:70%;height:130%;left:9%;top:-68%;background:radial-gradient(ellipse,#fff 20%,#ffffff77 45%,transparent 70%)}
.light-ribbon{position:absolute;inset:-70%;background:linear-gradient(113deg,transparent 44%,#ffffff00 45%,#ffffffb3 49%,#ffffff22 52%,transparent 54%);opacity:.45;transform:translateX(-12%) rotate(-8deg)}
.hero-emblem{animation:none;transform:perspective(1000px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .8s var(--ease)}
.hero-float{position:relative;width:100%;height:100%;aspect-ratio:640/600}
.hero-decoration{display:block;overflow:visible;aspect-ratio:640/600}
.hero-logo{padding:0;cursor:pointer;-webkit-user-select:none;user-select:none}
.hero-logo::after{content:"";position:absolute;inset:-30%;pointer-events:none;background:linear-gradient(112deg,transparent 38%,#ffffff05 43%,#ffffff8f 49%,#ffffff05 55%,transparent 60%);transform:translateX(-100%);opacity:0}
.hero-logo:focus-visible{outline-offset:9px}
.hero-logo:active>img{scale:.98}
.hero-logo>img{transition:scale .25s var(--ease)}
.decor-orbit{transform-origin:329px 305px}
.decor-satellite,.decor-bow,.decor-moon,.decor-star{transform-origin:0 0}
.decor-flowers{transform-origin:0 74px}
.decor-glow{transform-origin:336px 332px}
.decor-pearls>circle{transform-box:fill-box;transform-origin:center}
.hero-note>span{display:inline-block}
.motion-toggle{color:var(--rose);flex-shrink:0;width:44px;height:44px}
.motion-toggle .motion-pause,.motion-toggle[aria-pressed="true"] .motion-play{display:none}
.motion-toggle[aria-pressed="true"] .motion-pause{display:block}
.motion-toggle[aria-pressed="true"]{background:#fff5fa}
.motion-toggle:disabled{cursor:default}
.button{position:relative;isolation:isolate;overflow:hidden}
.button.primary::after{content:"";position:absolute;inset:-100% -50%;pointer-events:none;background:linear-gradient(110deg,transparent 42%,#ffffff45 50%,transparent 58%);transform:translateX(-100%)}
.button .icon,.text-link .icon{transition:transform .3s var(--ease)}
.click-ripple{position:absolute;width:30px;height:30px;margin:-15px;pointer-events:none;border:1px solid #fff8;background:#ffffff25;border-radius:50%;animation:click-ripple .65s ease-out forwards}
.fx-reveal{transition:opacity .65s var(--ease),translate .65s var(--ease);transition-delay:var(--reveal-delay,0ms)}
.motion-enabled .fx-reveal:not(.is-revealed):not(:focus-within){opacity:0;translate:0 22px}
.motion-enabled .ambient-scene>i{animation:ambient-drift 23s ease-in-out infinite alternate}
.motion-enabled .ambient-scene>i:nth-child(2){animation-delay:-14s;animation-direction:alternate-reverse}
.motion-enabled .ambient-petal{animation:petal-fall var(--duration,26s) linear var(--delay,-4s) infinite}
.motion-enabled .aurora-one{animation:aurora-drift 16s ease-in-out infinite alternate}
.motion-enabled .aurora-two{animation:aurora-drift 21s ease-in-out -10s infinite alternate-reverse}
.motion-enabled .aurora-three{animation:aurora-drift 18s ease-in-out -6s infinite alternate}
.motion-enabled .light-ribbon{animation:light-travel 18s ease-in-out infinite alternate}
.motion-enabled .hero-float{animation:emblem-float 6.5s ease-in-out infinite}
.motion-enabled .hero-logo::after{animation:logo-gloss 9s ease-in-out 1.8s infinite}
.motion-enabled .decor-orbit{animation:orbit 70s linear infinite}
.motion-enabled .decor-satellite{animation:orbit 24s linear infinite reverse}
.motion-enabled .decor-bow{animation:bow-sway 5.5s ease-in-out infinite}
.motion-enabled .decor-flowers{animation:flower-sway 7s ease-in-out -2s infinite}
.motion-enabled .decor-moon{animation:moon-sway 6s ease-in-out -1s infinite}
.motion-enabled .decor-star{animation:star-breathe 3.8s ease-in-out calc(var(--i)*-.85s) infinite}
.motion-enabled .decor-pearls>circle{animation:pearl-wave 4s ease-in-out calc(var(--i)*.14s) infinite}
.motion-enabled .decor-glow{animation:glow-breathe 7s ease-in-out infinite}
.motion-enabled .hero-note>span{animation:heart-beat 3.5s ease-in-out infinite}
.motion-enabled .hero-copy>*{animation:copy-enter .9s var(--ease) both}
.motion-enabled .hero-copy>h1{animation-delay:.1s}
.motion-enabled .hero-copy>p{animation-delay:.2s}
.motion-enabled .hero-actions{animation-delay:.3s}
.motion-enabled .hero-facts{animation-delay:.4s}
.motion-enabled .quick-grid .fx-in-view,.motion-enabled .rights-intro>img.fx-in-view,.motion-enabled .detail-head>img{animation:icon-float 4.5s ease-in-out infinite}
.motion-enabled .quick-grid>:nth-child(2) img{animation-delay:-1.2s}
.motion-enabled .quick-grid>:nth-child(3) img{animation-delay:-2.4s}
.motion-enabled .quick-grid>:nth-child(4) img{animation-delay:-3.6s}
.motion-enabled .heading-flower.fx-in-view{animation:orbit 20s linear infinite}
.motion-enabled .button.primary::after{animation:button-gloss 8s ease-in-out infinite}
.motion-enabled .card-favorite[aria-pressed="true"] .icon{animation:favorite-pop .4s var(--ease)}
.hero-offscreen .hero-wrap *,.hero-offscreen .hero-wrap *::after,.fx-hidden *,.fx-hidden *::after{animation-play-state:paused!important}
.motion-paused .hero-emblem{transform:none;transition:none}
.motion-paused .fx-reveal{transition:none}
@media(hover:hover) and (pointer:fine){
 .motion-enabled .hero-emblem:hover{transition-duration:.18s}
 .button:hover>.icon,.button:hover>[data-icon]>.icon,.text-link:hover .icon{transform:translateX(3px)}

 .motion-enabled .menu-card{rotate:x var(--card-x,0deg);transform:perspective(900px) rotateY(var(--card-y,0deg));transition:transform .35s var(--ease),rotate .35s var(--ease),box-shadow .35s,opacity .65s,translate .65s}
 .motion-enabled .menu-card:hover{transform:perspective(900px) rotateY(var(--card-y,0deg)) translateY(-5px);box-shadow:0 16px 30px #a95e7f18}
 .motion-enabled .menu-card::after{content:"";position:absolute;inset:-40%;pointer-events:none;background:linear-gradient(115deg,transparent 35%,#ffffff45 47%,transparent 61%);opacity:0;transform:translateX(-40%);transition:transform .7s var(--ease),opacity .4s}
 .motion-enabled .menu-card:hover::after{opacity:.6;transform:translateX(35%)}
}
@media(max-width:760px){
 .header-actions{gap:6px}.site-header{gap:10px}
 .ambient-scene>i{opacity:.4}.ambient-petal:nth-of-type(n+4){display:none}
 .aurora-one{width:110%;right:-45%}.hero-atmosphere canvas{opacity:.7}
 .hero-logo{border-width:4px}
 .motion-enabled .hero-float{animation-name:emblem-float-mobile}
 .motion-enabled .fx-reveal:not(.is-revealed):not(:focus-within){translate:0 14px}
}
@media(max-width:360px){.brand-word>span{letter-spacing:1px;padding-left:8px}.brand-word{gap:8px}.header-actions{gap:3px}}
@media(prefers-reduced-motion:reduce){
 .ambient-petal,.hero-atmosphere canvas{display:none}
 .hero-emblem{transform:none;transition:none}
 .fx-reveal{opacity:1!important;translate:none!important}
}
@keyframes ambient-drift{to{transform:translate3d(6vw,-8vh,0) scale(1.15)}}
@keyframes petal-fall{0%{transform:translate3d(-15px,-30px,0) rotate(-30deg);opacity:0}12%{opacity:.6}50%{transform:translate3d(20px,55vh,0) rotate(130deg)}88%{opacity:.6}100%{transform:translate3d(-25px,115vh,0) rotate(290deg);opacity:0}}
@keyframes aurora-drift{0%{transform:translate3d(-3%,-4%,0) scale(.9);opacity:.5}100%{transform:translate3d(8%,8%,0) scale(1.15);opacity:1}}
@keyframes light-travel{to{transform:translateX(14%) rotate(7deg);opacity:.7}}
@keyframes emblem-float{0%,100%{transform:translateY(0) rotate(-.6deg)}50%{transform:translateY(-14px) rotate(.6deg)}}
@keyframes emblem-float-mobile{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes logo-gloss{0%,62%{transform:translateX(-100%);opacity:0}66%{opacity:.65}85%{transform:translateX(100%);opacity:0}100%{transform:translateX(100%);opacity:0}}
@keyframes orbit{to{transform:rotate(360deg)}}
@keyframes bow-sway{0%,100%{transform:rotate(-3deg) scale(1)}50%{transform:rotate(3deg) scale(1.025)}}
@keyframes flower-sway{0%,100%{transform:rotate(-2deg)}50%{transform:rotate(4deg)}}
@keyframes moon-sway{0%,100%{transform:translateY(-4px) rotate(-7deg)}50%{transform:translateY(6px) rotate(8deg)}}
@keyframes star-breathe{0%,100%{transform:scale(.75) rotate(-10deg);opacity:.4}50%{transform:scale(1.16) rotate(15deg);opacity:1}}
@keyframes pearl-wave{0%,38%,100%{transform:scale(1);opacity:.65}17%{transform:scale(1.24);opacity:1}}
@keyframes glow-breathe{0%,100%{transform:scale(.92);opacity:.6}50%{transform:scale(1.06);opacity:1}}
@keyframes heart-beat{0%,28%,100%{transform:scale(1)}10%{transform:scale(1.18)}19%{transform:scale(1.04)}}
@keyframes copy-enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@keyframes icon-float{0%,100%{translate:0 0;rotate:-2deg}50%{translate:0 -6px;rotate:3deg}}
@keyframes button-gloss{0%,72%{transform:translateX(-100%)}95%,100%{transform:translateX(100%)}}
@keyframes favorite-pop{0%{scale:.7}50%{scale:1.25}100%{scale:1}}
@keyframes click-ripple{to{transform:scale(9);opacity:0}}
.motion-enabled .menu-badge.fx-in-view::before{animation:badge-halo 3.4s ease-in-out infinite}
.motion-enabled .menu-badge.fx-in-view .badge-glint::before{animation:badge-shine 4.8s ease-in-out infinite}
.motion-enabled .menu-badge.fx-in-view .badge-star{animation:badge-spark 2.5s ease-in-out infinite}
.motion-enabled .menu-badge.fx-in-view .badge-star-two{animation-delay:-1.3s}
.motion-enabled .badge-new.fx-in-view .badge-glint::before{animation-delay:-2.4s}
@keyframes badge-halo{0%,100%{transform:scale(1);opacity:.45}50%{transform:scale(1.08);opacity:.1}}
@keyframes badge-shine{0%,42%{transform:translateX(-120%)}72%,100%{transform:translateX(120%)}}
@keyframes badge-spark{0%,100%{transform:scale(.6) rotate(-15deg);opacity:.35}50%{transform:scale(1.15) rotate(15deg);opacity:1}}
.motion-enabled dialog[open]{animation:modal-enter .32s var(--ease)}
.motion-enabled dialog[open]::backdrop{animation:backdrop-enter .32s ease both}
.motion-enabled dialog.is-closing{animation:modal-exit .18s ease-in both;pointer-events:none}
.motion-enabled dialog.is-closing::backdrop{animation:backdrop-exit .18s ease both}
.motion-enabled .floating-contact .contact-orbit{animation:contact-breathe 3.5s ease-in-out infinite}
.motion-enabled .floating-contact .contact-sheen::after{animation:badge-shine 5.4s ease-in-out infinite}
.motion-paused dialog[open]{animation:none}
.motion-paused .floating-contact,.motion-paused .viewer-image,.motion-paused .poster-cover>.menu-poster-image,.motion-paused .poster-open,.motion-paused .option{transition:none}
@keyframes modal-enter{from{opacity:0;transform:translateY(var(--modal-shift,16px)) scale(var(--modal-scale,.985))}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes modal-exit{from{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(var(--modal-shift,10px)) scale(var(--modal-scale,.985))}}
@keyframes backdrop-enter{from{opacity:0}to{opacity:1}}
@keyframes backdrop-exit{from{opacity:1}to{opacity:0}}
@keyframes contact-breathe{0%,100%{transform:scale(.98);opacity:.5}50%{transform:scale(1.08);opacity:.12}}
@media(max-width:760px){
 .mobile-nav>a{transition:color .22s ease}
 .mobile-nav>a::before{content:"";position:absolute;width:48px;height:29px;top:0;border-radius:20px;background:linear-gradient(120deg,#fff3f9,#f7dfed);z-index:-1;opacity:0;transform:scale(.85);transition:opacity .22s ease,transform .26s var(--ease)}
 .mobile-nav>a.active::before{opacity:1;transform:scale(1)}
 .mobile-nav>a>[data-icon]{transition:transform .26s var(--ease)}
 .mobile-nav>a.active>[data-icon]{transform:translateY(-1px)}
 .motion-paused .mobile-nav>a,.motion-paused .mobile-nav>a::before,.motion-paused .mobile-nav>a>[data-icon]{transition:none}
}
