.Portfolio-module__J7DQfq__page{background:0 0;padding:.75rem 1.25rem 0;position:relative;overflow:hidden}.Portfolio-module__J7DQfq__fogLayer,.Portfolio-module__J7DQfq__gridLayer,.Portfolio-module__J7DQfq__bottomFade{z-index:0;pointer-events:none;position:absolute;inset:0}.Portfolio-module__J7DQfq__fogLayer,.Portfolio-module__J7DQfq__gridLayer{opacity:0}.Portfolio-module__J7DQfq__bottomFade{background:linear-gradient(#0000,#fff);height:200px;inset:auto 0 0}.dark .Portfolio-module__J7DQfq__fogLayer{opacity:.6}.dark .Portfolio-module__J7DQfq__gridLayer{opacity:1}.dark .Portfolio-module__J7DQfq__bottomFade{background:linear-gradient(#0000,#0a0a0a)}.Portfolio-module__J7DQfq__container{z-index:10;width:100%;max-width:50rem;margin:0 auto;position:relative}.Portfolio-module__J7DQfq__themeBar{justify-content:flex-end;margin-bottom:.75rem;display:flex}.Portfolio-module__J7DQfq__themeToggle{color:#ffffffb3;cursor:pointer;background:linear-gradient(#1a1a1a 0%,#0b0b0b 100%);border:1px solid #ffffff14;border-radius:999px;align-items:center;padding:0;transition:transform .2s,box-shadow .2s;display:inline-flex;position:relative;box-shadow:inset 0 1px #ffffff0f,0 10px 30px #00000047}.Portfolio-module__J7DQfq__themeToggle:hover{transform:translateY(-1px);box-shadow:inset 0 1px #ffffff14,0 14px 34px #00000057}.Portfolio-module__J7DQfq__themeTrack{grid-template-columns:repeat(2,minmax(0,1fr));width:5rem;padding:.24rem;display:grid;position:relative}.Portfolio-module__J7DQfq__themeIcon{z-index:1;justify-content:center;align-items:center;width:2.5rem;height:2rem;transition:opacity .2s,color .2s;display:inline-flex;position:relative}.Portfolio-module__J7DQfq__themeIconMuted{opacity:.55}.Portfolio-module__J7DQfq__themeThumb{pointer-events:none;background:radial-gradient(circle at 30% 30%,#ffffff2e,#0000 35%),linear-gradient(#2c2c2c 0%,#141414 100%);border-radius:999px;width:2rem;height:2rem;transition:transform .2s;position:absolute;top:.24rem;left:.24rem;box-shadow:inset 0 1px #ffffff14,0 10px 18px #0006}.Portfolio-module__J7DQfq__themeThumbDark{transform:translate(2.62rem)}.Portfolio-module__J7DQfq__heroRow{align-items:center;gap:1.15rem;display:flex}.Portfolio-module__J7DQfq__heroHeader{margin-bottom:1.15rem}.Portfolio-module__J7DQfq__photoWrap{flex-shrink:0;position:relative}.Portfolio-module__J7DQfq__photoRing{background:linear-gradient(to top right,#3a3a3a,#6b6b6b,#3a3a3a);border-radius:999px;width:136px;height:136px;padding:1.5px}.Portfolio-module__J7DQfq__photoInner{border:2px solid #fff;border-radius:999px;width:100%;height:100%;overflow:hidden}.dark .Portfolio-module__J7DQfq__photoInner{border-color:#0a0a0a}.Portfolio-module__J7DQfq__photo{object-fit:cover;width:100%;height:100%}.Portfolio-module__J7DQfq__identity{flex-direction:column;gap:.25rem;display:flex}.Portfolio-module__J7DQfq__nameRow{align-items:center;gap:.5rem;display:flex}.Portfolio-module__J7DQfq__name{letter-spacing:-.02em;color:#0a0a0a;font-size:1.1rem;font-weight:600}.dark .Portfolio-module__J7DQfq__name{color:#fff}.Portfolio-module__J7DQfq__verified{color:#3b82f6;flex-shrink:0;width:1rem;height:1rem}.Portfolio-module__J7DQfq__locationRow,.Portfolio-module__J7DQfq__role{color:#555}:is(.dark .Portfolio-module__J7DQfq__locationRow,.dark .Portfolio-module__J7DQfq__role){color:#a8a8a8}.Portfolio-module__J7DQfq__locationRow{align-items:center;gap:.375rem;font-size:.8rem;display:flex}.Portfolio-module__J7DQfq__locationIcon{flex-shrink:0;width:.875rem;height:.875rem}.Portfolio-module__J7DQfq__role{font-size:.8rem;line-height:1.5}.Portfolio-module__J7DQfq__actions{gap:.45rem;margin-top:.5rem;margin-left:calc(136px + 1.15rem);display:flex}.Portfolio-module__J7DQfq__buttonBase{cursor:pointer;border-radius:.5rem;justify-content:center;align-items:center;gap:.5rem;padding:.48rem .82rem;font-size:.76rem;transition:all .2s;display:inline-flex}.Portfolio-module__J7DQfq__primaryButton{color:#fff;background:#0a0a0a;border:1px solid #0a0a0a;font-weight:600}.Portfolio-module__J7DQfq__primaryButton:hover{background:#111;transform:scale(1.02)}.dark .Portfolio-module__J7DQfq__primaryButton{color:#0a0a0a;background:#fff;border-color:#fff}.dark .Portfolio-module__J7DQfq__primaryButton:hover{background:#f3f3f3}.Portfolio-module__J7DQfq__secondaryButton,.Portfolio-module__J7DQfq__iconButton,.Portfolio-module__J7DQfq__carouselArrow{color:#0a0a0a;background:0 0;border:1px solid #ccc}.Portfolio-module__J7DQfq__secondaryButton{font-weight:500}.Portfolio-module__J7DQfq__secondaryButton:hover,.Portfolio-module__J7DQfq__iconButton:hover,.Portfolio-module__J7DQfq__carouselArrow:hover{background:#e0e0e0;border-color:#999}:is(.dark .Portfolio-module__J7DQfq__secondaryButton,.dark .Portfolio-module__J7DQfq__iconButton,.dark .Portfolio-module__J7DQfq__carouselArrow){color:#fff;border-color:#333}:is(.dark .Portfolio-module__J7DQfq__secondaryButton:hover,.dark .Portfolio-module__J7DQfq__iconButton:hover,.dark .Portfolio-module__J7DQfq__carouselArrow:hover){background:#222;border-color:#555}.Portfolio-module__J7DQfq__iconButton{padding-inline:1rem}.Portfolio-module__J7DQfq__storyCarousel{margin-inline:auto;justify-content:center;align-items:center;gap:.35rem;width:fit-content;max-width:100%;margin-bottom:.95rem;display:flex}.Portfolio-module__J7DQfq__carouselArrow{border-radius:999px;width:1.75rem;height:1.75rem}.Portfolio-module__J7DQfq__carouselArrow:hover{transform:translateY(-1px)}.Portfolio-module__J7DQfq__storyViewport{flex:none;width:min(100%,22.25rem);padding:.35rem 0;position:relative;overflow:hidden}.Portfolio-module__J7DQfq__storyRail{scroll-behavior:smooth;scrollbar-width:none;align-items:flex-start;gap:.5rem;display:flex;overflow-x:auto}.Portfolio-module__J7DQfq__storyRail::-webkit-scrollbar{display:none}.Portfolio-module__J7DQfq__storyButton{color:#0a0a0a;cursor:pointer;background:0 0;border:0;flex-direction:column;flex:none;align-items:center;gap:.32rem;min-width:4.05rem;padding:0;display:flex}.dark .Portfolio-module__J7DQfq__storyButton{color:#fff}.Portfolio-module__J7DQfq__storyOuter{background:linear-gradient(#eee 0%,#dcdcdc 100%);border:1px solid #cfcfcf;border-radius:999px;justify-content:center;align-items:center;width:3.75rem;height:3.75rem;display:inline-flex}.dark .Portfolio-module__J7DQfq__storyOuter{background:linear-gradient(#2a3240 0%,#181c23 100%);border-color:#94a3b847}.Portfolio-module__J7DQfq__storyInner{background:#efefef;border:2px solid #fff;border-radius:999px;width:3.28rem;height:3.28rem;overflow:hidden}.dark .Portfolio-module__J7DQfq__storyInner{background:#111827;border-color:#0f172ad9}.Portfolio-module__J7DQfq__storyImage{object-fit:cover;width:100%;height:100%}.Portfolio-module__J7DQfq__storyLabel{text-overflow:ellipsis;white-space:nowrap;text-align:center;max-width:4.05rem;font-size:.62rem;font-weight:600;overflow:hidden}.Portfolio-module__J7DQfq__divider{background:#e0e0e0;width:100%;height:.5px}.dark .Portfolio-module__J7DQfq__divider{background:#262626}.Portfolio-module__J7DQfq__sectionTitle{color:#0a0a0a;font-size:1rem;font-weight:600}.dark .Portfolio-module__J7DQfq__sectionTitle{color:#fff}.Portfolio-module__J7DQfq__aboutTitle{margin-bottom:.65rem}.Portfolio-module__J7DQfq__aboutGrid{grid-template-columns:1fr auto 1fr;align-items:flex-start;gap:0 2.5rem;margin-top:1.25rem;display:grid}.Portfolio-module__J7DQfq__aboutLeft{flex-direction:column;gap:.75rem;display:flex}.Portfolio-module__J7DQfq__aboutDivider{background-color:#e8e8e8;flex-shrink:0;align-self:stretch;width:1px;margin:0}.dark .Portfolio-module__J7DQfq__aboutDivider{background-color:#1f1f1f}.Portfolio-module__J7DQfq__aboutRight{flex-direction:column;gap:.75rem;display:flex}.Portfolio-module__J7DQfq__aboutText{color:#555;max-width:100%;margin-bottom:0;font-size:.78rem;line-height:1.45}.dark .Portfolio-module__J7DQfq__aboutText{color:#a8a8a8}.Portfolio-module__J7DQfq__expList{flex-direction:column;gap:0;margin-top:.25rem;display:flex}.Portfolio-module__J7DQfq__expItem{cursor:default;flex-direction:column;gap:.1rem;padding:.65rem 0;transition:opacity .2s;display:flex}.Portfolio-module__J7DQfq__expItem+.Portfolio-module__J7DQfq__expItem{border-top:.5px solid #e8e8e8}.dark .Portfolio-module__J7DQfq__expItem+.Portfolio-module__J7DQfq__expItem{border-top:.5px solid #1f1f1f}.Portfolio-module__J7DQfq__expItem:hover{opacity:.7}.Portfolio-module__J7DQfq__expYear{letter-spacing:.06em;color:#999;text-transform:uppercase;font-size:11px;font-weight:500}.dark .Portfolio-module__J7DQfq__expYear{color:#555}.Portfolio-module__J7DQfq__expRole{color:#0a0a0a;margin:.15rem 0 0;font-size:13px;font-weight:600;line-height:1.3}.dark .Portfolio-module__J7DQfq__expRole{color:#fff}.Portfolio-module__J7DQfq__expCompany{color:#888;margin:0;font-size:12px;line-height:1.4}.dark .Portfolio-module__J7DQfq__expCompany{color:#666}.Portfolio-module__J7DQfq__projectsSection{padding:.95rem 1.25rem 3rem;background:0 0;margin-top:-1rem;padding-top:0}.Portfolio-module__J7DQfq__footerSection{padding:0 1.25rem 3rem}.Portfolio-module__J7DQfq__footerContent{grid-template-columns:1fr auto 1fr;align-items:flex-start;gap:2.5rem;padding-top:1.35rem;display:grid}.Portfolio-module__J7DQfq__footerLeft,.Portfolio-module__J7DQfq__footerCenter,.Portfolio-module__J7DQfq__footerRight{flex-direction:column;gap:.9rem;min-width:0;display:flex}.Portfolio-module__J7DQfq__footerLeft,.Portfolio-module__J7DQfq__footerCenter{align-items:flex-start}.Portfolio-module__J7DQfq__footerRight{text-align:left;justify-self:end;align-items:flex-start}.Portfolio-module__J7DQfq__footerLabel{color:#0a0a0a;margin:0;font-size:.78rem;font-weight:600}.dark .Portfolio-module__J7DQfq__footerLabel{color:#fff}.Portfolio-module__J7DQfq__footerLinks{flex-direction:column;gap:.65rem;min-width:0;display:flex}.Portfolio-module__J7DQfq__footerLink{color:#555;overflow-wrap:anywhere;align-items:center;gap:.55rem;text-decoration:none;transition:color .2s,opacity .2s;display:inline-flex}.Portfolio-module__J7DQfq__footerLink:hover{color:#0a0a0a}.dark .Portfolio-module__J7DQfq__footerLink{color:#a8a8a8}.dark .Portfolio-module__J7DQfq__footerLink:hover{color:#fff}.Portfolio-module__J7DQfq__footerLink svg,.Portfolio-module__J7DQfq__footerContactItem svg{flex-shrink:0;width:1rem;height:1rem}.Portfolio-module__J7DQfq__footerContactItem{color:#555;text-align:left;align-items:flex-start;gap:.75rem;display:inline-flex}.dark .Portfolio-module__J7DQfq__footerContactItem{color:#a8a8a8}.Portfolio-module__J7DQfq__footerContactLink{text-decoration:none;transition:opacity .2s,color .2s}.Portfolio-module__J7DQfq__footerContactLink:hover{opacity:.82}.Portfolio-module__J7DQfq__footerContactText{flex-direction:column;gap:.18rem;min-width:0;display:flex}.Portfolio-module__J7DQfq__footerKicker{color:#0a0a0a;font-size:.8rem;font-weight:600}.dark .Portfolio-module__J7DQfq__footerKicker{color:#fff}.Portfolio-module__J7DQfq__footerValue{color:#555;overflow-wrap:anywhere;font-size:.82rem;line-height:1.4;text-decoration:none;transition:color .2s}.Portfolio-module__J7DQfq__footerValue:hover{color:#0a0a0a}.dark .Portfolio-module__J7DQfq__footerValue{color:#a8a8a8}.dark .Portfolio-module__J7DQfq__footerValue:hover{color:#fff}.Portfolio-module__J7DQfq__footerBottom{text-align:center;padding-top:1.35rem}.Portfolio-module__J7DQfq__footerCopyright{color:#888;margin:0;font-size:.78rem}.dark .Portfolio-module__J7DQfq__footerCopyright{color:#666}.Portfolio-module__J7DQfq__techSection{width:100%;padding-bottom:2.5rem;overflow:hidden}.Portfolio-module__J7DQfq__marqueeWrapper{flex-direction:column;gap:.6rem;width:100%;margin-top:1.25rem;display:flex;overflow:hidden}.Portfolio-module__J7DQfq__marqueeRow{width:100%;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 10% 90%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 10% 90%,#0000 100%)}.Portfolio-module__J7DQfq__marqueeTrack{will-change:transform;flex-direction:row;gap:.5rem;width:max-content;display:flex}.Portfolio-module__J7DQfq__marqueeForward{animation:40s linear infinite Portfolio-module__J7DQfq__scrollLeft}.Portfolio-module__J7DQfq__marqueeReverse{animation:40s linear infinite Portfolio-module__J7DQfq__scrollRight}.Portfolio-module__J7DQfq__marqueeRow:hover .Portfolio-module__J7DQfq__marqueeTrack{animation-play-state:paused}.Portfolio-module__J7DQfq__techPill{white-space:nowrap;cursor:default;color:#333;background-color:#f0f0f0;border:1px solid #e0e0e0;border-radius:9999px;flex-direction:row;flex-shrink:0;align-items:center;gap:.4rem;padding:.3rem .75rem .3rem .5rem;font-size:12px;font-weight:500;transition:all .2s;display:inline-flex}.dark .Portfolio-module__J7DQfq__techPill{color:#ccc;background-color:#111;border:1px solid #222}.Portfolio-module__J7DQfq__techPill:hover{background-color:color-mix(in srgb, var(--pill-color) 15%, transparent);border-color:color-mix(in srgb, var(--pill-color) 50%, transparent);color:var(--pill-color);transform:scale(1.05)}.Portfolio-module__J7DQfq__techIcon{object-fit:contain;border-radius:2px;flex-shrink:0;width:16px;height:16px}:is(.dark .Portfolio-module__J7DQfq__techIcon[src*=nextjs],.dark .Portfolio-module__J7DQfq__techIcon[src*=express],.dark .Portfolio-module__J7DQfq__techIcon[src*=github]){filter:invert()}.Portfolio-module__J7DQfq__techName{line-height:1}@keyframes Portfolio-module__J7DQfq__scrollLeft{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes Portfolio-module__J7DQfq__scrollRight{0%{transform:translate(-50%)}to{transform:translate(0)}}.Portfolio-module__J7DQfq__projectsHeader{margin-bottom:.9rem}.Portfolio-module__J7DQfq__sectionSubtitle{color:#888;margin-top:.125rem;font-size:.875rem}.dark .Portfolio-module__J7DQfq__sectionSubtitle{color:#555}.Portfolio-module__J7DQfq__projectsGrid{grid-template-columns:1fr;gap:.75rem;display:grid}.Portfolio-module__J7DQfq__projectCard{background:#f5f5f5;border:1px solid #e0e0e0;border-top:2px solid #333;border-radius:1rem;flex-direction:column;padding:1.5rem;transition:all .2s;display:flex;position:relative;overflow:hidden}.Portfolio-module__J7DQfq__projectCard:hover{border-color:#ccc;transform:translateY(-2px);box-shadow:0 4px 24px #00000014}.dark .Portfolio-module__J7DQfq__projectCard{background:#111;border-color:#444 #1f1f1f #1f1f1f}.dark .Portfolio-module__J7DQfq__projectCard:hover{border-color:#2f2f2f;box-shadow:0 4px 24px #ffffff0a}.Portfolio-module__J7DQfq__projectTop{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:1.25rem;display:flex}.Portfolio-module__J7DQfq__projectName{letter-spacing:-.02em;color:#0a0a0a;font-size:1rem;font-weight:600}.dark .Portfolio-module__J7DQfq__projectName{color:#fff}.Portfolio-module__J7DQfq__projectDescription{color:#555;margin-top:.25rem;font-size:.875rem;line-height:1.5}.dark .Portfolio-module__J7DQfq__projectDescription{color:#a8a8a8}.Portfolio-module__J7DQfq__projectActions{opacity:0;gap:.5rem;transition:opacity .2s;display:flex}.Portfolio-module__J7DQfq__projectCard:hover .Portfolio-module__J7DQfq__projectActions{opacity:1}.Portfolio-module__J7DQfq__projectMedia{grid-template-columns:minmax(0,1fr) 5.25rem;align-items:end;gap:.75rem;margin-bottom:1rem;display:grid}.Portfolio-module__J7DQfq__projectDesktopShot,.Portfolio-module__J7DQfq__projectMobileShot{background:#ebebeb;border:1.5px solid #cfcfcf;border-radius:.9rem;position:relative;overflow:hidden}:is(.dark .Portfolio-module__J7DQfq__projectDesktopShot,.dark .Portfolio-module__J7DQfq__projectMobileShot){background:#161616;border-color:#303030}.Portfolio-module__J7DQfq__projectDesktopShot,.Portfolio-module__J7DQfq__projectMobileShot{min-height:9.5rem}.Portfolio-module__J7DQfq__projectShotImage{object-fit:cover;object-position:top center;width:100%;height:100%}.Portfolio-module__J7DQfq__projectShotLink{border:1.5px solid inherit;background:inherit;cursor:pointer;padding:0;text-decoration:none;transition:transform .2s,border-color .2s,box-shadow .2s;display:block}.Portfolio-module__J7DQfq__projectShotLink:hover{border-color:#b8b8b8;transform:translateY(-2px);box-shadow:0 10px 24px #0000001f}.dark .Portfolio-module__J7DQfq__projectShotLink:hover{border-color:#4a4a4a;box-shadow:0 10px 24px #00000047}.Portfolio-module__J7DQfq__projectShotStatic{border:1.5px solid inherit;background:inherit;padding:0;text-decoration:none;display:block}.Portfolio-module__J7DQfq__projectShotStatic:disabled{cursor:default}.Portfolio-module__J7DQfq__projectShotPlaceholder{width:100%;height:100%;min-height:inherit;background:linear-gradient(135deg,#00000008,#0000),repeating-linear-gradient(135deg,#00000008 0 10px,#0000 10px 20px);justify-content:center;align-items:center;padding:.75rem;display:flex}.dark .Portfolio-module__J7DQfq__projectShotPlaceholder{background:linear-gradient(135deg,#ffffff08,#0000),repeating-linear-gradient(135deg,#ffffff08 0 10px,#0000 10px 20px)}.Portfolio-module__J7DQfq__projectShotLabel{letter-spacing:.04em;text-transform:uppercase;color:#777;font-size:.72rem;font-weight:600}.dark .Portfolio-module__J7DQfq__projectShotLabel{color:#7f7f7f}.Portfolio-module__J7DQfq__projectLink{color:#333;justify-content:center;align-items:center;width:2.25rem;height:2.25rem;transition:color .2s;display:inline-flex}.Portfolio-module__J7DQfq__projectLink:hover{color:#000}.dark .Portfolio-module__J7DQfq__projectLink{color:#666}.dark .Portfolio-module__J7DQfq__projectLink:hover{color:#fff}.Portfolio-module__J7DQfq__projectTags{flex-wrap:wrap;gap:.5rem;margin-top:auto;display:flex}.Portfolio-module__J7DQfq__featured .Portfolio-module__J7DQfq__projectTags{flex-wrap:nowrap;gap:.4rem}.Portfolio-module__J7DQfq__projectTag{color:#444;white-space:nowrap;background:#ebebeb;border:1px solid #d0d0d0;border-radius:999px;padding:.25rem .75rem;font-size:.75rem}.dark .Portfolio-module__J7DQfq__projectTag{color:#888;background:#1a1a1a;border-color:#2a2a2a}.Portfolio-module__J7DQfq__projectImageModal{z-index:70;justify-content:center;align-items:center;padding:1.25rem;display:flex;position:fixed;inset:0}.Portfolio-module__J7DQfq__projectImageBackdrop{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:radial-gradient(circle at top,#3b82f61f,#0000 32%),#f8f8f8d1;border:0;position:absolute;inset:0}.dark .Portfolio-module__J7DQfq__projectImageBackdrop{background:radial-gradient(circle at top,#3b82f61f,#0000 32%),#050505d6}.Portfolio-module__J7DQfq__projectImageDialog{z-index:1;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffd6;border:1px solid #18181b14;border-radius:1.4rem;width:min(92vw,980px);position:relative;overflow:hidden;box-shadow:0 24px 60px #0f172a24,inset 0 1px #ffffff80}.dark .Portfolio-module__J7DQfq__projectImageDialog{background:#0c0c0ed1;border-color:#ffffff14;box-shadow:0 28px 70px #0006,inset 0 1px #ffffff0d}.Portfolio-module__J7DQfq__projectImageHeader{justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem 1rem .75rem;display:flex}.Portfolio-module__J7DQfq__projectImageMeta{flex-direction:column;gap:.2rem;min-width:0;display:flex}.Portfolio-module__J7DQfq__projectImageKicker{letter-spacing:.08em;text-transform:uppercase;color:#777;font-size:.72rem;font-weight:600}.dark .Portfolio-module__J7DQfq__projectImageKicker{color:#8a8a8a}.Portfolio-module__J7DQfq__projectImageTitle{color:#0a0a0a;margin:0;font-size:1rem;font-weight:600}.dark .Portfolio-module__J7DQfq__projectImageTitle{color:#fff}.Portfolio-module__J7DQfq__projectImageClose{color:#0a0a0a;cursor:pointer;background:#ffffffc7;border:1px solid #d4d4d8;border-radius:999px;justify-content:center;align-items:center;width:2.2rem;height:2.2rem;transition:transform .2s,background-color .2s,border-color .2s;display:inline-flex}.Portfolio-module__J7DQfq__projectImageClose:hover{background:#fff;border-color:#bdbdc2;transform:scale(1.04)}.dark .Portfolio-module__J7DQfq__projectImageClose{color:#fff;background:#161618db;border-color:#2a2a2f}.dark .Portfolio-module__J7DQfq__projectImageClose:hover{background:#202024f5;border-color:#3b3b42}.Portfolio-module__J7DQfq__projectImageCanvas{padding:0 1rem 1rem}.Portfolio-module__J7DQfq__projectImageFrame{background:radial-gradient(circle at top,#3b82f614,#0000 28%),#f3f4f6;border:1px solid #18181b14;border-radius:1rem;width:100%;height:min(78vh,700px);position:relative;overflow:hidden}.dark .Portfolio-module__J7DQfq__projectImageFrame{background:radial-gradient(circle at top,#3b82f614,#0000 28%),#050505;border-color:#ffffff0f}.Portfolio-module__J7DQfq__projectImagePreview{object-fit:contain;object-position:center;width:100%;height:100%}.Portfolio-module__J7DQfq__modal{z-index:50;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.Portfolio-module__J7DQfq__modalBackdrop{background:#0a0a0aeb;border:0;position:absolute;inset:0}.Portfolio-module__J7DQfq__modalInner{z-index:1;width:min(88vw,980px);padding:1rem .5rem;position:relative}.Portfolio-module__J7DQfq__modalClose{z-index:20;color:#fff;cursor:pointer;background-color:#00000080;border:none;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;transition:background-color .15s;display:inline-flex;position:absolute;top:.75rem;right:.75rem}.Portfolio-module__J7DQfq__modalClose:hover{background-color:#000c}.Portfolio-module__J7DQfq__modalGrid{z-index:1;flex-direction:row;justify-content:center;align-items:center;gap:1rem;width:100%;max-width:860px;padding:0 1rem;display:flex;position:relative}.Portfolio-module__J7DQfq__modalPreview{cursor:pointer;opacity:.55;background:0 0;border:none;flex-direction:column;flex-shrink:0;align-items:center;gap:.5rem;width:140px;transition:opacity .2s;display:flex}.Portfolio-module__J7DQfq__modalPreview:hover{opacity:.85}.Portfolio-module__J7DQfq__modalPreviewImage{object-fit:cover;object-position:center top;border-radius:12px;flex-shrink:0;width:140px;height:200px;display:block}.Portfolio-module__J7DQfq__modalPreviewTitle{color:#fff;text-align:center;white-space:nowrap;text-overflow:ellipsis;width:140px;font-size:12px;font-weight:600;display:block;overflow:hidden}.Portfolio-module__J7DQfq__modalPreviewSubtitle{color:#ffffff80;text-align:center;font-size:11px;display:block}.Portfolio-module__J7DQfq__modalCenter{z-index:2;flex-direction:row;flex-shrink:0;justify-content:center;align-items:center;gap:0;width:min(420px,92vw);height:min(680px,85vh);display:flex;position:relative}.Portfolio-module__J7DQfq__modalNav{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10;background-color:#ffffff1a;border:1px solid #ffffff26;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;transition:background-color .15s,transform .15s;display:flex;position:static}.Portfolio-module__J7DQfq__modalNav:hover{background-color:#ffffff40;transform:scale(1.08)}.Portfolio-module__J7DQfq__modalNavLeft{margin-right:.5rem}.Portfolio-module__J7DQfq__modalNavRight{margin-left:.5rem}.Portfolio-module__J7DQfq__modalStory{background-color:#000;border-radius:16px;flex-direction:column;flex:1;min-width:0;height:100%;display:flex;position:relative;overflow:hidden}.Portfolio-module__J7DQfq__modalStoryHeader{z-index:10;align-items:center;gap:.5rem;padding:.5rem .75rem 0;display:flex;position:absolute;top:1.75rem;left:0;right:0}.Portfolio-module__J7DQfq__modalStoryMeta{color:#fff;align-items:baseline;gap:.55rem;min-width:0;display:flex}.Portfolio-module__J7DQfq__modalStoryTitle{color:#fff;text-shadow:0 1px 4px #00000080;font-size:13px;font-weight:600}.Portfolio-module__J7DQfq__modalStorySubtitle{color:#ffffffb3;text-shadow:0 1px 4px #00000080;font-size:11px}.Portfolio-module__J7DQfq__modalStoryImage{object-fit:contain;object-position:center;background-color:#000;border-radius:12px;width:100%;height:100%}.Portfolio-module__J7DQfq__storyImageWrap{cursor:pointer;position:absolute;inset:0}.Portfolio-module__J7DQfq__storyProgress{z-index:10;background:linear-gradient(#00000080 0%,#0000 100%);flex-shrink:0;gap:3px;padding:.75rem .75rem .4rem;display:flex;position:absolute;top:0;left:0;right:0}.Portfolio-module__J7DQfq__storyProgressBar{background-color:#ffffff4d;border-radius:2px;flex:1;height:2px;overflow:hidden}.Portfolio-module__J7DQfq__storyProgressFill{background-color:#ffffffe6;border-radius:2px;width:0%;height:100%}.Portfolio-module__J7DQfq__storyProgressDone{transition:none;width:100%!important}.Portfolio-module__J7DQfq__storyProgressActive{animation:5s linear forwards Portfolio-module__J7DQfq__progressFill}.Portfolio-module__J7DQfq__storyProgressPaused{animation-play-state:paused}@keyframes Portfolio-module__J7DQfq__progressFill{0%{width:0%}to{width:100%}}@media (max-width:900px){.Portfolio-module__J7DQfq__aboutGrid{grid-template-columns:1fr auto 1fr;gap:0 1.5rem}}@media (max-width:640px){.Portfolio-module__J7DQfq__aboutGrid{grid-template-columns:1fr;gap:1.5rem 0}.Portfolio-module__J7DQfq__aboutDivider{align-self:auto;width:100%;height:1px}}@media (max-width:767px){.Portfolio-module__J7DQfq__page{padding-inline:1rem}.Portfolio-module__J7DQfq__themeTrack{width:4.5rem}.Portfolio-module__J7DQfq__themeIcon{width:2.125rem;height:1.875rem}.Portfolio-module__J7DQfq__themeThumb{width:1.875rem;height:1.875rem}.Portfolio-module__J7DQfq__themeThumbDark{transform:translate(2.15rem)}.Portfolio-module__J7DQfq__heroRow{flex-direction:row;align-items:flex-start;gap:.9rem}.Portfolio-module__J7DQfq__heroHeader{margin-bottom:1rem}.Portfolio-module__J7DQfq__photoRing{width:104px;height:104px}.Portfolio-module__J7DQfq__identity{flex:auto;min-width:0}.Portfolio-module__J7DQfq__name{font-size:1rem}.Portfolio-module__J7DQfq__locationRow,.Portfolio-module__J7DQfq__role{font-size:.76rem}.Portfolio-module__J7DQfq__actions{flex-direction:row;align-items:center;gap:.35rem;width:100%;margin-top:.65rem;margin-left:0}.Portfolio-module__J7DQfq__buttonBase{gap:.38rem;min-height:2.3rem;padding:.46rem .72rem;font-size:.72rem}.Portfolio-module__J7DQfq__primaryButton,.Portfolio-module__J7DQfq__secondaryButton{flex:1 1 0;min-width:0}.Portfolio-module__J7DQfq__iconButton{width:2.45rem;min-width:2.45rem;padding-inline:0}.Portfolio-module__J7DQfq__storyCarousel{justify-content:center;gap:.5rem;width:fit-content;max-width:100%;margin-inline:auto}.Portfolio-module__J7DQfq__carouselArrow{width:2rem;height:2rem}.Portfolio-module__J7DQfq__storyRail{gap:.75rem}.Portfolio-module__J7DQfq__storyButton{min-width:4.8rem}.Portfolio-module__J7DQfq__storyOuter{width:4.6rem;height:4.6rem}.Portfolio-module__J7DQfq__storyInner{width:4rem;height:4rem}.Portfolio-module__J7DQfq__projectsSection,.Portfolio-module__J7DQfq__footerSection{padding-inline:1rem}.Portfolio-module__J7DQfq__footerContent{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.5rem 1.25rem}.Portfolio-module__J7DQfq__footerLeft{grid-column:1/-1;justify-self:stretch;width:100%}.Portfolio-module__J7DQfq__footerCenter,.Portfolio-module__J7DQfq__footerRight{text-align:left;justify-self:stretch;align-items:flex-start;width:100%}.Portfolio-module__J7DQfq__footerCenter .Portfolio-module__J7DQfq__footerLinks{align-items:flex-start}.Portfolio-module__J7DQfq__footerBottom{padding-top:1.1rem}.Portfolio-module__J7DQfq__modalInner{width:100vw;padding-inline:.75rem}.Portfolio-module__J7DQfq__projectImageModal{padding:.75rem}.Portfolio-module__J7DQfq__projectImageDialog{border-radius:1rem;width:min(96vw,980px)}.Portfolio-module__J7DQfq__projectImageHeader{padding:.85rem .85rem .65rem}.Portfolio-module__J7DQfq__projectImageCanvas{padding:0 .85rem .85rem}.Portfolio-module__J7DQfq__projectImageFrame{border-radius:.85rem;height:min(72vh,560px)}.Portfolio-module__J7DQfq__modalPreview{display:none}.Portfolio-module__J7DQfq__modalGrid{padding:0 .5rem}.Portfolio-module__J7DQfq__modalNavLeft{margin-right:.25rem}.Portfolio-module__J7DQfq__modalNavRight{margin-left:.25rem}}@media (min-width:768px){.Portfolio-module__J7DQfq__projectsGrid{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(220px,auto)}.Portfolio-module__J7DQfq__featured{grid-area:span 2/span 2/span 2/span 2}.Portfolio-module__J7DQfq__standard{grid-area:span 1/span 2/span 1/span 2}.Portfolio-module__J7DQfq__featured .Portfolio-module__J7DQfq__projectMedia{grid-template-columns:minmax(0,1fr) 6rem}.Portfolio-module__J7DQfq__featured .Portfolio-module__J7DQfq__projectDesktopShot,.Portfolio-module__J7DQfq__featured .Portfolio-module__J7DQfq__projectMobileShot{min-height:13rem}}@media (prefers-reduced-motion:reduce){.Portfolio-module__J7DQfq__marqueeForward,.Portfolio-module__J7DQfq__marqueeReverse{animation:none}}
.ChatBot-module__YRIQOq__wrapper{z-index:1000;flex-direction:column;align-items:flex-end;gap:.75rem;display:flex;position:fixed;bottom:1.5rem;right:1.5rem}.ChatBot-module__YRIQOq__window{background-color:#fff;border:1px solid #e8e8e8;border-radius:20px;flex-direction:column;width:340px;height:480px;animation:.25s cubic-bezier(.16,1,.3,1) ChatBot-module__YRIQOq__slideUp;display:flex;overflow:hidden;box-shadow:0 24px 64px #0000001f,0 0 0 1px #0000000a}.dark .ChatBot-module__YRIQOq__window{background-color:#111;border:1px solid #222;box-shadow:0 24px 64px #0009,0 0 0 1px #ffffff0a}@keyframes ChatBot-module__YRIQOq__slideUp{0%{opacity:0;transform:translateY(16px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.ChatBot-module__YRIQOq__header{background-color:#fff;border-bottom:1px solid #efefef;flex-shrink:0;justify-content:space-between;align-items:center;padding:1rem 1rem .875rem;display:flex}.dark .ChatBot-module__YRIQOq__header{background-color:#111;border-bottom:1px solid #1a1a1a}.ChatBot-module__YRIQOq__headerLeft{align-items:center;gap:.6rem;display:flex}.ChatBot-module__YRIQOq__headerAvatar{border:1.5px solid #333;border-radius:50%;flex-shrink:0;width:32px;height:32px;overflow:hidden}.ChatBot-module__YRIQOq__avatarImg{object-fit:cover;object-position:top center;border-radius:50%;width:100%;height:100%}.ChatBot-module__YRIQOq__headerName{color:#0a0a0a;margin:0;font-size:13px;font-weight:600;line-height:1.2}.dark .ChatBot-module__YRIQOq__headerName{color:#fff}.ChatBot-module__YRIQOq__headerStatus{color:#999;align-items:center;gap:.3rem;margin:0;font-size:11px;line-height:1.2;display:flex}.dark .ChatBot-module__YRIQOq__headerStatus{color:#555}.ChatBot-module__YRIQOq__statusDot{background-color:#3ecf8e;border-radius:50%;flex-shrink:0;width:6px;height:6px;display:inline-block}.ChatBot-module__YRIQOq__closeBtn{cursor:pointer;color:#aaa;background:0 0;border:none;align-items:center;padding:.25rem;transition:color .15s;display:flex}.ChatBot-module__YRIQOq__closeBtn:hover{color:#0a0a0a}.dark .ChatBot-module__YRIQOq__closeBtn{color:#555}.dark .ChatBot-module__YRIQOq__closeBtn:hover{color:#fff}.ChatBot-module__YRIQOq__closeIcon{width:16px;height:16px}.ChatBot-module__YRIQOq__messages{scrollbar-width:thin;scrollbar-color:#e0e0e0 transparent;background-color:#fff;flex-direction:column;flex:1;gap:.6rem;padding:1rem;display:flex;overflow-y:auto}.dark .ChatBot-module__YRIQOq__messages{scrollbar-color:#222 transparent;background-color:#111}.ChatBot-module__YRIQOq__messages::-webkit-scrollbar{width:4px}.ChatBot-module__YRIQOq__messages::-webkit-scrollbar-thumb{background-color:#e0e0e0;border-radius:2px}.dark .ChatBot-module__YRIQOq__messages::-webkit-scrollbar-thumb{background-color:#222}.ChatBot-module__YRIQOq__message{word-break:break-word;border-radius:14px;max-width:85%;padding:.6rem .875rem;font-size:13px;line-height:1.5}.ChatBot-module__YRIQOq__assistantMessage{color:#1a1a1a;background-color:#f5f5f5;border:1px solid #ebebeb;border-bottom-left-radius:4px;align-self:flex-start}.dark .ChatBot-module__YRIQOq__assistantMessage{color:#e0e0e0;background-color:#1a1a1a;border:1px solid #222}.ChatBot-module__YRIQOq__userMessage{color:#fff;background-color:#0a0a0a;border-bottom-right-radius:4px;align-self:flex-end;font-weight:500}.dark .ChatBot-module__YRIQOq__userMessage{color:#0a0a0a;background-color:#fff}.ChatBot-module__YRIQOq__msgParagraph{margin:0 0 .35rem;line-height:1.55}.ChatBot-module__YRIQOq__msgParagraph:last-child{margin-bottom:0}.ChatBot-module__YRIQOq__msgList{flex-direction:column;gap:.3rem;margin:.25rem 0 .35rem;padding-left:1.1rem;display:flex}.ChatBot-module__YRIQOq__msgList:last-child{margin-bottom:0}.ChatBot-module__YRIQOq__msgListItem{font-size:13px;line-height:1.5}.ChatBot-module__YRIQOq__typingDot{background-color:#bbb;border-radius:50%;width:6px;height:6px;margin:0 2px;animation:1.2s infinite ChatBot-module__YRIQOq__bounce;display:inline-block}.dark .ChatBot-module__YRIQOq__typingDot{background-color:#555}.ChatBot-module__YRIQOq__typingDot:nth-child(2){animation-delay:.2s}.ChatBot-module__YRIQOq__typingDot:nth-child(3){animation-delay:.4s}@keyframes ChatBot-module__YRIQOq__bounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-6px)}}.ChatBot-module__YRIQOq__suggestions{flex-direction:column;gap:.4rem;margin-top:.25rem;display:flex}.ChatBot-module__YRIQOq__suggestionBtn{color:#777;cursor:pointer;text-align:left;background:0 0;border:1px solid #e8e8e8;border-radius:10px;padding:.45rem .75rem;font-size:12px;line-height:1.4;transition:all .15s}.ChatBot-module__YRIQOq__suggestionBtn:hover{color:#0a0a0a;background-color:#f5f5f5;border-color:#ccc}.dark .ChatBot-module__YRIQOq__suggestionBtn{color:#888;border:1px solid #222}.dark .ChatBot-module__YRIQOq__suggestionBtn:hover{color:#ccc;background-color:#1a1a1a;border-color:#444}.ChatBot-module__YRIQOq__inputRow{background-color:#fff;border-top:1px solid #efefef;flex-shrink:0;align-items:center;gap:.5rem;padding:.75rem 1rem;display:flex}.dark .ChatBot-module__YRIQOq__inputRow{background-color:#111;border-top:1px solid #1a1a1a}.ChatBot-module__YRIQOq__input{color:#0a0a0a;background-color:#f5f5f5;border:1px solid #e8e8e8;border-radius:10px;outline:none;flex:1;padding:.5rem .75rem;font-size:13px;transition:border-color .15s}.ChatBot-module__YRIQOq__input::placeholder{color:#aaa}.ChatBot-module__YRIQOq__input:focus{border-color:#ccc}.ChatBot-module__YRIQOq__input:disabled{opacity:.5}.dark .ChatBot-module__YRIQOq__input{color:#fff;background-color:#1a1a1a;border:1px solid #222}.dark .ChatBot-module__YRIQOq__input::placeholder{color:#444}.dark .ChatBot-module__YRIQOq__input:focus{border-color:#444}.ChatBot-module__YRIQOq__sendBtn{cursor:pointer;background-color:#0a0a0a;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;transition:all .15s;display:flex}.ChatBot-module__YRIQOq__sendBtn:hover:not(:disabled){background-color:#333;transform:scale(1.05)}.ChatBot-module__YRIQOq__sendBtn:disabled{opacity:.3;cursor:not-allowed}.ChatBot-module__YRIQOq__sendIcon{color:#fff;width:14px;height:14px}.dark .ChatBot-module__YRIQOq__sendBtn{background-color:#fff}.dark .ChatBot-module__YRIQOq__sendBtn:hover:not(:disabled){background-color:#e0e0e0}.dark .ChatBot-module__YRIQOq__sendIcon{color:#0a0a0a}.ChatBot-module__YRIQOq__trigger{cursor:pointer;background-color:#0a0a0a;border:none;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;transition:transform .2s,box-shadow .2s;display:flex;position:relative;box-shadow:0 8px 32px #0003}.ChatBot-module__YRIQOq__trigger:hover{transform:scale(1.08);box-shadow:0 12px 40px #0000004d}.dark .ChatBot-module__YRIQOq__trigger{background-color:#fff;box-shadow:0 8px 32px #0006}.dark .ChatBot-module__YRIQOq__trigger:hover{box-shadow:0 12px 40px #00000080}.ChatBot-module__YRIQOq__triggerIcon{color:#fff;z-index:1;width:22px;height:22px;position:relative}.dark .ChatBot-module__YRIQOq__triggerIcon{color:#0a0a0a}.ChatBot-module__YRIQOq__triggerPulse{background-color:#0000004d;border-radius:50%;animation:2s ease-out infinite ChatBot-module__YRIQOq__pulse;position:absolute;inset:0}.ChatBot-module__YRIQOq__triggerPulse2{background-color:#00000026;border-radius:50%;animation:2s ease-out .6s infinite ChatBot-module__YRIQOq__pulse;position:absolute;inset:0}.dark .ChatBot-module__YRIQOq__triggerPulse{background-color:#fff6}.dark .ChatBot-module__YRIQOq__triggerPulse2{background-color:#fff3}@keyframes ChatBot-module__YRIQOq__pulse{0%{opacity:.6;transform:scale(1)}to{opacity:0;transform:scale(1.8)}}@media (max-width:480px){.ChatBot-module__YRIQOq__window{width:calc(100vw - 2rem);height:420px;bottom:5rem;right:1rem}.ChatBot-module__YRIQOq__wrapper{bottom:1rem;right:1rem}}
