@font-face{font-family:InterLocal;src:url('assets/fonts/RoboPoppins/pxiEyp8kv8JHgFVrJJfecg.woff2')}@font-face{font-family:JetBrains;src:url('assets/fonts/JetBrainsMono-Medium.woff2')}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f4f3ef;color:#17211f;font:16px/1.65 InterLocal,Arial,sans-serif}a{color:inherit}img{max-width:100%;display:block}.skip{position:fixed;left:1rem;top:-5rem;z-index:20;background:#fff;padding:.7rem 1rem}.skip:focus{top:1rem}.topbar{width:min(1180px,calc(100% - 40px));height:88px;margin:auto;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:10}.wordmark{text-decoration:none;font-size:1.5rem;font-weight:900;letter-spacing:-.08em}.wordmark span,.eyebrow,.badge{color:#df5b35}.topbar nav{display:flex;align-items:center;gap:2rem}.topbar nav a{text-decoration:none;font-weight:700;font-size:.88rem}.topbar nav a:hover{text-decoration:underline;text-underline-offset:6px}.language{border:1px solid #c8cbc4;border-radius:50%;width:44px;height:44px;display:grid!important;place-items:center}.nav-toggle{display:none;background:none;border:1px solid #aaa;padding:.5rem .8rem}.hero,.section,.atlas-hero{width:min(1180px,calc(100% - 40px));margin:auto}.hero{min-height:calc(100vh - 88px);display:grid;grid-template-columns:1.12fr .88fr;gap:6vw;align-items:center;padding:5rem 0 7rem}.eyebrow{font:700 .76rem/1.4 JetBrains,monospace;text-transform:uppercase;letter-spacing:.12em}.hero h1,.atlas-hero h1{font-size:clamp(3rem,6.2vw,6.6rem);line-height:.98;letter-spacing:-.065em;margin:1.3rem 0 2rem;max-width:900px}.lede{font-size:clamp(1.1rem,1.8vw,1.38rem);line-height:1.55;color:#52605c}.hero-copy .lede{max-width:720px}.actions{display:flex;align-items:center;gap:1.2rem;flex-wrap:wrap;margin-top:2.1rem}.button{display:inline-flex;align-items:center;min-height:52px;padding:.7rem 1.25rem;border:1px solid #17211f;text-decoration:none;font-weight:800}.button.primary{background:#17211f;color:#fff}.button:hover{transform:translateY(-2px);box-shadow:4px 4px 0 #df5b35}.text-link{font-weight:800;text-underline-offset:6px}.portrait-wrap{text-align:center}.portrait-wrap>p{font:.78rem JetBrains,monospace;color:#6b7470}.portrait{position:relative;display:inline-block;width:min(100%,460px);isolation:isolate}.portrait img{height:auto;position:relative;z-index:2;filter:saturate(.82)}.portrait-halo{position:absolute;z-index:0;inset:8% 2% 0;border-radius:52% 52% 12% 12%;background:#d9dfd8;transform:rotate(4deg)}.section{padding:8rem 0}.projects{border-top:1px solid #cfd2cc}.section-head{display:grid;grid-template-columns:.8fr 1.3fr;column-gap:6vw;margin-bottom:4rem}.section-head .eyebrow{grid-column:1}.section-head h2{grid-column:1;font-size:clamp(2.4rem,4.7vw,5rem);line-height:1.05;letter-spacing:-.055em;margin:.8rem 0}.section-head p:not(.eyebrow){grid-column:2;grid-row:1/3;align-self:end;color:#52605c;font-size:1.13rem}.feature{background:#17211f;color:#fff;padding:clamp(2rem,5vw,5rem);display:grid;grid-template-columns:1.1fr .9fr;gap:5vw;align-items:center}.feature h3{font-size:clamp(2rem,4vw,4.2rem);line-height:1.05;letter-spacing:-.045em;margin:.5rem 0 1.2rem}.feature p{color:#c8d0cd}.badge{font:700 .72rem JetBrains,monospace;border:1px solid #df5b35;padding:.35rem .55rem}.code{font-family:JetBrains,monospace}.feature .button.primary{background:#df5b35;border-color:#df5b35}.feature .text-link{color:#fff}.signal{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.5rem}.signal span{width:76px;height:76px;border:1px solid #66706d;border-radius:50%;display:grid;place-items:center;font:700 .74rem JetBrains,monospace}.signal i{width:25px;border-top:2px solid #df5b35}.layer-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #cfd2cc;border-top:0}.layer-grid article{padding:2rem;border-right:1px solid #cfd2cc}.layer-grid article:last-child{border:0}.layer-grid span,.article-steps span{color:#df5b35;font:700 .75rem JetBrains,monospace}.layer-grid h3{font-size:1.15rem}.layer-grid p{color:#5c6763;font-size:.92rem}.timeline{border-top:1px solid #cfd2cc}.timeline article{display:grid;grid-template-columns:.42fr 1.58fr;padding:2rem 0;border-bottom:1px solid #cfd2cc}.timeline time{font:700 .78rem JetBrains,monospace;color:#66706d}.timeline h3{margin:0;font-size:1.35rem}.timeline p{max-width:720px;color:#52605c}.profile{display:grid;grid-template-columns:1.4fr .6fr;gap:8vw;border-top:1px solid #cfd2cc}.profile h2,.contact h2,.article h2{font-size:clamp(2.4rem,5vw,5.2rem);letter-spacing:-.055em;line-height:1.04;margin:1rem 0}.profile ul{list-style:none;margin:2rem 0 0;padding:0}.profile li{padding:1rem 0;border-bottom:1px solid #cfd2cc;font-weight:800}.contact{width:100%;max-width:none;background:#df5b35;color:#1c211f;padding:8rem max(20px,calc((100% - 1180px)/2))}.contact h2{max-width:900px}.contact>p:not(.eyebrow){font-size:1.2rem}.button.light{background:#fff}.light-link{color:#17211f}footer{width:min(1180px,calc(100% - 40px));margin:auto;padding:2.5rem 0;display:flex;justify-content:space-between;font-size:.85rem}footer div{display:flex;gap:1.4rem}.atlas{padding-bottom:5rem}.atlas-hero{padding:7rem 0 5rem}.atlas-hero .lede{max-width:800px}.ecosystem{background:#17211f;padding:3rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;color:#fff;overflow-x:auto}.eco-column{display:grid;gap:.75rem;min-width:150px}.eco-label{font:700 .68rem JetBrains,monospace;color:#df5b35;text-transform:uppercase}.eco-column a,.eco-result{padding:1rem;border:1px solid #59625f;text-decoration:none;font:700 .85rem JetBrains,monospace}.eco-column small,.eco-result small{display:block;color:#aeb8b4;margin-top:.3rem}.eco-arrow{color:#df5b35;font-size:2rem}.eco-result{min-width:190px;background:#df5b35;border-color:#df5b35;color:#17211f}.eco-result small{color:#393f3c}.article{display:grid;grid-template-columns:1.25fr .75fr;gap:6vw;border-top:1px solid #cfd2cc}.article>.eyebrow,.article>h2,.article>.article-lede,.article>.article-steps{grid-column:1}.article>.eyebrow{margin-bottom:0}.article>h2{margin-top:0}.article-lede{font-size:1.25rem;color:#52605c}.article-steps article{display:grid;grid-template-columns:40px 1fr;border-top:1px solid #cfd2cc;padding:1.4rem 0}.article-steps h3,.article-steps p{margin-top:0}.article-steps p{color:#52605c}.deeper{grid-column:2;grid-row:1/6;background:#e4e5df;padding:2rem;align-self:start;position:sticky;top:2rem}.deeper a{display:flex;justify-content:space-between;padding:1rem 0;border-bottom:1px solid #bec3bc;text-decoration:none}.repo-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:#cfd2cc;border:1px solid #cfd2cc;padding:1px}.repo-grid a{background:#f4f3ef;padding:1.5rem;text-decoration:none;display:grid;grid-template-columns:1fr auto}.repo-grid small{grid-column:1;color:#66706d}.repo-grid b{grid-column:2;grid-row:1/3;color:#df5b35}@media(max-width:850px){.topbar{height:70px}.nav-toggle{display:block}.topbar nav{display:none;position:absolute;top:64px;right:0;background:#fff;padding:1.5rem;box-shadow:0 10px 30px #0002;flex-direction:column;align-items:flex-start}.topbar nav.open{display:flex}.atlas .topbar nav,.atlas~.topbar nav{display:flex}.hero{grid-template-columns:1fr;padding-top:4rem}.portrait{width:min(75vw,420px)}.section-head,.feature,.profile,.article{grid-template-columns:1fr}.section-head p:not(.eyebrow){grid-column:1;grid-row:auto}.layer-grid{grid-template-columns:1fr 1fr}.layer-grid article:nth-child(2){border-right:0}.article>.eyebrow,.article>h2,.article>.article-lede,.article>.article-steps,.deeper{grid-column:1}.deeper{grid-row:auto;position:static}.ecosystem{align-items:stretch}.eco-arrow{align-self:center}.repo-grid{grid-template-columns:1fr}}@media(max-width:520px){.hero h1,.atlas-hero h1{font-size:2.8rem}.section{padding:5rem 0}.layer-grid{grid-template-columns:1fr}.layer-grid article{border-right:0;border-bottom:1px solid #cfd2cc}.timeline article{grid-template-columns:1fr}.timeline time{margin-bottom:.8rem}.signal i{width:10px}.signal span{width:62px;height:62px}.repo-grid{padding:0}.ecosystem{padding:1.5rem}.eco-arrow{font-size:1rem}footer{gap:1rem;flex-direction:column}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
