@font-face{font-family:geonms;src:url(/_next/static/media/9dd3b1f2770c0010-s.p.woff2) format("woff2");font-display:swap;font-weight:400}@font-face{font-family:geonms Fallback;src:local("Arial");ascent-override:104.00%;descent-override:26.66%;line-gap-override:0.00%;size-adjust:86.81%}.__className_2d8088{font-family:geonms,geonms Fallback;font-weight:400}.footer_footer__PZD4d{display:flex;justify-content:center;padding:6px 24px;color:var(--foreground);background-color:var(--footer-background)}@media screen and (max-width:768px){.footer_footer__PZD4d{flex-direction:column;align-items:center}}.socials_socialLinks__O7wxL{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:12px}.socials_socialLinks__O7wxL a{text-decoration:none;font-size:1.2rem}@media screen and (max-width:768px){.socials_socialLinks__O7wxL{grid-gap:20px}.socials_socialLinks__O7wxL a{text-decoration:none;font-size:1.8rem}}@font-face{font-family:Raleway;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/200388358b398524-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Raleway;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/34900c74a84112b6-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Raleway;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/10dadb2e82d03733-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Raleway;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/95d1875af7c44e92-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Raleway;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/630c17af355fa44e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Raleway;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/200388358b398524-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Raleway;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/34900c74a84112b6-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Raleway;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/10dadb2e82d03733-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Raleway;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/95d1875af7c44e92-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Raleway;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/630c17af355fa44e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Raleway Fallback;src:local("Arial");ascent-override:90.51%;descent-override:22.53%;line-gap-override:0.00%;size-adjust:103.86%}.__className_0c7754{font-family:Raleway,Raleway Fallback;font-style:normal}.hero_hero__vlnW3{padding:72px 24px 24px;background:var(--hero-gradient)}.hero_heroContent__TkhGe{max-width:-moz-fit-content;max-width:fit-content;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;grid-gap:100px;align-items:center}.hero_heroInfo__1aWmp{display:flex;flex-direction:column;align-items:flex-start;padding:32px}.hero_heroInfo__1aWmp h1{font-size:2.4rem;color:var(--foreground)}.hero_heroInfo__1aWmp .hero_tagline__SO9Fn{font-size:1.2rem;color:var(--foreground)}.hero_headshot__8FVzT{display:grid;align-items:center;justify-items:center;grid-gap:8px;grid-template-columns:repeat(4,1fr);grid-template-areas:"functionDef functionDef a a" "headshotImg headshotImg headshotImg headshotImg" "b b functionBlock functionBlock";color:var(--dark-text)}@keyframes hero_headshotFloat__Bb80q{0%{transform:translateY(0)}50%{transform:translateY(-15px)}to{transform:translateY(0)}}@keyframes hero_functionDefFloat__7TpOf{0%{transform:translateY(0)}50%{transform:translateY(-15px)}to{transform:translateY(0)}}@keyframes hero_functionBlockFloat__zLGQA{0%{transform:translateY(0)}50%{transform:translateY(-15px)}to{transform:translateY(0)}}.hero_headshot__8FVzT .hero_functionDef__RY0B4{background-color:var(--dark-teal);grid-area:functionDef;border-radius:100px;padding:16px 20px;border:var(--hero-outlines);box-shadow:var(--hero-background-glow);font-weight:700;min-width:220px;animation-delay:.4s;animation-duration:5s;animation-name:hero_functionDefFloat__7TpOf;animation-iteration-count:infinite;animation-timing-function:cubic-bezier(.5,.3,.5,1.31)}.hero_headshot__8FVzT .hero_headshotImg__jVHPe{grid-area:headshotImg;width:400px;height:400px;-webkit-mask-image:radial-gradient(circle at center,#000 67%,transparent 70%);mask-image:radial-gradient(circle at center,#000 67%,transparent 70%);animation-delay:.1s;animation-duration:5s;animation-name:hero_headshotFloat__Bb80q;animation-iteration-count:infinite;animation-timing-function:cubic-bezier(.5,.3,.5,1.31)}.hero_headshot__8FVzT .hero_functionBlock__QSBEt{background-color:var(--dark-teal);grid-area:functionBlock;border-radius:100px;border:var(--hero-outlines);padding:16px 32px;box-shadow:var(--hero-background-glow);font-weight:700;min-width:200px;animation-delay:.5s;animation-duration:5s;animation-name:hero_functionBlockFloat__zLGQA;animation-iteration-count:infinite;animation-timing-function:cubic-bezier(.5,.3,.5,1.31)}.hero_headshot__8FVzT .hero_functionBlock__QSBEt p:nth-child(2){padding-left:16px}@media screen and (max-width:1500px){.hero_headshot__8FVzT .hero_functionBlock__QSBEt,.hero_headshot__8FVzT .hero_functionDef__RY0B4{font-size:.8rem}}@media screen and (max-width:830px){.hero_hero__vlnW3{padding:32px 12px}.hero_heroInfo__1aWmp{padding:16px 24px}.hero_heroContent__TkhGe{grid-template-columns:1fr;grid-gap:20px}}@media screen and (max-width:520px){.hero_headshot__8FVzT{grid-gap:12px;grid-template-columns:repeat(3,1fr);grid-template-areas:"functionDef functionDef a" "headshotImg headshotImg headshotImg" "b functionBlock functionBlock"}.hero_headshot__8FVzT .hero_functionBlock__QSBEt,.hero_headshot__8FVzT .hero_functionDef__RY0B4{min-width:-moz-fit-content;min-width:fit-content}.hero_headshot__8FVzT .hero_headshotImg__jVHPe{width:300px;height:300px}}@media screen and (max-width:360px){.hero_headshot__8FVzT{grid-gap:12px;grid-template-columns:repeat(2,1fr);grid-template-areas:"functionDef functionDef" "headshotImg headshotImg" "functionBlock functionBlock"}}.skillsGrid_skillsSection__3Hu2b{background-color:var(--skills-background);padding:48px}.skillsGrid_skillsSection__3Hu2b h2{text-align:center}.skillsGrid_skillsGrid__djrcU{display:grid;grid-template-columns:repeat(5,1fr);grid-auto-rows:1fr;grid-gap:16px;gap:16px;padding:24px;max-width:1100px;margin:0 auto}.skillsGrid_skillItem__rmF5n{display:flex;justify-content:center;align-items:center;text-align:center;background-color:var(--skills-charms);max-width:200px;border-radius:8px;padding:16px}@media screen and (max-width:900px){.skillsGrid_skillsGrid__djrcU{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}@media screen and (max-width:750px){.skillsGrid_skillItemSecondary___46pP{display:none}}@media screen and (max-width:520px){.skillsGrid_skillsSection__3Hu2b{padding:16px}.skillsGrid_skillsGrid__djrcU{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.skillsGrid_skillItem__rmF5n{padding:8px}}.projectCard_projectCard__nUrRn{display:grid;grid-template-columns:repeat(6,1fr);grid-template-rows:200px auto 1fr auto 60px;grid-template-areas:"image image image image image image" "title title title title title title" "desc desc desc desc desc desc" "tech tech tech tech tech tech" "links links links links links links";align-items:start;max-width:400px;background-color:var(--project-card-background);border-radius:10px;overflow:hidden;padding-bottom:10px;grid-gap:16px;gap:16px}.projectCard_projectCard__nUrRn h3{grid-area:title;font-size:1.5rem;font-weight:700;text-align:center}.projectCard_projectCard__nUrRn .projectCard_imageContainer__U_nTV{grid-area:image;width:100%;height:100%;overflow:hidden}.projectCard_projectCard__nUrRn img{object-fit:cover;border-radius:10px 10px 0 0;border-bottom:2px solid var(--project-card-dividers)}.projectCard_projectCard__nUrRn p{grid-area:desc;padding:0 20px}.projectCard_techList___APHL{grid-area:tech;display:flex;justify-content:center;flex-wrap:wrap;list-style:none;gap:10px;margin:0;padding:10px;border-top:1px solid var(--project-card-dividers);border-bottom:1px solid var(--project-card-dividers)}.projectCard_techList___APHL li{background-color:var(--skills-charms);padding:5px 10px;border-radius:5px}.projectCard_links__Z2BSe{grid-area:links;display:grid;grid-template-columns:1fr auto;padding:0 10px;min-height:100%;align-items:center}.projectCard_links__Z2BSe .projectCard_siteLink___7NVt{display:flex;align-items:center;padding:0 10px}.projectCard_links__Z2BSe .projectCard_gitHub__mbysg{display:grid;grid-template-columns:1fr auto;align-items:center}.projectCard_links__Z2BSe .projectCard_gitHubLinks__XoeGR{display:flex;flex-direction:column;gap:.5rem;align-items:flex-end;justify-content:flex-end;padding:0 10px}.projectCard_links__Z2BSe a{font-weight:700;font-size:.8rem}@media screen and (max-width:1100px){.projectCard_projectCard__nUrRn p{font-size:.8rem}}@media screen and (max-width:768px){.projectCard_links__Z2BSe .projectCard_gitHubLinks__XoeGR{gap:1.5rem}.projectCard_links__Z2BSe a{font-size:1.2rem}}@media screen and (max-width:520px){.projectCard_projectCard__nUrRn{grid-template-rows:200px auto 1fr auto auto}}.projectsGrid_projectsSection__TrytE{padding:48px 0}.projectsGrid_projectsSection__TrytE h2{text-align:center}.projectsGrid_projectsGrid__uiCsV{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:24px;gap:24px;justify-items:center;padding:24px;max-width:1300px;margin:0 auto}@media screen and (max-width:830px){.projectsGrid_projectsGrid__uiCsV{grid-template-columns:repeat(2,1fr)}}@media screen and (max-width:520px){.projectsGrid_projectsGrid__uiCsV{grid-template-columns:1fr}}.page_about__aOfOo{padding:24px 80px;font-size:1rem}.page_about__aOfOo p{margin:16px 0}@media screen and (max-width:520px){.page_about__aOfOo{padding:32px}.page_about__aOfOo p{margin:12px 0}}@media screen and (max-width:360px){.page_about__aOfOo{padding:24px}}