/* Feedzback visual stabilization — V21.1 */

/* Content stays readable when JavaScript is absent or delayed. */
.reveal{opacity:1;transform:none}
.fz-motion-ready .reveal{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease}
.fz-motion-ready .reveal.visible{opacity:1;transform:none}

/* The old global .step component must not affect the small process label. */
.process-card>.step{display:block;min-height:0;padding:0;border:0;background:transparent;margin-top:auto;flex:none}

/* A more balanced first screen. */
body.home .hero{min-height:760px;padding-top:132px;padding-bottom:76px}
body.home .hero-grid{min-height:550px}

/* Footer components are deliberately isolated from legacy footer rules. */
.footer-brand-lockup{display:block}
.footer-brand-lockup img{display:block;width:180px;height:auto}
.footer-brand-lockup p{max-width:440px;margin-top:17px;color:rgba(255,255,255,.52)}
.footer-ecosystem-grid{display:grid!important;grid-template-columns:1fr 1fr;gap:9px;align-content:start;justify-content:stretch!important}
.footer-ecosystem-grid>h3{grid-column:1/-1}
.footer-ecosystem-grid>a{position:relative;display:flex!important;flex-direction:column;min-height:108px;margin:0!important;padding:14px 32px 14px 14px!important;border:1px solid rgba(255,255,255,.1)!important;border-radius:14px;background:rgba(255,255,255,.035);transition:background .2s ease,border-color .2s ease,transform .2s ease}
.footer-ecosystem-grid>a:hover{transform:translateY(-2px);background:rgba(255,255,255,.07);border-color:rgba(250,104,20,.42)!important}
.footer-ecosystem-grid>a.is-featured{border-color:rgba(250,104,20,.42)!important;background:rgba(250,104,20,.08)}
.footer-ecosystem-grid a b{display:block;color:#fff;font-size:.88rem}
.footer-ecosystem-grid a span{display:block;margin-top:5px;color:rgba(255,255,255,.5);font-size:.73rem;line-height:1.35}
.footer-ecosystem-grid a i{position:absolute;right:13px;top:12px;color:var(--orange);font-style:normal}

/* Homepage ecosystem cards: clearer hierarchy and stable alignment. */
.eco-card{min-height:220px;padding:26px}
.eco-card b{font-size:1.28rem}
.eco-card span{line-height:1.5}
.eco-card i{padding-top:24px;font-weight:600}

/* Robust mobile menu without inline positioning. */
@media(max-width:950px){
  .nav-links.is-open{display:flex;position:absolute;z-index:60;top:76px;left:0;right:0;padding:22px;background:#1a1b1f;border:1px solid rgba(255,255,255,.1);border-radius:18px;box-shadow:0 24px 60px rgba(0,0,0,.34);flex-direction:column;align-items:flex-start;gap:14px}
  .nav-links.is-open .nav-explore,.nav-links.is-open>a{width:100%}
  .footer-ecosystem-grid{grid-column:1/-1}
}

@media(max-width:680px){
  body.home .hero{min-height:auto;padding-top:82px;padding-bottom:72px}
  body.home .hero-grid{min-height:0;gap:56px}
  .world-board{min-height:340px;padding:22px}
  .world-nodes{margin-top:34px;grid-template-columns:1fr}
  .world-note{position:static;margin-top:20px}
  .brand-story-art{min-height:300px}
  .eco-card{min-height:180px}
  .footer-ecosystem-grid{grid-template-columns:1fr}
  .footer-ecosystem-grid>h3{grid-column:auto}
}

@media(prefers-reduced-motion:reduce){
  .fz-motion-ready .reveal{opacity:1;transform:none;transition:none}
}
