:root{
  --uc-motion-ease: cubic-bezier(.22,.61,.36,1);
  --uc-motion-ease-emphatic: cubic-bezier(.05,.7,.1,1);
  --uc-motion-ease-settle: cubic-bezier(.16,1,.3,1);
  --uc-motion-fast: 140ms;
  --uc-motion-standard: 320ms;
  --uc-motion-slow: 620ms;
}

@media (prefers-reduced-motion: no-preference){
  body.home-v2-page .premium-kicker,
  body.home-v2-page .premium-hero-title__line,
  body.home-v2-page .lead,
  body.home-v2-page .lead-detail,
  body.home-v2-page .hero-cta__actions,
  body.home-v2-page .v2-hero-stories,
  body.home-v2-page .home-hero-teachers,
  body.home-v2-page .hero-v2-feature-card,
  body.home-v2-page .hero-v2-visual,
  body[data-page-key="fortune-hub-v2"] .fortunev2-hero-kicker,
  body[data-page-key="fortune-hub-v2"] .fortune-hero h1,
  body[data-page-key="fortune-hub-v2"] .fortune-hero .lead,
  body[data-page-key="fortune-hub-v2"] .fortunev2-hero-cta-row,
  body[data-page-key="fortune-hub-v2"] .fortunev2-booking-flow,
  body[data-page-key="fortune-hub-v2"] .fortunev2-hero-teachers,
  body[data-page-key="fortune-hub-v2"] .fortunev2-hero-side,
  body.quiz-page .intro-card,
  body.quiz-page .flow-head,
  body.quiz-page .step-card,
  body.quiz-page .flow-actions,
  body.quiz-page .result-card,
  body.shop-preview-page .shop-seo-intro,
  body.shop-preview-page .effect-tabs-section,
  body.shop-preview-page #filterBar,
  body.shop-preview-page #hotSection,
  body.shop-preview-page #list,
  body.service-view .svc-promo-card,
  body.service-view #svcList{
    animation:ucMotionFadeLift var(--uc-motion-slow) var(--uc-motion-ease-emphatic) both;
  }

  body.home-v2-page .premium-hero-title__line--gold{ animation-delay:70ms; }
  body.home-v2-page .lead{ animation-delay:120ms; }
  body.home-v2-page .lead-detail{ animation-delay:170ms; }
  body.home-v2-page .hero-cta__actions{ animation-delay:230ms; }
  body.home-v2-page .v2-hero-stories{ animation-delay:300ms; }
  body.home-v2-page .home-hero-teachers{ animation-delay:340ms; }
  body.home-v2-page .hero-v2-visual{ animation-delay:160ms; }
  body.home-v2-page .hero-v2-feature-card:nth-child(1){ animation-delay:300ms; }
  body.home-v2-page .hero-v2-feature-card:nth-child(2){ animation-delay:360ms; }
  body.home-v2-page .hero-v2-feature-card:nth-child(3){ animation-delay:420ms; }

  body[data-page-key="fortune-hub-v2"] .fortune-hero h1{ animation-delay:70ms; }
  body[data-page-key="fortune-hub-v2"] .fortune-hero .lead{ animation-delay:130ms; }
  body[data-page-key="fortune-hub-v2"] .fortunev2-hero-cta-row{ animation-delay:190ms; }
  body[data-page-key="fortune-hub-v2"] .fortunev2-booking-flow{ animation-delay:250ms; }
  body[data-page-key="fortune-hub-v2"] .fortunev2-hero-teachers{ animation-delay:310ms; }
  body[data-page-key="fortune-hub-v2"] .fortunev2-hero-side{ animation-delay:120ms; }

  body.quiz-page .flow-head{ animation-delay:40ms; }
  body.quiz-page .step-card{ animation-delay:90ms; }
  body.quiz-page .flow-actions{ animation-delay:150ms; }
  body.shop-preview-page .effect-tabs-section{ animation-delay:90ms; }
  body.shop-preview-page #filterBar{ animation-delay:140ms; }
  body.shop-preview-page #hotSection{ animation-delay:180ms; }
  body.shop-preview-page #list{ animation-delay:210ms; }
  body.service-view .svc-promo-card{ animation-delay:80ms; }
  body.service-view #svcList{ animation-delay:150ms; }

  body.home-v2-page .v2-hero-stories__card,
  body[data-page-key="fortune-hub-v2"] .v2-hero-stories__card{
    transition:
      opacity var(--uc-motion-standard) var(--uc-motion-ease),
      transform var(--uc-motion-standard) var(--uc-motion-ease),
      box-shadow var(--uc-motion-standard) var(--uc-motion-ease);
  }

  body.home-v2-page .v2-hero-stories__card.is-fading,
  body[data-page-key="fortune-hub-v2"] .v2-hero-stories__card.is-fading{
    transform:translateY(6px) scale(.992);
  }

  body.home-v2-page .hero-cta__primary,
  body.home-v2-page .hero-cta__secondary,
  body[data-page-key="fortune-hub-v2"] .hero-cta__primary,
  body[data-page-key="fortune-hub-v2"] .hero-cta__secondary,
  body[data-page-key="fortune-hub-v2"] .fortunev2-teacher-cta,
  body.quiz-page .btn,
  body.shop-preview-page .btn,
  body.shop-preview-page #cartFab,
  body.shop-preview-page .effect-tab,
  body.shop-preview-page #sideDeities .side-cat-btn,
  body.service-view .btn,
  body.service-view #cartFab,
  body.service-view .svc-promo-cta,
  body.service-view .svc-slot-nav{
    transition:
      transform var(--uc-motion-fast) var(--uc-motion-ease),
      box-shadow var(--uc-motion-standard) var(--uc-motion-ease),
      border-color var(--uc-motion-fast) ease,
      background-color var(--uc-motion-fast) ease,
      color var(--uc-motion-fast) ease;
  }

  body.home-v2-page .hero-cta__primary,
  body[data-page-key="fortune-hub-v2"] .hero-cta__primary,
  body.quiz-page .btn-primary,
  body.shop-preview-page .btn.primary,
  body.service-view .btn.primary{
    position:relative;
    overflow:hidden;
  }

  body.home-v2-page .hero-cta__primary::after,
  body[data-page-key="fortune-hub-v2"] .hero-cta__primary::after,
  body.quiz-page .btn-primary::after,
  body.shop-preview-page .btn.primary::after,
  body.service-view .btn.primary::after{
    content:"";
    position:absolute;
    inset:-40% -60%;
    background:linear-gradient(110deg, transparent 35%, rgba(255,255,255,.26) 50%, transparent 65%);
    transform:translateX(-65%);
    opacity:0;
    pointer-events:none;
  }

  body.home-v2-page .hero-cta__primary:hover::after,
  body[data-page-key="fortune-hub-v2"] .hero-cta__primary:hover::after,
  body.quiz-page .btn-primary:hover::after,
  body.shop-preview-page .btn.primary:hover::after,
  body.service-view .btn.primary:hover::after{
    animation:ucMotionSheen 780ms var(--uc-motion-ease) both;
  }

  body.home-v2-page .hero-cta__primary:active,
  body.home-v2-page .hero-cta__secondary:active,
  body[data-page-key="fortune-hub-v2"] .hero-cta__primary:active,
  body[data-page-key="fortune-hub-v2"] .hero-cta__secondary:active,
  body[data-page-key="fortune-hub-v2"] .fortunev2-teacher-cta:active,
  body.quiz-page .btn:active,
  body.quiz-page .option-card:active,
  body.shop-preview-page .btn:active,
  body.shop-preview-page #cartFab:active,
  body.shop-preview-page .grid .card:active,
  body.service-view .btn:active,
  body.service-view #cartFab:active,
  body.service-view .service-grid .card:active{
    transform:translateY(1px) scale(.99);
  }

  body.home-v2-page .home-hero-teachers .fortunev2-hero-teacher,
  body[data-page-key="fortune-hub-v2"] .fortunev2-hero-teachers .fortunev2-hero-teacher,
  body[data-page-key="fortune-hub-v2"] .fortunev2-teachers .fortunev2-teacher-card,
  body[data-page-key="fortune-hub-v2"] .fortunev2-guarantee-card,
  body.shop-preview-page .grid .card,
  body.shop-preview-page .shop-preview-service-card,
  body.shop-preview-page #sideDeities .tool-link,
  body.service-view .service-grid .card,
  body.service-view .svc-promo-card,
  body.service-view .svc-pack-pill{
    transition:
      transform var(--uc-motion-standard) var(--uc-motion-ease),
      box-shadow var(--uc-motion-standard) var(--uc-motion-ease),
      border-color var(--uc-motion-fast) ease,
      filter var(--uc-motion-fast) ease;
  }

  body.home-v2-page .home-hero-teachers .fortunev2-hero-teacher:hover,
  body[data-page-key="fortune-hub-v2"] .fortunev2-hero-teachers .fortunev2-hero-teacher:hover{
    transform:translateY(-2px);
  }

  body[data-page-key="fortune-hub-v2"] .fortunev2-teachers .fortunev2-teacher-card:hover,
  body[data-page-key="fortune-hub-v2"] .fortunev2-guarantee-card:hover,
  body.shop-preview-page .grid .card:hover,
  body.shop-preview-page .shop-preview-service-card:hover,
  body.service-view .service-grid .card:hover,
  body.service-view .svc-promo-card:hover{
    transform:translateY(-4px);
    filter:saturate(1.03);
  }

  body[data-page-key="fortune-hub-v2"] .fortune-booking-dialog[open] .fortune-booking-dialog__card,
  body[data-page-key="fortune-hub-v2"] .v2-intro-dialog[open],
  body.quiz-page dialog[open] .fortune-shell,
  body.shop-preview-page #dlg[open] .dlgBody,
  body.service-view #svcDetail[open] .dlgBody{
    animation:ucMotionDialogIn 360ms var(--uc-motion-ease-settle) both;
  }

  body[data-page-key="fortune-hub-v2"] .fortune-booking-dialog::backdrop,
  body[data-page-key="fortune-hub-v2"] .v2-intro-dialog::backdrop,
  body.quiz-page dialog::backdrop,
  body.shop-preview-page #dlg::backdrop,
  body.service-view #svcDetail::backdrop{
    animation:ucMotionBackdropIn var(--uc-motion-standard) ease both;
  }

  body.shop-preview-page .grid .card .pic img,
  body.shop-preview-page .shop-preview-service-card__media img,
  body.service-view .service-grid .card .pic img{
    transition:transform 520ms var(--uc-motion-ease);
  }

  body.shop-preview-page .grid .card:hover .pic img,
  body.shop-preview-page .shop-preview-service-card:hover .shop-preview-service-card__media img,
  body.service-view .service-grid .card:hover .pic img{
    transform:scale(1.045);
  }

  body.shop-preview-page .effect-tab[aria-selected="true"],
  body.shop-preview-page .effect-tab.is-active,
  body.service-view .svc-pack-pill.is-active,
  body.service-view .svc-pack-pill[aria-pressed="true"]{
    animation:ucMotionSelectPulse 520ms var(--uc-motion-ease-settle) both;
  }

  body.quiz-page .quiz-flow:not([hidden]) .step-card:not([style*="display: none"]),
  body.quiz-page .quiz-flow:not([hidden]) .step-card:not([style*="display:none"]){
    animation:ucMotionQuizStep 420ms var(--uc-motion-ease-emphatic) both;
  }

  body.quiz-page .option-card::after{
    content:"";
    position:absolute;
    left:20px;
    top:22px;
    width:8px;
    height:8px;
    border-radius:50%;
    background:#9f7930;
    opacity:0;
    transform:scale(.4);
    transition:
      opacity var(--uc-motion-fast) ease,
      transform var(--uc-motion-standard) var(--uc-motion-ease-settle);
  }

  body.quiz-page .option-card.is-selected::after,
  body.quiz-page .option-card[aria-checked="true"]::after{
    opacity:1;
    transform:scale(1);
  }

  body.quiz-page #progressFill{
    transition:width 420ms var(--uc-motion-ease);
  }

  body.quiz-page #resultBox[style*="display: block"],
  body.quiz-page #resultBox[style*="display:block"]{
    animation:ucMotionResultReveal 720ms var(--uc-motion-ease-emphatic) both;
  }

  body.shop-preview-page #dlgCart[open] .cartWrap,
  body.shop-preview-page #dlgOrderConfirm[open],
  body.shop-preview-page #dlgStore[open],
  body.shop-preview-page #dlgLookup[open],
  body.shop-preview-page #dlgOrderSuccess[open] .order-success-card,
  body.service-view #svcCartPanel[open],
  body.service-view #svcCart[open] .svc-form,
  body.service-view #svcSuccess[open] .dlgBody{
    animation:ucMotionCheckoutPanelIn 420ms var(--uc-motion-ease-settle) both;
  }

  body.shop-preview-page #dlgCart::backdrop,
  body.shop-preview-page #dlgOrderConfirm::backdrop,
  body.shop-preview-page #dlgStore::backdrop,
  body.shop-preview-page #dlgLookup::backdrop,
  body.shop-preview-page #dlgOrderSuccess::backdrop,
  body.service-view #svcCartPanel::backdrop,
  body.service-view #svcCart::backdrop,
  body.service-view #svcSuccess::backdrop{
    animation:ucMotionBackdropIn var(--uc-motion-standard) ease both;
  }

  body.shop-preview-page .cartItem,
  body.service-view #svcCartPanel .svc-cart-item{
    animation:ucMotionCartItemIn 360ms var(--uc-motion-ease-emphatic) both;
    transition:
      transform var(--uc-motion-standard) var(--uc-motion-ease),
      box-shadow var(--uc-motion-standard) var(--uc-motion-ease),
      border-color var(--uc-motion-fast) ease,
      background-color var(--uc-motion-fast) ease;
  }

  body.shop-preview-page .cartItem:nth-child(2),
  body.service-view #svcCartPanel .svc-cart-item:nth-child(2){
    animation-delay:45ms;
  }

  body.shop-preview-page .cartItem:nth-child(3),
  body.service-view #svcCartPanel .svc-cart-item:nth-child(3){
    animation-delay:90ms;
  }

  body.shop-preview-page .cartItem:hover,
  body.service-view #svcCartPanel .svc-cart-item:hover{
    transform:translateY(-2px);
  }

  body.shop-preview-page #orderItemsBox tbody tr{
    animation:ucMotionCartItemIn 320ms var(--uc-motion-ease) both;
  }

  body.shop-preview-page .cartActions .btn,
  body.shop-preview-page #orderNextBtn,
  body.shop-preview-page #storeNextBtn,
  body.shop-preview-page #storeOpenCvsBtn,
  body.service-view #svcCartPanel .svc-cart-actions .btn,
  body.service-view #svcCart .svc-pay-method,
  body.service-view #svcCart .svc-stepper span{
    transition:
      transform var(--uc-motion-fast) var(--uc-motion-ease),
      box-shadow var(--uc-motion-standard) var(--uc-motion-ease),
      border-color var(--uc-motion-fast) ease,
      background-color var(--uc-motion-fast) ease,
      color var(--uc-motion-fast) ease;
  }

  body.shop-preview-page .cartActions .btn:active,
  body.shop-preview-page #orderNextBtn:active,
  body.shop-preview-page #storeNextBtn:active,
  body.shop-preview-page #storeOpenCvsBtn:active,
  body.service-view #svcCartPanel .svc-cart-actions .btn:active,
  body.service-view #svcCart .svc-pay-method:active{
    transform:translateY(1px) scale(.99);
  }

  body.service-view #svcCart .svc-step-content.active{
    animation:ucMotionCheckoutStepIn 440ms var(--uc-motion-ease-emphatic) both;
  }

  body.service-view #svcCart .svc-stepper span.active,
  body.service-view #svcCart .svc-pay-method.is-selected,
  body.service-view #svcCart .svc-pay-method[aria-pressed="true"]{
    animation:ucMotionSelectPulse 520ms var(--uc-motion-ease-settle) both;
  }

  body.service-view #svcCart .svc-pay-method:hover,
  body.service-view #svcCart .svc-pay-method:focus-visible{
    transform:translateY(-2px);
  }

  body.service-view #svcCart .svc-payment-screen:not([hidden]),
  body.service-view #svcCart #svcPaymentChoiceScreen:not([hidden]),
  body.service-view #svcCart #svcPaymentAtmScreen:not([hidden]),
  body.service-view #svcCart #svcPaymentCreditScreen:not([hidden]){
    animation:ucMotionCheckoutStepIn 380ms var(--uc-motion-ease) both;
  }

  body.home-v2-page.nav-open .nav-drawer,
  body[data-page-key="fortune-hub-v2"].nav-open .nav-drawer,
  body.shop-preview-nav-open .shop-preview-nav-drawer{
    animation:ucMotionBackdropIn var(--uc-motion-standard) ease both;
  }

  body.home-v2-page.nav-open .nav-drawer__panel,
  body[data-page-key="fortune-hub-v2"].nav-open .nav-drawer__panel,
  body.shop-preview-nav-open .shop-preview-nav-drawer__panel{
    animation:ucMotionDrawerPanelIn 380ms var(--uc-motion-ease-settle) both;
  }

  body.home-v2-page.nav-open .nav-drawer__header,
  body.home-v2-page.nav-open .nav-drawer__group,
  body.home-v2-page.nav-open .nav-drawer__cta,
  body[data-page-key="fortune-hub-v2"].nav-open .nav-drawer__header,
  body[data-page-key="fortune-hub-v2"].nav-open .nav-drawer__group,
  body[data-page-key="fortune-hub-v2"].nav-open .nav-drawer__cta,
  body.shop-preview-nav-open .shop-preview-nav-drawer__header,
  body.shop-preview-nav-open .shop-preview-nav-drawer__group,
  body.shop-preview-nav-open .shop-preview-nav-drawer .auth-widget,
  body.shop-preview-nav-open .shop-preview-nav-drawer .guardian-badge{
    animation:ucMotionNavItemIn 420ms var(--uc-motion-ease-emphatic) both;
  }

  body.home-v2-page.nav-open .nav-drawer__group:nth-of-type(2),
  body[data-page-key="fortune-hub-v2"].nav-open .nav-drawer__group:nth-of-type(2),
  body.shop-preview-nav-open .shop-preview-nav-drawer__group:nth-of-type(2){
    animation-delay:55ms;
  }

  body.home-v2-page.nav-open .nav-drawer__group:nth-of-type(3),
  body[data-page-key="fortune-hub-v2"].nav-open .nav-drawer__group:nth-of-type(3),
  body.shop-preview-nav-open .shop-preview-nav-drawer__group:nth-of-type(3){
    animation-delay:105ms;
  }

  body.shop-preview-page .member-menu button,
  body.service-view .member-menu button,
  body.quiz-page .member-menu button,
  body.home-v2-page .home-member-menu__btn,
  body.home-v2-page .home-drawer-member-menu__btn,
  body.home-v2-page .nav-drawer__close,
  body[data-page-key="fortune-hub-v2"] .nav-drawer__close,
  body.shop-preview-page .shop-preview-nav-drawer__close,
  body.service-view .shop-preview-nav-drawer__close,
  body.shop-preview-page .shop-preview-nav-drawer__group a,
  body.service-view .shop-preview-nav-drawer__group a,
  body.shop-preview-page .shop-preview-nav-drawer .member-menu-panel a,
  body.shop-preview-page .shop-preview-nav-drawer .member-menu-panel button,
  body.service-view .shop-preview-nav-drawer .member-menu-panel a,
  body.service-view .shop-preview-nav-drawer .member-menu-panel button{
    transition:
      transform var(--uc-motion-fast) var(--uc-motion-ease),
      box-shadow var(--uc-motion-standard) var(--uc-motion-ease),
      border-color var(--uc-motion-fast) ease,
      background-color var(--uc-motion-fast) ease,
      color var(--uc-motion-fast) ease;
  }

  body.home-v2-page .nav-drawer__close:active,
  body[data-page-key="fortune-hub-v2"] .nav-drawer__close:active,
  body.shop-preview-page .shop-preview-nav-drawer__close:active,
  body.service-view .shop-preview-nav-drawer__close:active,
  body.shop-preview-page .shop-preview-nav-drawer__group a:active,
  body.service-view .shop-preview-nav-drawer__group a:active,
  body.shop-preview-page .shop-preview-nav-drawer .member-menu-panel a:active,
  body.shop-preview-page .shop-preview-nav-drawer .member-menu-panel button:active,
  body.service-view .shop-preview-nav-drawer .member-menu-panel a:active,
  body.service-view .shop-preview-nav-drawer .member-menu-panel button:active{
    transform:translateY(1px) scale(.99);
  }

  body.shop-preview-page .member-menu-panel[style*="display: block"],
  body.shop-preview-page .member-menu-panel[style*="display:block"],
  body.service-view .member-menu-panel[style*="display: block"],
  body.service-view .member-menu-panel[style*="display:block"],
  body.quiz-page .member-menu-panel[style*="display: block"],
  body.quiz-page .member-menu-panel[style*="display:block"]{
    animation:ucMotionMenuPanelIn 260ms var(--uc-motion-ease-settle) both;
    transform-origin:top right;
  }
}

@media (prefers-reduced-motion: no-preference) and (max-width:640px){
  body.service-view #svcCart[open]{
    animation:ucMotionMobileCenteredDialogIn 360ms var(--uc-motion-ease-settle) both;
  }
}

@keyframes ucMotionFadeLift{
  from{
    opacity:0;
    transform:translateY(14px) scale(.992);
  }
  to{
    opacity:1;
    transform:translateY(0) scale(1);
  }
}

@keyframes ucMotionDialogIn{
  from{
    opacity:0;
    transform:translateY(18px) scale(.985);
  }
  to{
    opacity:1;
    transform:translateY(0) scale(1);
  }
}

@keyframes ucMotionBackdropIn{
  from{ opacity:0; }
  to{ opacity:1; }
}

@keyframes ucMotionQuizStep{
  from{
    opacity:0;
    transform:translateY(10px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}

@keyframes ucMotionResultReveal{
  0%{
    opacity:0;
    transform:translateY(18px) scale(.988);
  }
  60%{
    opacity:1;
    transform:translateY(-2px) scale(1.002);
  }
  100%{
    opacity:1;
    transform:translateY(0) scale(1);
  }
}

@keyframes ucMotionSheen{
  0%{
    opacity:0;
    transform:translateX(-65%);
  }
  18%{ opacity:1; }
  100%{
    opacity:0;
    transform:translateX(65%);
  }
}

@keyframes ucMotionSelectPulse{
  0%{
    transform:scale(.985);
    box-shadow:0 0 0 0 rgba(217,164,65,.22);
  }
  70%{
    transform:scale(1.01);
    box-shadow:0 0 0 8px rgba(217,164,65,0);
  }
  100%{
    transform:scale(1);
    box-shadow:0 0 0 0 rgba(217,164,65,0);
  }
}

@keyframes ucMotionCheckoutPanelIn{
  from{
    opacity:0;
    transform:translateY(16px) scale(.988);
  }
  to{
    opacity:1;
    transform:translateY(0) scale(1);
  }
}

@keyframes ucMotionCartItemIn{
  from{
    opacity:0;
    transform:translateY(8px) scale(.992);
  }
  to{
    opacity:1;
    transform:translateY(0) scale(1);
  }
}

@keyframes ucMotionCheckoutStepIn{
  from{
    opacity:0;
    transform:translateY(10px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}

@keyframes ucMotionMobileCenteredDialogIn{
  from{
    opacity:0;
    transform:translate(-50%, calc(-50% + 12px)) scale(.988);
  }
  to{
    opacity:1;
    transform:translate(-50%, -50%) scale(1);
  }
}

@keyframes ucMotionDrawerPanelIn{
  from{
    opacity:.72;
    transform:translateX(18px);
  }
  to{
    opacity:1;
    transform:translateX(0);
  }
}

@keyframes ucMotionNavItemIn{
  from{
    opacity:0;
    transform:translateY(8px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}

@keyframes ucMotionMenuPanelIn{
  from{
    opacity:0;
    transform:translateY(8px) scale(.98);
  }
  to{
    opacity:1;
    transform:translateY(0) scale(1);
  }
}

@media (prefers-reduced-motion: reduce){
  body.home-v2-page *,
  body[data-page-key="fortune-hub-v2"] *,
  body.quiz-page *,
  body.shop-preview-page *,
  body.service-view *{
    animation-duration:1ms !important;
    animation-iteration-count:1 !important;
    scroll-behavior:auto !important;
    transition-duration:1ms !important;
  }
}
