@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap";:root{font-family:DM Sans,sans-serif;color:#eaecea;background:#111512;font-synthesis:none;scroll-behavior:smooth}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:2px solid #cbf795;outline-offset:5px}header,main,footer{max-width:1240px;margin:auto}header{height:106px;display:flex;align-items:center;justify-content:space-between;padding:0 32px;border-bottom:1px solid #30362f}.brand{font-size:42px;font-weight:800;letter-spacing:-5px}.brand span{color:#c8ed9b}nav{display:flex;gap:36px;font-size:14px;color:#c2c7bf}nav a:hover,footer a:hover{color:#c8ed9b}nav span{margin-left:12px}main{padding:0 32px}.hero{position:relative;overflow:hidden;padding:88px 0 0}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:600;color:#bdc4b7;display:flex;gap:10px;align-items:center}.eyebrow i{width:7px;height:7px;border-radius:50%;background:#c8ed9b}h1,h2,h3{font-family:Manrope,sans-serif;font-weight:500}h1{position:relative;z-index:1;font-size:clamp(48px,6.5vw,82px);line-height:1.12;letter-spacing:-4px;margin:32px 0}h1 span{color:#c6ed9e}h2{font-size:43px;line-height:1.2;letter-spacing:-1.8px;margin:22px 0 0}h2 span{color:#8c9688}.intro{position:relative;z-index:1;max-width:505px}.intro p{color:#acb5a8;font-size:17px;line-height:1.8}.button{display:inline-flex;gap:55px;align-items:center;padding:17px 22px;background:#c8ed9b;color:#1d2815;border-radius:5px;font-size:14px;font-weight:600;margin-top:18px}.button:hover{background:#def7bf}.herofooter{margin-top:85px;padding:25px 0;display:flex;justify-content:space-between;border-top:1px solid #30362f;font-size:10px;letter-spacing:1.5px;color:#8d9787}.orb{position:absolute;right:14px;top:75px;width:370px;height:370px;border:1px solid #48563b;border-radius:50%;transform:rotate(-25deg);background:radial-gradient(ellipse at 30% 30%,#48563844,transparent 65%);z-index:0}.orb div{position:absolute;inset:15%;border:1px solid #71805a55;border-radius:50%;transform:rotate(40deg) scaleX(.42)}.orb div:nth-child(2){inset:5%;transform:rotate(-35deg) scaleX(.6)}.orb div:nth-child(3){inset:0;transform:scaleY(.35)}section[id]{scroll-margin-top:30px;padding:90px 0;border-top:1px solid #30362f}.sectiontop{display:flex;justify-content:space-between;align-items:end}.sectiontop p{font-size:14px;line-height:1.8;color:#9fa899}.filters{display:flex;gap:8px;flex-wrap:wrap;margin:38px 0}.filters button{border:1px solid #363e31;border-radius:30px;color:#acb5a6;padding:10px 17px;background:transparent;cursor:pointer;font-size:12px}.filters button.active{background:#c8ed9b;color:#1d2815;border-color:#c8ed9b}.filters small{margin-left:9px}.projects{display:grid;grid-template-columns:1fr 1fr;gap:50px 32px}.visual{height:290px;background:#20291f;border:1px solid #354030;border-radius:7px;position:relative;display:flex;justify-content:center;align-items:center;overflow:hidden}.visual.parse{background:#222624}.visual.chat{background:#282a22}.visual.test{background:#222a2c}.visual.mail{background:#2d2923}.visual.ticket{background:#25232d}.visual.audit{background:#202925}.window{background:#131914;width:76%;border:1px solid #566148;border-radius:6px;box-shadow:0 20px 40px #0004;transform:rotate(-3deg)}.parse .window,.test .window,.ticket .window{transform:rotate(2deg)}.windowbar{height:30px;border-bottom:1px solid #354030;display:flex;gap:4px;align-items:center;padding:0 12px}.windowbar i{height:5px;width:5px;background:#606954;border-radius:50%}.windowbar span{font:9px monospace;color:#a0aa94;margin-left:12px}.paper{margin:16px auto;width:74%;background:#e0e4d5;color:#394634;padding:18px 20px 14px;position:relative}.paperlabel{font-size:7px;letter-spacing:1px}.paper h4{margin:7px 0 14px;font-size:17px}.line{height:4px;background:#b7c0ac;margin:9px 0}.short{width:70%}.marked{border:1px solid #b57540;background:#e5cdac;font-size:9px;padding:4px}.note{background:#cbef9f;font-size:8px;padding:6px;position:relative;left:30%;width:max-content}.visual>small{position:absolute;bottom:10px;left:14px;font-size:7px;letter-spacing:1.4px;color:#9ba690}.code{font:12px/1.8 monospace;padding:24px;color:#b7c2b0}.code span{color:#b6a2d5}.code em{font-style:normal;color:#c8ed9b}.pill{margin-top:15px;font:9px sans-serif;color:#c8ed9b}.conversation{padding:15px 23px}.conversation p{font-size:10px;background:#303b2a;padding:10px;border-radius:8px;max-width:85%}.conversation .reply{margin-left:20%;background:#c8ed9b;color:#293123}.systemrows{padding:20px}.systemrows>div{border-bottom:1px solid #354030;padding:14px 0;font-size:10px;display:flex;align-items:center;gap:14px}.systemrows b{color:#c8ed9b;font-family:monospace}.systemrows span{margin-left:auto;color:#b5c1ac}.projectmeta{display:flex;justify-content:space-between;margin-top:22px;color:#a7bd91;font-size:10px;letter-spacing:1px;text-transform:uppercase}.project h3{font-size:24px;letter-spacing:-.7px;margin:12px 0}.project>p{color:#9fa999;line-height:1.7;font-size:14px;max-width:470px}.tags{display:flex;flex-wrap:wrap;gap:7px;margin:20px 0}.tags span{font-size:10px;color:#a5ae9f;border:1px solid #343d30;padding:5px 8px;border-radius:3px}.details{background:transparent;border:0;border-bottom:1px solid #384132;color:#e1e7db;width:100%;text-align:left;padding:15px 0;cursor:pointer;font-size:12px;display:flex;justify-content:space-between}.details:hover{color:#c8ed9b}.expanded{border-left:2px solid #c8ed9b;padding-left:15px}.about{display:grid;grid-template-columns:1fr 1fr;gap:60px}.about p{font-size:15px;color:#a5ae9e;line-height:1.8;margin-top:0}.about .aboutlead{font-size:23px;color:#e1e7db;line-height:1.5}.skillgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:45px}.skillgrid>div{border-top:1px solid #49513f;padding-top:22px}.skillnumber{color:#859178;font-size:10px}.skillgrid h3{font-size:19px;margin:25px 0}.skillgrid p{color:#a5ae9e;font-size:13px}.skills{padding-bottom:100px!important}footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #30362f;padding:26px 32px;color:#97a08f;font-size:11px}footer .brand{color:#eaecea}@media(max-width:850px){.orb{right:-150px;opacity:.45}.herofooter span:last-child{display:none}.sectiontop{display:block}.sectiontop p{margin-top:20px}.about{gap:30px}h2{font-size:35px}.window{width:85%}.visual{height:250px}}@media(max-width:600px){header{height:80px;padding:0 22px}nav{gap:19px;font-size:12px}main{padding:0 22px}.hero{padding-top:58px}h1{font-size:48px;letter-spacing:-2.4px}.intro p{font-size:15px}.orb{right:-230px;top:45px}.herofooter{margin-top:55px;font-size:8px}.projects,.about{grid-template-columns:1fr}.projects{gap:38px}.visual{height:275px}.sectiontop h2,h2{font-size:32px}section[id]{padding:60px 0}.skillgrid{grid-template-columns:1fr 1fr;gap:28px}.about{gap:28px}.filters{gap:7px}.filters button{padding:9px 12px;font-size:10px}footer{padding:23px 22px;gap:20px}footer>span{max-width:145px;line-height:1.7}.skills{padding-bottom:60px!important}}@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}}header nav{gap:22px;font-size:12px}.navcontact{color:#c8ed9b}.explore{padding:65px 0 85px;border-top:1px solid #30362f}.exploregrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:36px 0}.exploregrid>a{padding:26px;border:1px solid #394332;border-radius:6px;background:#192017}.exploregrid>a:hover{border-color:#c8ed9b}.exploregrid>a>span{float:right;color:#c8ed9b}.exploregrid h3{font-size:20px}.exploregrid p{font-size:14px;line-height:1.7;color:#a5ae9e}.subpage{min-height:calc(100vh - 208px);padding-bottom:85px}.backlink{display:inline-block;margin-top:36px;color:#a5ae9e;font-size:12px}.pagehero{padding:60px 0 48px}.pagehero h1{font-size:clamp(38px,5.5vw,65px);letter-spacing:-2.7px;max-width:850px}.pagehero>p{color:#a5ae9e;line-height:1.8;max-width:640px}.emptystate{padding:48px;border:1px solid #394332;border-radius:8px;background:radial-gradient(ellipse at right top,#27331e,#171d17 65%)}.emptyicon{display:block;font-size:40px;color:#c8ed9b;margin-bottom:28px}.emptystate h2{font-size:30px;margin:20px 0}.emptystate p{color:#a5ae9e;max-width:600px;line-height:1.8}.fieldpreview{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.fieldpreview span{padding:9px 12px;border:1px dashed #4c5b41;border-radius:4px;font-size:12px;color:#a5ae9e}.publicationhead{display:flex;justify-content:space-between;font-size:11px;letter-spacing:1px;padding:22px 0;border-top:1px solid #394332;color:#a5ae9e}.textbutton{display:inline-block;background:none;border:0;border-bottom:1px solid #69795a;padding:12px 0;color:#c8ed9b;font:inherit;font-size:13px;cursor:pointer}.topicstrip{display:flex;flex-wrap:wrap;gap:20px;margin-top:28px;color:#acb7a3;font-size:12px}.topicstrip>span:first-child{font-size:10px;letter-spacing:1px;color:#c8ed9b}.contactgrid{display:grid;grid-template-columns:1fr 1.2fr;gap:75px;border-top:1px solid #394332;padding-top:45px}.contactgrid h2{font-size:32px;margin-top:0}.contactgrid aside>p{color:#a5ae9e;line-height:1.8;font-size:14px;margin-top:25px}.notice{padding:20px;background:#232a1e;border-left:2px solid #a7c580;margin-top:30px;font-size:12px;line-height:1.8;color:#bcc8b0}.notice p{margin-bottom:0}.contactgrid label{display:flex;flex-direction:column;gap:10px;font-size:12px;color:#c5cebe;margin-bottom:22px}.formrow{display:grid;grid-template-columns:1fr 1fr;gap:18px}input,textarea,select{width:100%;font:inherit;font-size:14px;background:#1b221a;color:#eaecea;border:1px solid #414c39;border-radius:4px;padding:14px;outline-offset:3px}input:focus,textarea:focus,select:focus{outline:2px solid #c8ed9b}textarea{resize:vertical}form .button{border:0;margin-top:0;cursor:pointer}.review{margin-top:25px;padding:22px;border:1px solid #5b6a4a;border-radius:5px}.review h3{margin-top:0}.review p{font-size:13px;line-height:1.7;color:#bcc8b0;overflow-wrap:anywhere}.messagecopy{white-space:pre-wrap}@media(max-width:850px){header{height:auto;min-height:100px;gap:20px;padding-top:20px;padding-bottom:20px}header nav{gap:16px;flex-wrap:wrap;justify-content:flex-end;line-height:1.8}.contactgrid{gap:35px}.exploregrid{gap:12px}.exploregrid>a{padding:18px}}@media(max-width:600px){header nav{gap:8px 15px;font-size:11px}.exploregrid,.contactgrid{grid-template-columns:1fr}.contactgrid{gap:32px}.pagehero{padding-top:40px}.pagehero h1{font-size:42px}.emptystate{padding:27px}.emptystate h2{font-size:27px}.formrow{grid-template-columns:1fr;gap:0}.explore{padding:50px 0}.topicstrip{gap:14px}.subpage{padding-bottom:55px}}nav a[aria-current=page]{color:#c8ed9b;border-bottom:1px solid #c8ed9b;padding-bottom:4px}.subpage #work,.subpage #about,.subpage #skills{padding-top:35px;padding-bottom:20px}.subpage #work .filters{margin-top:0}.standaloneabout{display:block;max-width:780px}.standaloneabout .aboutlead{font-size:28px}.standaloneabout p{font-size:17px}.subpage #skills .skillgrid{margin-top:0}.subpage #skills{padding-bottom:25px!important}.certgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.certcard{padding:32px;border:1px solid #394332;border-radius:8px;background:radial-gradient(ellipse at right top,#27331e,#171d17 70%)}.certtop{display:flex;justify-content:space-between;align-items:center;gap:15px}.certprovider{font-weight:700;font-size:18px;letter-spacing:.4px}.certstatus{padding:7px 10px;border-radius:20px;font-size:10px;white-space:nowrap;border:1px solid #48593c;color:#c8ed9b}.certstatus.progress{color:#e3cea0;border-color:#61553a}.certsymbol{font-size:42px;color:#c8ed9b;margin:35px 0 23px}.certcard h2{font-size:27px;line-height:1.4;letter-spacing:-.8px;margin:0;max-width:420px}.certcard>p{font-size:13px;color:#a5ae9e;margin:16px 0 30px}.certbottom{border-top:1px solid #394332;padding-top:20px;font-size:12px;color:#a5ae9e}@media(max-width:650px){.certgrid{grid-template-columns:1fr}.certcard{padding:25px}.certcard h2{font-size:24px}}.workcount{display:flex;justify-content:space-between;margin:38px 0 18px;color:#a7bd91;font-size:10px;letter-spacing:1.5px}.projects.single{grid-template-columns:1fr}.projects.single .project>p{max-width:720px}.visual.server{height:520px;padding:34px;justify-content:stretch;background:radial-gradient(circle at 10% 0,#12304a 0,#081525 48%,#09111f);border-color:#24435c}.serverdash{width:100%;height:100%;padding:24px;color:#dcecff;background:#091624;border:1px solid #28445d;border-radius:8px;box-shadow:0 24px 60px #0008;transform:perspective(1200px) rotateX(1deg)}.serverhead,.serverfoot{display:flex;align-items:center;justify-content:space-between}.serverhead small,.serverstats small{color:#5ad8ff;font:8px monospace;letter-spacing:1.2px}.serverhead h4{margin:8px 0 18px;font:600 24px Manrope,sans-serif}.serverhead>span{color:#48e8aa;font-size:10px}.serverstats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.serverstats>div{display:flex;flex-direction:column;gap:10px;padding:13px;background:#101f31;border:1px solid #263c53;border-radius:7px}.serverstats b{font-size:19px}.servertools{display:grid;grid-template-columns:1.7fr 1fr 1fr;gap:8px;margin:12px 0}.servertools span{padding:10px 12px;color:#92aeca;background:#0c1928;border:1px solid #263c53;border-radius:5px;font-size:9px}.servertable{overflow:hidden;border:1px solid #263c53;border-radius:7px}.serverrow{display:grid;grid-template-columns:2fr 1fr .7fr .5fr;padding:11px 14px;border-bottom:1px solid #24384c;font:10px monospace}.serverrow:last-child{border-bottom:0}.serverrow b{margin-right:18px;color:#4ad8ff}.serverrow i{display:inline-block;width:6px;height:6px;margin-right:6px;background:#48e8aa;border-radius:50%}.serverlabels{color:#7c9bb8;background:#102033;font-size:8px;letter-spacing:.8px}.serverfoot{margin-top:15px;color:#8da8c2;font-size:9px}.serverfoot b{margin-left:7px;color:#dcecff}@media(max-width:600px){.visual.server{height:380px;padding:14px}.serverdash{padding:15px}.serverhead h4{font-size:18px}.serverstats{grid-template-columns:1fr 1fr}.serverstats>div:nth-child(n+3),.servertools span:not(:first-child),.serverrow span:nth-child(2),.serverrow span:nth-child(4){display:none}.servertools,.serverrow{grid-template-columns:1fr}.serverrow{grid-template-columns:1fr .3fr}}.siteheader{position:relative;z-index:20}.menutoggle{display:none;width:44px;height:44px;padding:11px;background:transparent;border:1px solid #363e31;border-radius:5px;cursor:pointer}.menutoggle i{display:block;width:100%;height:1px;margin:5px 0;background:#eaecea;transition:transform .2s ease,opacity .2s ease}.menutoggle[aria-expanded=true] i:first-child{transform:translateY(6px) rotate(45deg)}.menutoggle[aria-expanded=true] i:nth-child(2){opacity:0}.menutoggle[aria-expanded=true] i:last-child{transform:translateY(-6px) rotate(-45deg)}@media(max-width:900px){.menutoggle{display:block}.siteheader nav{display:none;position:absolute;top:calc(100% + 1px);right:22px;left:22px;flex-direction:column;gap:0;padding:10px;background:#151b16;border:1px solid #363e31;border-radius:0 0 8px 8px;box-shadow:0 24px 50px #0009}.siteheader nav.mobile-open{display:flex}.siteheader nav a{width:100%;padding:14px 12px;border-bottom:1px solid #2d342b}.siteheader nav a:last-child{border-bottom:0}.siteheader nav a[aria-current=page]{color:#c8ed9b}.siteheader .navcontact{margin-top:6px;color:#1d2815;background:#c8ed9b;border-radius:4px}}@media(max-width:600px){.siteheader nav{right:12px;left:12px}}@media(prefers-reduced-motion:reduce){.menutoggle i{transition:none}}
