.resume-home{--rh-lime:#d8f85a;--rh-green:#91f06f;--rh-dark:#071110;color:var(--ink);overflow:clip}.resume-home *,.resume-home :before,.resume-home :after{box-sizing:border-box}.resume-home h1,.resume-home h2,.resume-home h3,.resume-home p{margin-top:0}.resume-home h1,.resume-home h2,.resume-home h3{font-family:var(--font-display)}.resume-home h2{letter-spacing:-.045em}.resume-home em{color:var(--volt-text);font-style:normal}.resume-home a:focus-visible{outline:3px solid var(--volt-text);outline-offset:4px}.rh-hero{border-bottom:1px solid var(--hairline);grid-template-columns:1.06fr .94fr;align-items:stretch;gap:clamp(10px,2vw,45px);min-height:590px;display:grid}.rh-hero__copy{z-index:2;flex-direction:column;align-items:flex-start;min-width:0;padding:clamp(72px,8vw,115px) 0 29px;display:flex;position:relative}.rh-pill,.rh-eyebrow{letter-spacing:.075em;font:700 11px/1.5 var(--font-mono);text-transform:uppercase}.rh-pill{background:var(--volt-soft);border:1px solid var(--hairline);color:var(--volt-text);border-radius:99px;align-items:center;gap:10px;padding:8px 12px;display:inline-flex}.rh-pulse{background:var(--rh-lime);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #d8f85a18}.rh-eyebrow{color:var(--volt-text);margin-bottom:16px}.rh-hero h1{letter-spacing:-.075em;margin:25px 0 15px;font-size:clamp(55px,6.2vw,91px);font-weight:800;line-height:1}.rh-hero h2{max-width:680px;margin-bottom:20px;font-size:clamp(32px,3.1vw,47px);font-weight:750;line-height:1.12}.rh-hero__text{max-width:590px;color:var(--ink-muted);font-size:15px;line-height:1.8}.rh-buttons{flex-wrap:wrap;align-items:center;gap:11px;margin-top:14px;display:flex}.rh-button{border:1px solid var(--border-control);min-width:165px;min-height:47px;color:var(--ink);border-radius:6px;justify-content:space-between;align-items:center;gap:25px;padding:11px 17px;font-size:12px;font-weight:700;text-decoration:none;transition:transform .18s,box-shadow .18s;display:inline-flex}.rh-button:hover{transform:translateY(-3px);box-shadow:0 8px 25px #b6ff4920}.rh-button span{font-size:19px;font-weight:500}.rh-button--primary{background:var(--rh-lime);color:#101a0c;border-color:var(--rh-lime)}.rh-button--secondary{color:var(--ink);border-color:var(--border-control);background:0 0}.rh-hero__base{color:var(--ink-faint);font:9px/1.5 var(--font-mono);letter-spacing:.07em;flex-wrap:wrap;gap:13px 26px;margin-top:auto;padding-top:33px;display:flex}.rh-portrait{isolation:isolate;background:radial-gradient(circle at 60% 47%,#2439298c,#0000 61%),radial-gradient(circle at 100% 100%,#d8f85a10,#0000 47%);justify-content:center;align-items:end;min-height:590px;display:flex;position:relative;overflow:hidden}.rh-portrait__halo{aspect-ratio:1;z-index:-1;background:radial-gradient(circle at 40% 27%,#dcffa3,#8bc74b 51%,#214022 100%);border-radius:50%;width:67%;position:absolute;top:14%;left:19%;box-shadow:0 0 100px #92c84b30}.rh-portrait__grid{opacity:.22;z-index:-1;background-image:radial-gradient(#c5e6bc 1px,#0000 1px);background-size:12px 12px;position:absolute;inset:12% 4% 16%;-webkit-mask-image:linear-gradient(90deg,#0000,#000,#0000);mask-image:linear-gradient(90deg,#0000,#000,#0000)}.rh-portrait__image{aspect-ratio:1;object-fit:cover;border-radius:50%;width:min(76%,425px);max-width:425px;margin-bottom:110px;display:block;box-shadow:0 25px 80px #0005,0 0 0 8px #caff7c20}.rh-portrait__code{color:#d8ebe2;width:min(265px,58%);font:10px/1.85 var(--font-mono);background:#0d1718ee;border:1px solid #5b7759;border-radius:9px;position:absolute;top:28%;right:4%;overflow:hidden;box-shadow:0 18px 55px #0007}.rh-portrait__codehead{color:#aac2b0;border-bottom:1px solid #364b3d;justify-content:space-between;align-items:center;padding:7px 11px;font-size:9px;display:flex}.rh-portrait__dots{color:#abd27b;letter-spacing:2px;font-size:8px}.rh-portrait__code code{overflow-wrap:anywhere;padding:11px;font-size:10px;line-height:1.9;display:block}.rh-code-purple{color:#a2aeff}.rh-code-green{color:#d8f85a}.rh-portrait__annotation{color:var(--ink-muted);font:10px var(--font-mono);letter-spacing:.08em;position:absolute;bottom:50px;left:7%}.rh-portrait__annotation span{color:var(--volt-text);margin-left:8px;font-size:22px}.rh-technologies{border:1px solid var(--hairline);border-width:0 0 1px;align-items:center;gap:23px;padding:20px 0;display:flex}.rh-technologies__label{font:9px/1.4 var(--font-mono);color:var(--ink-muted);letter-spacing:.04em;flex:none;max-width:124px}.rh-technologies__items{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:9px;width:100%;display:flex}.rh-tech{border-left:1px solid var(--hairline);color:var(--ink-muted);white-space:nowrap;align-items:center;gap:8px;padding:5px 10px;font-size:11px;display:inline-flex}.rh-tech b{color:var(--rh-lime);font:700 14px/1 var(--font-mono)}.rh-about{grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,70px);padding:clamp(60px,7vw,99px) 0;display:grid}.rh-about__intro h2{font:750 clamp(29px, 3.5vw, 47px)/1.12 var(--font-display);max-width:510px}.rh-about__intro>p:not(.rh-eyebrow){color:var(--ink-muted);max-width:510px;margin:20px 0 18px;font-size:14px;line-height:1.85}.rh-text-link{border:1px solid var(--border-control);padding:12px 16px;font-size:12px;font-weight:700;display:inline-block}.rh-text-link:hover{color:var(--volt-text);border-color:var(--volt-text)}.rh-metrics{grid-template-columns:1fr 1fr;gap:12px;display:grid}.rh-metric{border:1px solid var(--hairline);background:var(--surface);border-radius:10px;align-items:center;gap:17px;min-height:124px;padding:20px;display:flex}.rh-metric__icon{background:var(--volt-soft);width:48px;height:48px;color:var(--volt-text);border:1px solid var(--hairline);border-radius:8px;flex:none;place-items:center;font-size:23px;display:grid}.rh-metric strong{font:700 clamp(18px, 2vw, 25px)/1.3 var(--font-display);display:block}.rh-metric div>span{color:var(--ink-muted);margin-top:3px;font-size:11px;line-height:1.55;display:block}.rh-skills{border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);padding:77px 0 89px;position:relative}.rh-centered-head{text-align:center;max-width:730px;margin:0 auto 35px}.rh-centered-head .rh-eyebrow{margin-bottom:8px}.rh-centered-head h2{margin-bottom:12px;font-size:clamp(34px,4vw,51px);font-weight:800;line-height:1.15}.rh-centered-head>p:not(.rh-eyebrow){color:var(--ink-muted);font-size:14px;line-height:1.8}.rh-skill-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;display:grid}.rh-skill{border:1px solid var(--hairline);background:var(--surface);border-radius:10px;padding:clamp(18px,2.6vw,33px)}.rh-skill__top{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.rh-skill__top>span{color:var(--volt-text);font:700 26px var(--font-mono)}.rh-skill__top small{color:var(--ink-faint);letter-spacing:.07em;font:9px var(--font-mono)}.rh-skill h3{margin-bottom:12px;font-size:22px;line-height:1.2}.rh-skill>p{color:var(--ink-muted);min-height:41px;font-size:12px;line-height:1.65}.rh-skill ul{margin:21px 0 0;padding:0;list-style:none}.rh-skill li{border-bottom:1px solid var(--hairline);align-items:center;gap:12px;padding:12px 0;font-size:13px;line-height:1.3;display:flex}.rh-skill li span{color:var(--volt-text)}.rh-disclaimer{color:var(--ink-faint);font:10px/1.5 var(--font-mono);text-align:right;margin:20px 0 0}.rh-work{padding:80px 0 95px}.rh-work__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.rh-project{border:1px solid var(--hairline);background:var(--surface);border-radius:10px;flex-direction:column;display:flex;overflow:hidden}.rh-project__art{background:radial-gradient(circle at 75% 20%,#3b5a4e,#0000 60%),#0c1d1d;place-items:center;height:215px;display:grid;position:relative;overflow:hidden}.rh-project__art--atm{background:radial-gradient(circle at 70% 30%,#254d73,#0000 62%),#101e2b}.rh-project__art--identity{background:radial-gradient(circle at 70% 30%,#7c5f30,#0000 62%),#1f2020}.rh-project__art:before{content:"";background-image:linear-gradient(#ffffff0f 1px,#0000 1px),linear-gradient(90deg,#ffffff0f 1px,#0000 1px);background-size:25px 25px;position:absolute;inset:0}.rh-project__counter{color:#e6f7de;font:12px var(--font-mono);position:absolute;top:12px;left:13px}.rh-project__arttag{color:#e6f7da;font:8px var(--font-mono);background:#0f1b1bee;border:1px solid #749275;padding:6px 9px;position:absolute;bottom:12px;left:13px}.rh-project__artboard{background:#0c171acb;border:1px solid #637c77;border-radius:8px;width:min(77%,300px);height:150px;padding:12px 15px;overflow:hidden;transform:rotate(-3deg);box-shadow:0 17px 45px #0006}.rh-project__art--atm .rh-project__artboard{transform:rotate(3deg)}.rh-project__fakeheader{font:8px/1.5 var(--font-mono);color:#f0f4f0;white-space:nowrap;border-bottom:1px solid #485954;align-items:center;gap:5px;padding-bottom:11px;display:flex}.rh-project__fakeheader i{background:#d8f85a;border-radius:50%;width:5px;height:5px;display:block}.rh-project__fakeheader i:nth-child(2){background:#a3a9f3}.rh-project__fakeheader i:nth-child(3){background:#d1b492;margin-right:6px}.rh-project__mockgrid{grid-template-columns:repeat(6,1fr);gap:5px;margin:17px 0 13px;display:grid}.rh-project__mockgrid i{background:linear-gradient(#afd8843e,#1b3030);border:1px solid #66857580;border-radius:3px;height:28px}.rh-project__mockgrid i:nth-child(3n){background:linear-gradient(#ace7da60,#223939)}.rh-project__mockline{background:#a9c6a361;border-radius:6px;width:93%;height:4px;margin:8px 0}.rh-project__mockline--short{width:59%}.rh-project__content{flex-direction:column;flex:1;padding:22px 23px 23px;display:flex}.rh-project__label{color:var(--volt-text);font:700 9px var(--font-mono);letter-spacing:.08em;margin-bottom:10px}.rh-project__content h3{margin-bottom:13px;font-size:24px;line-height:1.15}.rh-project__content>p:not(.rh-project__label){color:var(--ink-muted);font-size:12px;line-height:1.7}.rh-project__chips{flex-wrap:wrap;gap:6px;margin-top:auto;padding-top:17px;display:flex}.rh-project__chips span{background:var(--surface-raised);border:1px solid var(--hairline);color:var(--ink-muted);border-radius:20px;padding:6px 9px;font-size:10px}.rh-morework{border:1px solid var(--hairline);background:var(--surface);border-radius:10px;grid-template-columns:.8fr 1.2fr;gap:clamp(25px,5vw,70px);margin-top:36px;padding:33px;display:grid}.rh-morework h3{margin-bottom:10px;font-size:27px}.rh-morework p:not(.rh-eyebrow){color:var(--ink-muted);font-size:13px;line-height:1.7}.rh-morework__items{flex-direction:column;display:flex}.rh-morework__items a{border-bottom:1px solid var(--hairline);justify-content:space-between;align-items:center;gap:15px;padding:13px 0;font-size:13px;font-weight:650;display:flex}.rh-morework__items a:hover{color:var(--volt-text)}.rh-morework__items small{font:10px/1.6 var(--font-mono);color:var(--ink-muted);font-weight:400;display:block}.rh-morework__items a>span:last-child{color:var(--volt-text);font-size:21px}.rh-contact-band{background:radial-gradient(circle at 93% 5%, #9cb564 0, transparent 35%), var(--rh-lime);color:#162111;border:1px solid #728a43;border-radius:13px;grid-template-columns:1.1fr .9fr;gap:35px;padding:clamp(45px,6vw,75px);display:grid}.rh-contact-band .rh-eyebrow,.rh-contact-band em{color:#4b6615}.rh-contact-band h2{font-size:clamp(38px,5vw,65px);font-weight:800;line-height:1.04}.rh-contact-band__copy>p:not(.rh-eyebrow){max-width:500px;margin:16px 0 22px;font-size:14px;line-height:1.7}.rh-button--dark{color:#f0f7e9;background:#131a11;border-color:#131a11}.rh-contact-band__details{border-left:1px solid #4c681b88;flex-direction:column;justify-content:center;align-items:flex-start;gap:16px;padding:12px 0 12px 26px;display:flex}.rh-contact-band__details span{color:#43551f;letter-spacing:.07em;font:10px/1.5 var(--font-mono)}.rh-contact-band__details a{color:#142016;overflow-wrap:anywhere;font-size:clamp(14px,1.6vw,19px);font-weight:700}.rh-contact-band__details a:hover{text-underline-offset:4px;text-decoration:underline}[data-theme=light] .rh-portrait{background:#f1f5e5}[data-theme=light] .rh-portrait__annotation{color:#52644c}[data-theme=light] .rh-hero h2 em{color:#4a6400}@media (max-width:1060px){.rh-technologies{flex-direction:column;align-items:flex-start;gap:7px}.rh-technologies__items{justify-content:flex-start}.rh-hero h1{font-size:clamp(52px,6vw,72px)}.rh-portrait__code{right:1%}.rh-metric{padding:14px}}@media (max-width:820px){.rh-hero{grid-template-columns:1fr}.rh-hero__copy{padding-top:60px}.rh-portrait{min-height:470px}.rh-portrait__halo{width:370px;max-width:69%;top:10%;left:20%}.rh-portrait__image{width:340px;max-width:66%;margin-bottom:64px}.rh-portrait__code{width:235px;top:21%;right:9%}.rh-about{grid-template-columns:1fr;gap:30px}.rh-skill-grid{grid-template-columns:1fr 1fr}.rh-skill-grid>:last-child{grid-column:1/-1}.rh-work__grid{grid-template-columns:1fr 1fr}.rh-work__grid>:last-child{grid-column:1/-1}.rh-morework{grid-template-columns:1fr}}@media (max-width:560px){.rh-hero__copy{padding-top:43px;padding-bottom:15px}.rh-hero h1{font-size:clamp(52px,11vw,77px)}.rh-hero h2{font-size:clamp(29px,7.6vw,43px)}.rh-hero__text{font-size:14px}.rh-portrait{min-height:350px}.rh-portrait__image{width:238px;max-width:72%;margin-bottom:40px}.rh-portrait__halo{width:255px;max-width:74%;top:14%}.rh-portrait__code{width:185px;top:26%;right:0}.rh-portrait__code code{padding:8px;font-size:8px}.rh-portrait__annotation{font-size:8px;bottom:18px;left:3%}.rh-tech{padding:6px;font-size:10px}.rh-about{padding:65px 0}.rh-metrics{grid-template-columns:1fr 1fr;gap:9px}.rh-metric{flex-direction:column;align-items:flex-start;gap:8px;min-height:132px}.rh-metric strong{font-size:17px}.rh-metric__icon{width:36px;height:36px}.rh-skills,.rh-work{padding:65px 0}.rh-skill-grid,.rh-work__grid{grid-template-columns:1fr}.rh-skill-grid>:last-child,.rh-work__grid>:last-child{grid-column:auto}.rh-skill>p{min-height:0}.rh-project__art{height:200px}.rh-morework{padding:22px}.rh-contact-band{grid-template-columns:1fr;padding:35px 25px}.rh-contact-band__details{border-top:1px solid #4c681b88;border-left:0;padding:25px 0 0}}@media (prefers-reduced-motion:reduce){.resume-home *,.resume-home :before,.resume-home :after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
