h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit;margin:0}p{margin:0}img,svg{display:block}img{max-width:100%;height:auto}button,input,select,textarea{font-family:inherit}ul,ol{margin:0;padding:0;list-style:none}html,body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}a{color:inherit;text-decoration:none}*{box-sizing:border-box}
:root{--orange:#fb923c;--orange-dark:#c45c00;--bg:#1a1a1a}body{background:var(--bg)}.space-mono{font-family:Space Mono,monospace}.page-wrap:after{content:"";opacity:.04;pointer-events:none;z-index:50;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E");position:fixed;inset:0}@keyframes riseIn{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}.rise{animation:.7s cubic-bezier(.22,1,.36,1) both riseIn}.d1{animation-delay:50ms}.d2{animation-delay:.15s}.d3{animation-delay:.28s}.d4{animation-delay:.42s}.d5{animation-delay:.55s}.d6{animation-delay:.68s}.hero-name{letter-spacing:.04em;font-family:Bebas Neue,sans-serif;font-size:clamp(72px,12vw,140px);font-weight:400;line-height:.95}.tech-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;display:flex}.tech-item{letter-spacing:.18em;text-transform:uppercase;color:#e5e7eb;align-items:center;gap:7px;font-size:16px;display:flex}.tech-item img{opacity:.75;width:18px;height:18px}.tech-item .fa-brain{color:#fb923c;opacity:.75;width:14px;height:14px}.aurora-wrap{z-index:0;position:absolute;inset:0}.c-glow{filter:blur(32px);opacity:.16;width:calc(100% + 80px);height:calc(100% + 80px);position:absolute;inset:-40px}.c-crisp{width:100%;height:100%;position:absolute;inset:0}.mesh-bg{pointer-events:none;z-index:1;position:absolute;inset:0;overflow:hidden}.blob{filter:blur(72px);border-radius:50%;position:absolute}@keyframes b1{0%,to{transform:translate(0)scale(1)}25%{transform:translate(60px,-80px)scale(1.15)}50%{transform:translate(-40px,-30px)scale(.9)}75%{transform:translate(20px,60px)scale(1.05)}}@keyframes b2{0%,to{transform:translate(0)scale(1)}30%{transform:translate(-70px,50px)scale(1.2)}60%{transform:translate(50px,80px)scale(.85)}80%{transform:translate(-20px,-60px)scale(1.1)}}@keyframes b3{0%,to{transform:translate(0)scale(1)}40%{transform:translate(80px,40px)scale(.9)}70%{transform:translate(-50px,70px)scale(1.15)}}@keyframes b4{0%,to{transform:translate(0)scale(1)}35%{transform:translate(-60px,-40px)scale(1.1)}65%{transform:translate(40px,50px)scale(.9)}}.photo-ring{box-shadow:0 0 0 3px var(--bg), 0 0 0 5px var(--orange), 0 0 28px 4px #fb923c66, 0 0 55px 10px #ea580c2e;animation:16s ease-in-out infinite coronaHeat}@keyframes coronaHeat{0%{box-shadow:0 0 0 3px var(--bg), 0 0 0 5px var(--orange), 0 0 16px 2px #fb923c2e, 0 0 32px 5px #ea580c14}7%{box-shadow:0 0 0 3px var(--bg), 0 0 0 5px var(--orange), 0 0 26px 5px #fb923c47, 0 0 50px 10px #ea580c21}13%{box-shadow:0 0 0 3px var(--bg), 0 0 0 5px var(--orange), 0 0 18px 2px #fb923c33, 0 0 36px 6px #ea580c17}22%{box-shadow:0 0 0 3px var(--bg), 0 0 0 5px var(--orange), 0 0 22px 3px #fb923c3d, 0 0 42px 7px #ea580c1c}31%{box-shadow:0 0 0 3px var(--bg), 0 0 0 5px var(--orange), 0 0 14px 1px #fb923c26, 0 0 28px 4px #ea580c12}38%{box-shadow:0 0 0 3px var(--bg), 0 0 0 5px var(--orange), 0 0 30px 6px #fb923c52, 0 0 56px 12px #ea580c26}47%{box-shadow:0 0 0 3px var(--bg), 0 0 0 5px var(--orange), 0 0 20px 3px #fb923c38, 0 0 38px 7px #ea580c1a}55%{box-shadow:0 0 0 3px var(--bg), 0 0 0 5px var(--orange), 0 0 25px 4px #fb923c45, 0 0 46px 9px #ea580c1f}61%{box-shadow:0 0 0 3px var(--bg), 0 0 0 5px var(--orange), 0 0 15px 2px #fb923c2b, 0 0 30px 5px #ea580c14}72%{box-shadow:0 0 0 3px var(--bg), 0 0 0 5px var(--orange), 0 0 24px 4px #fb923c42, 0 0 44px 8px #ea580c1f}83%{box-shadow:0 0 0 3px var(--bg), 0 0 0 5px var(--orange), 0 0 17px 2px #fb923c30, 0 0 34px 5px #ea580c17}91%{box-shadow:0 0 0 3px var(--bg), 0 0 0 5px var(--orange), 0 0 28px 5px #fb923c4d, 0 0 52px 11px #ea580c24}to{box-shadow:0 0 0 3px var(--bg), 0 0 0 5px var(--orange), 0 0 16px 2px #fb923c2e, 0 0 32px 5px #ea580c14}}.btn-fill{background:linear-gradient(135deg, var(--orange-dark) 0%, var(--orange) 100%);color:#5a2000;text-shadow:0 1px 1px #ffa03c99;font-weight:700;transition:transform .18s cubic-bezier(.22,1,.36,1),box-shadow .18s,filter .18s;position:relative;overflow:hidden}.btn-fill:after{content:"";background:linear-gradient(105deg,#0000 40%,#ffffff40 50%,#0000 60%);transition:transform .45s;position:absolute;inset:0;transform:translate(-100%)}.btn-fill:hover{filter:brightness(1.06);transform:translateY(-2px);box-shadow:0 8px 24px #fb923c59}.btn-fill:hover:after{transform:translate(100%)}.btn-fill:active{filter:brightness(.96);transform:translateY(0);box-shadow:0 2px 8px #fb923c33}.btn-outline{color:var(--orange);border:1px solid #fb923c73;transition:transform .18s cubic-bezier(.22,1,.36,1),box-shadow .18s,background .18s,border-color .18s}.btn-outline:hover{border-color:var(--orange);background:#fb923c14;transform:translateY(-2px);box-shadow:0 8px 24px #fb923c26,inset 0 0 0 1px #fb923c4d}.btn-outline:active{box-shadow:none;transform:translateY(0)}.contact-link{transition:color .2s}.contact-link:hover{color:var(--orange)}.contact-link:hover .fa-icon{opacity:.8}.work-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}@media (max-width:640px){.work-grid{grid-template-columns:1fr}}@media (min-width:641px) and (max-width:900px){.work-grid{grid-template-columns:repeat(2,1fr)}}.work-card-link:focus-visible{outline:2px solid var(--orange);outline-offset:3px;border-radius:10px}
:root,:host{--fa-font-solid:normal 900 1em/1 "Font Awesome 7 Free";--fa-font-regular:normal 400 1em/1 "Font Awesome 7 Free";--fa-font-light:normal 300 1em/1 "Font Awesome 7 Pro";--fa-font-thin:normal 100 1em/1 "Font Awesome 7 Pro";--fa-font-duotone:normal 900 1em/1 "Font Awesome 7 Duotone";--fa-font-duotone-regular:normal 400 1em/1 "Font Awesome 7 Duotone";--fa-font-duotone-light:normal 300 1em/1 "Font Awesome 7 Duotone";--fa-font-duotone-thin:normal 100 1em/1 "Font Awesome 7 Duotone";--fa-font-brands:normal 400 1em/1 "Font Awesome 7 Brands";--fa-font-sharp-solid:normal 900 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-regular:normal 400 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-light:normal 300 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-thin:normal 100 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-duotone-solid:normal 900 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-regular:normal 400 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-light:normal 300 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-thin:normal 100 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-slab-regular:normal 400 1em/1 "Font Awesome 7 Slab";--fa-font-slab-press-regular:normal 400 1em/1 "Font Awesome 7 Slab Press";--fa-font-whiteboard-semibold:normal 600 1em/1 "Font Awesome 7 Whiteboard";--fa-font-thumbprint-light:normal 300 1em/1 "Font Awesome 7 Thumbprint";--fa-font-notdog-solid:normal 900 1em/1 "Font Awesome 7 Notdog";--fa-font-notdog-duo-solid:normal 900 1em/1 "Font Awesome 7 Notdog Duo";--fa-font-etch-solid:normal 900 1em/1 "Font Awesome 7 Etch";--fa-font-graphite-thin:normal 100 1em/1 "Font Awesome 7 Graphite";--fa-font-jelly-regular:normal 400 1em/1 "Font Awesome 7 Jelly";--fa-font-jelly-fill-regular:normal 400 1em/1 "Font Awesome 7 Jelly Fill";--fa-font-jelly-duo-regular:normal 400 1em/1 "Font Awesome 7 Jelly Duo";--fa-font-chisel-regular:normal 400 1em/1 "Font Awesome 7 Chisel";--fa-font-utility-semibold:normal 600 1em/1 "Font Awesome 7 Utility";--fa-font-utility-duo-semibold:normal 600 1em/1 "Font Awesome 7 Utility Duo";--fa-font-utility-fill-semibold:normal 600 1em/1 "Font Awesome 7 Utility Fill"}.svg-inline--fa{box-sizing:content-box;display:var(--fa-display,inline-block);vertical-align:-.125em;height:1em;width:var(--fa-width,1.25em);overflow:visible}.svg-inline--fa.fa-2xs{vertical-align:.1em}.svg-inline--fa.fa-xs{vertical-align:0}.svg-inline--fa.fa-sm{vertical-align:-.0714286em}.svg-inline--fa.fa-lg{vertical-align:-.2em}.svg-inline--fa.fa-xl{vertical-align:-.25em}.svg-inline--fa.fa-2xl{vertical-align:-.3125em}.svg-inline--fa.fa-pull-left,.svg-inline--fa .fa-pull-start{float:inline-start;margin-inline-end:var(--fa-pull-margin,.3em)}.svg-inline--fa.fa-pull-right,.svg-inline--fa .fa-pull-end{float:inline-end;margin-inline-start:var(--fa-pull-margin,.3em)}.svg-inline--fa.fa-li{width:var(--fa-li-width,2em);inset-block-start:.25em;inset-inline-start:calc(-1 * var(--fa-li-width,2em))}.fa-layers-counter,.fa-layers-text{text-align:center;display:inline-block;position:absolute}.fa-layers{text-align:center;vertical-align:-.125em;height:1em;width:var(--fa-width,1.25em);display:inline-block;position:relative}.fa-layers .svg-inline--fa{transform-origin:50%;margin:auto;position:absolute;inset:0}.fa-layers-text{transform-origin:50%;top:50%;left:50%;transform:translate(-50%,-50%)}.fa-layers-counter{background-color:var(--fa-counter-background-color,#ff253a);border-radius:var(--fa-counter-border-radius,1em);box-sizing:border-box;color:var(--fa-inverse,#fff);line-height:var(--fa-counter-line-height,1);max-width:var(--fa-counter-max-width,5em);min-width:var(--fa-counter-min-width,1.5em);padding:var(--fa-counter-padding,.25em .5em);right:var(--fa-right,0);text-overflow:ellipsis;top:var(--fa-top,0);transform:scale(var(--fa-counter-scale,.25));transform-origin:100% 0;overflow:hidden}.fa-layers-bottom-right{bottom:var(--fa-bottom,0);right:var(--fa-right,0);transform:scale(var(--fa-layers-scale,.25));transform-origin:100% 100%;top:auto}.fa-layers-bottom-left{bottom:var(--fa-bottom,0);left:var(--fa-left,0);transform:scale(var(--fa-layers-scale,.25));transform-origin:0 100%;top:auto;right:auto}.fa-layers-top-right{top:var(--fa-top,0);right:var(--fa-right,0);transform:scale(var(--fa-layers-scale,.25));transform-origin:100% 0}.fa-layers-top-left{left:var(--fa-left,0);right:auto;top:var(--fa-top,0);transform:scale(var(--fa-layers-scale,.25));transform-origin:0 0}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{vertical-align:.225em;font-size:.625em;line-height:.1em}.fa-xs{vertical-align:.125em;font-size:.75em;line-height:.0833333em}.fa-sm{vertical-align:.0535715em;font-size:.875em;line-height:.0714286em}.fa-lg{vertical-align:-.075em;font-size:1.25em;line-height:.05em}.fa-xl{vertical-align:-.125em;font-size:1.5em;line-height:.0416667em}.fa-2xl{vertical-align:-.1875em;font-size:2em;line-height:.03125em}.fa-width-auto{--fa-width:auto}.fa-fw,.fa-width-fixed{--fa-width:1.25em}.fa-ul{margin-inline-start:var(--fa-li-margin,2.5em);padding-inline-start:0;list-style-type:none}.fa-ul>li{position:relative}.fa-li{text-align:center;width:var(--fa-li-width,2em);line-height:inherit;position:absolute;inset-inline-start:calc(-1 * var(--fa-li-width,2em))}.fa-border{border-color:var(--fa-border-color,#eee);border-radius:var(--fa-border-radius,.1em);border-style:var(--fa-border-style,solid);border-width:var(--fa-border-width,.0625em);box-sizing:var(--fa-border-box-sizing,content-box);padding:var(--fa-border-padding,.1875em .25em)}.fa-pull-left,.fa-pull-start{float:inline-start;margin-inline-end:var(--fa-pull-margin,.3em)}.fa-pull-right,.fa-pull-end{float:inline-end;margin-inline-start:var(--fa-pull-margin,.3em)}.fa-beat{animation-name:fa-beat;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-bounce{animation-name:fa-bounce;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28, .84, .42, 1))}.fa-fade{animation-name:fa-fade;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4, 0, .6, 1))}.fa-beat-fade{animation-name:fa-beat-fade;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4, 0, .6, 1))}.fa-flip{animation-name:fa-flip;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-shake{animation-name:fa-shake;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin{animation-name:fa-spin;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,2s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-reverse{--fa-animation-direction:reverse}.fa-pulse,.fa-spin-pulse{animation-name:fa-spin;animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,steps(8))}@media (prefers-reduced-motion:reduce){.fa-beat,.fa-bounce,.fa-fade,.fa-beat-fade,.fa-flip,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse{transition:none!important;animation:none!important}}@keyframes fa-beat{0%,90%{transform:scale(1)}45%{transform:scale(var(--fa-beat-scale,1.25))}}@keyframes fa-bounce{0%{transform:scale(1)translateY(0)}10%{transform:scale(var(--fa-bounce-start-scale-x,1.1), var(--fa-bounce-start-scale-y,.9)) translateY(0)}30%{transform:scale(var(--fa-bounce-jump-scale-x,.9), var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em))}50%{transform:scale(var(--fa-bounce-land-scale-x,1.05), var(--fa-bounce-land-scale-y,.95)) translateY(0)}57%{transform:scale(1, 1) translateY(var(--fa-bounce-rebound,-.125em))}64%{transform:scale(1)translateY(0)}to{transform:scale(1)translateY(0)}}@keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,.4)}}@keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity,.4);transform:scale(1)}50%{opacity:1;transform:scale(var(--fa-beat-fade-scale,1.125))}}@keyframes fa-flip{50%{transform:rotate3d(var(--fa-flip-x,0), var(--fa-flip-y,1), var(--fa-flip-z,0), var(--fa-flip-angle,-180deg))}}@keyframes fa-shake{0%{transform:rotate(-15deg)}4%{transform:rotate(15deg)}8%,24%{transform:rotate(-18deg)}12%,28%{transform:rotate(18deg)}16%{transform:rotate(-22deg)}20%{transform:rotate(22deg)}32%{transform:rotate(-12deg)}36%{transform:rotate(12deg)}40%,to{transform:rotate(0)}}@keyframes fa-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.fa-rotate-90{transform:rotate(90deg)}.fa-rotate-180{transform:rotate(180deg)}.fa-rotate-270{transform:rotate(270deg)}.fa-flip-horizontal{transform:scaleX(-1)}.fa-flip-vertical{transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{transform:scale(-1)}.fa-rotate-by{transform:rotate(var(--fa-rotate-angle,0))}.svg-inline--fa .fa-primary{fill:var(--fa-primary-color,currentColor);opacity:var(--fa-primary-opacity,1)}.svg-inline--fa .fa-secondary{fill:var(--fa-secondary-color,currentColor);opacity:var(--fa-secondary-opacity,.4)}.svg-inline--fa.fa-swap-opacity .fa-primary{opacity:var(--fa-secondary-opacity,.4)}.svg-inline--fa.fa-swap-opacity .fa-secondary{opacity:var(--fa-primary-opacity,1)}.svg-inline--fa mask .fa-primary,.svg-inline--fa mask .fa-secondary{fill:#000}.svg-inline--fa.fa-inverse{fill:var(--fa-inverse,#fff)}.fa-stack{vertical-align:middle;width:2.5em;height:2em;line-height:2em;display:inline-block;position:relative}.fa-inverse{color:var(--fa-inverse,#fff)}.svg-inline--fa.fa-stack-1x{--fa-width:1.25em;height:1em;width:var(--fa-width)}.svg-inline--fa.fa-stack-2x{--fa-width:2.5em;height:2em;width:var(--fa-width)}.fa-stack-1x,.fa-stack-2x{z-index:var(--fa-stack-z-index,auto);margin:auto;position:absolute;inset:0}
