:root{--bg:#0a0f1c;--bg-card:#111827;--border:#1e2d45;--blue:#2563eb;--blue-soft:#3b82f6;--blue-glow:#2563eb40;--green:#10b981;--red:#ef4444;--muted:#94a3b8;--light:#cbd5e1;--white:#fff;--whatsapp:#25d366}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--white);min-height:100vh;font-family:Inter,sans-serif;overflow-x:hidden}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}@keyframes scanline{0%{transform:translateY(-100%)}to{transform:translateY(100vh)}}.galeria-header{border-bottom:1px solid var(--border);z-index:100;backdrop-filter:blur(10px);background:linear-gradient(135deg,#0a0f1c 0%,#111827 100%);animation:.5s ease-out fadeInDown;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:14px;max-width:1200px;margin:0 auto;padding:10px 24px;display:flex}.header-brand{flex-shrink:0;align-items:center;gap:11px;text-decoration:none;display:flex}.header-brand img{-o-object-fit:contain;object-fit:contain;width:52px;height:52px;transition:transform .3s}.header-brand:hover img{transform:rotate(8deg)scale(1.08)}.header-right{align-items:center;gap:10px;display:flex}.header-back{color:var(--muted);border:1px solid var(--border);white-space:nowrap;border-radius:10px;align-items:center;gap:8px;padding:8px 16px;font-size:.85rem;font-weight:500;text-decoration:none;transition:all .25s;display:inline-flex}.header-back:hover{color:var(--white);background:var(--bg-card);border-color:var(--blue);transform:translate(-3px)}@media (width<=500px){.header-brand-sub,.header-back span{display:none}}.galeria-hero{text-align:center;background:radial-gradient(at 50% 0,#2563eb1f 0%,#0000 65%);padding:60px 24px 50px;animation:.6s ease-out .1s both fadeInUp;position:relative;overflow:hidden}.galeria-hero:before{content:"";pointer-events:none;background-image:linear-gradient(#2563eb08 1px,#0000 1px),linear-gradient(90deg,#2563eb08 1px,#0000 1px);background-size:60px 60px;position:absolute;inset:0}.hero-stats{background:#ffffff08;border:1px solid #2563eb26;border-radius:16px;justify-content:center;align-items:center;gap:0;max-width:680px;margin-top:40px;margin-left:auto;margin-right:auto;display:flex;overflow:hidden}.hero-stat{text-align:center;flex:1;padding:20px 16px}.hero-stat-div{background:#2563eb2e;flex-shrink:0;width:1px;height:48px}.hero-stat-n{color:var(--blue-soft);margin-bottom:4px;font-family:Inter,sans-serif;font-size:1.7rem;font-weight:800;line-height:1}.hero-stat-l{color:var(--muted);letter-spacing:1.5px;text-transform:uppercase;font-size:.68rem}.hero-badge{color:var(--blue-soft);letter-spacing:.5px;background:#2563eb1f;border:1px solid #2563eb4d;border-radius:40px;align-items:center;gap:8px;margin-bottom:20px;padding:6px 18px;font-size:.82rem;font-weight:700;display:inline-flex}.galeria-hero h1,.galeria-hero h2{background:linear-gradient(135deg,#fff 30%,#94a3b8);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:12px;font-size:clamp(1.8rem,4vw,2.6rem);font-weight:800}.galeria-hero p{color:var(--muted);max-width:520px;margin:0 auto;font-size:1rem}.filtros-wrapper{flex-wrap:wrap;justify-content:center;gap:10px;max-width:1200px;margin:0 auto 36px;padding:0 24px;animation:.6s ease-out .2s both fadeInUp;display:flex}.filtro-btn{background:var(--bg-card);border:1px solid var(--border);color:var(--muted);cursor:pointer;border-radius:40px;align-items:center;gap:7px;padding:8px 18px;font-family:Inter,sans-serif;font-size:.85rem;font-weight:600;transition:all .25s;display:inline-flex}.filtro-btn:hover{color:var(--white);border-color:var(--blue)}.filtro-btn.active{background:var(--blue);border-color:var(--blue);color:#fff;box-shadow:0 4px 16px var(--blue-glow)}.filtro-count{background:#ffffff26;border-radius:10px;padding:1px 7px;font-size:.75rem}.filtro-btn.active .filtro-count{background:#ffffff40}.trabajos-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:24px;max-width:1200px;margin:0 auto;padding:0 24px 60px;animation:.6s ease-out .3s both fadeInUp;display:grid}.galeria-hero{max-width:960px;margin-left:auto;margin-right:auto}.trabajo-card{background:var(--bg-card);border:1px solid var(--border);cursor:pointer;border-radius:20px;transition:all .35s;position:relative;overflow:hidden}.trabajo-card:after{content:"";opacity:0;pointer-events:none;background:linear-gradient(135deg,#2563eb0f,#0000);border-radius:20px;transition:opacity .35s;position:absolute;inset:0}.trabajo-card:hover{border-color:#2563eb66;transform:translateY(-10px);box-shadow:0 24px 60px #0009,0 0 0 1px #2563eb26,0 0 40px #2563eb14}.trabajo-card:hover:after{opacity:1}.trabajo-card.hidden{display:none}.card-comparacion{height:220px;position:relative;overflow:hidden}.card-antes,.card-despues{width:50%;height:100%;position:absolute;top:0;overflow:hidden}.card-antes{left:0}.card-despues{right:0}.card-antes img,.card-despues img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;transition:transform .5s;display:block}.trabajo-card:hover .card-antes img,.trabajo-card:hover .card-despues img{transform:scale(1.06)}.card-divisor{z-index:10;background:#fff;width:3px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.card-divisor:before{content:"↔";color:#0a0f1c;background:#fff;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:.7rem;font-weight:900;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 2px 8px #0006}.card-label{letter-spacing:.8px;z-index:11;backdrop-filter:blur(4px);border-radius:20px;padding:5px 14px;font-size:.72rem;font-weight:800;position:absolute;bottom:12px}.card-label.antes{color:#fff;background:#ef4444e6;left:10px}.card-label.despues{color:#fff;background:#10b981e6;right:10px}.card-cat-badge{color:var(--blue-soft);backdrop-filter:blur(6px);z-index:12;background:#0a0f1cd9;border:1px solid #ffffff1f;border-radius:20px;align-items:center;gap:6px;padding:5px 12px;font-size:.75rem;font-weight:700;display:flex;position:absolute;top:12px;left:12px}.card-info{border-top:1px solid var(--border);padding:20px 22px}.card-titulo{color:var(--white);margin-bottom:6px;font-size:1rem;font-weight:700}.card-resultado{color:var(--green);align-items:center;gap:7px;margin-bottom:12px;font-size:.85rem;font-weight:600;display:flex}.card-resultado i{font-size:.8rem}.card-ver-mas{color:var(--blue-soft);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:0;font-family:Inter,sans-serif;font-size:.82rem;font-weight:600;transition:gap .2s;display:inline-flex}.card-ver-mas:hover{gap:10px}.lightbox-overlay{z-index:1000;opacity:0;pointer-events:none;background:#050810f7;flex-direction:column;justify-content:center;align-items:center;padding:20px;transition:opacity .3s;display:flex;position:fixed;inset:0}.lightbox-overlay.open{opacity:1;pointer-events:all}.lightbox-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;width:100%;max-width:960px;margin-bottom:20px;display:flex}.lightbox-titulo{color:#fff;font-size:1.2rem;font-weight:700}.lightbox-subtitulo{color:var(--green);align-items:center;gap:6px;margin-top:4px;font-size:.9rem;display:flex}.lightbox-cerrar{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff26;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.2rem;transition:all .2s;display:flex}.lightbox-cerrar:hover{border-color:var(--red);background:#ef44444d}.lightbox-comparacion{border:1px solid var(--border);-webkit-user-select:none;-moz-user-select:none;user-select:none;border-radius:20px;width:100%;max-width:960px;height:clamp(300px,55vh,520px);position:relative;overflow:hidden;box-shadow:0 24px 60px #000000b3}.lb-antes,.lb-despues{height:100%;position:absolute;top:0;overflow:hidden}.lb-antes{width:50%;left:0}.lb-despues{width:50%;right:0}.lb-antes img{width:var(--lb-width,960px);-o-object-fit:cover;object-fit:cover;-o-object-position:center center;object-position:center center;max-width:none;height:100%;position:absolute;top:0;left:0}.lb-despues img{width:var(--lb-width,960px);-o-object-fit:cover;object-fit:cover;-o-object-position:center center;object-position:center center;max-width:none;height:100%;position:absolute;top:0;right:0}.lb-slider{z-index:20;cursor:ew-resize;background:#fff;width:4px;height:100%;position:absolute;top:0;left:50%;transform:translate(-50%)}.lb-slider-handle{color:#0a0f1c;cursor:ew-resize;background:#fff;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.1rem;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 4px 16px #0006}.lb-label{letter-spacing:1px;z-index:30;pointer-events:none;border-radius:30px;padding:8px 20px;font-size:.85rem;font-weight:800;position:absolute;bottom:20px}.lb-label.antes{background:#ef4444eb;left:20px}.lb-label.despues{background:#10b981eb;right:20px}.lb-hint{text-align:center;color:var(--muted);margin-top:14px;font-size:.82rem}.lightbox-controles{align-items:center;gap:24px;margin-top:22px;display:flex}.lb-btn{background:var(--bg-card);border:1px solid var(--border);color:#fff;cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;font-size:1.2rem;transition:all .25s;display:flex}.lb-btn:hover{background:var(--blue);border-color:var(--blue);transform:scale(1.1)}.lb-indicadores{gap:10px;display:flex}.lb-dot{background:var(--border);cursor:pointer;border-radius:50%;width:8px;height:8px;transition:all .25s}.lb-dot.active{background:var(--blue);transform:scale(1.4)}.lb-cta{margin-top:20px}.lb-cta a{background:var(--whatsapp);color:#fff;border-radius:10px;align-items:center;gap:8px;padding:11px 24px;font-size:.9rem;font-weight:700;text-decoration:none;transition:all .25s;display:inline-flex}.lb-cta a:hover{background:#20ba5a;transform:translateY(-2px)}.galeria-cta{text-align:center;background:linear-gradient(135deg,#2563eb1f,#0a0f1cf2);border:1px solid #2563eb4d;border-radius:24px;max-width:700px;margin:0 auto 60px;padding:48px 40px;position:relative;overflow:hidden}.galeria-cta:before{content:"";pointer-events:none;background:radial-gradient(circle,#2563eb1a 0%,#0000 70%);border-radius:50%;width:200px;height:200px;position:absolute;top:-60px;right:-60px}.galeria-cta h3{margin-bottom:10px;font-size:1.5rem;font-weight:800}.galeria-cta p{color:var(--muted);margin-bottom:28px;font-size:.95rem;line-height:1.7}.btn-wa{background:var(--whatsapp);color:#fff;border-radius:12px;align-items:center;gap:10px;padding:14px 32px;font-size:1rem;font-weight:700;text-decoration:none;transition:all .3s;animation:2.5s infinite pulse;display:inline-flex;box-shadow:0 6px 20px #25d36659}.btn-wa:hover{background:#20ba5a;animation:none;transform:translateY(-3px)}.galeria-footer{text-align:center;border-top:1px solid var(--border);color:var(--muted);background:#060a14;flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;padding:32px 28px;font-size:.83rem;display:flex}.galeria-footer a{color:var(--blue-soft);align-items:center;gap:6px;text-decoration:none;transition:color .2s;display:inline-flex}.galeria-footer a:hover{color:#fff}.ft-sep{color:var(--border)}.empty-state{text-align:center;color:var(--muted);padding:60px 20px;display:none}.empty-state.visible{display:block}.empty-state i{color:var(--border);margin-bottom:16px;font-size:3rem;display:block}@media (width<=768px){.trabajos-grid{grid-template-columns:1fr}.lightbox-comparacion{height:clamp(240px,45vw,360px)}.lb-hint{display:none}}@media (width<=500px){.header-brand img{max-width:120px}.header-brand .divider,.header-brand h1,.header-brand span{display:none}.galeria-hero{padding:40px 16px 30px}.trabajos-grid{padding:0 16px 40px}.filtros-wrapper{padding:0 16px}}
