/* ==============================================================
   FAAYAH · Motion — fade, slide, scale, image reveal. Nothing else.
   ============================================================== */
@keyframes fu{from{opacity:0;transform:translateY(20px);}to{opacity:1;transform:none;}}
@keyframes fi{from{opacity:0;}to{opacity:1;}}
@keyframes dr{to{opacity:1;transform:none;}}
@keyframes spin{to{transform:rotate(360deg);}}

/* Reveal */
[data-r]{opacity:0;transform:translateY(22px);transition:opacity 1s var(--out),transform 1s var(--out);}
[data-r].in{opacity:1;transform:none;}
[data-r="fade"]{transform:none;}
[data-r="left"]{transform:translateX(-26px);}
[data-r="right"]{transform:translateX(26px);}
[data-r="scale"]{transform:scale(.97);}
[data-r="left"].in,[data-r="right"].in,[data-r="scale"].in{transform:none;}

/* Stagger */
[data-s]>*{opacity:0;transform:translateY(18px);transition:opacity .9s var(--out),transform .9s var(--out);}
[data-s].in>*{opacity:1;transform:none;}
[data-s].in>*:nth-child(1){transition-delay:.03s}
[data-s].in>*:nth-child(2){transition-delay:.09s}
[data-s].in>*:nth-child(3){transition-delay:.15s}
[data-s].in>*:nth-child(4){transition-delay:.21s}
[data-s].in>*:nth-child(5){transition-delay:.27s}
[data-s].in>*:nth-child(6){transition-delay:.33s}
[data-s].in>*:nth-child(7){transition-delay:.39s}
[data-s].in>*:nth-child(8){transition-delay:.45s}
[data-s].in>*:nth-child(9){transition-delay:.51s}
[data-s].in>*:nth-child(10){transition-delay:.57s}
[data-s].in>*:nth-child(11){transition-delay:.63s}
[data-s].in>*:nth-child(n+12){transition-delay:.68s}

/* Image reveal — slow scale settle */
[data-img]{overflow:hidden;}
[data-img] img{transform:scale(1.07);opacity:0;transition:transform 1.6s var(--out),opacity 1.1s var(--ease);}
[data-img].in img{transform:scale(1);opacity:1;}

/* Hero entrance */
.hero__in>*,.phero__in>*{opacity:0;animation:fu 1.05s var(--out) forwards;}
.hero__in>*:nth-child(1),.phero__in>*:nth-child(1){animation-delay:.2s;}
.hero__in>*:nth-child(2),.phero__in>*:nth-child(2){animation-delay:.32s;}
.hero__in>*:nth-child(3),.phero__in>*:nth-child(3){animation-delay:.44s;}
.hero__in>*:nth-child(4),.phero__in>*:nth-child(4){animation-delay:.56s;}
.hero__bg img{transform:scale(1.06);animation:heroSettle 2.4s var(--out) forwards;}
@keyframes heroSettle{to{transform:scale(1);}}

/* Counters */
.count{font-variant-numeric:tabular-nums;}

/* Loading */
.spinner{width:12px;height:12px;border:1.5px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin .7s linear infinite;display:none;}
.loading .spinner{display:block;}
.loading .ar{display:none;}

/* Scroll progress */
.prog{position:fixed;top:0;left:0;height:2px;width:100%;transform:scaleX(0);transform-origin:left;background:var(--accent);z-index:101;transition:transform .1s linear;}

@media (prefers-reduced-motion:reduce){
  .mq__t{animation:none !important;}
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important;}
  [data-r],[data-s]>*,.hero__in>*,.phero__in>*{opacity:1 !important;transform:none !important;}
  [data-img] img,.hero__bg img{opacity:1 !important;transform:none !important;}
}
