.portfolio-module__EktnjW__root{--accent:#b8ee80;--muted:#a0aaa2;--stroke:#29352f;color:#edf2e9;background:radial-gradient(at 75% 5%,#1b2c22 0,#0000 25%),#0c1410;padding-bottom:24px}.portfolio-module__EktnjW__wrap{width:min(1220px,100% - 80px);margin-inline:auto}.portfolio-module__EktnjW__root a{-webkit-tap-highlight-color:transparent}.portfolio-module__EktnjW__root a:focus-visible{outline:2px solid var(--accent);outline-offset:6px}.portfolio-module__EktnjW__root h1,.portfolio-module__EktnjW__root h2,.portfolio-module__EktnjW__root h3,.portfolio-module__EktnjW__root h4,.portfolio-module__EktnjW__root p{margin-top:0}.portfolio-module__EktnjW__root h2{letter-spacing:-.045em;margin-bottom:0;font-size:clamp(28px,3.2vw,42px);font-weight:650;line-height:1.35}.portfolio-module__EktnjW__root h2>span{color:var(--accent)}.portfolio-module__EktnjW__kicker{font:10px/1.65 var(--font-mono);letter-spacing:.13em;color:var(--accent);overflow-wrap:anywhere;margin-bottom:14px}.portfolio-module__EktnjW__hero{grid-template-columns:1fr 1.08fr;align-items:center;gap:54px;padding-block:76px 60px;display:grid}.portfolio-module__EktnjW__heroCopy{min-width:0}.portfolio-module__EktnjW__availability{color:#c1cbbf;align-items:center;gap:9px;margin-bottom:40px;font-size:12px;line-height:1.7;display:flex}.portfolio-module__EktnjW__availability i,.portfolio-module__EktnjW__sceneTop i{background:var(--accent);border-radius:50%;flex-shrink:0;width:6px;height:6px;box-shadow:0 0 12px #b8ee8055}.portfolio-module__EktnjW__identity{color:#bec8bb;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:20px;font-size:15px;display:flex}.portfolio-module__EktnjW__identity span{color:#5e7665}.portfolio-module__EktnjW__hero h1{letter-spacing:-.055em;margin-bottom:23px;font-size:clamp(40px,4.45vw,64px);font-weight:700;line-height:1.24}.portfolio-module__EktnjW__hero h1>span{color:var(--accent)}.portfolio-module__EktnjW__intro{max-width:440px;color:var(--muted);margin-bottom:27px;font-size:14px;line-height:1.95}.portfolio-module__EktnjW__actions,.portfolio-module__EktnjW__projectActions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.portfolio-module__EktnjW__primary,.portfolio-module__EktnjW__secondary{border:1px solid #0000;border-radius:7px;justify-content:center;align-items:center;gap:13px;min-height:46px;padding:12px 21px;font-size:13px;font-weight:650;transition:transform .18s,background .18s;display:inline-flex}.portfolio-module__EktnjW__primary{background:var(--accent);color:#132015}.portfolio-module__EktnjW__primary:hover{background:#cdf6a6;transform:translateY(-2px)}.portfolio-module__EktnjW__secondary{color:#d9e3d4;background:0 0;border-color:#3b4a3e}.portfolio-module__EktnjW__secondary:hover{background:#1d2b21;transform:translateY(-2px)}.portfolio-module__EktnjW__heroMeta{color:#859786;flex-wrap:wrap;align-items:center;gap:19px;margin-top:29px;font-size:10px;display:flex}.portfolio-module__EktnjW__heroMeta span{align-items:center;gap:5px;display:flex}.portfolio-module__EktnjW__heroMeta span:last-child{font-family:var(--font-mono);letter-spacing:.06em;font-size:9px}.portfolio-module__EktnjW__heroVisual{background:linear-gradient(145deg,#23372880,#0d1910);border:1px solid #43533c;border-radius:14px;min-width:0;position:relative;transform:perspective(1500px)rotateY(-5deg)rotateX(2deg);box-shadow:12px 15px 0 -3px #0c1410,12px 15px 0 -2px #2f3d30,0 30px 80px #0003}.portfolio-module__EktnjW__sceneTop{color:#879c86;font:9px/1.5 var(--font-mono);letter-spacing:.1em;border-bottom:1px solid #324333;flex-wrap:wrap;justify-content:space-between;gap:8px;padding:18px 22px;display:flex}.portfolio-module__EktnjW__sceneTop span{align-items:center;gap:8px;display:inline-flex}.portfolio-module__EktnjW__sceneTop span:first-child{color:#c2dfa4}.portfolio-module__EktnjW__heroVisual>svg{width:100%;height:auto;display:block}.portfolio-module__EktnjW__sceneBottom{justify-content:space-between;align-items:center;gap:15px;padding:0 23px 15px;display:flex}.portfolio-module__EktnjW__sceneBottom span{font:9px/1.5 var(--font-mono);letter-spacing:.12em;color:#8aa47c;margin-bottom:8px;display:block}.portfolio-module__EktnjW__sceneBottom strong{font-size:clamp(16px,1.6vw,22px);font-weight:550}.portfolio-module__EktnjW__sceneBottom>a{width:44px;height:44px;color:var(--accent);border:1px solid #526344;border-radius:50%;flex-shrink:0;place-items:center;display:grid}.portfolio-module__EktnjW__sceneBottom>a:hover{background:#314227}.portfolio-module__EktnjW__visualCaption{color:#879785;margin-bottom:0;padding:0 23px 15px;font-size:10px}.portfolio-module__EktnjW__indexStrip{border-block:1px solid var(--stroke);grid-template-columns:1.35fr repeat(3,1fr);gap:28px;padding-block:25px;display:grid}.portfolio-module__EktnjW__indexStrip>span{color:var(--accent);align-items:center;gap:14px;display:flex}.portfolio-module__EktnjW__indexStrip b{color:#bdc9b7;font-size:12px;font-weight:500;line-height:1.65}.portfolio-module__EktnjW__indexStrip>a{color:var(--muted);border-left:1px solid var(--stroke);align-items:center;gap:14px;padding-left:24px;font-size:11px;display:flex}.portfolio-module__EktnjW__indexStrip strong{color:#e8efe1;font:29px/1.2 var(--font-mono);font-weight:400}.portfolio-module__EktnjW__indexStrip>a svg{color:#79916a;margin-left:auto}.portfolio-module__EktnjW__section{padding-top:86px;scroll-margin-top:100px}.portfolio-module__EktnjW__sectionHeading{justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:30px;display:flex}.portfolio-module__EktnjW__sectionHeading>p{color:var(--muted);margin:0;font-size:12px;line-height:1.8}.portfolio-module__EktnjW__textLink{color:#d0dec4;align-items:center;gap:10px;font-size:12px;line-height:1.8;display:inline-flex}.portfolio-module__EktnjW__textLink:hover{color:var(--accent)}.portfolio-module__EktnjW__featured{border:1px solid var(--stroke);background:#131e17;border-radius:12px;grid-template-columns:1fr 1.1fr;display:grid;overflow:hidden}.portfolio-module__EktnjW__featuredImage{border-right:1px solid var(--stroke);background:radial-gradient(#29412c,#14241a);flex-direction:column;justify-content:center;min-width:0;padding:22px;display:flex;position:relative}.portfolio-module__EktnjW__featuredImage>svg{width:100%;height:auto;display:block}.portfolio-module__EktnjW__imageLabel{font:9px/1.5 var(--font-mono);letter-spacing:.1em;color:#9bb391;justify-content:space-between;align-items:center;gap:12px;display:flex}.portfolio-module__EktnjW__featuredImage>.portfolio-module__EktnjW__imageLabel{position:absolute;top:22px;left:22px;right:22px}.portfolio-module__EktnjW__featuredImage>small,.portfolio-module__EktnjW__projectImage>small{color:#8da185;font-size:10px}.portfolio-module__EktnjW__featuredImage>small{position:absolute;bottom:22px;left:22px}.portfolio-module__EktnjW__featuredCopy{min-width:0;padding:33px}.portfolio-module__EktnjW__featuredCopy h3{letter-spacing:-.035em;margin-bottom:13px;font-size:27px;font-weight:600;line-height:1.4}.portfolio-module__EktnjW__projectSummary{color:#a6b39f;margin-bottom:18px;font-size:13px;line-height:1.9}.portfolio-module__EktnjW__projectMeta{border-bottom:1px solid var(--stroke);flex-wrap:wrap;gap:16px 40px;margin:0 0 18px;padding-bottom:17px;display:flex}.portfolio-module__EktnjW__projectMeta dt{color:#829379;margin-bottom:6px;font-size:10px}.portfolio-module__EktnjW__projectMeta dd{color:#cbd7c2;margin:0;font-size:12px}.portfolio-module__EktnjW__highlights{gap:8px;margin:0 0 22px;padding:0;list-style:none;display:grid}.portfolio-module__EktnjW__highlights li{color:#b7c5af;padding-left:14px;font-size:12px;line-height:1.7;position:relative}.portfolio-module__EktnjW__highlights li:before{content:"";background:var(--accent);width:4px;height:4px;position:absolute;top:.7em;left:0}.portfolio-module__EktnjW__tags{flex-wrap:wrap;gap:6px;display:flex}.portfolio-module__EktnjW__tags>span{color:#a7bc98;border:1px solid #354632;border-radius:4px;padding:4px 9px;font-size:10px;line-height:1.5}.portfolio-module__EktnjW__projectActions{gap:22px;margin-top:24px}.portfolio-module__EktnjW__otherProjects{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:22px;display:grid}.portfolio-module__EktnjW__project{border:1px solid var(--stroke);background:#111d16;border-radius:12px;overflow:hidden}.portfolio-module__EktnjW__projectImage{background:linear-gradient(145deg,#1d2f2c,#15221f);padding:22px;display:block;position:relative}.portfolio-module__EktnjW__projectImage>svg{width:100%;height:auto;max-height:225px;transition:transform .25s;display:block}.portfolio-module__EktnjW__projectImage:hover>svg{transform:translateY(-5px)}.portfolio-module__EktnjW__projectImage small{text-align:right;display:block}.portfolio-module__EktnjW__projectBody{padding:26px}.portfolio-module__EktnjW__projectBody h3{margin-bottom:13px;font-size:22px;font-weight:550;line-height:1.4}.portfolio-module__EktnjW__projectBody h3 a{justify-content:space-between;align-items:center;gap:12px;display:flex}.portfolio-module__EktnjW__projectBody h3 svg{color:var(--accent);flex-shrink:0}.portfolio-module__EktnjW__projectBody>p:not(.portfolio-module__EktnjW__kicker){color:var(--muted);min-height:3.8em;margin-bottom:21px;font-size:13px;line-height:1.9}.portfolio-module__EktnjW__skills{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.portfolio-module__EktnjW__skills>article{border:1px solid var(--stroke);background:#131e17;border-radius:9px;padding:24px}.portfolio-module__EktnjW__skillNumber{color:#7f9576;font:11px/1.5 var(--font-mono);justify-content:space-between;align-items:center;margin-bottom:38px;display:flex}.portfolio-module__EktnjW__skillNumber svg{color:#bad59f}.portfolio-module__EktnjW__skills h3{margin-bottom:11px;font-size:17px;font-weight:550;line-height:1.5}.portfolio-module__EktnjW__skills p{color:var(--muted);margin-bottom:22px;font-size:12px;line-height:1.8}.portfolio-module__EktnjW__skillLevel{color:#aeca98;font-size:10px}.portfolio-module__EktnjW__experience{grid-template-columns:.7fr 1.3fr;gap:75px;display:grid}.portfolio-module__EktnjW__experienceIntro>p:not(.portfolio-module__EktnjW__kicker){max-width:295px;color:var(--muted);margin-top:22px;font-size:13px;line-height:1.9}.portfolio-module__EktnjW__experienceIntro>a{margin-top:8px}.portfolio-module__EktnjW__timeline{border-left:1px solid #3b4e35;margin-left:5px;padding-left:30px}.portfolio-module__EktnjW__timeline article{border-bottom:1px solid var(--stroke);margin-bottom:30px;padding-bottom:34px;position:relative}.portfolio-module__EktnjW__timeline article:last-child{margin-bottom:0}.portfolio-module__EktnjW__timelineDot{border:2px solid var(--accent);background:#0c1410;border-radius:50%;width:9px;height:9px;position:absolute;top:3px;left:-35px;box-shadow:0 0 0 5px #0c1410}.portfolio-module__EktnjW__timelineTop{color:#97b17e;font:10px/1.6 var(--font-mono);flex-wrap:wrap;justify-content:space-between;gap:10px;margin-bottom:17px;display:flex}.portfolio-module__EktnjW__timelineTop time{color:#86957c}.portfolio-module__EktnjW__timeline h3{margin-bottom:8px;font-size:21px;font-weight:550;line-height:1.5}.portfolio-module__EktnjW__timeline h4{color:#c3d3b9;margin-bottom:17px;font-size:13px;font-weight:450;line-height:1.6}.portfolio-module__EktnjW__timeline p,.portfolio-module__EktnjW__timeline li{color:var(--muted);font-size:12px;line-height:1.95}.portfolio-module__EktnjW__timeline ul{margin:0;padding-left:16px}.portfolio-module__EktnjW__timeline li+li{margin-top:10px}.portfolio-module__EktnjW__resources{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.portfolio-module__EktnjW__resources>a{border:1px solid var(--stroke);background:#142019;border-radius:10px;padding:28px;transition:background .18s,transform .18s}.portfolio-module__EktnjW__resources>a:hover{background:#1d2d21;transform:translateY(-4px)}.portfolio-module__EktnjW__resourceTop{color:#b8d6a1;justify-content:space-between;align-items:center;margin-bottom:36px;display:flex}.portfolio-module__EktnjW__resourceTop>span{color:#72866a;font:11px/1.5 var(--font-mono)}.portfolio-module__EktnjW__resources p{color:#8da37d;font:9px/1.6 var(--font-mono);letter-spacing:.1em;margin-bottom:8px}.portfolio-module__EktnjW__resources h3{justify-content:space-between;align-items:center;margin-bottom:12px;font-size:22px;font-weight:550;line-height:1.6;display:flex}.portfolio-module__EktnjW__resourceDescription{color:var(--muted);font-size:12px;line-height:1.9}.portfolio-module__EktnjW__contact{background:linear-gradient(110deg,#213222,#17231a);border:1px solid #3e5433;border-radius:12px;justify-content:space-between;align-items:center;gap:45px;margin-top:86px;padding:48px;display:flex}.portfolio-module__EktnjW__contact h2{font-size:clamp(29px,3.5vw,46px)}.portfolio-module__EktnjW__contact p:not(.portfolio-module__EktnjW__kicker){color:#acbfa0;margin-block:18px 0;font-size:12px;line-height:1.8}.portfolio-module__EktnjW__contactActions{gap:12px;min-width:220px;display:grid}.portfolio-module__EktnjW__email{color:#a3b493;font:11px/1.7 var(--font-mono);text-align:center;overflow-wrap:anywhere;padding-top:7px}.portfolio-module__EktnjW__empty{border:1px solid var(--stroke);color:var(--muted);border-radius:10px;padding:40px}@media (min-width:1600px){.portfolio-module__EktnjW__hero{padding-block:90px 75px}}@media (max-width:1100px){.portfolio-module__EktnjW__wrap{width:calc(100% - 60px)}.portfolio-module__EktnjW__hero{gap:30px;padding-block:60px}.portfolio-module__EktnjW__hero h1{font-size:clamp(38px,4.6vw,55px)}.portfolio-module__EktnjW__availability{margin-bottom:27px}.portfolio-module__EktnjW__featuredCopy{padding:25px}.portfolio-module__EktnjW__featuredCopy h3{font-size:24px}.portfolio-module__EktnjW__skills{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-module__EktnjW__experience{gap:40px}}@media (max-width:820px){.portfolio-module__EktnjW__wrap{width:calc(100% - 40px)}.portfolio-module__EktnjW__hero{grid-template-columns:1fr;gap:37px;padding-block:38px 40px}.portfolio-module__EktnjW__hero h1{font-size:clamp(38px,7.4vw,58px)}.portfolio-module__EktnjW__intro{max-width:560px}.portfolio-module__EktnjW__heroVisual{width:calc(100% - 12px);max-width:620px;margin-inline:auto;transform:none}.portfolio-module__EktnjW__heroVisual>svg{max-height:365px}.portfolio-module__EktnjW__heroMeta{margin-top:23px}.portfolio-module__EktnjW__availability{margin-bottom:25px}.portfolio-module__EktnjW__indexStrip{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.portfolio-module__EktnjW__indexStrip>span{display:none}.portfolio-module__EktnjW__indexStrip>a{flex-wrap:wrap;gap:8px;padding-left:14px}.portfolio-module__EktnjW__indexStrip strong{font-size:24px}.portfolio-module__EktnjW__indexStrip>a svg{display:none}.portfolio-module__EktnjW__featured{grid-template-columns:1fr}.portfolio-module__EktnjW__featuredImage{border-right:0;border-bottom:1px solid var(--stroke);min-height:330px}.portfolio-module__EktnjW__featuredImage>svg{max-height:360px}.portfolio-module__EktnjW__section{padding-top:60px}.portfolio-module__EktnjW__sectionHeading{align-items:flex-start}.portfolio-module__EktnjW__sectionHeading>p{display:none}.portfolio-module__EktnjW__projectBody{padding:21px}.portfolio-module__EktnjW__projectBody h3{font-size:20px}.portfolio-module__EktnjW__otherProjects{gap:16px}.portfolio-module__EktnjW__experience{grid-template-columns:1fr;gap:30px}.portfolio-module__EktnjW__experienceIntro>p:not(.portfolio-module__EktnjW__kicker){max-width:520px}.portfolio-module__EktnjW__resources{gap:12px}.portfolio-module__EktnjW__resources>a{padding:20px}.portfolio-module__EktnjW__resources h3{font-size:18px}.portfolio-module__EktnjW__contact{margin-top:60px;padding:32px}}@media (max-width:540px){.portfolio-module__EktnjW__hero h1{font-size:42px}.portfolio-module__EktnjW__identity{font-size:13px}.portfolio-module__EktnjW__hero .portfolio-module__EktnjW__kicker{font-size:9px}.portfolio-module__EktnjW__heroVisual>svg{max-height:none}.portfolio-module__EktnjW__sceneTop{padding:14px;font-size:8px}.portfolio-module__EktnjW__sceneBottom,.portfolio-module__EktnjW__visualCaption{padding-inline:17px}.portfolio-module__EktnjW__heroMeta{gap:12px}.portfolio-module__EktnjW__otherProjects,.portfolio-module__EktnjW__resources{grid-template-columns:1fr}.portfolio-module__EktnjW__projectImage>svg{max-height:200px}.portfolio-module__EktnjW__featuredImage{min-height:280px;padding:10px}.portfolio-module__EktnjW__featuredCopy{padding:24px 20px}.portfolio-module__EktnjW__skills{gap:10px}.portfolio-module__EktnjW__skills>article{padding:20px 15px}.portfolio-module__EktnjW__skills h3{font-size:15px}.portfolio-module__EktnjW__skillNumber{margin-bottom:25px}.portfolio-module__EktnjW__sectionHeading{gap:15px}.portfolio-module__EktnjW__sectionHeading .portfolio-module__EktnjW__textLink{flex-shrink:0;padding-top:6px;font-size:11px}.portfolio-module__EktnjW__root h2{font-size:27px}.portfolio-module__EktnjW__resources>a{padding:25px}.portfolio-module__EktnjW__resourceTop{margin-bottom:23px}.portfolio-module__EktnjW__resources h3{font-size:22px}.portfolio-module__EktnjW__contact{flex-direction:column;align-items:stretch;gap:30px;padding:28px 23px}.portfolio-module__EktnjW__contact h2{font-size:36px}.portfolio-module__EktnjW__timeline{padding-left:23px}.portfolio-module__EktnjW__timelineDot{left:-28px}.portfolio-module__EktnjW__timeline h3{font-size:19px}}@media (prefers-reduced-motion:reduce){.portfolio-module__EktnjW__root *,.portfolio-module__EktnjW__root :before,.portfolio-module__EktnjW__root :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
