:root{--bg:#1f1d1a;--surface:#2a2723;--line:#3b372f;--text:#f3ede4;--muted:#a89f91;--accent:#d97757;--g:linear-gradient(135deg,#f4a58a,#d97757 45%,#c6613f);color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;min-width:320px;background:var(--bg);color:var(--text);font:16px/1.55 system-ui,-apple-system,Segoe UI,sans-serif;overflow-x:hidden}body:before{content:"";position:fixed;top:-20%;right:-20%;bottom:-20%;left:-20%;z-index:-1;pointer-events:none;background:radial-gradient(38% 38% at 18% 18%,#d9775530,transparent),radial-gradient(34% 34% at 82% 72%,#c6613f28,transparent),radial-gradient(30% 30% at 70% 10%,#f4a58a14,transparent);animation:drift 22s ease-in-out infinite alternate}h1,h2,h3{font-family:ui-serif,Georgia,serif;font-weight:500;line-height:1.15;margin:0}a{color:inherit;text-decoration:none}button,input{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.wrap{width:min(1180px,100% - 32px);margin-inline:auto}header{position:sticky;top:0;z-index:20;background:var(--bg);border-bottom:1px solid var(--line)}header .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px;height:64px}.brand{font:21px ui-serif,Georgia,serif;white-space:nowrap}.brand b{color:var(--accent)}nav{display:flex;gap:22px;color:var(--muted);font-size:14px;min-width:0;overflow-x:auto}nav a{position:relative;padding:4px 0;transition:color .2s}nav a:hover{color:var(--text)}nav a:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--g);transform:scaleX(0);transform-origin:left;transition:transform .3s}nav a:hover:after{transform:scaleX(1)}.btn{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:10px;border:1px solid var(--line);background:none;cursor:pointer;font-size:14px;white-space:nowrap;transition:transform .2s,border-color .2s,box-shadow .3s,background-position .4s}.btn:hover{border-color:var(--accent);transform:translateY(-2px)}.btn.primary{background:var(--g);background-size:200% 100%;border-color:transparent;color:#1f1d1a;font-weight:600}.btn.primary:hover{background-position:100% 0;box-shadow:0 8px 24px #d977554d}.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:32px;align-items:center;padding:72px 0 40px}.kicker{display:inline-flex;align-items:center;gap:8px;padding:5px 12px;border:1px solid #d9775544;border-radius:99px;background:#d977551a;color:#f1b399;font-size:13px}.pulse{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 10px var(--accent);animation:pulse 1.8s infinite}.hero h1{font-size:clamp(38px,6.5vw,68px);margin:18px 0 0;max-width:13ch;animation:rise .8s both}.hero em{font-style:normal;background:linear-gradient(100deg,#f4a58a,#d97757,#ffb48f,#d97757);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shine 6s linear infinite}.hero p{color:var(--muted);max-width:50ch;margin:16px 0 26px;animation:rise .8s .15s both}.hero .btn{animation:rise .8s .3s both}.hero-art{position:relative;height:340px}.orbit{position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;border:1px dashed #d977554d;border-radius:50%;animation:spin 32s linear infinite}.o1{width:320px;height:320px}.o2{width:210px;height:210px;animation-direction:reverse;animation-duration:22s;border-color:#f4a58a40}.term{position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;width:min(310px,92%);height:max-content;padding:14px 16px;background:#14120fd9;border:1px solid var(--line);border-radius:14px;box-shadow:0 24px 70px #d9775533;animation:float 5s ease-in-out infinite}.tdots{display:flex;gap:6px;margin-bottom:12px}.tdots i{width:9px;height:9px;border-radius:50%;background:var(--line)}.tdots i:first-child{background:var(--accent)}code{font:14px ui-monospace,Menlo,monospace}code b{color:var(--accent);font-weight:500}u{display:inline-block;width:8px;height:1em;margin-left:3px;background:var(--accent);vertical-align:-2px;animation:blink 1s steps(2) infinite}.chip-float{position:absolute;padding:6px 13px;border-radius:99px;background:linear-gradient(135deg,#3d2c23,#2a2723);border:1px solid #d9775566;color:#f1b399;font-size:12px;letter-spacing:.06em;animation:float 4s ease-in-out infinite}.f1{top:8%;left:2%}.f2{top:30%;right:0;animation-delay:-1.3s}.f3{bottom:6%;left:14%;animation-delay:-2.4s}section{padding:32px 0}section h2{font-size:30px;margin-bottom:18px}section h2:after{content:"";display:block;width:24px;height:3px;margin-top:8px;border-radius:3px;background:var(--g);transition:width .7s .2s}.reveal.in h2:after{width:96px}.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s,transform .7s}.reveal.in{opacity:1;transform:none}.meta{color:var(--muted);font-size:14px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.tools{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px}.search{flex:1 1 260px;display:flex;align-items:center;gap:8px;padding:0 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);transition:border-color .2s,box-shadow .3s}.search:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #d9775526}.search input{flex:1;min-width:0;background:none;border:0;padding:10px 0;outline:0}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{padding:8px 14px;border-radius:99px;border:1px solid var(--line);background:none;cursor:pointer;font-size:14px;color:var(--muted);transition:all .25s}.chip:hover{color:var(--text);border-color:var(--accent);transform:translateY(-2px)}.chip[aria-pressed=true]{background:var(--g);border-color:transparent;color:#1f1d1a;box-shadow:0 6px 18px #d977553d}.layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:20px}.panel{background:linear-gradient(160deg,#2f2b26,#262320);border:1px solid var(--line);border-radius:16px;padding:20px}.cal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;gap:8px}.cal-head h3{text-transform:capitalize;font-size:22px}.grid7{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;text-align:center}.wd{color:var(--muted);font-size:12px;padding:4px 0}.day{aspect-ratio:1;min-height:40px;border:1px solid transparent;border-radius:10px;background:none;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:0;transition:transform .2s,background .2s}.day:hover{background:#3a342d;transform:scale(1.1)}.day.today{border-color:#d9775588}.day.sel{background:var(--g);color:#1f1d1a;font-weight:600;box-shadow:0 6px 16px #d977553d}.dots{display:flex;gap:2px;height:5px}.dots i{width:5px;height:5px;border-radius:50%;background:var(--accent);animation:pulse 2s infinite}.sel .dots i{background:#1f1d1a}.list{display:grid;gap:10px;margin-top:12px}.row{display:grid;gap:2px;text-align:left;width:100%;padding:12px;border:1px solid var(--line);border-radius:10px;background:none;cursor:pointer;transition:transform .2s,border-color .2s,background .2s;animation:rise .4s both}.row:hover{border-color:var(--accent);background:#d977551a;transform:translate(4px)}.row small{color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,270px),1fr));gap:16px}.card{position:relative;display:grid;gap:8px;align-content:start;text-align:left;padding:20px 78px 20px 20px;background:linear-gradient(160deg,#322d27,#262320);border:1px solid var(--line);border-radius:16px;cursor:pointer;animation:rise .6s both;transition:transform .3s,box-shadow .3s}.card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;padding:1px;background:var(--g);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .3s;pointer-events:none}.card:hover{transform:translateY(-5px);box-shadow:0 20px 44px #d977552b}.card:hover:before{opacity:1}.card h3{font-size:20px}.date{position:absolute;top:16px;right:16px;display:grid;justify-items:center;padding:6px 10px;border-radius:10px;background:var(--g);font-size:12px;text-transform:uppercase;color:#3a1d11;font-weight:600}.date b{font-size:20px;color:#1f1d1a}.tag{justify-self:start;padding:3px 10px;border-radius:99px;background:linear-gradient(90deg,#4a2c20,#3a2a22);color:#f4a58a;font-size:12px}.cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin:32px 0;background:linear-gradient(120deg,#4a2c2060,#2a2723 60%)}.cta h2{margin-bottom:4px}footer{padding:32px 0 120px;border-top:1px solid var(--line)}footer a,.link{text-decoration:underline}.link{background:none;border:0;color:inherit;cursor:pointer;padding:0}.backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:grid;place-items:center;padding:16px;background:#000b;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fade .25s}.modal{position:relative;width:min(560px,100%);max-height:90dvh;overflow:auto;padding:30px 28px 28px;background:linear-gradient(160deg,#322d27,#262320);border:1px solid var(--line);border-radius:18px;display:grid;gap:12px;animation:pop .4s cubic-bezier(.2,.9,.3,1.2)}.modal:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:var(--g)}.modal h2{font-size:28px;padding-right:44px}.modal p{margin:0}.close{position:absolute;top:16px;right:16px;padding:8px}.note{padding:10px 12px;border-radius:10px;background:#d977551a;border:1px solid #d9775544;color:#f1c3b0;font-size:14px}dl{display:grid;grid-template-columns:auto 1fr;gap:8px 16px;margin:0;font-size:14px}dt{color:var(--muted);display:flex;align-items:center;gap:6px}dd{margin:0}.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}.mascot{position:fixed;left:0;top:0;z-index:60;width:76px;height:76px;pointer-events:none;will-change:transform}.nubi{pointer-events:auto;touch-action:none;cursor:grab;border:0;background:none;padding:0;width:76px;height:76px;display:block;filter:drop-shadow(0 6px 14px #d977554d)}.nubi:active{cursor:grabbing}.nubi .shadow{fill:#0006}.nubi .tip{fill:#ffd2bf;animation:pulse 1.6s infinite}.bob{animation:bob 2.6s ease-in-out infinite;transform-origin:50px 90px}.sleep .bob{animation-duration:5s}.closed,.mh{display:none}.sleep .closed,.happy .mh{display:block}.sleep .open,.happy .mn{display:none}.foot{transform-box:fill-box;transform-origin:center}.walk .f1{animation:step .3s infinite alternate}.walk .f2{animation:step .3s .15s infinite alternate}.party svg{animation:spin 1.2s}.bubble{position:absolute;bottom:calc(100% + 8px);right:0;margin:0;width:max-content;max-width:min(230px,70vw);padding:8px 12px;border-radius:12px 12px 2px;background:var(--surface);border:1px solid #d9775566;font-size:13px;animation:pop .3s}.bubble.left{right:auto;left:0;border-radius:12px 12px 12px 2px}.bubble.below{bottom:auto;top:calc(100% + 8px)}.consent{position:fixed;left:16px;bottom:16px;z-index:35;display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 16px;background:var(--surface);border:1px solid var(--line);border-radius:12px;font-size:14px;max-width:calc(100% - 32px)}@keyframes drift{to{transform:translate(4%,3%) rotate(8deg) scale(1.05)}}@keyframes rise{0%{opacity:0;transform:translateY(18px)}}@keyframes fade{0%{opacity:0}}@keyframes pop{0%{opacity:0;transform:translateY(14px) scale(.94)}}@keyframes sheet{0%{transform:translateY(100%)}}@keyframes float{50%{transform:translateY(-8px)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shine{to{background-position:200% 0}}@keyframes blink{50%{opacity:0}}@keyframes pulse{50%{opacity:.4;transform:scale(1.4)}}@keyframes bob{50%{transform:translateY(-3px) scaleY(1.03)}}@keyframes step{to{transform:translateY(-3px)}}@media(max-width:860px){.layout,.hero{grid-template-columns:1fr}.hero{padding-top:44px}.hero-art{height:260px}.o1{width:250px;height:250px}.o2{width:170px;height:170px}}@media(max-width:480px){.panel{padding:14px}.hero-art{display:none}.backdrop{align-items:end;padding:0}.modal{width:100%;border-radius:18px 18px 0 0;animation:sheet .35s}dl{grid-template-columns:1fr}.consent{bottom:100px}}@media(prefers-reduced-motion:reduce){*,:before,:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}html{scroll-behavior:auto}}.brand img{display:block;transition:transform .4s}.brand:hover img{transform:rotate(-8deg) scale(1.08)}.card{padding:0 0 18px;gap:14px;overflow:hidden}.card .cbody{display:grid;gap:8px;padding:0 20px}.date{top:12px;right:12px}.cover{position:relative;height:130px;display:grid;place-items:center;overflow:hidden;color:#fff;background:var(--cg,linear-gradient(135deg,#f4a58a,#c6613f))}.cover.big{height:170px;margin:-30px -28px 4px}.cover img{width:100%;height:100%;object-fit:cover}.cover:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(#ffffff2e 1px,transparent 1.5px);background-size:14px 14px;-webkit-mask-image:linear-gradient(180deg,#000,transparent);mask-image:linear-gradient(180deg,#000,transparent)}.cover svg{position:relative;z-index:1;filter:drop-shadow(0 6px 14px #0004);transition:transform .5s}.card:hover .cover svg{transform:scale(1.15) rotate(-6deg)}.blob{position:absolute;border-radius:50%;animation:float 6s ease-in-out infinite}.b1{width:110px;height:110px;left:calc(var(--x) - 55px);top:calc(var(--y) - 55px);background:#ffffff26}.b2{width:70px;height:70px;right:calc(var(--y) - 35px);bottom:-20px;background:#0000002e;animation-delay:-2s}.cv-IA{--cg:linear-gradient(135deg,#f6b49b,#c6613f)}.cv-Desarrollo{--cg:linear-gradient(135deg,#f6c181,#d97757)}.cv-Startups{--cg:linear-gradient(135deg,#ffb48f,#9a4a2c)}.cv-Gaming{--cg:linear-gradient(135deg,#e58aa0,#c6613f)}.cv-Ciberseguridad{--cg:linear-gradient(135deg,#b5603f,#3a1f16)}.cv-Otros{--cg:linear-gradient(135deg,#d2ad88,#7a4a32)}.est{position:absolute;left:12px;bottom:10px;z-index:2;padding:3px 10px;border-radius:99px;background:#1f1d1acc;border:1px dashed #f4a58a99;color:#f4c3ad;font-size:11px}.close{background:#1f1d1acc;z-index:3}footer{padding:40px 0 0;margin-top:24px}.foot{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:28px}.fbrand{display:grid;gap:12px;align-content:start;max-width:34ch}.fbrand img{border-radius:12px}.fbrand p{margin:0;color:var(--muted);font-size:14px}.fbrand b{color:var(--text);font-weight:600}.fcol{display:grid;gap:8px;align-content:start;font-size:14px;color:var(--muted)}.fcol strong{color:var(--text);margin-bottom:2px}.fcol a,.fcol .link{width:fit-content;text-align:left;text-decoration:none;transition:color .2s,transform .2s}.fcol a:hover,.fcol .link:hover{color:var(--accent);transform:translate(3px)}.fbottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;margin-top:32px;padding:18px 0 110px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}.cookiebar{position:fixed;left:50%;bottom:16px;transform:translate(-50%);z-index:55;width:min(780px,100% - 32px);display:grid;gap:12px;padding:18px 20px;background:linear-gradient(160deg,#322d27,#262320);border:1px solid #d9775566;border-radius:16px;box-shadow:0 20px 60px #000a;animation:up .5s both}.cookiebar p{margin:0;font-size:14px;color:var(--muted)}.cookiebar strong{color:var(--text)}.cbtns{display:flex;flex-wrap:wrap;gap:10px}.cbtns .btn{flex:1 1 130px;justify-content:center}.legal h2{font-size:26px}.legal h3{font:600 15px system-ui,sans-serif;margin:8px 0 2px}.legal p,.legal li{font-size:14px;color:var(--muted)}.legal ul{margin:0;padding-left:18px;display:grid;gap:4px}.switch{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--line);border-radius:10px;font-size:14px}.switch small{color:var(--muted)}.switch input{width:20px;height:20px;accent-color:var(--accent)}@keyframes up{0%{opacity:0;transform:translate(-50%,24px)}}@media(max-width:860px){.foot{grid-template-columns:1fr 1fr}.fbrand{grid-column:1/-1}}@media(max-width:480px){.foot{grid-template-columns:1fr}.cover.big{margin:-20px -20px 4px}}.tail{transform-box:fill-box;transform-origin:right center;animation:wag 1.2s ease-in-out infinite}.walk .tail{animation-duration:.3s}.sleep .tail{animation-duration:4s}.fin{transform-box:fill-box;transform-origin:center bottom;animation:flap 1s ease-in-out infinite}.walk .fin{animation-duration:.35s}.tip{transform-box:fill-box;transform-origin:center}.zz circle{fill:none;stroke:#ffd2bf;stroke-width:1.2;animation:bubble 2.4s infinite}.zz circle:nth-child(2){animation-delay:.6s}.zz circle:nth-child(3){animation-delay:1.2s}@keyframes wag{0%,to{transform:rotate(-13deg)}50%{transform:rotate(13deg)}}@keyframes flap{50%{transform:scaleY(.78)}}@keyframes bubble{0%{transform:translateY(8px);opacity:0}50%{opacity:1}to{transform:translateY(-8px);opacity:0}}.hy{display:none}.happy .hy{display:block}.happy .open{display:none}.open{filter:drop-shadow(0 0 3px #ff9e6b)}.eye{transform-box:fill-box;transform-origin:center;animation:blink2 4.5s infinite}.jet{transform-box:fill-box;transform-origin:center top;animation:jet .25s infinite alternate}.walk .jet{animation-duration:.1s}.sleep .jet{opacity:.25;animation-duration:1.4s}.hand{animation:bob 2s ease-in-out infinite}.h2{animation-delay:-1s}.zz text{fill:#ffd2bf;font:700 9px ui-monospace,monospace;animation:bubble 2.4s infinite}.zz text:nth-child(2){animation-delay:.6s}.zz text:nth-child(3){animation-delay:1.2s}.party svg{animation:glitch 1.2s steps(2)}@keyframes blink2{0%,94%,to{transform:scaleY(1)}97%{transform:scaleY(.1)}}@keyframes jet{to{transform:scaleY(1.4);opacity:.7}}@keyframes glitch{0%,40%,80%{filter:drop-shadow(-3px 0 #f0f) drop-shadow(3px 0 #0ff);transform:translate(2px,-1px)}20%,60%{filter:drop-shadow(3px 0 #f0f) drop-shadow(-3px 0 #0ff);transform:translate(-2px,1px)}to{filter:none;transform:none}}
