/* Fase 5 — móvil, navegación y movimiento progresivo */
:root{--dock-height:76px;--ease-out:cubic-bezier(.22,1,.36,1)}
body{overflow-wrap:break-word}main{min-width:0}.skip-link{position:fixed;top:12px;left:12px;z-index:100;background:var(--deep);color:white;padding:12px 20px;transform:translateY(-150%)}.skip-link:focus{transform:none}.mobile-dock{display:none}.back-top[hidden]{display:none}.back-top{position:fixed;right:20px;bottom:24px;z-index:18;display:grid;place-items:center;width:48px;height:48px;background:var(--deep);color:white;border-radius:50%;box-shadow:0 6px 25px #06316630;font-size:1.4rem}.motion-control{background:var(--pale);border:1px solid var(--line);border-radius:12px;color:var(--deep);padding:12px 16px;min-height:48px;font-size:.8rem}.panel,.list-card,.product-card,.resource-card,.world,.agent-card{border-radius:16px}.form input,.form select,.form textarea{border-radius:12px}.button{border-radius:12px;position:relative;isolation:isolate;overflow:hidden}.button:active{transform:scale(.97)}.button:after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(100deg,transparent 20%,#ffffff30 50%,transparent 80%);transform:translateX(-120%)}.button:hover:after,.button:focus-visible:after{animation:button-light .65s var(--ease-out)}.product-card,.resource-card,.agent-card{transition:transform .3s var(--ease-out),box-shadow .3s}.resource-card:hover,.agent-card:hover{transform:translateY(-4px);box-shadow:0 12px 35px #06316612}.stats-grid>div{background:linear-gradient(135deg,#eef5ff,#f8fbff);border-radius:14px;min-width:0}.stats-grid strong{overflow-wrap:anywhere}.notice{animation:notice-in .45s var(--ease-out)}.hero-media img{animation:hero-breathe 12s var(--ease-out) both}.hero-buttons .button:nth-child(2){animation:rise .9s .15s both}.reveal{animation:rise .7s var(--ease-out) both}.reveal:nth-child(2n){animation-delay:.06s}.reveal:nth-child(3n){animation-delay:.12s}.eyebrow{overflow-wrap:anywhere}.panel,.list-card,.product-body,.agent-card{min-width:0}.list-card a:not(.button),.panel a:not(.button){overflow-wrap:anywhere}.table-wrap{overscroll-behavior-x:contain}.table-wrap:focus-visible{outline:3px solid var(--gold)}
@keyframes button-light{to{transform:translateX(120%)}}@keyframes hero-breathe{from{transform:scale(1.055)}to{transform:scale(1)}}@keyframes notice-in{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}@keyframes dock-in{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
@media(max-width:900px){
 body{padding-bottom:calc(var(--dock-height) + env(safe-area-inset-bottom,0px) + 16px)}
 .header{position:sticky;top:0;min-height:80px;z-index:30;box-shadow:0 3px 18px #0631660c;background:#fffffff5;backdrop-filter:blur(14px);padding:12px 5%;flex-wrap:nowrap}
 .menu-toggle{border-radius:12px;min-height:48px;min-width:64px;display:block;flex-shrink:0}
 .mobile-dock{position:fixed;left:max(12px,env(safe-area-inset-left,0px));right:max(12px,env(safe-area-inset-right,0px));bottom:calc(10px + env(safe-area-inset-bottom,0px));z-index:40;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));padding:8px 5px;background:#fffffff5;border:1px solid #d7e4f3;border-radius:23px;box-shadow:0 10px 40px #06316626;backdrop-filter:blur(18px);animation:dock-in .55s var(--ease-out)}
 .dock-link{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:5px;min-height:58px;min-width:0;color:#60748d;border-radius:17px;font-size:.65rem;font-weight:600;line-height:1.3;transition:background .25s,color .25s,transform .25s;position:relative;text-align:center;padding:4px 1px}
 .dock-link.is-active{color:var(--blue);background:linear-gradient(135deg,#e4efff,#f2f7ff)}.dock-link.is-active:after{content:'';width:15px;height:3px;position:absolute;bottom:1px;border-radius:4px;background:var(--gold)}.dock-link:active{transform:scale(.93)}.dock-icon{position:relative;display:grid;place-items:center}.dock-count{position:absolute;right:-10px;top:-6px;min-width:18px;padding:1px 4px;border-radius:20px;background:var(--blue);color:white;font-size:.6rem;border:2px solid white}.back-top{bottom:calc(var(--dock-height) + env(safe-area-inset-bottom,0px) + 28px);right:18px}
 .nav{max-height:calc(100dvh - 190px - env(safe-area-inset-bottom,0px));overflow-y:auto;border-radius:0 0 22px 22px;border-bottom:1px solid var(--line);gap:6px;padding:16px 5% 22px}.nav a{min-height:48px;display:flex;align-items:center;width:100%;padding:12px 16px;border-radius:12px;font-size:.95rem}.nav a:hover,.nav a.active{background:var(--pale)}.nav a:after{display:none}.nav.open{animation:notice-in .25s var(--ease-out)}.nav .motion-control{margin-top:12px;width:100%}
 .header-actions{display:none}.brand img{max-width:190px;max-height:52px}.brand{min-width:0}.header .brand{flex-shrink:1}.topline{padding:7px 5%}.topline span:last-child{display:none}
 .tabs{flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;padding:5px 2px 12px;gap:8px;max-width:100%;scrollbar-width:thin}.tabs a{white-space:nowrap;flex-shrink:0;min-height:46px;border-radius:12px;scroll-snap-align:start}.tabs a.active{box-shadow:0 6px 15px #0452bc20}
 .admin-split,.detail-layout,.cart-layout,.result-layout,.account-grid{grid-template-columns:1fr}.agents-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form .button{align-self:stretch;min-height:50px}.form{gap:18px}.form label{line-height:1.5}.form input,.form select{min-height:50px;font-size:16px}.form textarea{font-size:16px;min-height:130px}.section-head{padding-top:32px}#main-content{scroll-margin-top:100px}html{scroll-padding-top:100px}
}
@media(max-width:600px){
 .container{width:92%}.header{gap:12px}.brand img{max-width:174px}.topline{justify-content:center}.header-actions{display:none}.hero{min-height:0}.hero-content{padding:40px 0 44px;width:90%}.hero h1{font-size:clamp(3.1rem,12.5vw,4.5rem);margin-top:20px}.hero p{max-width:95%}.hero-buttons .button{min-height:52px}.hero-caption{max-width:95%}.hero .eyebrow{letter-spacing:.1em}.hero-wash{background:linear-gradient(100deg,#03244cee,#032c5dc7 60%,#00264c88)}
 .section{padding:42px 0}.section-head h1{font-size:clamp(2.2rem,9vw,3rem)}.section-head p{font-size:.95rem}.panel,.list-card{padding:20px 17px}.panel h2{font-size:1.75rem}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:24px}.stats-grid>div{padding:16px 12px}.stats-grid>div:last-child:nth-child(odd){grid-column:1/-1}.stats-grid span{font-size:.75rem;line-height:1.5;margin-bottom:8px}.stats-grid strong{font-size:clamp(1.2rem,5vw,1.65rem)}.agents-grid{grid-template-columns:1fr}.world-grid{gap:10px}.world{min-height:295px;padding:18px 14px}.world h3{font-size:1.8rem}.world p{line-height:1.6}.community-feature{padding:26px 21px}.community-type h2{font-size:3rem}.mandadito-banner{padding:27px 23px}.mandadito-banner .button{width:100%}.product-body{padding:22px 18px}.product-bottom{flex-wrap:wrap}.product-card>img{height:240px}.footer{margin-top:42px;padding-bottom:32px}.footer-top{gap:26px 18px}.table-wrap{box-shadow:inset -8px 0 12px #06316608}.mobile-dock{left:8px;right:8px}.dock-link{font-size:.62rem}.filter-bar{padding:17px}.form input[type=file]{max-width:100%;padding:11px 8px;font-size:.85rem}.check{min-height:44px}.check input{width:22px;height:22px;min-height:22px}
}
@media(max-width:359px){.brand img{max-width:145px}.header{padding:10px 4%}.menu-toggle{min-width:60px;padding:8px}.dock-link{font-size:.58rem}.world-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:1fr}.community-type h2{font-size:2.7rem}}
body.motion-paused *,body.motion-paused *:before,body.motion-paused *:after{animation:none!important;transition:none!important}body.motion-paused{scroll-behavior:auto}html:has(body.motion-paused){scroll-behavior:auto}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

.mobile-nav-extra{display:none!important}.nav .motion-control{display:none}.footer>.motion-control{margin-bottom:24px}.motion-control{display:none}.has-js .motion-control{display:inline-flex;align-items:center;justify-content:center}.has-js .nav .motion-control{display:none}
@media(max-width:900px){.nav .mobile-nav-extra{display:flex!important}.has-js .nav .motion-control{display:flex}body:not(.has-js) .header{flex-wrap:wrap}body:not(.has-js) .nav{display:flex;position:static;width:100%;max-height:none}body:not(.has-js) .menu-toggle{display:none}}
