:root{--bg:#0B0C0E;--surface:#101215;--card:#15181C;--line:#1E2126;--line-2:#2A2E34;--fg:#E8E8E6;--muted:#8A8D93;--ink:#0B0C0E;--accent:#0CA14A;--section-pad:clamp(3rem,8vh,7rem);--display:"Archivo",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--accent-soft:color-mix(in srgb, var(--accent) 14%, transparent);--accent-softer:color-mix(in srgb, var(--accent) 8%, transparent)}html[data-section=research]{--accent:#488EDF}html[data-section=training]{--accent:#E65E6B}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:7rem}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg);color:var(--fg);line-height:1.5;overflow-x:hidden;-webkit-font-smoothing:antialiased}.container{max-width:1080px;margin:0 auto;padding:0 2rem}section{padding:var(--section-pad) 0;position:relative}a{text-decoration:none;color:inherit}svg{display:block}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.section-heading{font-family:var(--display);font-stretch:112%;font-weight:700;font-size:clamp(1.8rem,3.5vw,2.6rem);line-height:1.15;letter-spacing:-.03em;margin:0 0 .6rem}.section-sub{font-size:.95rem;line-height:1.7;color:var(--muted)}.section-sub a{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.7rem 1.4rem;border-radius:7px;font-size:.82rem;font-weight:500;font-family:IBM Plex Mono,monospace;border:1.5px solid transparent;cursor:pointer;transition:transform .2s ease-out,box-shadow .2s,border-color .2s,color .2s}.btn-pri{background:var(--accent);color:var(--ink)}.btn-pri:hover{transform:translateY(-2px);box-shadow:0 8px 26px var(--accent-soft)}.btn-out{background:transparent;color:var(--fg);border-color:var(--line-2)}.btn-out:hover{border-color:var(--accent);color:var(--accent)}nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:1rem 2.5rem;display:flex;align-items:center;justify-content:space-between;backdrop-filter:blur(18px);background:#0b0c0eb8;border-bottom:1px solid var(--line);transition:padding .3s}@supports (background:color-mix(in srgb,red 50%,transparent)){nav{background:color-mix(in srgb,var(--bg) 72%,transparent)}}nav.scrolled{padding:.7rem 2.5rem}.brand{display:flex;align-items:center;gap:.6rem}.brand .sub{font-family:IBM Plex Mono,monospace;font-size:.62rem;color:var(--muted)}.nav-links{display:flex;gap:1.8rem;align-items:center;list-style:none}.nav-links a{font-size:.82rem;font-weight:500;color:var(--fg);opacity:.6;transition:opacity .2s,color .2s}.nav-links a:hover{opacity:1;color:var(--accent)}.nav-links a[aria-current=page]{opacity:1;color:var(--accent);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px}.nav-cta{background:var(--accent);color:var(--ink)!important;opacity:1!important;padding:.5rem 1.1rem;border-radius:7px;font-family:IBM Plex Mono,monospace}.burger{display:none;background:none;border:none;cursor:pointer;padding:.5rem}.burger span{display:block;width:22px;height:2px;background:var(--fg);margin:4px 0;border-radius:2px}.chip{font-family:IBM Plex Mono,monospace;font-size:.58rem;letter-spacing:.08em;text-transform:uppercase;padding:.22rem .55rem;border-radius:5px;width:fit-content;margin-bottom:.7rem;display:inline-flex;align-items:center;gap:.3rem}.chip.off{background:var(--accent);color:var(--ink)}.chip.def{background:transparent;color:var(--accent);border:1px solid var(--accent)}.rdate{font-family:IBM Plex Mono,monospace;font-size:.7rem;color:var(--muted)}.rlink{font-family:IBM Plex Mono,monospace;font-size:.74rem;color:var(--accent)}.rlink,.arow .ar,.door .go{background-image:linear-gradient(var(--accent),var(--accent));background-repeat:no-repeat;background-position:0 100%;background-size:0 1px;transition:background-size .25s ease-out}.wrow:hover .rlink,.wrow:focus-visible .rlink,.arow:hover .ar,.arow:focus-visible .ar,.door:hover .go,.door:focus-visible .go{background-size:100% 1px}.archive{font-family:IBM Plex Mono,monospace;margin-top:1.2rem}.arc-bar{padding:.6rem 0;border-bottom:1px solid var(--line-2);font-size:.68rem;color:var(--muted);display:flex;justify-content:space-between}.arc-bar b{color:var(--accent);font-weight:500}.arow{display:grid;grid-template-columns:80px 22px 1fr auto;gap:1rem;align-items:center;padding:.8rem 0;font-size:.72rem;color:var(--fg);border-bottom:1px solid var(--line);transition:background .15s}.arow:last-child{border-bottom:0}.arow:hover{background:var(--accent-softer)}.arow .d{color:var(--muted)}.arow .title{color:var(--fg)}.arow .ar{color:var(--accent);justify-self:start}.arow .chip{margin:0}.countdown{display:flex;gap:2rem;align-items:flex-start;min-height:4.4rem;margin:0 0 1.2rem}.countdown:empty{margin:0}.cd-unit{display:flex;flex-direction:column}.cd-n{font-family:var(--display);font-stretch:118%;font-weight:700;font-size:clamp(2rem,4.4vw,3rem);line-height:1;letter-spacing:-.035em;color:var(--accent);font-variant-numeric:tabular-nums}.cd-l{font-family:IBM Plex Mono,monospace;font-size:.66rem;color:var(--muted);margin-top:.4rem}@media(max-width:620px){.countdown{gap:1.4rem;min-height:3.6rem}}.next{margin-top:1.4rem}.next.has-poster{display:grid;grid-template-columns:300px 1fr;gap:2.4rem;align-items:start}.next-poster{width:100%;height:auto;aspect-ratio:4/5;object-fit:contain;border-radius:10px;display:block}.next-when{font-family:IBM Plex Mono,monospace;font-size:.78rem;color:var(--accent);margin:0 0 .5rem}.next-title{font-family:var(--display);font-stretch:112%;font-weight:700;font-size:1.45rem;letter-spacing:-.025em;line-height:1.2;margin:0 0 .35rem}.next-session{font-family:var(--display);font-stretch:112%;font-weight:600;font-size:1.05rem;line-height:1.3;letter-spacing:-.02em;color:var(--accent);margin:0 0 .5rem}.next-venue{font-size:.9rem;color:var(--muted);margin:0 0 .9rem}.next-desc{margin:0 0 1.4rem;max-width:54ch}.next-desc p{font-size:.92rem;line-height:1.65;color:var(--fg);margin:0 0 .85rem}.next-desc p:last-child{margin-bottom:0}.posters{display:grid;grid-template-columns:repeat(4,1fr);gap:1.6rem;margin-top:2rem}.poster img,.poster-blank{width:100%;height:auto;aspect-ratio:4/5;object-fit:contain;border-radius:10px;display:block}.poster img{background:var(--surface);border:1px solid var(--accent);padding:.55rem;box-shadow:0 6px 20px #00000073}.poster-blank{border:1px dashed var(--line-2)}.poster-when{font-family:IBM Plex Mono,monospace;font-size:.7rem;color:var(--accent);margin:.9rem 0 .3rem}.poster-title{font-family:var(--display);font-stretch:112%;font-weight:700;font-size:.95rem;line-height:1.25;letter-spacing:-.02em;margin:0 0 .2rem}.poster-where{font-size:.78rem;color:var(--muted);margin:0}@media(max-width:900px){.posters{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.next.has-poster{grid-template-columns:1fr;gap:1.6rem}.next-poster{max-width:300px}}.chip.icon{padding:0;width:22px;height:22px;justify-content:center;flex:none}.pillars{display:grid;grid-template-columns:1fr 1fr;gap:3rem;margin-top:2.4rem}.pic{color:var(--accent);margin-bottom:1rem}.pillar h3{font-family:var(--display);font-stretch:112%;font-weight:700;font-size:1.3rem;margin-bottom:.55rem;letter-spacing:-.02em;color:var(--accent)}.pillar p{font-size:.86rem;line-height:1.6;color:var(--muted);margin-bottom:1.2rem;max-width:46ch}.topics{display:flex;gap:.45rem 1.4rem;flex-wrap:wrap}.topic{font-family:IBM Plex Mono,monospace;font-size:.72rem;color:var(--muted)}.caro{position:relative;margin-top:2.2rem}.track{display:flex;gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding-bottom:.4rem;scrollbar-width:none}.track::-webkit-scrollbar{display:none}.slide{flex:0 0 calc(33.333% - .67rem);scroll-snap-align:start;border-radius:12px;overflow:hidden;position:relative;aspect-ratio:4/3;background:var(--card);border:1px solid var(--line)}.slide img{width:100%;height:100%;object-fit:cover}.slide .cap{position:absolute;left:0;right:0;bottom:0;padding:.6rem .8rem;background:linear-gradient(to top,rgba(0,0,0,.85),transparent);color:#fff;font-size:.7rem;font-weight:500;font-family:IBM Plex Mono,monospace}.caro-arrow{position:absolute;top:calc(50% - 22px);width:44px;height:44px;border-radius:50%;background:var(--accent);color:var(--ink);border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 6px 18px #0006;transition:transform .2s;z-index:5}.caro-arrow:hover{transform:scale(1.06)}.caro-arrow.l{left:-14px}.caro-arrow.r{right:-14px}.caro-foot{display:flex;align-items:center;justify-content:space-between;margin-top:1rem}.dots{display:flex;gap:.35rem}.dots i{width:7px;height:7px;border-radius:50%;background:var(--line-2);transition:width .2s,background .2s}.dots i.on{background:var(--accent);width:20px;border-radius:4px}.count{font-family:IBM Plex Mono,monospace;font-size:.7rem;color:var(--muted)}.crew{display:grid;grid-template-columns:repeat(5,1fr);gap:1.4rem;margin-top:2.4rem}.person{text-align:center;padding:.5rem 0}.person-head{display:block;color:inherit}.avatar{width:62px;height:62px;border-radius:50%;margin:0 auto .85rem;background:linear-gradient(135deg,var(--line-2),var(--line));border:2px solid var(--accent);display:flex;align-items:center;justify-content:center;font-size:.7rem;color:var(--muted);overflow:hidden;transition:transform .3s ease-out,box-shadow .3s}.avatar img{width:100%;height:100%;object-fit:cover}a.person-head:hover .avatar,a.person-head:focus-visible .avatar{transform:translateY(-3px);box-shadow:0 0 0 4px var(--accent-soft),0 0 22px var(--accent-soft)}a.person-head:hover h3,a.person-head:focus-visible h3{color:var(--accent)}.person h3{font-family:var(--display);font-stretch:112%;font-weight:700;font-size:.95rem;margin-bottom:.18rem;transition:color .3s}.person .role{font-family:IBM Plex Mono,monospace;font-size:.64rem;color:var(--muted);display:block}.person .role a{color:var(--accent);text-decoration:none;transition:color .2s}.person .role a:hover{text-decoration:underline;text-underline-offset:2px}.person .role a:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}.trainers{display:grid;grid-template-columns:1fr 1fr;gap:2.2rem 3rem;margin-top:2.4rem}.trainer{display:flex;gap:1.1rem;align-items:flex-start}.trainer .avatar{margin:0;flex:none;width:72px;height:72px}.trainer-body h3{font-family:var(--display);font-stretch:112%;font-weight:700;font-size:1.05rem;margin:.2rem 0 .18rem}.trainer-body .role{display:block}.trainer-bio{font-size:.88rem;line-height:1.6;color:var(--fg);margin:.6rem 0 0;max-width:46ch}@media(max-width:760px){.trainers{grid-template-columns:1fr}}#join{padding:calc(var(--section-pad) * 1.8) 0}.join-wrap{margin:0}.join-h{font-family:var(--display);font-stretch:112%;font-weight:700;font-size:clamp(2.1rem,5vw,3.4rem);color:var(--fg);letter-spacing:-.03em;margin-bottom:.8rem;line-height:1.05}.join-sub{font-size:1.05rem;line-height:1.6;color:var(--muted);margin-bottom:2.2rem;text-wrap:balance}.perks{display:flex;flex-direction:column;gap:.9rem;margin-bottom:2.4rem}.perk{display:flex;align-items:center;gap:.8rem;font-family:IBM Plex Mono,monospace;font-size:.95rem;color:var(--fg)}.perk .ck{flex:none;width:26px;height:26px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center}.cta{display:flex;gap:.9rem;flex-wrap:wrap;align-items:center}#join .btn{padding:.95rem 1.9rem;font-size:.95rem;border-radius:9px}.soon{position:relative}.btn-li{background:var(--accent);color:var(--ink)}.btn-li:hover{transform:translateY(-2px);box-shadow:0 8px 24px var(--accent-soft)}.btn-ghost{background:var(--surface);color:var(--muted);border-color:var(--line-2);cursor:not-allowed}.badge{position:absolute;top:-8px;right:-8px;font-family:IBM Plex Mono,monospace;font-size:.5rem;letter-spacing:.06em;background:var(--bg);color:var(--accent);border:1px solid var(--accent);padding:.08rem .38rem;border-radius:100px}footer{padding:2.5rem 0;border-top:1px solid var(--line)}.foot{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.foot-left{font-family:IBM Plex Mono,monospace;font-size:.72rem;color:var(--muted)}.foot-links{display:flex;gap:.9rem;list-style:none}.foot-ico{display:inline-flex;width:36px;height:36px;align-items:center;justify-content:center;border-radius:8px;color:var(--muted);transition:color .2s,background .2s}.foot-ico.off{opacity:.4;cursor:default}.foot-ico:not([aria-disabled]):hover{color:var(--accent);background:var(--accent-soft)}@media(max-width:900px){nav{padding:1rem 1.5rem}.pillars{grid-template-columns:1fr}.crew{grid-template-columns:repeat(3,1fr)}.slide{flex-basis:calc(50% - .5rem)}nav{flex-wrap:wrap;row-gap:.8rem}.nav-links{width:100%;flex-wrap:wrap;gap:.9rem 1.2rem}.burger{display:none}html.js nav{flex-wrap:nowrap;row-gap:0}html.js .nav-links{position:fixed;top:62px;right:1rem;left:1rem;width:auto;flex-direction:column;gap:1rem;background:#0b0c0ef7;border:1px solid var(--line-2);border-radius:12px;padding:1.2rem;display:none}@supports (background:color-mix(in srgb,red 50%,transparent)){html.js .nav-links{background:color-mix(in srgb,var(--bg) 97%,transparent)}}html.js .nav-links.show{display:flex}html.js .burger{display:block}}@media(max-width:560px){:root{--section-pad:clamp(2.25rem,5vh,3.5rem)}.crew{grid-template-columns:repeat(2,1fr)}.slide{flex-basis:82%}.container{padding:0 1.25rem}.arow{grid-template-columns:64px 22px 1fr auto;gap:.6rem}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.post{padding:7rem 0 4rem}.post .container{max-width:760px}.post-head{margin-bottom:2.5rem;padding-bottom:1.8rem;border-bottom:1px solid var(--line)}.post-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:1rem}.wc-cve{font-family:IBM Plex Mono,monospace;font-size:.68rem;color:var(--accent);border:1px solid var(--line-2);border-radius:5px;padding:.2rem .5rem;transition:border-color .2s}.wc-cve:hover{border-color:var(--accent)}.post-head h1{font-family:var(--display);font-stretch:112%;font-weight:900;font-size:clamp(1.9rem,4vw,2.75rem);line-height:1.1;letter-spacing:-.03em;margin:.4rem 0 .8rem}.post-author{font-family:IBM Plex Mono,monospace;font-size:.8rem;color:var(--muted)}.prose{font-size:1.02rem;line-height:1.75;color:var(--fg)}.prose h2{font-family:var(--display);font-stretch:112%;font-weight:700;font-size:1.5rem;letter-spacing:-.02em;margin:2.6rem 0 .9rem;color:var(--fg)}.prose p{margin:0 0 1.2rem}.prose a{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.prose code{font-family:IBM Plex Mono,monospace;font-size:.86em;background:var(--surface);border:1px solid var(--line);border-radius:4px;padding:.1rem .35rem}.prose pre{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:1rem 1.1rem;overflow-x:auto;margin:0 0 1.4rem;font-size:.85rem;line-height:1.6}.prose pre code{background:none;border:none;padding:0;font-size:inherit}.prose ul,.prose ol{margin:0 0 1.3rem;padding-left:1.3rem}.prose li{margin:.4rem 0}.prose blockquote{margin:0 0 1.4rem;padding:.3rem 0 .3rem 1.1rem;border-left:3px solid var(--accent);color:var(--muted)}.prose video{width:100%;border-radius:10px;border:1px solid var(--line);margin:.4rem 0 .5rem;background:#000}.prose .cap{font-size:.82rem;color:var(--muted);margin-top:0}.prose img{display:block;max-width:100%;height:auto;border-radius:10px;border:1px solid var(--line);margin:0 0 1.4rem}.prose .scroll{overflow-x:auto;margin:0 0 1.4rem}.prose .tui{overflow-x:auto;margin:0 0 .5rem}.prose .tui img{min-width:720px;margin:0;border:0;border-radius:0}.prose table{width:100%;border-collapse:collapse;margin:0 0 1.4rem;font-size:.86rem;line-height:1.5}.prose .scroll table{margin:0}.prose th,.prose td{border:1px solid var(--line);padding:.5rem .7rem;text-align:left;vertical-align:top}.prose th{font-family:IBM Plex Mono,monospace;font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);background:var(--surface)}.timeline{list-style:none;padding:0}.timeline li{margin:.5rem 0}.timeline time{font-family:IBM Plex Mono,monospace;color:var(--accent);margin-right:.6rem}.refs{padding-left:1.3rem}.wlist{margin-top:2.2rem;display:flex;flex-direction:column;border-top:1px solid var(--line)}.wrow{display:block;padding:1.6rem 0;border-bottom:1px solid var(--line);transition:background .25s}.wrow:hover,.wrow:focus-visible{background:var(--accent-softer)}.wrow:hover h3,.wrow:focus-visible h3{color:var(--accent)}.wr-top{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;margin-bottom:.7rem}.wr-top .chip{margin:0}.wr-cves{display:flex;gap:.4rem;flex-wrap:wrap;margin-left:auto}.wr-cves .cve{font-family:IBM Plex Mono,monospace;font-size:.66rem;color:var(--accent);border:1px solid var(--line-2);border-radius:5px;padding:.2rem .5rem}.wrow h3{font-family:var(--display);font-stretch:112%;font-weight:700;font-size:1.2rem;line-height:1.25;letter-spacing:-.02em;margin:0 0 .45rem;color:var(--fg);transition:color .25s}.wrow p{font-size:.86rem;line-height:1.55;color:var(--muted);margin:0 0 1rem;max-width:72ch}.wrow .foot{display:flex;align-items:center;justify-content:space-between}@media(max-width:560px){.wr-cves{margin-left:0;width:100%}}.landing-page{position:relative}.landing-page>section{z-index:1}.field{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}.landing{padding:7.5rem 0 3.5rem}.lede{font-family:var(--display);font-stretch:118%;font-weight:600;font-size:clamp(2rem,7vw,5rem);line-height:1.05;letter-spacing:-.035em;margin:0 0 3.5rem}.lede-word{color:var(--accent)}.lede i{font-style:italic;font-stretch:100%;font-weight:400}.doors{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;align-items:start}.door{display:flex;flex-direction:column;align-items:center;text-align:center;padding:1.5rem 1rem 1rem;border-radius:20px}.door-mark{display:block;width:120px;height:132px;object-fit:contain;margin:0 0 1.3rem;transition:filter .45s ease-out,transform .45s cubic-bezier(.2,.7,.3,1)}.door-centre .door-mark{width:142px}.door:hover .door-mark,.door:focus-visible .door-mark{filter:drop-shadow(0 0 20px var(--accent)) drop-shadow(0 0 48px var(--accent));transform:translateY(-7px) scale(1.05)}.door h2{font-family:var(--display);font-stretch:112%;font-weight:600;font-size:1.25rem;letter-spacing:-.02em;margin:0 0 .5rem;color:var(--accent)}.door .go{font-size:.8rem;color:var(--fg);font-weight:500}@media(max-width:900px){.doors{grid-template-columns:1fr}.door{padding:1rem}.door-centre .door-mark{width:120px}}.page-head{padding:7rem 0 2.5rem}.page-head>.container{position:relative;z-index:1}.page-head h1{font-family:var(--display);font-stretch:118%;font-weight:700;font-size:clamp(1.9rem,4.2vw,2.9rem);line-height:1.08;letter-spacing:-.035em;margin:0 0 .8rem}.page-head .section-sub{text-wrap:balance}.counts{font-family:var(--display);font-stretch:112%;font-weight:600;font-size:clamp(1.1rem,2.2vw,1.45rem);letter-spacing:-.02em;margin:1.4rem 0 0}.counts b{font-weight:700;color:var(--accent)}.courses{display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem;margin-top:1rem}.course{border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:1.6rem 1.4rem 1.5rem;display:flex;flex-direction:column}.course-track{font-family:IBM Plex Mono,monospace;font-size:.64rem;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}.course .btn-ghost{justify-content:center}.course h2{font-family:var(--display);font-stretch:112%;font-weight:600;font-size:1.22rem;letter-spacing:-.025em;margin:.6rem 0 .5rem}.course-blurb{font-size:.86rem;line-height:1.55;color:var(--muted);margin:0 0 1rem}.course-outline{list-style:none;padding:0;margin:0 0 1.2rem}.course-outline li{font-size:.8rem;line-height:1.5;color:var(--fg);padding-left:1rem;position:relative;margin:.35rem 0}.course-outline li:before{content:"";position:absolute;left:0;top:.55em;width:5px;height:5px;border-radius:50%;background:var(--accent)}.course-meta{font-family:IBM Plex Mono,monospace;font-size:.68rem;color:var(--muted);margin:auto 0 1rem}.enquire{display:flex;align-items:center;gap:2rem;flex-wrap:wrap;padding:2.6rem 0 0;border-top:1px solid var(--line);margin-top:1rem}.enquire>div:first-child{flex:1 1 320px}.enquire h2{font-family:var(--display);font-stretch:112%;font-weight:700;font-size:clamp(1.45rem,2.6vw,1.9rem);letter-spacing:-.025em;margin:0 0 .5rem;line-height:1.15}.enquire p{font-size:1rem;line-height:1.6;color:var(--muted);margin:0;text-wrap:balance}.enquire-cta{display:flex;gap:.8rem;flex-wrap:wrap}.enquire-cta .btn{padding:.85rem 1.7rem;font-size:.9rem}@media(max-width:900px){.courses{grid-template-columns:1fr}}
