/* MADABRIDGE Creative Studio — V5 | Interactions & motion.
   Progressive enhancement: content visible without JavaScript.
   Respecte prefers-reduced-motion, keyboard and touch input. */
:root{--mb-ease:cubic-bezier(.2,.8,.2,1);--mb-motion-ink:#1e2e5c;--mb-motion-green:#4d712f}
.mb-scroll-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:150;pointer-events:none;transform-origin:left center;transform:scaleX(0);background:linear-gradient(90deg,#4d712f 0%,#87aa61 50%,#1e2e5c 100%);box-shadow:0 1px 8px #4d712f35}
.mb-backtop{position:fixed;z-index:95;right:22px;bottom:94px;width:46px;height:46px;border-radius:50%;border:1px solid #d6e4d0;background:#fff;color:#1e2e5c;display:grid;place-items:center;box-shadow:0 11px 32px #1e2e5c28;opacity:0;visibility:hidden;translate:0 14px;transition:opacity .24s,translate .24s,visibility .24s,box-shadow .24s;cursor:pointer;font:700 1.25rem sans-serif}
.mb-backtop.mb-backtop-visible{opacity:1;visibility:visible;translate:0 0}
.mb-backtop:hover{box-shadow:0 14px 32px #1e2e5c3a;color:#4d712f}
.mb-backtop:focus-visible{outline:3px solid #8caf73;outline-offset:3px}
.mb-ripple-host{position:relative;overflow:hidden;isolation:isolate}
.mb-ripple{position:absolute!important;z-index:4;pointer-events:none;display:block;width:24px;height:24px;border-radius:50%;background:rgba(255,255,255,.44);left:0;top:0;translate:-50% -50%;scale:0;opacity:.75;animation:mb-ripple-pulse .62s ease-out both}
.btn.outline .mb-ripple,.btn.white .mb-ripple,.catalog-see .mb-ripple,.catalog-pick .mb-ripple{background:rgba(77,113,47,.19)}
@keyframes mb-ripple-pulse{to{scale:13;opacity:0}}
/* Scroll entrances only activate when motion JS runs and motion is allowed. */
@media (prefers-reduced-motion:no-preference){
 html.mb-motion .mb-reveal{opacity:0;translate:0 29px;transition:opacity .75s var(--mb-ease),translate .75s var(--mb-ease);transition-delay:var(--mb-delay,0ms);will-change:opacity,translate}
 html.mb-motion .mb-reveal.mb-reveal-in{opacity:1;translate:0 0;will-change:auto}
 html.mb-motion .mb-reveal[data-mb-direction="left"]{translate:-27px 0}
 html.mb-motion .mb-reveal[data-mb-direction="right"]{translate:27px 0}
 html.mb-motion .mb-reveal.mb-reveal-in[data-mb-direction]{translate:0 0}
 .site-header{transition:box-shadow .35s ease,background-color .35s ease}
 body.mb-scrolled .site-header{box-shadow:0 9px 24px #1e2e5c18}
 .service-card,.info-card,.catalog-card,.step-card,.intro-catalog-card,.dark-feature{transition:transform .4s var(--mb-ease),box-shadow .4s var(--mb-ease),border-color .3s ease}
 .service-card:hover,.info-card:hover,.catalog-card:hover,.step-card:hover,.intro-catalog-card:hover{transform:translateY(-6px);box-shadow:0 18px 34px #1e2e5c18;border-color:#bfd1b4}
 .service-card:focus-within,.catalog-card:focus-within,.info-card:focus-within{border-color:#8bab76}
 .catalog-visual img,.intro-catalog-card img{transition:transform .6s var(--mb-ease)}
 .catalog-visual:hover img,.catalog-card:focus-within .catalog-visual img,.intro-catalog-card:hover img{transform:scale(1.048)}
 .play-icon{transition:scale .32s var(--mb-ease),background .32s}
 .catalog-visual:hover .play-icon{scale:1.11;background:#e8f4dd}
 .btn{transition:transform .25s var(--mb-ease),box-shadow .25s var(--mb-ease),background .25s ease}
 .btn:hover{transform:translateY(-3px)}
 .hero-board{transform:translate3d(var(--mb-hero-x,0px),calc(var(--mb-hero-y,0px) + var(--mb-scroll-y,0px)),0);transition:transform .18s ease-out;will-change:transform}
 .visual-beauty,.visual-auto,.visual-tech{transition:box-shadow .3s ease,filter .3s ease}
 .hero-visual:hover .visual-beauty,.hero-visual:hover .visual-auto,.hero-visual:hover .visual-tech{box-shadow:0 23px 56px #1e2e5c40}
}
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .service-card,.catalog-card,.info-card,.step-card,.intro-catalog-card{position:relative}
 .service-card::after,.catalog-card::after,.info-card::after,.step-card::after,.intro-catalog-card::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:2;opacity:0;transition:opacity .3s ease;background:radial-gradient(240px circle at var(--mb-x,50%) var(--mb-y,50%),rgba(164,200,133,.12),transparent 70%)}
 .service-card:hover::after,.catalog-card:hover::after,.info-card:hover::after,.step-card:hover::after,.intro-catalog-card:hover::after{opacity:1}
 .mb-cursor-aura{position:fixed;left:0;top:0;z-index:60;width:195px;height:195px;border-radius:50%;pointer-events:none;translate:-50% -50%;opacity:0;transition:opacity .3s ease;background:radial-gradient(circle,rgba(130,172,95,.17),rgba(130,172,95,.07) 28%,transparent 68%)}
 .mb-cursor-aura.mb-cursor-show{opacity:1}
}
@media (pointer:coarse){
 .btn:active,.catalog-pick:active,.catalog-see:active,.filter-btn:active,.v3-mobile-bar a:active{scale:.97;transition:scale .1s ease}
 .mb-backtop{right:16px;bottom:calc(88px + env(safe-area-inset-bottom,0px))}
}
@media(max-width:860px){.mb-backtop{right:16px;bottom:calc(88px + env(safe-area-inset-bottom,0px));width:42px;height:42px}}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto!important}
 .mb-ripple{display:none!important}
 .mb-reveal{opacity:1!important;translate:none!important;transition:none!important}
 .hero-board{transform:none!important;transition:none!important}
 .mb-backtop{transition:none!important}
}
