.portfolio{--p-ink:#1d1d1f;--p-muted:#6e6e73;--p-line:#e8e8ed;--p-cloud:#f5f5f7;--p-blue:#0071e3;background:#fff;color:var(--p-ink);font-family:Arial,Helvetica,sans-serif;letter-spacing:-.015em;overflow:hidden}.portfolio *{box-sizing:border-box}.portfolio a{color:inherit;text-decoration:none}.portfolio-nav{align-items:center;border-bottom:1px solid var(--p-line);display:flex;height:72px;justify-content:space-between;margin:auto;max-width:1200px;padding:0 7.5%}.portfolio-brand{align-items:center;display:flex;font-size:12px;font-weight:600;gap:10px}.portfolio-brand>span{align-items:center;background:var(--p-ink);border-radius:50%;color:#fff;display:flex;font-size:10px;height:27px;justify-content:center;letter-spacing:-.08em;width:27px}.portfolio-navlinks{align-items:center;display:flex;gap:31px}.portfolio-navlinks>a{color:var(--p-muted);font-size:11px;transition:color .2s}.portfolio-navlinks>a:hover{color:var(--p-blue)}.portfolio-navlinks .portfolio-nav-cta{align-items:center;border:1px solid #d2d2d7;border-radius:99px;color:var(--p-ink);display:flex;gap:6px;padding:9px 14px}.portfolio-hero{margin:auto;max-width:1200px;min-height:665px;overflow:hidden;padding:120px 9% 70px;position:relative}.portfolio-hero-copy{max-width:640px;position:relative;z-index:2}.portfolio-availability{align-items:center;color:var(--p-muted);display:flex;font-size:9px;font-weight:600;gap:9px;letter-spacing:.12em}.portfolio-availability i{background:#34a56b;border-radius:50%;height:6px;width:6px}.portfolio-hero h1{font-size:clamp(61px,7.2vw,86px);font-weight:600;letter-spacing:-.085em;line-height:.97;margin:34px 0 25px}.portfolio-footer h2 em,.portfolio-hero h1 em{color:#a1a1a6;font-style:normal}.portfolio-intro{color:var(--p-muted);font-size:15px;line-height:1.75;margin:0;max-width:410px}.portfolio-hero-actions{align-items:center;display:flex;gap:25px;margin-top:30px}.portfolio-button{align-items:center;border-radius:99px;display:inline-flex;font-size:11px;font-weight:600;gap:11px;padding:14px 18px;transition:transform .2s,background .2s}.portfolio-button:hover{transform:translateY(-2px)}.portfolio-button-primary{background:var(--p-blue);color:#fff!important}.portfolio-button-primary:hover{background:#0062c4}.portfolio-text-link{align-items:center;color:var(--p-ink);display:flex;font-size:11px;font-weight:600;gap:6px}.portfolio-text-link svg{color:var(--p-blue)}.portfolio-socials{align-items:center;display:flex;gap:22px;margin-top:57px}.portfolio-socials a,.portfolio-socials>span{align-items:center;color:var(--p-muted);display:flex;font-size:10px;gap:5px}.portfolio-socials a:hover{color:var(--p-blue)}.portfolio-socials>span{color:#929297;margin-left:3px}.portfolio-hero-art{height:335px;position:absolute;right:7%;top:130px;width:335px}.portfolio-art-orbit{border:1px solid #f0f0f2;border-radius:50%;inset:0;position:absolute}.orbit-two{inset:36px}.orbit-three{inset:76px}.portfolio-art-core{align-items:center;background:#f5f5f7;border-radius:50%;display:flex;flex-direction:column;height:145px;justify-content:center;left:95px;position:absolute;top:95px;width:145px}.portfolio-art-core>span{font-size:44px;font-weight:500;letter-spacing:-.1em;line-height:1}.portfolio-art-core small{color:#929297;font-size:7px;letter-spacing:.13em;line-height:1.45;margin-top:11px;text-align:center}.portfolio-art-note{align-items:center;background:#fff;border:1px solid var(--p-line);border-radius:9px;bottom:33px;box-shadow:0 8px 24px rgba(0,0,0,.05);color:#6e6e73;display:flex;font-size:9px;gap:8px;line-height:1.4;padding:11px 14px;position:absolute;right:-4px}.portfolio-art-note svg{color:var(--p-blue)}.portfolio-hero-index{align-items:center;bottom:32px;color:#929297;display:flex;font-size:8px;gap:9px;letter-spacing:.14em;position:absolute;right:9%}.portfolio-hero-index svg{color:var(--p-blue)}.portfolio-section{border-top:1px solid var(--p-line);margin:auto;max-width:1200px;padding:88px 9% 100px}.portfolio-section-heading{align-items:end;display:flex;gap:40px;justify-content:space-between;margin-bottom:42px}.portfolio-kicker{color:#929297;display:block;font-size:9px;font-weight:600;letter-spacing:.13em}.portfolio-section-heading h2{font-size:34px;font-weight:600;letter-spacing:-.06em;line-height:1.12;margin:14px 0 0}.portfolio-section-heading>p{color:var(--p-muted);font-size:12px;line-height:1.65;margin:0 0 2px;max-width:280px}.portfolio-featured-grid{display:grid;gap:17px;grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-project-card{background:#fff;border:1px solid var(--p-line);border-radius:14px;color:var(--p-ink);cursor:pointer;display:flex;flex-direction:column;overflow:hidden;padding:0;text-align:left;transition:transform .25s,box-shadow .25s}.portfolio-project-card:hover{box-shadow:0 14px 38px rgba(0,0,0,.07);transform:translateY(-4px)}.portfolio-project-image{align-items:center;background:var(--p-cloud);display:flex;height:265px;justify-content:center;overflow:hidden;padding:23px;position:relative}.portfolio-project-image img{height:100%;object-fit:contain;transition:transform .35s;width:100%}.portfolio-project-card:hover .portfolio-project-image img{transform:scale(1.035)}.portfolio-project-image>span{background:hsla(0,0%,100%,.85);border:1px solid rgba(0,0,0,.05);border-radius:99px;color:#6e6e73;font-size:8px;letter-spacing:.06em;padding:7px 10px;position:absolute;right:14px;top:14px}.portfolio-project-info{padding:19px 20px 20px}.portfolio-project-top{align-items:center;display:flex;justify-content:space-between}.portfolio-project-top h3{font-size:18px;letter-spacing:-.045em;margin:0}.portfolio-project-top>span{align-items:center;border:1px solid var(--p-line);border-radius:50%;color:#6e6e73;display:flex;height:31px;justify-content:center;transition:background .2s,color .2s;width:31px}.portfolio-project-card:hover .portfolio-project-top>span{background:var(--p-blue);border-color:var(--p-blue);color:#fff}.portfolio-project-info>p{color:var(--p-muted);font-size:11px;line-height:1.65;margin:9px 0 14px;max-width:470px}.portfolio-project-tags{display:flex;flex-wrap:wrap;gap:6px}.portfolio-project-tags span{background:var(--p-cloud);border-radius:99px;color:#68686d;font-size:8px;padding:6px 9px}.portfolio-about{background:#fcfcfd}.portfolio-about-grid{display:grid;gap:18px;grid-template-columns:.72fr 1.05fr 1.25fr}.portfolio-expertise,.portfolio-skills,.portfolio-stat{background:#fff;border:1px solid var(--p-line);border-radius:14px;min-height:225px;padding:23px}.portfolio-stat{align-items:flex-start;display:flex;flex-direction:column;justify-content:space-between}.portfolio-stat strong{font-size:68px;font-weight:600;letter-spacing:-.09em;line-height:.95}.portfolio-stat strong span{color:var(--p-blue);font-size:35px;vertical-align:top}.portfolio-stat>span{color:#929297;font-size:8px;font-weight:600;letter-spacing:.13em;line-height:1.55}.portfolio-about-grid h3{font-size:12px;font-weight:600;margin:0 0 20px}.portfolio-expertise-list>div{align-items:center;border-top:1px solid #f0f0f2;color:#505055;display:flex;gap:9px;padding:12px 0}.portfolio-expertise-list>div svg:first-child{color:var(--p-blue)}.portfolio-expertise-list>div span{flex:1;font-size:10px}.portfolio-expertise-list>div svg:last-child{color:#a1a1a6}.portfolio-skill-group{border-top:1px solid #f0f0f2;padding:11px 0}.portfolio-skill-group>span{color:#929297;font-size:8px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.portfolio-skill-group p{color:#55555a;font-size:9px;line-height:1.65;margin:5px 0 0}.portfolio-career-list{border-top:1px solid var(--p-line)}.portfolio-career-row{align-items:start;border-bottom:1px solid var(--p-line);display:grid;gap:20px;grid-template-columns:175px 1fr 18px;padding:22px 0}.portfolio-career-period{color:#929297;font-size:10px;padding-top:4px}.portfolio-career-row h3{font-size:14px;font-weight:600;letter-spacing:-.02em;margin:0}.portfolio-career-row p{color:var(--p-muted);font-size:10px;margin:5px 0 0}.portfolio-career-row>svg{color:#a1a1a6}.portfolio-career-row ul{color:var(--p-muted);font-size:10px;line-height:1.7;margin:12px 0 0;padding-left:16px}.portfolio-learning{padding-bottom:110px}.portfolio-learning-grid{display:grid;gap:16px;grid-template-columns:1fr 1fr}.portfolio-learning-card{border:1px solid var(--p-line);border-radius:14px;padding:22px}.portfolio-learning-card>span{color:#929297;font-size:8px;font-weight:600;letter-spacing:.13em}.portfolio-learning-card article{align-items:center;border-top:1px solid #f0f0f2;display:flex;justify-content:space-between;padding:16px 0 2px}.portfolio-learning-card article:first-of-type{margin-top:16px}.portfolio-learning-card article+article{padding-top:15px}.portfolio-learning-card h3{font-size:11px;font-weight:600;margin:0}.portfolio-learning-card p,.portfolio-learning-card small{color:var(--p-muted);font-size:9px;margin:5px 0 0}.portfolio-learning-card article>svg{color:#929297}.portfolio-footer{background:#f5f5f7;margin:auto;max-width:1200px;padding:85px 9% 25px}.portfolio-footer h2{font-size:68px;font-weight:600;letter-spacing:-.08em;line-height:.96;margin:20px 0 27px}.portfolio-footer>.portfolio-button{margin-bottom:80px}.portfolio-footer-bottom{align-items:center;border-top:1px solid #e5e5ea;color:#929297;display:flex;font-size:9px;justify-content:space-between;padding-top:18px}.portfolio-footer-bottom a:hover{color:var(--p-blue)}.portfolio .fixed.inset-0.z-40{background:rgba(20,20,22,.35);backdrop-filter:blur(5px)}.portfolio .fixed.inset-0.z-50>div[role=dialog]{border:1px solid var(--p-line);border-radius:18px;box-shadow:0 24px 80px rgba(0,0,0,.2);font-family:Arial,Helvetica,sans-serif}.portfolio .fixed.inset-0.z-50>div[role=dialog]>div:first-child{background:#f5f5f7;color:var(--p-ink)}.portfolio .fixed.inset-0.z-50>div[role=dialog]>div:first-child p{color:var(--p-muted)}.portfolio .fixed.inset-0.z-50>div[role=dialog]>div:first-child .text-white\/40{color:#929297}.portfolio .fixed.inset-0.z-50>div[role=dialog]>div:first-child button{color:var(--p-ink)}@media(max-width:850px){.portfolio-nav{padding:0 5%}.portfolio-hero{min-height:610px;padding:104px 7% 65px}.portfolio-hero-art{opacity:.55;right:-55px;transform:scale(.82)}.portfolio-section{padding:74px 7% 83px}.portfolio-about-grid{grid-template-columns:.75fr 1fr}.portfolio-skills{grid-column:span 2}.portfolio-project-image{height:230px}}@media(max-width:600px){.portfolio-nav{height:62px;padding:0 19px}.portfolio-brand{font-size:10px}.portfolio-navlinks{gap:14px}.portfolio-navlinks>a:not(.portfolio-nav-cta){display:none}.portfolio-navlinks .portfolio-nav-cta{font-size:10px;padding:8px 12px}.portfolio-hero{min-height:585px;padding:93px 24px 68px}.portfolio-hero h1{font-size:clamp(57px,13vw,78px);margin:40px 0 23px}.portfolio-intro{font-size:13px;max-width:310px}.portfolio-hero-art{opacity:.26;right:-135px;top:170px;transform:scale(.75)}.portfolio-hero-actions{align-items:flex-start;flex-direction:column;gap:17px}.portfolio-socials{flex-wrap:wrap;gap:13px 17px;margin-top:39px}.portfolio-hero-index{bottom:20px;right:24px}.portfolio-section{padding:61px 19px 68px}.portfolio-section-heading{align-items:flex-start;flex-direction:column;gap:14px;margin-bottom:28px}.portfolio-section-heading h2{font-size:29px}.portfolio-section-heading>p{font-size:11px}.portfolio-featured-grid{gap:12px;grid-template-columns:1fr}.portfolio-project-image{height:250px}.portfolio-project-info{padding:16px}.portfolio-project-top h3{font-size:16px}.portfolio-about-grid{grid-template-columns:1fr 1fr}.portfolio-expertise,.portfolio-skills,.portfolio-stat{min-height:195px;padding:17px}.portfolio-stat strong{font-size:56px}.portfolio-skills{grid-column:span 2}.portfolio-career-row{gap:10px;grid-template-columns:1fr 16px;padding:17px 0}.portfolio-career-period{grid-column:1/-1;font-size:9px}.portfolio-career-row h3{font-size:13px}.portfolio-learning-grid{grid-template-columns:1fr}.portfolio-learning-card{padding:18px}.portfolio-footer{padding:66px 20px 20px}.portfolio-footer h2{font-size:58px}.portfolio-footer>.portfolio-button{margin-bottom:62px}.portfolio-footer-bottom{font-size:8px}}.portfolio .project-dialog{background:#fff;border:1px solid var(--p-line);border-radius:20px;box-shadow:0 30px 100px rgba(0,0,0,.18);font-family:Arial,Helvetica,sans-serif;margin:auto;max-width:980px;position:relative;width:100%}.portfolio .project-dialog-close{align-items:center;background:hsla(0,0%,100%,.88);backdrop-filter:blur(12px);border:1px solid rgba(29,29,31,.08);border-radius:50%;color:#424247;cursor:pointer;display:flex;height:38px;justify-content:center;position:absolute;right:20px;top:20px;transition:background .2s;width:38px;z-index:3}.portfolio .project-dialog-close:hover{background:#fff}.portfolio .project-dialog-header{align-items:center;background:linear-gradient(115deg,#f8f8fa,#f4f4f7 65%,#eef3f8);display:flex;justify-content:space-between;min-height:265px;overflow:hidden;padding:45px 55px;position:relative}.portfolio .project-dialog-header:after{background:radial-gradient(circle,hsla(0,0%,100%,.9),transparent 66%);content:"";height:310px;position:absolute;right:8%;top:-30px;width:310px}.portfolio .project-dialog-heading{max-width:590px;position:relative;z-index:1}.portfolio .project-dialog-heading>.portfolio-kicker{align-items:center;display:flex;gap:9px}.portfolio .project-dialog-heading>.portfolio-kicker i{background:#b5b5ba;border-radius:50%;height:3px;width:3px}.portfolio .project-dialog-heading h2{font-size:52px;font-weight:600;letter-spacing:-.075em;line-height:1;margin:18px 0 10px}.portfolio .project-dialog-heading>p{color:var(--p-muted);font-size:13px;line-height:1.6;margin:0;max-width:430px}.portfolio .project-dialog-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:23px}.portfolio .project-dialog-links a{align-items:center;background:#fff;border:1px solid rgba(29,29,31,.1);border-radius:99px;display:flex;font-size:10px;font-weight:600;gap:7px;padding:9px 12px;transition:all .2s}.portfolio .project-dialog-links a:hover{border-color:var(--p-blue);color:var(--p-blue)}.portfolio .project-dialog-icon{align-items:center;background:#fff;border:1px solid rgba(0,0,0,.05);border-radius:22px;box-shadow:0 20px 50px rgba(29,29,31,.12);display:flex;height:138px;justify-content:center;margin:0 25px 0 20px;overflow:hidden;position:relative;transform:rotate(5deg);width:138px;z-index:1}.portfolio .project-dialog-icon img{height:100%;object-fit:cover;width:100%}.portfolio .project-dialog-stats{border-bottom:1px solid var(--p-line);border-top:1px solid var(--p-line);display:grid;grid-template-columns:repeat(4,1fr);padding:0 55px}.portfolio .project-dialog-stats>div{padding:18px 14px}.portfolio .project-dialog-stats>div+div{border-left:1px solid var(--p-line)}.portfolio .project-dialog-stats span,.portfolio .project-dialog-stats strong{display:block}.portfolio .project-dialog-stats span{color:#929297;font-size:8px;font-weight:600;letter-spacing:.11em;text-transform:uppercase}.portfolio .project-dialog-stats strong{font-size:11px;font-weight:600;margin-top:7px}.portfolio .project-dialog-content{padding:35px 55px 44px}.portfolio .project-dialog-section-heading{align-items:end;display:flex;justify-content:space-between;margin-bottom:17px}.portfolio .project-dialog-details h3,.portfolio .project-dialog-section-heading h3{font-size:17px;font-weight:600;letter-spacing:-.04em;margin:6px 0 0}.portfolio .project-dialog-section-heading>span{color:#a1a1a6;font-size:8px;font-weight:600;letter-spacing:.12em}.portfolio .project-screens{display:flex;gap:14px;overflow-x:auto;padding:0 0 12px;scrollbar-color:#d2d2d7 transparent;scrollbar-width:thin;scroll-snap-type:x mandatory}.portfolio .project-screen-phone{background:#fff;border:1px solid var(--p-line);border-radius:14px;flex:0 0 220px;height:305px;overflow:hidden;scroll-snap-align:start}.portfolio .project-screen-phone img{height:100%;object-fit:contain;width:100%}.portfolio .project-screens-web{align-items:flex-start}.portfolio .project-screen-browser{background:#fff;border:1px solid var(--p-line);border-radius:12px;flex:0 0 min(550px,80vw);overflow:hidden;scroll-snap-align:start}.portfolio .project-browser-bar{align-items:center;border-bottom:1px solid var(--p-line);display:flex;gap:5px;padding:10px 12px}.portfolio .project-browser-bar>span{background:#e8e8ed;border-radius:50%;height:6px;width:6px}.portfolio .project-browser-bar>div{background:#f5f5f7;border-radius:5px;color:#929297;flex:1;font-size:8px;margin-left:8px;overflow:hidden;padding:6px 9px;text-overflow:ellipsis;white-space:nowrap}.portfolio .project-screen-browser>img{aspect-ratio:16/9;display:block;object-fit:cover;width:100%}.portfolio .project-dialog-details{border-top:1px solid var(--p-line);display:grid;gap:45px;grid-template-columns:1.5fr 1fr;margin-top:23px;padding-top:26px}.portfolio .project-dialog-details section>p{color:var(--p-muted);font-size:11px;line-height:1.7;margin:9px 0 0;max-width:480px}.portfolio .project-dialog-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.portfolio .project-dialog-tags span{background:var(--p-cloud);border-radius:99px;color:#626267;font-size:9px;padding:7px 10px}@media(max-width:600px){.portfolio .project-dialog{border-radius:17px}.portfolio .project-dialog-header{align-items:flex-start;min-height:250px;padding:35px 22px 25px}.portfolio .project-dialog-header:after{height:210px;right:-70px;top:10px;width:210px}.portfolio .project-dialog-close{height:34px;right:12px;top:12px;width:34px}.portfolio .project-dialog-heading h2{font-size:39px;margin-top:17px}.portfolio .project-dialog-heading>p{font-size:11px;max-width:250px}.portfolio .project-dialog-links{gap:6px;margin-top:17px;padding-right:12px}.portfolio .project-dialog-links a{font-size:9px;padding:8px 10px}.portfolio .project-dialog-icon{height:80px;margin:68px 0 0 8px;width:80px}.portfolio .project-dialog-stats{grid-template-columns:repeat(2,1fr);padding:0 16px}.portfolio .project-dialog-stats>div{padding:13px 8px}.portfolio .project-dialog-stats>div:nth-child(3){border-left:0}.portfolio .project-dialog-stats>div:nth-child(n+3){border-top:1px solid var(--p-line)}.portfolio .project-dialog-content{padding:24px 18px 27px}.portfolio .project-dialog-section-heading h3{font-size:15px}.portfolio .project-dialog-section-heading>span{font-size:7px}.portfolio .project-screen-phone{flex-basis:170px;height:260px}.portfolio .project-dialog-details{gap:24px;grid-template-columns:1fr;margin-top:14px;padding-top:21px}.portfolio .project-dialog-details h3{font-size:15px}}