:root{--bg:#0A0A0A;--fg:#EAEAEA;--dim:#8a8a86;--red:#E61919;--grid:#262626;--green:#4AF626;
  --mono:'JetBrains Mono','IBM Plex Mono',monospace;--head:'Archivo Black','Arial Black',sans-serif;
  --pal-bg:var(--bg);--pal-fg:var(--fg);--pal-line:var(--fg);--pal-hl:var(--red);--pal-hlfg:#fff;--pal-mute:var(--dim)}
#palbtn{font:700 12px var(--mono);letter-spacing:.08em;background:none;border:1px solid var(--grid);color:var(--dim);padding:3px 8px;cursor:pointer}
#palbtn:hover{color:var(--fg);border-color:var(--fg)}
@media(max-width:760px),(hover:none){#palbtn{display:none}}
.hud{margin:0 auto;width:min(290px,100%);padding:18px;
  background:linear-gradient(var(--red),var(--red)) 0 0/26px 2px no-repeat,linear-gradient(var(--red),var(--red)) 0 0/2px 26px no-repeat,
    linear-gradient(var(--red),var(--red)) 100% 0/26px 2px no-repeat,linear-gradient(var(--red),var(--red)) 100% 0/2px 26px no-repeat,
    linear-gradient(var(--red),var(--red)) 0 100%/26px 2px no-repeat,linear-gradient(var(--red),var(--red)) 0 100%/2px 26px no-repeat,
    linear-gradient(var(--red),var(--red)) 100% 100%/26px 2px no-repeat,linear-gradient(var(--red),var(--red)) 100% 100%/2px 26px no-repeat}
.pf{position:relative;border:1px solid var(--grid)}
.pf img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;filter:grayscale(1) contrast(1.2) brightness(.95)}
.pf::after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(0,0,0,.32) 0 1px,transparent 1px 3px)}
.hud figcaption{display:flex;justify-content:space-between;gap:12px;margin-top:12px;font-size:11px}
.hud .rec{color:var(--red)}
.pf{overflow:hidden}
.pf::before{content:"";position:absolute;left:0;right:0;top:0;height:46px;z-index:2;pointer-events:none;background:linear-gradient(to bottom,transparent,rgba(230,25,25,.30) 70%,rgba(255,90,90,.9) 98%,transparent);animation:hud-scan 2.6s cubic-bezier(.45,0,.55,1) .7s 1 both}
@keyframes hud-scan{0%{top:-46px;opacity:1}85%{top:100%;opacity:1}100%{top:100%;opacity:0}}
.pf img{animation:hud-pulse 2.6s ease-in-out .7s 1}
@keyframes hud-pulse{0%,55%,100%{filter:grayscale(1) contrast(1.2) brightness(.95)}28%{filter:grayscale(1) contrast(1.3) brightness(1.12)}}
.hud .live{display:inline-block;width:8px;height:8px;margin-right:8px;border-radius:50%;background:var(--red);animation:hud-blink 1s ease-in-out infinite}
@keyframes hud-blink{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.08;transform:scale(.6)}}
@media(prefers-reduced-motion:reduce){.pf::before,.pf img,.hud .live{animation:none}.pf::before{display:none}}
.hud figcaption{flex-direction:column;align-items:flex-start;gap:6px;margin-top:14px}
.hud .bn{font:400 clamp(1.3rem,2.2vw,1.75rem)/1 var(--head);letter-spacing:-.02em;text-transform:uppercase;color:var(--fg);white-space:nowrap}
.sk2{grid-template-columns:1fr 1fr}
.sk-c{display:grid;grid-template-columns:minmax(120px,190px) minmax(0,1fr);gap:20px;align-items:center}
.sk-c.wide{grid-column:1/-1;grid-template-columns:minmax(160px,260px) minmax(0,1fr)}
.sk-c .art{padding:8px;border:1px solid var(--grid)}
.sk-c h3{font:700 12px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--red);margin-bottom:8px}
.sk-c p{color:var(--dim);margin-bottom:10px}
.sk-c ul{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.sk-c li{border:1px solid var(--grid);padding:1px 8px;font-size:12px}
@media(max-width:900px){.sk2{grid-template-columns:1fr}}@media(max-width:520px){.sk-c,.sk-c.wide{grid-template-columns:1fr}}
.deg{display:grid;grid-template-columns:minmax(150px,220px) minmax(0,1fr);gap:28px}
.deg .art{align-self:start;padding:8px;border:1px solid var(--grid)}
.deg h3{font:400 1.5rem/1.15 var(--head);letter-spacing:-.02em;text-transform:uppercase;margin-bottom:6px}.deg h3 a{text-decoration:none}.deg h3 a:hover{color:var(--red)}
.deg p{margin:10px 0}
.prog{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:16px;margin:10px 0 14px}
.prog h4{font:700 11px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--red);margin-bottom:6px}
.prog ul{list-style:none;padding:0;color:var(--dim);font-size:13px}.prog li{padding:2px 0}
@media(max-width:760px){.deg{grid-template-columns:1fr}}
.lang-c{display:grid;grid-template-columns:minmax(150px,220px) minmax(0,1fr);gap:28px;align-items:center}
.lang-c .art{padding:8px;border:1px solid var(--grid)}
.lv{list-style:none;padding:0;margin-top:10px}
.lv li{display:grid;grid-template-columns:minmax(110px,170px) minmax(0,1fr) auto;gap:16px;align-items:center;padding:12px 0;border-top:1px solid var(--grid)}
.lv li:first-child{border-top:0}
.lv b{font:400 1.25rem/1.1 var(--head);letter-spacing:-.02em;text-transform:uppercase}
.lv span{color:var(--dim)}
.dots{display:inline-flex;gap:4px}
.dots s{display:block;width:22px;height:8px;background:var(--grid);text-decoration:none}
.dots s.on{background:var(--red)}
@media(max-width:760px){.lang-c{grid-template-columns:1fr}.lv li{grid-template-columns:1fr auto}.lv span{grid-column:1}}
*{box-sizing:border-box;margin:0;border-radius:0}
body{background:var(--bg);color:var(--fg);font:400 14px/1.5 var(--mono);-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:20;
  background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.18) 2px,rgba(0,0,0,.18) 4px);opacity:.5}
a{color:inherit}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px}
.top{position:sticky;top:0;background:var(--bg);border-bottom:1px solid var(--grid);z-index:40}
.top .wrap{display:flex;justify-content:space-between;align-items:center;height:44px;font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.top nav{display:flex;gap:20px;align-items:center}
.top a{text-decoration:none;color:var(--dim)}.top a:hover{color:var(--fg)}
.dot{display:inline-block;width:8px;height:8px;background:var(--green);margin-right:8px}
#lang{font:700 12px var(--mono);letter-spacing:.08em;background:none;border:1px solid var(--fg);color:var(--fg);padding:3px 8px;cursor:pointer}
#lang:hover{background:var(--fg);color:var(--bg)}
@media(max-width:760px){.top nav a{display:none}}
.u{text-transform:uppercase;letter-spacing:.08em;font-size:12px;color:var(--dim)}
.hero{padding:72px 0 0}
.hero h1{font:400 clamp(3.2rem,10vw,9rem)/.88 var(--head);letter-spacing:-.04em;text-transform:uppercase;margin:0 0 32px}
.hero h1 span{color:var(--red)}
.hero p.t{max-width:60ch;font-size:16px}
.bar{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.b{display:inline-block;border:1px solid var(--fg);padding:8px 14px;text-decoration:none;text-transform:uppercase;letter-spacing:.08em;font-size:12px}
.b:hover,.b.on{background:var(--fg);color:var(--bg)}
.grid{display:grid;gap:1px;background:var(--grid);border:1px solid var(--grid)}
.grid>*{background:var(--bg);padding:20px}
.figs{grid-template-columns:repeat(3,1fr);margin-top:56px}
.figs b{display:block;font:400 clamp(2rem,5vw,3.6rem)/1 var(--head);letter-spacing:-.04em;margin:8px 0}
@media(max-width:760px){.figs{grid-template-columns:1fr}}
section{padding:72px 0 0}
h2{font:400 clamp(1.8rem,4vw,3rem)/.95 var(--head);text-transform:uppercase;letter-spacing:-.03em;margin-bottom:28px;display:flex;gap:16px;align-items:baseline}
h2 i{font:400 12px var(--mono);color:var(--red);letter-spacing:.08em;font-style:normal}
.job{display:grid;grid-template-columns:240px 1fr;gap:1px}
.job>div{background:var(--bg);padding:20px}
.job h3{font:700 15px var(--mono);margin-bottom:8px}
.job ul{list-style:none;padding:0}.job li{padding:3px 0 3px 22px;position:relative}
.job li::before{content:">>";position:absolute;left:0;color:var(--red)}
.tg{margin-top:14px;display:flex;gap:8px;flex-wrap:wrap}
.tg span{border:1px solid var(--grid);padding:2px 8px;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--dim)}
@media(max-width:760px){.job{grid-template-columns:1fr}}
.sk{grid-template-columns:repeat(3,1fr)}
.sk h3{font:700 12px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--red);margin-bottom:10px}
.sk li{list-style:none}
.sk ul{padding:0}
@media(max-width:900px){.sk{grid-template-columns:1fr 1fr}}@media(max-width:560px){.sk{grid-template-columns:1fr}}
.two{grid-template-columns:1fr 1fr}@media(max-width:760px){.two{grid-template-columns:1fr}}
.edu b{display:block}.edu span{color:var(--dim);font-size:13px}
footer{margin-top:96px;border-top:1px solid var(--fg);padding:48px 0 64px}
footer h2{font-size:clamp(2.4rem,8vw,7rem)}
footer .lnk{display:flex;gap:24px;flex-wrap:wrap;margin-top:28px;text-transform:uppercase;letter-spacing:.08em;font-size:12px}
.lnk a:hover{color:var(--red)}
.cur::after{content:"_";animation:bl 1s steps(1) infinite}
@keyframes bl{50%{opacity:0}}
@media(prefers-reduced-motion:reduce){.cur::after{animation:none}}
:focus-visible{outline:2px solid var(--red);outline-offset:2px}
.more{--pc-b:1px solid var(--grid)}
.demo{position:relative;z-index:30;--ill-bar:var(--bg);color:var(--fg)}
.demo .dbar{background:var(--bg)}
.more .pc{background:var(--bg)}
.more .pc h3{font-family:var(--head);text-transform:uppercase;letter-spacing:-.03em}
.ill{color:var(--fg)}
.hero h1{font-size:clamp(2.4rem,5.4vw,5rem)}
.hero-g{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center}
.hero-art{padding:8px;filter:drop-shadow(0 0 8px rgba(230,25,25,.22))}
.art{padding:16px}
.job{grid-template-columns:170px 1fr 300px}
.job>div:first-child{padding-right:8px}
.job>.art>svg.ill{height:250px}
.job>.art{display:flex;flex-direction:column;justify-content:center;border-left:1px solid var(--grid)}
.tick{border-block:1px solid var(--fg);margin-top:20px;padding:10px 0;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--fg)}
.art.wide{margin-bottom:16px;border:1px solid var(--grid)}
@media(max-width:1000px){.job,.job.big{grid-template-columns:170px 1fr}.job>.art{grid-column:1/-1;border-left:0;border-top:1px solid var(--grid)}}
@media(max-width:900px){.hero-g{grid-template-columns:1fr}.hero-art{order:-1;max-width:420px}}
@media(max-width:760px){.job{grid-template-columns:1fr}}
