:root{--accent:#e8ff47;--accent-dark:#b8cc00;--bg:#0d0d0d;--surface:#161616;--surface2:#1e1e1e;--text:#f0f0f0;--muted:#888;--border:#2a2a2a}.nav-links a:hover,.nav-links a.active-link{color:var(--accent)}@keyframes pulse{0%,to{box-shadow:0 0 8px #8af9}50%{box-shadow:0 0 16px #88aaffe6}}.exp-list{flex-direction:column;gap:.65rem;display:flex}.exp-item{border:1px solid var(--border);background:var(--surface);border-radius:8px;flex-direction:column;gap:.75rem;padding:1.6rem 1.8rem;transition:border-color .25s,background .25s,transform .25s cubic-bezier(.16,1,.3,1);display:flex;position:relative;overflow:hidden}.exp-item:before{content:"";background:var(--border);border-radius:3px 0 0 3px;width:3px;transition:background .25s;position:absolute;top:0;bottom:0;left:0}.exp-item:hover:before{background:var(--accent)}.exp-date{color:var(--muted);border:1px solid var(--border);letter-spacing:.06em;white-space:nowrap;background:#ffffff0a;border-radius:3px;align-self:flex-start;align-items:center;width:max-content;padding:.22rem .85rem .22rem .65rem;font-family:DM Mono,monospace;font-size:.68rem;transition:border-color .25s,color .25s;display:inline-flex}.exp-item:hover .exp-date{color:var(--accent);border-color:#e8ff4766}.exp-content h3{letter-spacing:-.01em;margin-bottom:.3rem;font-size:1.05rem;font-weight:700;line-height:1.2}.exp-company{color:var(--accent);letter-spacing:.02em;margin-bottom:.65rem;font-family:DM Mono,monospace;font-size:.75rem}@keyframes modalIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (width<=900px){.hamburger{display:flex}.nav-links{top:var(--nav-h,64px);border-bottom:1px solid var(--border);opacity:0;pointer-events:none;z-index:150;background:#0d0d0dfa;flex-direction:column;gap:0;padding:1rem 1.5rem 1.5rem;transition:transform .3s,opacity .3s;position:fixed;left:0;right:0;transform:translateY(-110%)}.nav-links.nav-open{opacity:1!important;pointer-events:all!important;transform:translateY(0)!important}.nav-links li{border-bottom:1px solid #111;width:100%;padding:.65rem 0}.nav-links li:last-child{border-bottom:none}.nav-links a{color:var(--text);font-size:.95rem;display:block}}@media (width<=640px){nav{padding:.9rem 1.25rem}}.reveal{opacity:0;transition:opacity .55s cubic-bezier(.16,1,.3,1),transform .55s cubic-bezier(.16,1,.3,1);transform:translateY(22px)}.hero-photo-frame{transition:transform .35s cubic-bezier(.16,1,.3,1)}.btn{transition:background .2s,color .2s,border-color .2s,transform .2s cubic-bezier(.16,1,.3,1),box-shadow .2s!important}.skill-item,.proj-card,.exp-item{transition:border-color .2s,background .2s,transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s}.skill-item:hover,.proj-card:hover,.exp-item:hover{box-shadow:inset 3px 0 0 var(--accent), 0 8px 32px #0006;background:#e8ff4706;transform:translate(6px);border-bottom-color:#e8ff478c!important}.hero-tag{min-height:1.4em}.nav-open{opacity:1!important;pointer-events:all!important;transform:translateY(0)!important}@media (width<=480px){.corner{display:none}}.scroll-top-btn{z-index:200;background:var(--surface);border:1px solid var(--border);width:44px;height:44px;color:var(--muted);font-size:1.1rem;font-family:var(--font-mono);cursor:pointer;opacity:0;pointer-events:none;border-radius:50%;justify-content:center;align-items:center;transition:opacity .25s,transform .25s cubic-bezier(.16,1,.3,1),border-color .2s,color .2s,background .2s;display:flex;position:fixed;bottom:2rem;right:2rem;transform:translateY(12px)scale(.88)}.scroll-top-btn--visible{opacity:1;pointer-events:all;transform:translateY(0)scale(1)}.scroll-top-btn:hover{color:var(--accent);background:#e8ff470a;border-color:#e8ff4780;box-shadow:0 0 18px #e8ff4726}@media (width<=480px){.scroll-top-btn{width:40px;height:40px;bottom:1.2rem;right:1.2rem}}@media (width<=600px){.form-row{grid-template-columns:1fr}}@media (width<=900px){nav{padding:1rem 1.5rem;position:fixed;overflow:visible}.hamburger{z-index:200;position:relative;display:flex!important}.nav-links{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:150;border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:#0d0d0dfa;flex-direction:column;align-items:stretch;gap:0;padding:.5rem 0 1rem;display:none;position:absolute;top:100%;left:0;right:0;box-shadow:0 12px 40px #000000b3}.nav-links.open{display:flex}.nav-links li{width:100%}.nav-links a,.nav-links a[href]{width:100%;color:var(--text);text-align:left;border-bottom:1px solid var(--border);letter-spacing:.08em;padding:1rem 2rem;font-size:1.1rem;text-decoration:none;transition:background .15s,color .15s;display:block}.nav-links li:last-child a{border-bottom:none}.nav-links a:hover,.nav-links a.active-link{background:var(--surface);color:var(--accent)}.nav-links a:after{display:none!important}.hero{text-align:center;grid-template-columns:1fr;padding:7rem 2rem 4rem}.hero-photo-wrap{order:-1}.hero-photo-frame{width:200px;height:240px}.hero-tag{justify-content:center}.hero-btns{flex-wrap:wrap;justify-content:center}.hero-desc{max-width:520px;margin:0 auto 2.5rem}.about-grid{grid-template-columns:1fr;gap:2rem}section,#portfolio-asignaturas{padding:4rem 2rem}}@media (width<=640px){nav{padding:.9rem 1.25rem}.hero{padding:6rem 1.25rem 3rem}.hero-photo-frame{width:160px;height:200px}.hero-btns{flex-direction:column;align-items:center;gap:.7rem}.hero-btns .btn{text-align:center;justify-content:center;width:100%;max-width:280px}section{padding:3.5rem 1.25rem}.exp-item{grid-template-columns:1fr;gap:.4rem}.contact-wrap{padding:2.5rem 1.25rem}.projects-grid{grid-template-columns:1fr!important}}#anim-loader{background:var(--bg,#0d0d0d);z-index:9000;transform-origin:100%;pointer-events:none;transition:transform .72s cubic-bezier(.77,0,.18,1),opacity .15s .68s;position:fixed;inset:0}#anim-loader.anim-loader-out{opacity:0;transform:scaleX(0)}@keyframes heroFadeUp{to{opacity:1;transform:translateY(0)}}@keyframes heroFadeRight{0%{opacity:0;transform:translate(44px)}to{opacity:1;transform:translate(0)}}.hero-glow{pointer-events:none;will-change:transform;background:radial-gradient(circle,#e8ff470e 0%,#0000 62%);border-radius:50%;width:700px;height:700px;animation:14s ease-in-out infinite alternate blobDrift;position:absolute;top:-120px;left:-80px}.hero-glow:after{content:"";background:radial-gradient(circle,#88aaff0a 0%,#0000 65%);border-radius:50%;width:500px;height:500px;animation:18s ease-in-out infinite alternate-reverse blobDrift;position:absolute;top:40%;right:-200px}@keyframes blobDrift{0%{transform:translate(0)scale(1)}33%{transform:translate(30px,-20px)scale(1.04)}66%{transform:translate(-15px,25px)scale(.97)}to{transform:translate(20px,-10px)scale(1.02)}}.reveal{opacity:0;transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1);transition-delay:var(--anim-delay,0s);will-change:opacity, transform;transform:translateY(24px)}.reveal.visible{opacity:1;transform:translateY(0)}.reveal.from-left{transform:translate(-28px)}.reveal.from-right{transform:translate(28px)}.reveal.from-left.visible,.reveal.from-right.visible{transform:none}.reveal.scale-in{transform:translateY(16px)scale(.97)}.reveal.scale-in.visible{transform:translateY(0)scale(1)}.reveal-clip{opacity:0;clip-path:inset(0 0 100%);transition:opacity 10ms linear,clip-path .75s cubic-bezier(.16,1,.3,1);transition-delay:var(--anim-delay,0s);will-change:clip-path}.reveal-clip.visible{opacity:1;clip-path:inset(0 0 0%)}.reveal-clip.wipe-right{clip-path:inset(0 100% 0 0)}.reveal-clip.wipe-right.visible{clip-path:inset(0 0% 0 0)}.reveal:first-child{--anim-delay:0s}.reveal:nth-child(2){--anim-delay:80ms}.reveal:nth-child(3){--anim-delay:.16s}.reveal:nth-child(4){--anim-delay:.24s}.reveal:nth-child(5){--anim-delay:.32s}.reveal:nth-child(6){--anim-delay:.4s}.reveal:nth-child(7){--anim-delay:.48s}.reveal:nth-child(8){--anim-delay:.56s}.reveal:nth-child(9){--anim-delay:.64s}.reveal:nth-child(n+10){--anim-delay:.7s}.skills-grid .reveal:nth-child(n){--anim-delay:calc(var(--skill-i,0) * 55ms)}.section-title{display:inline-block;position:relative}.section-title:after{content:"";background:var(--accent,#e8ff47);width:0;height:2px;transition:width .85s cubic-bezier(.16,1,.3,1) .2s;position:absolute;bottom:-5px;left:0;box-shadow:0 0 10px #e8ff4766}.section-title.title-line-drawn:after{width:100%}.parallax{transform:translateY(var(--parallax-y,0px));will-change:transform;transition:transform 50ms linear}.parallax-slow{--parallax-speed:.08}.parallax-med{--parallax-speed:.14}.parallax-fast{--parallax-speed:.22}.project-card,.card{position:relative;overflow:hidden;transition:transform .32s cubic-bezier(.16,1,.3,1),border-color .32s,box-shadow .32s!important}.project-card:after,.card:after{content:"";background:radial-gradient(circle at var(--mouse-x,50%) var(--mouse-y,50%), #e8ff470e 0%, transparent 55%);opacity:0;pointer-events:none;border-radius:inherit;transition:opacity .3s;position:absolute;inset:0}.project-card:hover:after,.card:hover:after{opacity:1}.project-card:hover,.card:hover{border-color:#e8ff4761!important;transform:translateY(-8px)!important;box-shadow:0 0 0 1px #e8ff4714,0 14px 48px #0009!important}.project-card:before,.card:before{box-shadow:0 0 10px #e8ff478c;background:var(--accent,#e8ff47)!important;height:2px!important;transition:transform .4s cubic-bezier(.16,1,.3,1)!important}.exp-item{transition:transform .28s cubic-bezier(.16,1,.3,1),border-color .28s,background .28s!important}.exp-item:hover{background:#e8ff4706!important;border-color:#e8ff4752!important;transform:translate(8px)!important}.skill-tag,.project-tag{transition:color .22s,border-color .22s,background .22s,transform .22s cubic-bezier(.16,1,.3,1)!important}.skill-tag:hover,.project-tag:hover{color:var(--accent,#e8ff47)!important;background:#e8ff4712!important;border-color:#e8ff4780!important;transform:translateY(-3px)!important}.cert-badge{transition:transform .28s cubic-bezier(.16,1,.3,1),box-shadow .28s,border-color .28s!important}.cert-badge:hover{border-color:#e8ff47a6!important;transform:translateY(-4px)!important;box-shadow:0 8px 24px #00000080,0 0 14px #e8ff4724!important}.btn{position:relative;overflow:hidden;transition:transform .25s cubic-bezier(.16,1,.3,1),background .22s,color .22s,border-color .22s,box-shadow .22s!important}.btn:after{content:"";border-radius:inherit;opacity:1;pointer-events:none;background:#ffffff1a;transition:transform .4s,opacity .4s;position:absolute;inset:0;transform:scale(0)}.btn.btn-clicked:after{opacity:0;transform:scale(2.5)}.btn:hover{transform:translateY(-3px)!important}.btn:active{transition-duration:80ms!important;transform:translateY(0)scale(.97)!important}.btn-primary:hover{box-shadow:0 6px 24px #e8ff4752!important}.btn-outline:hover{box-shadow:0 4px 18px #00000073!important}.btn-accent-outline:hover{box-shadow:0 6px 22px #e8ff4747!important}.nav-links a{position:relative;transition:color .22s!important}.nav-links a:after{content:"";background:var(--accent,#e8ff47);width:0;height:1.5px;transition:width .3s cubic-bezier(.16,1,.3,1);position:absolute;bottom:-3px;left:0;box-shadow:0 0 7px #e8ff478c}.nav-links a:hover:after,.nav-links a.active-link:after{width:100%}.project-link{transition:color .22s,transform .22s cubic-bezier(.16,1,.3,1)!important}.project-link:hover{color:var(--accent,#e8ff47)!important;transform:translate(4px)!important}.hero-photo-frame{animation:3.5s ease-in-out infinite alternate photoGlow;transition:transform .4s cubic-bezier(.16,1,.3,1)!important}@keyframes photoGlow{0%{box-shadow:4px 4px 0 var(--accent,#e8ff47)}to{box-shadow:7px 7px 0 var(--accent,#e8ff47), 0 0 38px #e8ff471a}}nav{transition:padding .35s,background-color .35s,box-shadow .35s!important}nav.nav-compact{background:#0d0d0df7!important;padding-top:.5rem!important;padding-bottom:.5rem!important;box-shadow:0 1px #ffffff0d!important}#anim-progress{background:var(--accent,#e8ff47);transform-origin:0;pointer-events:none;z-index:9999;width:100%;height:2px;transition:transform .1s linear;position:fixed;top:0;left:0;transform:scaleX(0);box-shadow:0 0 8px #e8ff4780}#anim-cursor-dot{background:var(--accent,#e8ff47);mix-blend-mode:difference;pointer-events:none;z-index:9998;will-change:transform;border-radius:50%;width:8px;height:8px;transition:width .15s,height .15s;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}#anim-cursor-ring{pointer-events:none;z-index:9997;will-change:transform;border:1px solid #e8ff4759;border-radius:50%;width:32px;height:32px;transition:width .3s,height .3s,border-color .3s,background .3s;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}body.cursor-on-interactive #anim-cursor-dot{width:12px;height:12px}body.cursor-on-interactive #anim-cursor-ring{background:#e8ff470a;border-color:#e8ff47a6;width:46px;height:46px}@keyframes animBlink{0%,to{opacity:1}50%{opacity:0}}.anim-cursor{color:var(--accent,#e8ff47);margin-left:1px;animation:.75s step-end infinite animBlink}@media (prefers-reduced-motion:reduce){#anim-loader{display:none!important}.hero-tag,.hero-left h1,.hero-desc,.hero-btns,.hero-photo-wrap{opacity:1!important;animation:none!important;transform:none!important}.hero-glow,.hero-glow:after{animation:none!important}.reveal,.reveal-clip{opacity:1!important;clip-path:none!important;transition:none!important;transform:none!important}.section-title:after{width:100%!important;transition:none!important}.hero-photo-frame{animation:none!important}.parallax{will-change:auto!important;transform:none!important}.project-card:hover,.card:hover,.skill-tag:hover,.project-tag:hover,.exp-item:hover,.cert-badge:hover,.btn:hover,.btn:active,.project-link:hover{transform:none!important}#anim-progress,#anim-cursor-dot,#anim-cursor-ring{display:none!important}}.skip-link{background:var(--accent);color:#0d0d0d;z-index:9999;border-radius:0 0 4px 4px;padding:.6rem 1.2rem;font-family:DM Mono,monospace;font-size:.85rem;font-weight:500;transition:top .2s;position:absolute;top:-100px;left:1rem}.skip-link:focus{top:0}a{text-decoration:none}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:Syne,sans-serif;line-height:1.6;overflow-x:hidden}body:before{content:"";background-image:linear-gradient(var(--border) 1px, transparent 1px), linear-gradient(90deg, var(--border) 1px, transparent 1px);opacity:.15;pointer-events:none;z-index:-1;background-size:60px 60px;position:fixed;inset:0}nav{z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);background:#0d0d0deb;justify-content:space-between;align-items:center;padding:1.2rem 4rem;display:flex;position:fixed;top:0;left:0;right:0}.nav-logo{color:var(--accent);letter-spacing:.05em;font-family:DM Mono,monospace;font-size:.9rem}.nav-links{gap:2rem;list-style:none;display:flex}.nav-links a{color:var(--muted);letter-spacing:.05em;font-family:DM Mono,monospace;font-size:.85rem;text-decoration:none;transition:color .2s}.nav-links a:hover,.nav-links a.active-link{color:var(--accent)}.portfolio-hero{align-items:flex-end;max-width:1200px;min-height:38vh;margin:0 auto;padding:9rem 4rem 4rem;display:flex;position:relative;overflow:hidden}.portfolio-hero-glow{pointer-events:none;background:radial-gradient(circle,#e8ff470d 0%,#0000 70%);width:500px;height:500px;position:absolute;top:-120px;left:-80px}.portfolio-hero-subtitle{color:var(--accent);letter-spacing:.15em;text-transform:uppercase;align-items:center;gap:.6rem;margin-bottom:1rem;font-family:DM Mono,monospace;font-size:.8rem;display:flex}.portfolio-hero-line{background:var(--accent);width:24px;height:1px;display:inline-block}.portfolio-hero-title{letter-spacing:-.03em;margin-bottom:1.2rem;font-size:clamp(2.4rem,5vw,4rem);font-weight:800;line-height:1}.portfolio-hero-title span{color:var(--accent)}.portfolio-hero-desc{color:var(--muted);max-width:560px;margin-bottom:2rem;font-family:DM Mono,monospace;font-size:.9rem;line-height:1.8}.portfolio-hero-btn{font-size:.82rem}.hero{grid-template-columns:1fr 1fr;align-items:center;gap:4rem;max-width:1200px;min-height:100vh;margin:0 auto;padding:8rem 4rem 4rem;display:grid;position:relative;overflow:hidden}.hero-glow{pointer-events:none;background:radial-gradient(circle,#e8ff4712 0%,#0000 70%);width:500px;height:500px;position:absolute;top:-100px;right:-100px}.hero-tag{color:var(--accent);letter-spacing:.15em;text-transform:uppercase;align-items:center;gap:.6rem;margin-bottom:1.2rem;font-family:DM Mono,monospace;font-size:.8rem;display:flex}.hero-tag:before{content:"";background:var(--accent);width:24px;height:1px}.hero h1{letter-spacing:-.03em;margin-bottom:1.5rem;font-size:clamp(2.8rem,6vw,5.5rem);font-weight:800;line-height:.95}.hero h1 span{color:var(--accent)}.hero-surname{letter-spacing:.01em;margin-top:.15em;font-size:.42em;font-weight:700;line-height:1.4;display:block}.hero-desc{color:var(--muted);max-width:480px;margin-bottom:2.5rem;font-family:DM Mono,monospace;font-size:.95rem;line-height:1.8}.hero-btns{flex-wrap:wrap;gap:1rem;display:flex}.hero-photo-wrap{justify-content:center;align-items:center;display:flex;position:relative}.hero-photo-frame{width:320px;height:380px;position:relative}.hero-photo-frame:before{content:"";border:1px solid var(--border);border-radius:12px;position:absolute;inset:-2px}.hero-photo-frame:after{content:"";z-index:-1;border:1px solid #222;border-radius:12px;position:absolute;inset:12px -12px -12px 12px}.hero-photo{object-fit:cover;object-position:center top;filter:grayscale(20%);border-radius:10px;width:100%;height:100%}.hero-badge{background:var(--surface);border:1px solid var(--border);color:var(--muted);white-space:nowrap;border-radius:4px;align-items:center;gap:.5rem;padding:.5rem 1.2rem;font-family:DM Mono,monospace;font-size:.72rem;display:flex;position:absolute;bottom:-16px;left:50%;transform:translate(-50%)}.hero-badge-dot{background:var(--accent);border-radius:50%;flex-shrink:0;width:7px;height:7px;animation:2s ease-in-out infinite pulse}.btn{letter-spacing:.05em;cursor:pointer;border-radius:4px;align-items:center;gap:.5rem;padding:.8rem 1.8rem;font-family:DM Mono,monospace;font-size:.85rem;text-decoration:none;transition:all .2s;display:inline-flex}.btn-primary{background:var(--accent);color:#0d0d0d;border:2px solid var(--accent);font-weight:500}.btn-primary:hover{background:var(--accent-dark);border-color:var(--accent-dark)}.btn-outline{color:var(--text);border:1px solid var(--border);background:0 0}.btn-outline:hover{border-color:var(--accent);color:var(--accent)}.btn-accent-outline{color:var(--accent);border:1px solid var(--accent);background:0 0}.btn-accent-outline:hover{background:var(--accent);color:#0d0d0d}section{max-width:1100px;margin:0 auto;padding:6rem 4rem}.section-label{color:var(--accent);letter-spacing:.2em;text-transform:uppercase;align-items:center;gap:.8rem;margin-bottom:1rem;font-family:DM Mono,monospace;font-size:.75rem;display:flex}.section-label:after{content:"";background:var(--border);flex:1;max-width:80px;height:1px}.section-title{letter-spacing:-.02em;margin-bottom:3rem;font-size:clamp(2rem,4vw,3rem);font-weight:700}.about-grid{grid-template-columns:1fr 1fr;align-items:start;gap:4rem;display:grid}.about-text p{color:var(--muted);margin-bottom:1.2rem;font-family:DM Mono,monospace;font-size:.9rem;line-height:1.9}.skills-grid{flex-wrap:wrap;gap:.6rem;margin-top:1rem;display:flex}.skill-tag{border:1px solid var(--border);color:var(--muted);border-radius:2px;padding:.4rem .9rem;font-family:DM Mono,monospace;font-size:.75rem;transition:all .2s}.skill-tag:hover{border-color:var(--accent);color:var(--accent)}.cert-badge{background:var(--surface);color:var(--accent);border:1px solid #3a3a1a;border-radius:4px;align-items:center;gap:.6rem;margin-top:1.5rem;padding:.5rem 1rem;font-family:DM Mono,monospace;font-size:.75rem;display:inline-flex}.projects-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;display:grid}.project-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:2rem;transition:border-color .25s,transform .25s;position:relative;overflow:hidden}.project-card:before{content:"";background:var(--accent);transform-origin:0;height:2px;transition:transform .3s;position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.project-card:hover{border-color:#333;transform:translateY(-4px)}.project-card:hover:before{transform:scaleX(1)}.project-num{color:var(--accent);margin-bottom:1rem;font-family:DM Mono,monospace;font-size:.75rem}.project-card h3{letter-spacing:-.01em;margin-bottom:.8rem;font-size:1.2rem;font-weight:700}.project-card p{color:var(--muted);margin-bottom:1.5rem;font-family:DM Mono,monospace;font-size:.82rem;line-height:1.7}.project-tags{flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;display:flex}.project-tag{background:var(--surface2);color:var(--muted);border-radius:2px;padding:.25rem .6rem;font-family:DM Mono,monospace;font-size:.7rem}.project-links{gap:1rem;display:flex}.project-link{color:var(--muted);align-items:center;gap:.3rem;font-family:DM Mono,monospace;font-size:.78rem;text-decoration:none;transition:color .2s;display:flex}.project-link:hover{color:var(--accent)}.exp-list{flex-direction:column;display:flex}.exp-item{border-bottom:1px solid var(--border);grid-template-columns:160px 1fr;gap:2rem;padding:2rem 0;display:grid}.exp-item:first-child{border-top:1px solid var(--border)}.exp-date{color:var(--muted);padding-top:.2rem;font-family:DM Mono,monospace;font-size:.78rem}.exp-content h3{margin-bottom:.3rem;font-size:1.05rem;font-weight:700}.exp-company{color:var(--accent);margin-bottom:.8rem;font-family:DM Mono,monospace;font-size:.82rem}.exp-content p{color:var(--muted);font-family:DM Mono,monospace;font-size:.82rem;line-height:1.7}.contact-wrap{background:var(--surface);border:1px solid var(--border);text-align:center;border-radius:12px;padding:4rem;position:relative;overflow:hidden}.contact-wrap:before{content:"";pointer-events:none;background:radial-gradient(circle,#e8ff470d 0%,#0000 70%);width:400px;height:400px;position:absolute;top:-100px;left:50%;transform:translate(-50%)}.contact-wrap h2{letter-spacing:-.03em;margin-bottom:1rem;font-size:clamp(2rem,5vw,3.5rem);font-weight:800;position:relative}.contact-wrap h2 span{color:var(--accent)}.contact-wrap p{color:var(--muted);margin-bottom:2.5rem;font-family:DM Mono,monospace;font-size:.9rem;position:relative}.contact-links{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.contact-form{text-align:left;flex-direction:column;gap:1rem;margin-top:2rem;display:flex;position:relative}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.form-group{flex-direction:column;gap:.4rem;display:flex}.form-group label{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-family:DM Mono,monospace;font-size:.72rem}.form-group input,.form-group textarea{background:var(--surface2);border:1px solid var(--border);color:var(--text);resize:vertical;border-radius:4px;outline:none;width:100%;padding:.75rem 1rem;font-family:DM Mono,monospace;font-size:.85rem;transition:border-color .2s}.form-group input:focus,.form-group textarea:focus{border-color:var(--accent)}.form-group input::placeholder,.form-group textarea::placeholder{color:#444}.captcha-group{justify-content:center;align-items:center;display:flex}.form-honeypot{display:none!important}.form-submit-row{justify-content:center;margin-top:.5rem;display:flex}.btn-submit{justify-content:center;min-width:200px;position:relative}.btn-submit:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.form-feedback{text-align:center;border-radius:4px;margin-top:.5rem;padding:.75rem 1rem;font-family:DM Mono,monospace;font-size:.82rem;display:none}.form-feedback.success{border:1px solid var(--accent);color:var(--accent);background:#e8ff4714;display:block}.form-feedback.error{color:#f88;background:#ff505014;border:1px solid #f55;display:block}.rate-info{color:#444;text-align:center;margin-top:.5rem;font-family:DM Mono,monospace;font-size:.7rem}@media (width<=600px){.form-row{grid-template-columns:1fr}}footer{border-top:1px solid var(--border);color:var(--muted);justify-content:space-between;align-items:center;padding:2rem 4rem;font-family:DM Mono,monospace;font-size:.75rem;display:flex}.footer-links{gap:1.5rem;display:flex}.footer-links a{color:var(--muted);text-decoration:none;transition:color .2s}.footer-links a:hover{color:var(--accent)}#portfolio-asignaturas{max-width:1100px;margin:0 auto;padding:6rem 4rem}.portfolio-intro{background:var(--surface);border:1px solid var(--border);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:2rem;margin-bottom:3rem;padding:2.5rem 3rem;display:flex}.portfolio-intro-text h3{margin-bottom:.5rem;font-size:1.3rem;font-weight:700}.portfolio-intro-text p{color:var(--muted);font-family:DM Mono,monospace;font-size:.85rem;line-height:1.7}.portfolio-stat-big{color:var(--accent);text-align:center;font-size:3.5rem;font-weight:800;line-height:1}.portfolio-stat-big span{color:var(--muted);letter-spacing:.15em;text-transform:uppercase;margin-top:.4rem;font-family:DM Mono,monospace;font-size:.7rem;font-weight:400;display:block}.module-nav{flex-wrap:wrap;gap:.8rem;margin-bottom:2rem;display:flex}.mod-btn{background:var(--surface);border:1px solid var(--border);cursor:pointer;text-align:left;color:var(--text);border-radius:6px;align-items:center;gap:.8rem;padding:.8rem 1.2rem;font-family:Syne,sans-serif;transition:all .2s;display:flex}.mod-btn:hover{background:var(--surface2);border-color:#444}.mod-btn.active{border-color:var(--accent);background:#e8ff470d}.mod-code{letter-spacing:.12em;color:var(--accent);text-transform:uppercase;font-family:DM Mono,monospace;font-size:.68rem}.mod-name{color:var(--muted);max-width:160px;font-size:.78rem;font-weight:400}.mod-btn.active .mod-name{color:var(--text)}.mod-section{display:none}.mod-section.active{display:block}.mod-section-header{border-bottom:1px solid var(--border);align-items:baseline;gap:1rem;margin-bottom:2.5rem;padding-bottom:1rem;display:flex}.mod-section-number{color:var(--accent);letter-spacing:.1em;font-family:DM Mono,monospace;font-size:.75rem}.mod-section-title{letter-spacing:-.02em;font-size:1.4rem;font-weight:700}.trim-tabs{border-bottom:1px solid var(--border);gap:0;margin-bottom:2.5rem;display:flex}.trim-tab{letter-spacing:.1em;text-transform:uppercase;cursor:pointer;color:var(--muted);background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:.6rem 1.5rem;font-family:DM Mono,monospace;font-size:.75rem;transition:all .2s}.trim-tab:hover{color:var(--text)}.trim-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.trim-pane{display:none}.trim-pane.active{display:block}.ra-block{margin-bottom:3rem}.ra-label{letter-spacing:.1em;text-transform:uppercase;color:var(--accent);background:#e8ff470d;border:1px solid #e8ff4726;border-radius:3px;align-items:center;gap:.6rem;margin-bottom:1.5rem;padding:.4rem .9rem;font-family:DM Mono,monospace;font-size:.72rem;display:inline-flex}.ra-dot{background:var(--accent);border-radius:50%;flex-shrink:0;width:5px;height:5px}.cards-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.2rem;display:grid}.card{background:var(--surface);border:1px solid var(--border);cursor:pointer;color:inherit;border-radius:8px;padding:1.5rem;text-decoration:none;transition:all .25s;display:block;position:relative;overflow:hidden}.card:before{content:"";background:var(--accent);transform-origin:0;height:2px;transition:transform .3s;position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.card:hover{background:var(--surface2);border-color:#383838;transform:translateY(-2px)}.card:hover:before{transform:scaleX(1)}.card:after{content:"";border-radius:inherit;opacity:0;background:radial-gradient(800px circle at var(--mouse-x,50%) var(--mouse-y,50%), #e8ff4714, transparent 40%);pointer-events:none;z-index:0;transition:opacity .3s;position:absolute;inset:0}.card.card-shine:after{opacity:1}.card>*{z-index:1;position:relative}.card-badges{flex-wrap:wrap;gap:.5rem;margin-bottom:.7rem;display:flex}.badge{letter-spacing:.08em;text-transform:uppercase;border-radius:3px;align-items:center;gap:4px;padding:2px 7px;font-family:DM Mono,monospace;font-size:.62rem;display:inline-flex}.badge-pdf{color:#e87a7a;background:#c940401f;border:1px solid #c9404040}.badge-docx{color:#7ab4e8;background:#4a90d91f;border:1px solid #4a90d940}.badge-canva{color:#5ee6ea;background:#00c4cc1f;border:1px solid #00c4cc40}.badge-grupo{color:#e8c547;background:#e8c5471f;border:1px solid #e8c54740}.badge-practica{color:#c09cef;background:#9664dc1f;border:1px solid #9664dc40}.badge-cont{color:var(--accent);background:#e8ff4714;border:1px solid #e8ff4733}.badge-genially{color:#ff8060;background:#ff64321f;border:1px solid #ff643240}.badge-web{color:#6ed896;background:#50c8781f;border:1px solid #50c87840}.badge .dot{background:currentColor;border-radius:50%;width:4px;height:4px}.card h3{color:var(--text);margin-bottom:.5rem;font-size:1rem;font-weight:700;line-height:1.3}.card p{color:var(--muted);font-family:DM Mono,monospace;font-size:.78rem;line-height:1.6}.card-footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;margin-top:1.2rem;padding-top:.9rem;display:flex}.card-file{color:#555;text-overflow:ellipsis;white-space:nowrap;max-width:220px;font-family:DM Mono,monospace;font-size:.67rem;overflow:hidden}.card-arrow{color:var(--accent);font-size:1rem;transition:transform .2s}.card:hover .card-arrow{transform:translate(4px)}.stats-row{background:var(--surface);border:1px solid var(--border);border-radius:8px;flex-wrap:wrap;gap:2rem;margin-top:3rem;padding:2rem 2.5rem;display:flex}.stat{flex-direction:column;gap:.2rem;display:flex}.stat-num{color:var(--accent);font-size:2.5rem;font-weight:800;line-height:1}.stat-lbl{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-family:DM Mono,monospace;font-size:.68rem}.modal-overlay{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:500;background:#000000d9;justify-content:center;align-items:center;padding:2rem;display:none;position:fixed;inset:0}.modal-overlay.open{display:flex}.modal{background:var(--surface);border:1px solid #383838;border-radius:12px;width:100%;max-width:560px;padding:2.5rem;animation:.2s modalIn;position:relative}.modal-close{color:var(--muted);cursor:pointer;background:0 0;border:none;font-family:DM Mono,monospace;font-size:1.3rem;transition:color .2s;position:absolute;top:1rem;right:1.2rem}.modal-close:hover{color:var(--text)}.modal h2{margin-bottom:1rem;font-size:1.3rem;font-weight:700}.modal p{color:var(--muted);margin-bottom:.7rem;font-family:DM Mono,monospace;font-size:.85rem;line-height:1.8}.modal-file{color:var(--accent);background:#e8ff470a;border:1px solid #e8ff4726;border-radius:6px;margin-top:1.2rem;padding:.8rem 1rem;font-family:DM Mono,monospace;font-size:.75rem;line-height:1.6}.modal-group{color:#e8c547;background:#e8c5470d;border:1px solid #e8c54733;border-radius:6px;margin-top:.8rem;padding:.8rem 1rem;font-family:DM Mono,monospace;font-size:.75rem;line-height:1.6}.modal-link{color:#5ee6ea;background:#00c4cc12;border:1px solid #00c4cc33;border-radius:6px;align-items:center;gap:.5rem;margin-top:1rem;padding:.7rem 1rem;font-family:DM Mono,monospace;font-size:.75rem;text-decoration:none;transition:background .2s;display:inline-flex}.modal-link:hover{background:#00c4cc24}.modal-open-link{background:var(--accent);color:#0d0d0d;border-radius:4px;align-items:center;gap:.5rem;margin-top:1rem;padding:.7rem 1.2rem;font-family:DM Mono,monospace;font-size:.78rem;font-weight:500;text-decoration:none;transition:background .2s;display:inline-flex}.modal-open-link:hover{background:var(--accent-dark)}.hamburger{cursor:pointer;z-index:200;background:0 0;border:none;flex-direction:column;gap:5px;padding:4px;display:none}.hamburger span{background:var(--text);border-radius:2px;width:24px;height:2px;transition:transform .3s,opacity .3s;display:block}.hamburger.open span:first-child{transform:translateY(7px)rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}@media (width<=900px){nav{padding:1rem 1.5rem;overflow:visible}.hamburger{z-index:10;display:flex;position:relative}.nav-links{z-index:10;border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:#0d0d0d;flex-direction:column;align-items:stretch;gap:0;padding:.5rem 0 1rem;display:none;position:absolute;top:100%;left:0;right:0;box-shadow:0 12px 32px #0009}.nav-links.open{display:flex}.nav-links li{width:100%}.nav-links a{width:100%;color:var(--text);text-align:center;border-bottom:1px solid var(--border);letter-spacing:.12em;padding:1.1rem 1.5rem;font-size:1.15rem;transition:background .15s,color .15s;display:block}.nav-links a:last-child{border-bottom:none}.nav-links a:hover,.nav-links a.active-link{background:var(--surface);color:var(--accent)}.hero{text-align:center;grid-template-columns:1fr;padding:7rem 2rem 4rem}.hero-photo-wrap{order:-1}.hero-photo-frame{width:200px;height:240px}.hero-tag{justify-content:center}.hero-btns{flex-wrap:wrap;justify-content:center}.hero-desc{max-width:520px;margin:0 auto 2.5rem}.about-grid{grid-template-columns:1fr;gap:2rem}section,#portfolio-asignaturas{padding:4rem 2rem}}@media (width<=640px){nav{padding:1rem 1.25rem}.hero-photo-frame{width:160px;height:190px}h1{font-size:clamp(2rem,8vw,3.5rem)!important}.hero-btns{flex-direction:column;align-items:center;gap:.75rem}.hero-btns .btn{text-align:center;justify-content:center;width:100%;max-width:280px}section,#portfolio-asignaturas{padding:3.5rem 1.25rem}.section-title{font-size:clamp(1.5rem,6vw,2.2rem)!important}.exp-item{grid-template-columns:1fr;gap:.5rem}.contact-wrap{padding:2rem 1.25rem}footer{text-align:center;flex-direction:column;gap:.5rem;padding:1.5rem 1.25rem}.portfolio-intro{text-align:center;flex-direction:column}.skills-grid{grid-template-columns:1fr 1fr!important}.projects-grid,.asignaturas-grid{grid-template-columns:1fr!important}}:root{--accent:#e8ff47;--bg:#0d0d0d;--surface:#161616;--border:#2a2a2a;--text:#f0f0f0;--muted:#666}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:5rem 2rem 4rem;font-family:Syne,sans-serif;display:flex;position:relative;overflow:hidden auto}body:before{content:"";background-image:linear-gradient(var(--border) 1px, transparent 1px), linear-gradient(90deg, var(--border) 1px, transparent 1px);opacity:.4;pointer-events:none;background-size:60px 60px;position:fixed;inset:0}body:after{content:"";pointer-events:none;background:radial-gradient(circle,#e8ff470f 0%,#0000 65%);width:700px;height:700px;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.container{z-index:1;text-align:center;width:100%;max-width:680px;position:relative}.badge{background:var(--surface);border:1px solid var(--border);color:var(--muted);letter-spacing:.08em;border-radius:3px;align-items:center;gap:.6rem;margin-bottom:1.5rem;padding:.5rem 1.1rem;font-family:DM Mono,monospace;font-size:.78rem;display:inline-flex}.dot{background:var(--accent);border-radius:50%;flex-shrink:0;width:7px;height:7px;animation:2s ease-in-out infinite pulse}h1{letter-spacing:-.03em;margin-bottom:.5rem;font-size:clamp(2.2rem,5vw,4rem);font-weight:800;line-height:1.05}h1 span{color:var(--accent)}.subtitle{color:var(--muted);margin:1.2rem 0 2rem;font-family:DM Mono,monospace;font-size:clamp(.8rem,2vw,1rem);line-height:1.8}.progress-wrap{background:var(--surface);border:1px solid var(--border);text-align:left;border-radius:3px;margin-bottom:1.5rem;padding:1.5rem 2rem}.progress-label{color:var(--muted);letter-spacing:.06em;justify-content:space-between;margin-bottom:.8rem;font-family:DM Mono,monospace;font-size:.72rem;display:flex}.progress-bar{background:var(--border);border-radius:2px;height:3px;margin-bottom:1.2rem;overflow:hidden}.progress-fill{background:var(--accent);border-radius:2px;width:75%;height:100%;transition:width .3s}.tasks{flex-direction:column;gap:.5rem;display:flex}.task{color:var(--muted);align-items:center;gap:.7rem;font-family:DM Mono,monospace;font-size:.72rem;display:flex}.task-icon{color:var(--accent);font-size:.65rem}.task-icon.pending{color:var(--border)}.task.done{color:#444;text-decoration:line-through}.social-links{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.social-link{color:var(--muted);border:1px solid var(--border);letter-spacing:.05em;border-radius:3px;padding:.6rem 1.2rem;font-family:DM Mono,monospace;font-size:.78rem;text-decoration:none;transition:all .2s}.social-link:hover{border-color:var(--accent);color:var(--accent)}.footer-text{color:#333;letter-spacing:.1em;white-space:nowrap;font-family:DM Mono,monospace;font-size:.7rem;position:fixed;bottom:2rem;left:50%;transform:translate(-50%)}.corner{border-style:solid;border-color:#222;width:30px;height:30px;position:fixed}@media (width<=480px){.progress-wrap{padding:1.2rem}.corner{display:none}}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes glitch-top{0%,88%,to{opacity:0;transform:translate(0)}90%{opacity:1;transform:translate(-4px,-2px)}92%{opacity:1;transform:translate(3px)}94%{opacity:0}}@keyframes glitch-bot{0%,88%,to{opacity:0;transform:translate(0)}91%{opacity:1;transform:translate(4px,2px)}93%{opacity:1;transform:translate(-2px)}95%{opacity:0}}@keyframes lineIn{0%{opacity:0;transform:translate(-5px)}to{opacity:1;transform:translate(0)}}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@media (width<=640px){.error-page{padding:7rem 1.25rem 3rem}.terminal-body{padding:1rem 1.1rem;font-size:.72rem}.error-btns{flex-direction:column;align-items:center}.error-btns .btn{text-align:center;justify-content:center;width:100%;max-width:280px}.corner{display:none}body:before{background-size:40px 40px}}.t-cursor{background:var(--accent);vertical-align:middle;width:7px;height:.85em;margin-left:2px;animation:1s step-end infinite blink;display:inline-block}@media (width<=640px){.error-page{padding:7rem 1.25rem 3rem}.terminal-body{padding:1rem 1.1rem;font-size:.72rem}.error-btns{flex-direction:column;align-items:center}.error-btns .btn{text-align:center;justify-content:center;width:100%;max-width:280px}.corner{display:none}body:before{background-size:40px 40px}}.badge-dot{background:#febc2e;border-radius:50%;flex-shrink:0;width:6px;height:6px;box-shadow:0 0 8px #febc2ea6}.t-line:nth-child(6){animation:.25s 2.25s forwards lineIn}.t-stack{color:#4a4a4a;font-size:.7rem}@media (width<=640px){.error-page{padding:7rem 1.25rem 3rem}.terminal-body{padding:1rem 1.1rem;font-size:.72rem}.error-btns{flex-direction:column;align-items:center}.error-btns .btn{text-align:center;justify-content:center;width:100%;max-width:280px}.corner{display:none}body:before{background-size:40px 40px}}body:before{content:"";pointer-events:none;z-index:0;background-image:linear-gradient(#88aaff05 1px,#0000 1px),linear-gradient(90deg,#88aaff05 1px,#0000 1px);background-size:60px 60px;position:fixed;inset:0}.corner{pointer-events:none;z-index:2;border-style:solid;border-color:#252525;width:28px;height:28px;position:fixed}.corner-tl{border-width:1px 0 0 1px;top:1.5rem;left:1.5rem}.corner-tr{border-width:1px 1px 0 0;top:1.5rem;right:1.5rem}.corner-bl{border-width:0 0 1px 1px;bottom:1.5rem;left:1.5rem}.corner-br{border-width:0 1px 1px 0;bottom:1.5rem;right:1.5rem}.error-page{z-index:1;justify-content:center;align-items:center;min-height:calc(100vh - 140px);padding:8rem 2rem 4rem;display:flex;position:relative}.error-inner{text-align:center;width:100%;max-width:700px;animation:2s 1s both fadeUp}.error-badge{background:var(--surface);border:1px solid var(--border);color:var(--muted);letter-spacing:.1em;text-transform:uppercase;border-radius:3px;align-items:center;gap:.55rem;margin-bottom:1.8rem;padding:.4rem 1rem;font-family:DM Mono,monospace;font-size:.68rem;animation:2s 1s both fadeUp;display:inline-flex}.badge-dot{background:#8af;border-radius:50%;flex-shrink:0;width:6px;height:6px;animation:2s ease-in-out infinite pulse;box-shadow:0 0 8px #8af9}.error-code{letter-spacing:-.05em;color:#8af;-webkit-user-select:none;user-select:none;margin-bottom:.4rem;font-family:Syne,sans-serif;font-size:clamp(7rem,22vw,14rem);font-weight:800;line-height:.95;animation:2s 1s both fadeUp;display:inline-block;position:relative}.error-code:before,.error-code:after{content:"503";font-family:inherit;font-size:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;pointer-events:none;opacity:0;position:absolute;inset:0}.error-code:before{color:#88c8ffa6;clip-path:polygon(0 0,100% 0,100% 38%,0 38%);animation:2s 1s infinite glitch-top}.error-code:after{color:#e8ff4773;clip-path:polygon(0 62%,100% 62%,100% 100%,0 100%);animation:2s 1s infinite glitch-bot}.error-sub{color:var(--muted);letter-spacing:.15em;text-transform:uppercase;margin-bottom:2rem;font-family:DM Mono,monospace;font-size:.7rem;animation:2s 1s both fadeUp}.terminal{background:var(--surface);border:1px solid var(--border);text-align:left;border-radius:6px;margin:0 0 2rem;animation:2s 1s both fadeUp;overflow:hidden;box-shadow:0 10px 40px #0000008c}.terminal-bar{border-bottom:1px solid var(--border);background:#181818;align-items:center;gap:.45rem;padding:.55rem 1rem;display:flex}.t-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.t-dot-r{background:#ff5f57}.t-dot-y{background:#febc2e}.t-dot-g{background:#28c840}.t-title{color:#383838;letter-spacing:.05em;margin-left:.4rem;font-family:DM Mono,monospace;font-size:.65rem}.terminal-body{padding:1.4rem 1.6rem;font-family:DM Mono,monospace;font-size:.78rem;line-height:2}.t-line{opacity:0;align-items:baseline;gap:.8rem;display:flex}.t-line:first-child{animation:.25s .75s forwards lineIn}.t-line:nth-child(2){animation:.25s 1.05s forwards lineIn}.t-line:nth-child(3){animation:.25s 1.35s forwards lineIn}.t-line:nth-child(4){animation:.25s 1.65s forwards lineIn}.t-line:nth-child(5){animation:.25s 1.95s forwards lineIn}.t-prompt{color:#8af;flex-shrink:0;font-weight:500}.t-cmd{color:var(--text)}.t-err{color:#ff7070}.t-warn{color:#febc2e}.t-ok{color:#28c840}.t-path{color:#8af}.t-spinner{font-style:normal;animation:1s steps(4,end) infinite spin-chars;display:inline-block}@keyframes spin-chars{0%{content:"⠋"}25%{content:"⠙"}50%{content:"⠹"}75%{content:"⠸"}}.t-cursor{vertical-align:middle;background:#8af;width:7px;height:.85em;margin-left:2px;animation:1s step-end infinite blink;display:inline-block}.error-title{letter-spacing:-.02em;margin-bottom:.6rem;font-family:Syne,sans-serif;font-size:clamp(1.4rem,3.5vw,2rem);font-weight:700;line-height:1.2;animation:2s 1s both fadeUp}.error-desc{color:var(--muted);margin-bottom:2.2rem;font-family:DM Mono,monospace;font-size:clamp(.76rem,2vw,.86rem);line-height:1.9;animation:2s 1s both fadeUp}.error-btns{flex-wrap:wrap;justify-content:center;gap:.85rem;animation:2s 1s both fadeUp;display:flex}.error-meta{color:#272727;letter-spacing:.1em;align-items:center;gap:1rem;margin-top:3rem;font-family:DM Mono,monospace;font-size:.63rem;animation:2s 1s both fadeUp;display:flex}.error-meta:before,.error-meta:after{content:"";background:#1c1c1c;flex:1;height:1px}@media (width<=640px){.error-page{padding:7rem 1.25rem 3rem}.terminal-body{padding:1rem 1.1rem;font-size:.72rem}.error-btns{flex-direction:column;align-items:center}.error-btns .btn{text-align:center;justify-content:center;width:100%;max-width:280px}.corner{display:none}body:before{background-size:40px 40px}}
