/* Mighty Generation Network — shared motion system */
:root{--mgn-motion-ease:cubic-bezier(.22,1,.36,1);--mgn-motion-fast:.28s;--mgn-motion-base:.72s;--mgn-motion-slow:.9s}

/* Page entrance */
.mgn-motion-page{animation:mgnPageIn .55s var(--mgn-motion-ease) both}
@keyframes mgnPageIn{from{opacity:.01}to{opacity:1}}

/* Section reveal states are applied by assets/motion.js so content remains visible when JS is unavailable. */
.mgn-motion-section{opacity:0;transform:translate3d(0,34px,0);transition:opacity var(--mgn-motion-base) var(--mgn-motion-ease),transform var(--mgn-motion-base) var(--mgn-motion-ease);will-change:opacity,transform}
.mgn-motion-section.mgn-motion-left{transform:translate3d(-38px,0,0)}
.mgn-motion-section.mgn-motion-right{transform:translate3d(38px,0,0)}
.mgn-motion-section.mgn-motion-scale{transform:scale(.965)}
.mgn-motion-section.is-visible{opacity:1;transform:none;will-change:auto}

/* Header */
.mgn-hs-header.mgn-motion-header{animation:mgnHeaderDrop .58s var(--mgn-motion-ease) both}
@keyframes mgnHeaderDrop{from{opacity:0;transform:translateY(-18px)}to{opacity:1;transform:none}}

/* Staggered child reveals */
.mgn-motion-stagger>*{opacity:0;transform:translate3d(0,24px,0);transition:opacity .58s var(--mgn-motion-ease),transform .58s var(--mgn-motion-ease);transition-delay:calc(var(--mgn-stagger,0) * 85ms)}
.mgn-motion-stagger.is-visible>*{opacity:1;transform:none}

/* Existing MGN cards and action items */
.mgn-hs-value-card,.mgn-hs-what-card,.mgn-hs-club-card,.mgn-hs-action-item,.mgn-about-guide-card,.mgn-about-value-card,.mgn-about-programme-card{transition:transform var(--mgn-motion-fast) var(--mgn-motion-ease),box-shadow var(--mgn-motion-fast) ease,border-color var(--mgn-motion-fast) ease}
.mgn-hs-what-card:hover,.mgn-hs-club-card:hover,.mgn-about-guide-card:hover,.mgn-about-programme-card:hover{transform:translateY(-7px);box-shadow:0 18px 38px rgba(16,24,32,.11)}
.mgn-hs-action-item:hover{transform:translateY(-5px) scale(1.025)}

/* Buttons */
.mgn-hs-btn,.mgn-hs-outline-btn,.mgn-hs-donate,.mgn-hs-club-btn,.mgn-hs-news-form button{transition:transform .22s var(--mgn-motion-ease),box-shadow .22s ease,background-color .22s ease,color .22s ease}
.mgn-hs-btn:hover,.mgn-hs-outline-btn:hover,.mgn-hs-donate:hover,.mgn-hs-club-btn:hover,.mgn-hs-news-form button:hover{transform:translateY(-3px)}
.mgn-hs-btn:active,.mgn-hs-outline-btn:active,.mgn-hs-donate:active,.mgn-hs-club-btn:active,.mgn-hs-news-form button:active{transform:translateY(0) scale(.98)}

/* Image motion */
.mgn-hs-what-card>img,.mgn-hs-club-card>img,.mgn-about-hero-media img,.mgn-about-intro-media img{transition:transform .65s var(--mgn-motion-ease),filter .45s ease}
.mgn-hs-what-card:hover>img,.mgn-hs-club-card:hover>img,.mgn-about-hero-media:hover img,.mgn-about-intro-media:hover img{transform:scale(1.035)}

/* Icon motion */
.mgn-hs-value-icon,.mgn-hs-club-icon,.mgn-hs-action-icon,.mgn-about-icon,.mgn-about-safe-icon{transition:transform .32s var(--mgn-motion-ease)}
.mgn-hs-value-card:hover .mgn-hs-value-icon,.mgn-hs-club-card:hover .mgn-hs-club-icon,.mgn-hs-action-item:hover .mgn-hs-action-icon,.mgn-about-value-card:hover .mgn-about-icon,.mgn-about-programme-card:hover .mgn-about-icon,.mgn-about-guide-card:hover .mgn-about-icon{transform:translateY(-3px) rotate(-4deg) scale(1.06)}

/* Hero accents */
.mgn-hs-hero-arcs,.mgn-about-arc{animation:mgnAccentFloat 5.2s ease-in-out infinite alternate}
@keyframes mgnAccentFloat{from{transform:translate3d(0,0,0)}to{transform:translate3d(0,-8px,0)}}

/* Section anchor position with sticky navigation */
.mgn-hs[id],.mgn-about[id]{scroll-margin-top:108px}

@media(max-width:767px){
  .mgn-motion-section{transform:translate3d(0,22px,0);transition-duration:.58s}
  .mgn-motion-section.mgn-motion-left,.mgn-motion-section.mgn-motion-right{transform:translate3d(0,22px,0)}
  .mgn-motion-stagger>*{transform:translate3d(0,16px,0);transition-delay:calc(var(--mgn-stagger,0) * 55ms)}
}

@media(prefers-reduced-motion:reduce){
  .mgn-motion-page,.mgn-hs-header.mgn-motion-header,.mgn-hs-hero-arcs,.mgn-about-arc{animation:none!important}
  .mgn-motion-section,.mgn-motion-stagger>*{opacity:1!important;transform:none!important;transition:none!important}
  .mgn-hs-value-card,.mgn-hs-what-card,.mgn-hs-club-card,.mgn-hs-action-item,.mgn-about-guide-card,.mgn-about-value-card,.mgn-about-programme-card,.mgn-hs-btn,.mgn-hs-outline-btn,.mgn-hs-donate,.mgn-hs-club-btn,.mgn-hs-news-form button,.mgn-hs-what-card>img,.mgn-hs-club-card>img,.mgn-about-hero-media img,.mgn-about-intro-media img,.mgn-hs-value-icon,.mgn-hs-club-icon,.mgn-hs-action-icon,.mgn-about-icon,.mgn-about-safe-icon{transition:none!important;transform:none!important}
}
