*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.\!visible{visibility:visible!important}.visible{visibility:visible}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}:root{font-family:Inter,Segoe UI Variable,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-optical-sizing:auto;scroll-behavior:smooth;--accent: #7c9cff;--accent-strong: #a9bbff;--mint: #83e5c0;--surface: #111827;--surface-raised: #172033;--surface-soft: rgba(255, 255, 255, .035);--text: #f2f4fa;--muted: #a2adbf;--faint: #758198;--line: rgba(180, 197, 226, .14);--background: #090e18;--shadow: 0 22px 70px rgba(0, 0, 0, .28);color:var(--text);background:var(--background)}:root[data-theme=light]{--accent: #476be4;--accent-strong: #3659cb;--mint: #168365;--surface: #ffffff;--surface-raised: #f5f7fb;--surface-soft: rgba(19, 35, 68, .035);--text: #172033;--muted: #536078;--faint: #738096;--line: rgba(27, 47, 83, .13);--background: #f4f6fa;--shadow: 0 22px 70px rgba(35, 50, 83, .1)}*{box-sizing:border-box}html{min-width:320px;scroll-padding-top:92px}body{min-width:320px;margin:0;background:radial-gradient(ellipse at 15% 0%,rgba(82,111,203,.08),transparent 35rem),var(--background);color:var(--text);transition:background-color .25s ease,color .25s ease}body.menu-open{overflow:hidden}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{color:inherit}img{display:block;max-width:100%}::-moz-selection{color:#fff;background:#536fda}::selection{color:#fff;background:#536fda}:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.app-shell{min-height:100vh;overflow:visible}.site-main{min-height:calc(100vh - 180px)}.page-shell{width:min(1160px,100%);margin:0 auto;padding:clamp(3.5rem,8vw,6.5rem) clamp(1.2rem,5vw,3rem);animation:page-enter .6s cubic-bezier(.2,.7,.2,1) both}.page-heading{max-width:720px;margin-bottom:clamp(2rem,5vw,3.5rem)}.eyebrow,.mono-label{color:var(--accent);font-family:Cascadia Code,Consolas,monospace;font-size:.77rem;font-weight:500;letter-spacing:.14em;line-height:1.5;text-transform:uppercase}.eyebrow{display:inline-flex;align-items:center;gap:.65rem;margin:0 0 .9rem}.eyebrow:before{width:1.5rem;height:1px;background:currentColor;content:""}.page-title{margin:0;font-size:clamp(2.25rem,5.6vw,4.1rem);font-weight:700;letter-spacing:-.065em;line-height:1.05}.page-description{max-width:620px;margin:1.1rem 0 0;color:var(--muted);font-size:clamp(.98rem,2vw,1.1rem);line-height:1.8}.accent-text{color:var(--accent)}.muted{color:var(--muted)}.surface-card{border:1px solid var(--line);border-radius:1.15rem;background:var(--surface-soft);transition:transform .22s ease,border-color .22s ease,background-color .22s ease,box-shadow .22s ease}.surface-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--accent) 48%,var(--line));background:color-mix(in srgb,var(--surface) 76%,transparent);box-shadow:var(--shadow)}.reveal{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s cubic-bezier(.2,.7,.2,1)}.reveal.is-visible{opacity:1;transform:translateY(0)}.reveal-stagger>:nth-child(2){transition-delay:70ms}.reveal-stagger>:nth-child(3){transition-delay:.14s}.reveal-stagger>:nth-child(4){transition-delay:.21s}.reveal-stagger>:nth-child(5){transition-delay:.28s}.reveal-stagger>:nth-child(6){transition-delay:.35s}.button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;gap:.65rem;padding:.75rem 1.1rem;border:1px solid var(--line);border-radius:.7rem;background:var(--surface-soft);color:var(--text);cursor:pointer;font-size:.92rem;font-weight:700;transition:transform .18s ease,border-color .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease}.button:hover{transform:translateY(-2px);border-color:var(--accent)}.button:active{transform:translateY(0) scale(.98)}.button-primary{border-color:var(--accent);background:var(--accent);color:#0b1020;box-shadow:0 8px 24px #5d7ae233}.button-primary:hover{background:var(--accent-strong);color:#0b1020;box-shadow:0 12px 32px #5d7ae247}.button:disabled{cursor:wait;opacity:.7;transform:none}.icon-link{display:inline-grid;width:44px;height:44px;place-items:center;border:1px solid var(--line);border-radius:50%;background:var(--surface-soft);color:var(--muted);font-size:1.1rem;transition:transform .18s ease,color .18s ease,border-color .18s ease}.icon-link:hover{transform:translateY(-3px);border-color:var(--accent);color:var(--accent)}.grid-layout{display:grid;gap:1.15rem}.section-label{margin:0 0 1.15rem;color:var(--text);font-size:1.2rem;font-weight:700;letter-spacing:-.03em}.navbar{position:sticky;z-index:120;top:0;border-bottom:1px solid transparent;background:color-mix(in srgb,var(--background) 83%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);transition:border-color .2s ease,background .2s ease}.navbar.scrolled{border-color:var(--line);background:color-mix(in srgb,var(--background) 93%,transparent)}.navbar-inner{display:flex;width:min(1240px,100%);min-height:74px;align-items:center;justify-content:space-between;gap:1.5rem;margin:0 auto;padding:0 clamp(1.1rem,5vw,3rem)}.brand{display:inline-flex;align-items:center;gap:.65rem;font-size:.98rem;font-weight:800;letter-spacing:-.04em;white-space:nowrap}.brand-mark{display:grid;width:34px;height:34px;place-items:center;border:1px solid color-mix(in srgb,var(--accent) 60%,var(--line));border-radius:10px;background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent-strong);font-family:Cascadia Code,Consolas,monospace;font-size:.75rem}.brand-name span{color:var(--muted);font-weight:500}.desktop-nav{display:flex;align-items:center;gap:clamp(.7rem,1.7vw,1.45rem)}.nav-link{position:relative;padding:.65rem 0;color:var(--muted);font-size:.82rem;font-weight:600;transition:color .18s ease}.nav-link:after{position:absolute;right:0;bottom:.25rem;left:0;height:2px;transform:scaleX(0);transform-origin:left;background:var(--accent);content:"";transition:transform .18s ease}.nav-link:hover,.nav-link.active{color:var(--text)}.nav-link.active:after{transform:scaleX(1)}.nav-actions{display:flex;align-items:center;gap:.65rem}.theme-toggle,.menu-toggle,.menu-close{display:inline-grid;width:44px;height:44px;place-items:center;border:1px solid var(--line);border-radius:50%;background:var(--surface-soft);color:var(--text);cursor:pointer;transition:background .18s ease,border-color .18s ease,transform .18s ease}.theme-toggle:hover,.menu-toggle:hover,.menu-close:hover{transform:translateY(-1px);border-color:var(--accent)}.menu-toggle{display:none;font-size:1.1rem}.mobile-panel{position:relative;display:flex;width:min(430px,100%);min-height:min(460px,calc(100dvh - 6.25rem));max-height:calc(100dvh - 6.25rem);flex-direction:column;overflow-y:auto;overscroll-behavior:contain;padding:clamp(1rem,4vw,1.5rem);border:1px solid var(--line);border-radius:1.1rem;background:var(--surface);color:var(--text);box-shadow:var(--shadow);animation:panel-enter .22s ease both}.mobile-menu-backdrop{position:fixed;z-index:105;inset:0;display:flex;align-items:flex-start;justify-content:flex-end;padding:5.25rem .75rem .75rem;background:#050a186e;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:backdrop-enter .18s ease both}:root[data-theme=light] .mobile-menu-backdrop{background:#121c3052}.mobile-panel-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-bottom:.9rem;border-bottom:1px solid var(--line)}.mobile-menu-title{color:var(--muted);font-family:DM Mono,monospace;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase}.mobile-nav-links{display:grid;flex:1;align-content:start;gap:0;width:100%;margin:.75rem 0 1rem}.mobile-nav-links .nav-link{display:flex;min-height:49px;align-items:center;padding:.55rem .2rem;font-size:clamp(1.2rem,5vw,1.65rem);letter-spacing:-.035em}.mobile-nav-links .nav-link:after{bottom:.55rem;width:2rem}.mobile-nav-footer{margin:auto 0 0;padding:.9rem 0 0;border-top:1px solid var(--line);color:var(--muted);font-size:.87rem}.mobile-nav-cta{width:100%;min-height:48px;justify-content:center}.scroll-progress{position:fixed;z-index:101;top:0;left:0;width:100%;height:2px;pointer-events:none}.scroll-progress span{display:block;height:100%;background:linear-gradient(90deg,var(--accent),var(--mint));box-shadow:0 0 14px color-mix(in srgb,var(--accent) 70%,transparent);transform-origin:left}.back-to-top{position:fixed;z-index:40;right:clamp(1rem,3vw,2rem);bottom:clamp(1rem,3vw,2rem);width:48px;height:48px;border:1px solid var(--line);border-radius:50%;background:var(--surface);color:var(--text);box-shadow:var(--shadow);cursor:pointer;opacity:0;pointer-events:none;transform:translateY(8px);transition:opacity .18s ease,transform .18s ease,border-color .18s ease}.back-to-top.visible{opacity:1;pointer-events:auto;transform:translateY(0)}.back-to-top:hover{border-color:var(--accent);color:var(--accent)}.home-hero{position:relative;display:grid;width:min(1240px,100%);min-height:min(780px,calc(100svh - 74px));grid-template-columns:minmax(0,1.1fr) minmax(280px,.75fr);align-items:center;gap:clamp(2.5rem,7vw,6.5rem);margin:0 auto;padding:clamp(4rem,9vw,7rem) clamp(1.2rem,7vw,5rem) 6.5rem}.home-hero:before{position:absolute;z-index:-1;top:8%;right:8%;width:min(50vw,520px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(89,112,207,.19),transparent 68%);content:"";filter:blur(5px);pointer-events:none}.hero-grid{position:absolute;z-index:-2;inset:0 0 5%;background-image:linear-gradient(rgba(157,176,218,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(157,176,218,.035) 1px,transparent 1px);background-position:center;background-size:52px 52px;-webkit-mask-image:linear-gradient(to bottom,black,transparent 82%);mask-image:linear-gradient(to bottom,black,transparent 82%);pointer-events:none}.hero-copy{max-width:690px;animation:hero-copy-in .7s .1s cubic-bezier(.2,.7,.2,1) both}.availability{display:inline-flex;align-items:center;gap:.55rem;margin:0 0 1.7rem;padding:.46rem .75rem;border:1px solid rgba(131,229,192,.22);border-radius:999px;background:#48ad8817;color:var(--mint);font-family:Cascadia Code,Consolas,monospace;font-size:.73rem}.availability:before{width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 12px currentColor;content:""}.hero-title{max-width:760px;margin:0;font-size:clamp(3.2rem,8.3vw,6.8rem);font-weight:700;letter-spacing:-.085em;line-height:.98}.hero-title span{display:block;color:var(--muted)}.hero-role{min-height:2.15rem;margin:1.35rem 0 0;color:var(--accent-strong);font-size:clamp(1.16rem,2.7vw,1.7rem);font-weight:600;letter-spacing:-.04em}.typing-caret{display:inline-block;width:1px;height:1em;margin-left:.16em;transform:translateY(.11em);background:currentColor;animation:caret-blink 1s step-end infinite}.hero-intro{max-width:620px;margin:1.3rem 0 0;color:var(--muted);font-size:clamp(1rem,2vw,1.1rem);line-height:1.85}.hero-actions,.hero-socials{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem}.hero-actions{margin-top:2rem}.hero-socials{gap:.6rem;margin-top:1.65rem}.hero-portrait-wrap{position:relative;width:min(100%,375px);justify-self:end;animation:hero-image-in .8s .22s cubic-bezier(.2,.7,.2,1) both}.hero-portrait-wrap:before,.hero-portrait-wrap:after{position:absolute;z-index:-1;border:1px solid color-mix(in srgb,var(--accent) 37%,transparent);border-radius:1.6rem;content:""}.hero-portrait-wrap:before{inset:-13px 15px 16px -13px}.hero-portrait-wrap:after{inset:15px -13px -13px 13px;border-color:color-mix(in srgb,var(--mint) 28%,transparent)}.hero-portrait{width:100%;aspect-ratio:.86;border:1px solid var(--line);border-radius:1.4rem;background:var(--surface-raised);box-shadow:var(--shadow);-o-object-fit:cover;object-fit:cover;-o-object-position:center 25%;object-position:center 25%}.hero-image-caption{position:absolute;right:1rem;bottom:1rem;left:1rem;padding:.8rem .95rem;border:1px solid rgba(255,255,255,.16);border-radius:.85rem;background:#0a0f1ab3;color:#fff;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.hero-image-caption strong,.hero-image-caption span{display:block}.hero-image-caption strong{font-size:.88rem}.hero-image-caption span{margin-top:.18rem;color:#cad1df;font-size:.73rem}.scroll-cue{position:absolute;bottom:1.5rem;left:50%;display:inline-flex;align-items:center;gap:.6rem;color:var(--faint);font-family:Cascadia Code,Consolas,monospace;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;transform:translate(-50%)}.scroll-cue span:last-child{display:block;width:34px;height:1px;background:var(--line)}.intro-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;width:min(1120px,calc(100% - 2.4rem));margin:0 auto clamp(3rem,7vw,6rem);overflow:hidden;border:1px solid var(--line);border-radius:1rem;background:var(--line)}.intro-stat{padding:clamp(1rem,3vw,1.6rem);background:var(--surface)}.intro-stat strong,.intro-stat span{display:block}.intro-stat strong{font-size:clamp(.9rem,2vw,1.1rem);letter-spacing:-.035em}.intro-stat span{margin-top:.38rem;color:var(--muted);font-size:.78rem;line-height:1.5}.about-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(250px,.8fr);align-items:start;gap:clamp(2rem,6vw,5rem)}.about-prose{color:var(--muted);font-size:1rem;line-height:1.9}.about-prose p{margin:0 0 1rem}.about-prose strong{color:var(--text)}.personal-info{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin-top:1.7rem}.info-item{display:flex;min-height:50px;align-items:center;gap:.7rem;padding:.7rem;border:1px solid var(--line);border-radius:.7rem;background:var(--surface-soft);color:var(--muted);font-size:.82rem;overflow-wrap:anywhere}.info-item svg{flex:0 0 auto;color:var(--accent)}.about-image{width:min(100%,340px);aspect-ratio:.91;justify-self:end;border:1px solid var(--line);border-radius:1.1rem;box-shadow:var(--shadow);-o-object-fit:cover;object-fit:cover}.about-availability{margin-top:1.5rem;margin-bottom:0}.page-subsection{margin-top:4rem}.interest-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:1.25rem}.interest-card{min-height:120px;padding:1.25rem}.interest-icon{margin-bottom:.8rem;color:var(--accent);font-size:1.15rem}.interest-card h3{margin:0;font-size:.95rem}.project-grid{display:grid}.project-card{min-width:0}.project-preview{position:relative;overflow:hidden;min-width:0;aspect-ratio:1.78;border:1px solid var(--line);border-radius:1rem;background:radial-gradient(ellipse at 75% 22%,rgba(103,130,223,.24),transparent 48%),var(--surface-raised)}.project-preview:after{position:absolute;inset:0;background:linear-gradient(180deg,transparent 56%,rgba(5,9,16,.35));content:"";pointer-events:none}.project-preview img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .5s cubic-bezier(.2,.7,.2,1)}.project-number{position:absolute;z-index:1;top:1rem;left:1rem;padding:.38rem .6rem;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:#090e18ad;color:#fff;font-family:Cascadia Code,Consolas,monospace;font-size:.65rem}.project-content{min-width:0;padding:0}.project-meta{display:flex;align-items:center;justify-content:space-between;gap:.8rem;color:var(--faint);font-family:Cascadia Code,Consolas,monospace;font-size:.7rem}.project-content h2{margin:.6rem 0 0;font-size:1.35rem;letter-spacing:-.045em}.project-tech{margin:.75rem 0 0;color:var(--muted);font-size:.83rem;line-height:1.6}.project-actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.2rem}.project-actions .button{min-height:40px;padding:.55rem .8rem;font-size:.8rem}.skills-groups{display:grid;gap:1.1rem}.skill-category{padding:clamp(1.15rem,3vw,1.8rem)}.skill-category h2{margin:0;font-size:1.05rem;letter-spacing:-.03em}.skills-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(94px,1fr));gap:.75rem;margin-top:1.15rem}.skill-item{display:flex;min-height:105px;flex-direction:column;align-items:center;justify-content:center;gap:.6rem;padding:.75rem .45rem;border:1px solid transparent;border-radius:.8rem;color:var(--muted);font-size:.74rem;text-align:center;transition:transform .18s ease,border-color .18s ease,background .18s ease}.skill-item:hover{transform:translateY(-3px);border-color:var(--line);background:var(--surface-soft);color:var(--text)}.skill-item img{width:46px;height:46px;-o-object-fit:contain;object-fit:contain}.timeline{position:relative;display:grid;gap:1.1rem}.timeline:before{position:absolute;top:.4rem;bottom:.4rem;left:8px;width:1px;background:var(--line);content:""}.education-card{position:relative;display:grid;grid-template-columns:minmax(115px,180px) minmax(0,1fr);gap:1.2rem;padding:1.2rem;margin-left:2rem}.education-card:before{position:absolute;top:1.55rem;left:-2.02rem;width:9px;height:9px;border:2px solid var(--accent);border-radius:50%;background:var(--background);content:"";transform:translate(-50%)}.education-card img{width:100%;height:120px;border-radius:.7rem;-o-object-fit:cover;object-fit:cover}.education-content h2{margin:0;font-size:1.1rem;letter-spacing:-.035em}.education-content h3{margin:.45rem 0;color:var(--accent);font-size:.95rem}.education-meta{display:flex;flex-wrap:wrap;gap:.5rem 1rem;margin:.75rem 0;color:var(--muted);font-size:.8rem}.text-link{display:inline-flex;align-items:center;gap:.4rem;color:var(--accent);font-size:.82rem;font-weight:700}.achievement-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.achievement-card{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;color:var(--muted);font-size:.9rem;line-height:1.65}.achievement-card svg{flex:0 0 auto;margin-top:.2rem;color:var(--mint)}.certificate-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.certificate-card{display:flex;min-height:205px;flex-direction:column;align-items:flex-start;padding:1.35rem}.certificate-card h2{margin:.7rem 0 0;font-size:1.07rem;letter-spacing:-.025em}.certificate-card p{margin:.5rem 0 0;color:var(--muted);font-size:.83rem}.certificate-card .button{min-height:39px;margin-top:auto;padding:.55rem .8rem;font-size:.8rem}.contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-card{display:flex;min-height:150px;gap:1rem;padding:1.3rem}.contact-icon{display:grid;width:42px;height:42px;flex:0 0 auto;place-items:center;border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line));border-radius:.75rem;background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--accent);font-size:1.2rem}.contact-card h2{margin:.05rem 0 .55rem;font-size:.95rem}.contact-details{display:grid;gap:.35rem;color:var(--muted);font-size:.82rem;line-height:1.55;overflow-wrap:anywhere}.social-row{display:flex;flex-wrap:wrap;gap:.55rem}.contact-form-wrap{margin-top:clamp(2.5rem,6vw,4rem)}.contact-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;padding:clamp(1.1rem,3vw,1.8rem)}.form-field{display:grid;gap:.45rem}.form-field-full{grid-column:1 / -1}.form-field label{color:var(--muted);font-size:.8rem;font-weight:700}.form-field input,.form-field textarea{width:100%;min-height:46px;padding:.75rem .85rem;border:1px solid var(--line);border-radius:.65rem;background:var(--surface);color:var(--text);outline:none;transition:border-color .18s ease,box-shadow .18s ease}.form-field textarea{min-height:150px;resize:vertical}.form-field input:focus,.form-field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 15%,transparent)}.form-status{grid-column:1 / -1;margin:0;color:var(--muted);font-size:.86rem;line-height:1.6}.form-status.success{color:var(--mint)}.form-status.error{color:#f59b9b}.site-footer{border-top:1px solid var(--line);background:color-mix(in srgb,var(--surface) 48%,transparent)}.footer-inner{display:grid;width:min(1160px,100%);grid-template-columns:1.3fr .8fr 1fr;gap:2rem;margin:0 auto;padding:3rem clamp(1.2rem,5vw,3rem)}.footer-about p{max-width:340px;margin:1rem 0 0;color:var(--muted);font-size:.83rem;line-height:1.75}.footer-heading{margin:0 0 .85rem;color:var(--text);font-size:.87rem}.footer-links{display:grid;gap:.55rem;color:var(--muted);font-size:.82rem}.footer-links a:hover{color:var(--accent)}.footer-contact-row{display:flex;align-items:flex-start;gap:.55rem}.footer-contact-row svg{flex:0 0 auto;margin-top:.15rem;color:var(--accent)}.footer-bottom{display:flex;width:min(1160px,100%);align-items:center;justify-content:space-between;gap:1rem;margin:0 auto;padding:1.1rem clamp(1.2rem,5vw,3rem);border-top:1px solid var(--line);color:var(--faint);font-size:.75rem}.visitor-count{display:inline-flex;align-items:center;gap:.45rem;color:var(--muted);font-family:DM Mono,monospace;font-size:.72rem}.visitor-count svg{color:var(--accent)}.not-found{min-height:60vh;display:grid;place-items:center;text-align:center}.not-found h1{margin:0;font-size:clamp(3rem,10vw,6rem);letter-spacing:-.08em}.not-found p{color:var(--muted)}@keyframes page-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-copy-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-image-in{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes caret-blink{50%{opacity:0}}@keyframes panel-enter{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@keyframes backdrop-enter{0%{opacity:0}to{opacity:1}}@media(max-width:900px){.home-hero{min-height:auto;grid-template-columns:minmax(0,1.1fr) minmax(240px,.75fr)}.footer-inner{grid-template-columns:1fr 1fr}.footer-about{grid-column:1 / -1}}@media(max-width:720px){.home-hero{grid-template-columns:1fr;gap:2.5rem;padding-top:4.5rem;padding-bottom:5rem}.hero-copy{text-align:center}.hero-intro{margin-right:auto;margin-left:auto}.hero-actions,.hero-socials{justify-content:center}.availability{margin-bottom:1.2rem}.hero-portrait-wrap{width:min(68%,310px);justify-self:center}.scroll-cue{bottom:1.2rem}.about-layout{grid-template-columns:1fr}.about-image{width:min(78%,300px);justify-self:center}}@media(max-width:560px){.page-shell{padding-right:1.1rem;padding-left:1.1rem}.hero-title{font-size:clamp(3.2rem,17vw,5rem)}.hero-portrait-wrap{width:min(76%,290px)}.intro-strip{grid-template-columns:1fr}.intro-stat{padding:.9rem 1.1rem}.intro-stat strong{font-size:.94rem}.intro-stat span{margin-top:.15rem}.interest-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-grid,.certificate-grid,.contact-grid,.achievement-grid{grid-template-columns:1fr}.education-card{grid-template-columns:1fr;gap:.9rem;padding:.9rem}.education-card img{height:170px}.personal-info,.contact-form{grid-template-columns:1fr}.form-field-full{grid-column:auto}.footer-inner{grid-template-columns:1fr 1fr;gap:1.6rem 1rem}.footer-about{grid-column:1 / -1}.footer-bottom{align-items:flex-start;flex-direction:column}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal,.reveal.is-visible{opacity:1;transform:none}}:root{--accent: #7c8cff;--accent-strong: #b7c2ff;--mint: #68e0c0;--background: #070a12;--surface: #101522;--surface-raised: #151c2d;--surface-soft: rgba(255, 255, 255, .045);--line: rgba(182, 196, 235, .16);--shadow: 0 28px 90px rgba(0, 0, 0, .38)}body{background:radial-gradient(circle at 72% 0%,rgba(107,93,255,.14),transparent 28rem),radial-gradient(circle at 6% 38%,rgba(50,215,180,.055),transparent 24rem),var(--background)}.navbar{border-bottom-color:#b6c4eb14;background:#070a129e}.navbar.scrolled{background:#070a12e0;box-shadow:0 12px 34px #0000002e}.brand-mark{border-radius:12px;background:linear-gradient(135deg,#7c8cff4d,#68e0c024);box-shadow:inset 0 0 18px #ffffff0f,0 0 24px #7c8cff1f}.home-hero{min-height:min(820px,calc(100svh - 74px));padding-top:clamp(5rem,12vw,9rem)}.home-hero:after{position:absolute;z-index:-1;top:22%;left:44%;width:1px;height:30%;background:linear-gradient(transparent,rgba(124,140,255,.4),transparent);content:"";opacity:.7}.hero-grid{opacity:.8;background-size:44px 44px;-webkit-mask-image:linear-gradient(to bottom,black 0%,transparent 76%);mask-image:linear-gradient(to bottom,black 0%,transparent 76%)}.hero-title{font-size:clamp(3.9rem,9vw,8rem);line-height:.91;text-wrap:balance}.hero-title span{color:transparent;background:linear-gradient(105deg,var(--accent-strong),#eef0ff 52%,var(--mint));-webkit-background-clip:text;background-clip:text}.hero-intro{max-width:560px;font-size:1.06rem}.hero-portrait-wrap{filter:drop-shadow(0 30px 50px rgba(0,0,0,.28))}.hero-portrait-wrap:before{inset:-18px 22px 22px -18px}.hero-portrait-wrap:after{inset:22px -18px -18px 18px}.hero-portrait{border-radius:1.8rem;box-shadow:0 26px 80px #0000006b}.hero-image-caption{border-color:#ffffff38;background:#090d18b8}.button{border-radius:.85rem;min-height:50px;padding-inline:1.2rem}.button-primary{background:linear-gradient(135deg,#8b96ff,#6878e8);border-color:transparent;box-shadow:0 12px 28px #6978e840}.button-primary:hover{box-shadow:0 16px 38px #6978e861}.surface-card{border-radius:1.35rem;background:linear-gradient(145deg,#fff1,#ffffff06);box-shadow:inset 0 1px #ffffff0a}.surface-card:hover{transform:translateY(-7px);box-shadow:0 24px 70px #00000040,0 0 0 1px #7c8cff0f}.intro-strip{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:1.4rem;background:linear-gradient(100deg,#7c8cff1f,#68e0c00b);box-shadow:var(--shadow)}.intro-stat{padding:1.6rem 1.4rem}.intro-stat strong{font-size:1.05rem}.page-shell{padding-top:clamp(4.5rem,10vw,8rem)}.page-heading{margin-bottom:clamp(2.8rem,6vw,4.8rem)}.page-title{font-size:clamp(2.8rem,6.5vw,5.4rem)}.page-description{font-size:1.06rem}.project-preview{aspect-ratio:16 / 9}.project-preview:after{background:linear-gradient(180deg,transparent 48%,rgba(7,10,18,.5))}.project-preview img{transition:transform .65s cubic-bezier(.2,.7,.2,1),filter .3s ease}.project-card:hover .project-preview img{transform:scale(1.07);filter:saturate(1.12)}.project-number{border-radius:999px;background:#070a12b8;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.skill-category h2,.certificate-card h2,.education-content h2,.contact-card h2{letter-spacing:-.04em}.skill-item{border-radius:1rem;background:#ffffff09}.skill-item:hover{background:#7c8cff1f}.timeline:before{background:linear-gradient(var(--accent),var(--mint),transparent)}.education-card{border-left:2px solid rgba(124,140,255,.46)}.contact-icon{background:linear-gradient(135deg,#7c8cff33,#68e0c01f)}.form-status{border-radius:.8rem}.site-footer{background:#05070d8c}@media(max-width:720px){.home-hero:after{display:none}.hero-title{font-size:clamp(3.7rem,18vw,6rem)}.page-title{font-size:clamp(2.8rem,14vw,4.8rem)}}:root{--accent: #9366f5;--accent-strong: #c4b5fd;--electric: #3b82f6;--coral: #ff5c5c;--sun: #facc15;--mint: #34d399;--background: #0b1020;--surface: #121a30;--surface-raised: #18233d;--surface-soft: rgba(248, 250, 252, .055);--line: rgba(191, 204, 242, .15);--shadow: 0 28px 90px rgba(3, 7, 20, .4);font-family:DM Sans,Segoe UI,sans-serif}:root[data-theme=light]{--accent: #4338ca;--accent-strong: #5b51d8;--electric: #2563eb;--coral: #e94f55;--sun: #d89f08;--mint: #138d67;--background: #f8fafc;--surface: #ffffff;--surface-raised: #f0f2fa;--surface-soft: rgba(11, 16, 32, .035);--line: rgba(34, 48, 87, .13);--shadow: 0 24px 70px rgba(34, 48, 87, .12)}body{background:radial-gradient(ellipse at 78% 4%,rgba(139,92,246,.16),transparent 35rem),radial-gradient(ellipse at 2% 46%,rgba(59,130,246,.075),transparent 30rem),var(--background)}:root[data-theme=light] body{background:radial-gradient(ellipse at 76% 2%,rgba(139,92,246,.09),transparent 36rem),radial-gradient(ellipse at 4% 50%,rgba(59,130,246,.055),transparent 30rem),var(--background)}h1,h2,h3,.brand,.button,.nav-link{font-family:Space Grotesk,DM Sans,sans-serif}.navbar{top:.75rem;width:min(1320px,calc(100% - 2rem));margin:0 auto;border:1px solid rgba(191,204,242,.14);border-radius:1.1rem;background:#0b1020c2;box-shadow:0 12px 38px #03071424}.navbar.scrolled{border-color:#bfccf238;background:#0b1020f0}:root[data-theme=light] .navbar{background:#f8fafcdb}:root[data-theme=light] .navbar.scrolled{background:#f8fafcf7}:root[data-theme=light] .home-hero:after{border-color:#4338ca29}:root[data-theme=light] .hero-copy .eyebrow{color:#59647b}:root[data-theme=light] .hero-role{color:#5844be}:root[data-theme=light] .hero-role>span:first-child{color:#8c6500}:root[data-theme=light] .typing-caret{background:var(--coral)}:root[data-theme=light] .hero-intro{color:#4d5870}:root[data-theme=light] .hero-title span{background:linear-gradient(105deg,#272152 8%,#4338ca 48%,#8b5cf6 76%,#e94f55 103%);-webkit-background-clip:text;background-clip:text}:root[data-theme=light] .scroll-cue{color:#57627a}:root[data-theme=light] .intro-stat{background:linear-gradient(145deg,#fff,#f0f2fc)}:root[data-theme=light] .intro-stat strong{color:#172033}:root[data-theme=light] .intro-stat span{color:#536078}:root[data-theme=light] .certificate-card{background:linear-gradient(135deg,#facc152b,#fffffff7 50%)}:root[data-theme=light] .certificate-card .mono-label{color:#936800}:root[data-theme=light] .certificate-card p{color:#536078}:root[data-theme=light] .contact-form{background:linear-gradient(145deg,#3b82f614,#fff 48%,#8b5cf612)}:root[data-theme=light] .site-footer{background:linear-gradient(180deg,#eef1fb,#f8fafc)}:root[data-theme=light] .footer-heading{color:#4338ca}:root[data-theme=light] .footer-socials a{color:#536078}:root[data-theme=light] .footer-bottom{color:#536078}:root[data-theme=light] .experience-card{background:linear-gradient(115deg,#22d3ee1f,#fff 42%,#4338ca0e)}:root[data-theme=light] .experience-description,:root[data-theme=light] .experience-responsibilities li{color:#4d5870}.navbar-inner{min-height:68px}.brand-mark{border:0;border-radius:11px;background:linear-gradient(145deg,var(--electric),var(--accent) 67%,var(--coral));color:#fff;box-shadow:0 8px 22px #5b4bdc47}.nav-link:after{height:3px;border-radius:99px;background:linear-gradient(90deg,var(--electric),var(--accent),var(--coral))}.nav-link:hover{color:var(--accent-strong)}.theme-toggle,.menu-toggle,.menu-close{border-radius:13px}.home-hero{width:min(1380px,100%);min-height:min(810px,calc(100svh - 88px));grid-template-columns:minmax(0,1.15fr) minmax(300px,.78fr);gap:clamp(2.7rem,7vw,7rem);padding:clamp(4.3rem,9vw,7.5rem) clamp(1.5rem,6vw,5.2rem) 6rem}.home-hero:before{top:0;right:0;width:min(56vw,680px);background:radial-gradient(circle at 35% 45%,rgba(59,130,246,.3),transparent 49%),radial-gradient(circle at 74% 26%,rgba(255,92,92,.16),transparent 38%),radial-gradient(circle at 64% 73%,rgba(139,92,246,.24),transparent 45%);animation:hero-atmosphere 13s ease-in-out infinite alternate}.home-hero:after{top:12%;right:5%;left:auto;width:min(38vw,460px);height:auto;aspect-ratio:1;border:1px solid rgba(193,203,250,.14);border-radius:50%;background:conic-gradient(from 40deg,transparent,rgba(250,204,21,.12),transparent 30%,rgba(59,130,246,.12),transparent 72%);opacity:.76;animation:orbit-slow 48s linear infinite}.hero-grid{inset:-1rem 0 3%;opacity:.66;background-image:linear-gradient(rgba(191,204,242,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(191,204,242,.045) 1px,transparent 1px);background-size:48px 48px;-webkit-mask-image:radial-gradient(ellipse at 64% 38%,black,transparent 77%);mask-image:radial-gradient(ellipse at 64% 38%,black,transparent 77%)}.hero-copy{max-width:760px}.hero-copy .eyebrow{color:#aeb9d5}.availability{border-color:#34d39947;background:#34d3991b;color:#6ee7b7;font-family:DM Mono,monospace}.hero-title{max-width:820px;font-size:clamp(4.4rem,9.6vw,8.4rem);letter-spacing:-.095em;line-height:.86}.hero-title span{padding-right:.08em;background:linear-gradient(105deg,#f8fafc 8%,#b6c6ff 38%,#8b5cf6 72%,#ff7b77 103%);-webkit-background-clip:text;background-clip:text}.hero-role{color:#b9a7ff;font-family:Space Grotesk,sans-serif;font-size:clamp(1.25rem,2.5vw,1.8rem)}.hero-role>span:first-child{color:var(--sun)}.typing-caret{background:var(--coral)}.hero-intro{max-width:590px;color:#bbc5d8;font-size:clamp(1rem,1.35vw,1.13rem)}.hero-portrait-wrap{width:min(100%,405px);margin-right:clamp(.5rem,2vw,1.6rem);filter:drop-shadow(0 32px 70px rgba(0,0,0,.36))}.hero-portrait-wrap:before{inset:-19px 24px 24px -19px;border-width:2px;border-color:#3b82f691;border-radius:2rem;transform:rotate(-4deg)}.hero-portrait-wrap:after{inset:25px -20px -20px 24px;border-width:2px;border-color:#ff5c5c80;border-radius:2rem;transform:rotate(4deg)}.hero-portrait{position:relative;z-index:1;aspect-ratio:.84;border:5px solid rgba(248,250,252,.1);border-radius:1.8rem;background:linear-gradient(145deg,#312e81,#0b1020 70%);-o-object-position:center 22%;object-position:center 22%}.hero-image-caption{z-index:2}.hero-tech-chip{position:absolute;z-index:3;display:flex;align-items:center;gap:.5rem;min-height:42px;padding:.55rem .8rem;border:1px solid rgba(248,250,252,.19);border-radius:.8rem;background:#0d1427e0;color:#f8fafc;box-shadow:0 12px 34px #02061757;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font-family:Space Grotesk,sans-serif;font-size:.78rem;font-weight:700;animation:chip-float 5s ease-in-out infinite}.hero-tech-chip span{padding-left:.48rem;border-left:1px solid rgba(248,250,252,.2);color:#aab5cd;font-family:DM Mono,monospace;font-size:.61rem;font-weight:400;text-transform:uppercase}.hero-tech-chip--react{top:14%;left:-13%;border-color:#3b82f675}.hero-tech-chip--java{top:49%;right:-18%;border-color:#facc157a;animation-delay:-1.7s}.hero-tech-chip--node{bottom:15%;left:-14%;border-color:#34d39973;animation-delay:-3.2s}.hero-tech-chip--react:before,.hero-tech-chip--java:before,.hero-tech-chip--node:before{width:7px;height:7px;border-radius:50%;background:var(--electric);content:""}.hero-tech-chip--java:before{background:var(--sun)}.hero-tech-chip--node:before{background:var(--mint)}.button-primary{border-color:transparent;background:linear-gradient(115deg,#3b82f6,#6355e9 56%,#8b5cf6);color:#fff;box-shadow:0 12px 30px #4f5be64f}.button-primary:hover{background:linear-gradient(115deg,#5593ff,#7668f2 56%,#a079ff);color:#fff}.hero-actions .button:not(.button-primary){background:#f8fafc11}.icon-link{border-radius:14px;background:#f8fafc0e}.icon-link:hover{color:#fff;border-color:var(--coral);background:#ff5c5c1f}.scroll-cue{color:#99a7c2;font-family:DM Mono,monospace}.scroll-cue>svg{color:var(--sun);animation:cue-bob 1.7s ease-in-out infinite}.scroll-cue span:last-child{width:42px;background:linear-gradient(90deg,var(--electric),var(--coral))}.intro-strip{gap:0;border:0;border-radius:1.3rem;background:transparent;box-shadow:none;overflow:visible}.intro-stat{position:relative;min-height:114px;padding:1.35rem 1.5rem;border:1px solid var(--line);background:linear-gradient(145deg,#121a30f0,#121a30b3)}.intro-stat:first-child{border-radius:1.2rem 0 0 1.2rem}.intro-stat:last-child{border-radius:0 1.2rem 1.2rem 0}.intro-stat+.intro-stat{border-left:0}.intro-stat:before{position:absolute;top:0;left:1.5rem;width:2.6rem;height:3px;border-radius:0 0 5px 5px;background:var(--stat-accent, var(--electric));content:""}.intro-stat:nth-child(2){--stat-accent: var(--coral)}.intro-stat:nth-child(3){--stat-accent: var(--mint)}.intro-stat strong{font-family:Space Grotesk,sans-serif;font-size:1.08rem}.intro-stat span{font-size:.82rem}.page-shell{position:relative;isolation:isolate;width:min(1240px,100%)}.page-shell:before{position:absolute;z-index:-1;top:-4rem;right:0;width:min(45vw,520px);height:32rem;border-radius:50%;background:var(--page-glow, radial-gradient(circle, rgba(139, 92, 246, .12), transparent 69%));content:"";pointer-events:none}.about-page{--page-glow: radial-gradient(circle, rgba(59, 130, 246, .18), transparent 68%)}.education-page{--page-glow: radial-gradient(circle, rgba(52, 211, 153, .13), transparent 68%)}.certifications-page{--page-glow: radial-gradient(circle, rgba(250, 204, 21, .12), transparent 68%)}.projects-page{--page-glow: radial-gradient(circle, rgba(139, 92, 246, .18), transparent 68%)}.skills-page{--page-glow: radial-gradient(circle, rgba(255, 92, 92, .13), transparent 68%)}.contact-page{--page-glow: radial-gradient(circle, rgba(59, 130, 246, .16), transparent 68%)}.page-title{font-family:Space Grotesk,sans-serif;font-size:clamp(3rem,6.8vw,5.6rem);line-height:.98;text-wrap:balance}.page-heading .eyebrow{font-family:DM Mono,monospace}.page-description{max-width:670px}.about-prose{max-width:690px;font-size:1.05rem}.about-prose p:first-child{color:var(--text);font-size:clamp(1.24rem,2.3vw,1.75rem);line-height:1.52;letter-spacing:-.04em}.about-prose strong{color:var(--accent-strong)}.personal-info{gap:.6rem}.info-item{border-radius:.8rem}.about-image{border:5px solid rgba(248,250,252,.09);border-radius:1.6rem}.about-page .hero-portrait-wrap:before{border-color:#facc158c}.about-page .hero-portrait-wrap:after{border-color:#3b82f680}.interest-card{position:relative;overflow:hidden;min-height:136px}.interest-card:after{position:absolute;right:-1.2rem;bottom:-2.1rem;width:5rem;height:5rem;border:1px solid rgba(248,250,252,.08);border-radius:50%;content:""}.interest-card:nth-child(3n+1) .interest-icon{color:var(--electric)}.interest-card:nth-child(3n+2) .interest-icon{color:var(--coral)}.interest-card:nth-child(3n) .interest-icon{color:var(--mint)}.skills-groups{gap:1.25rem}.skill-category{position:relative;overflow:hidden;padding:clamp(1.3rem,3vw,2.15rem)}.skill-category:before{position:absolute;top:0;left:0;width:5px;height:100%;background:linear-gradient(var(--group-accent, var(--electric)),transparent);content:""}.skill-category:nth-child(2){--group-accent: var(--coral)}.skill-category:nth-child(4){--group-accent: var(--mint)}.skill-category:nth-child(5){--group-accent: var(--sun)}.skill-category h2{display:flex;align-items:center;gap:.8rem;font-size:1.2rem}.skill-category h2:before{width:10px;height:10px;border-radius:3px;background:var(--group-accent, var(--electric));box-shadow:0 0 18px color-mix(in srgb,var(--group-accent, var(--electric)) 55%,transparent);content:""}.skill-item{min-height:112px;border:1px solid rgba(191,204,242,.08);background:#f8fafc09}.skill-item:hover{border-color:color-mix(in srgb,var(--group-accent, var(--electric)) 55%,transparent);background:color-mix(in srgb,var(--group-accent, var(--electric)) 13%,transparent)}.timeline:before{left:10px;width:2px;background:linear-gradient(var(--electric),var(--accent),var(--mint),transparent)}.education-card{border-left:2px solid rgba(52,211,153,.5);background:linear-gradient(110deg,rgba(52,211,153,.055),var(--surface-soft) 40%)}.education-card img{border-radius:1rem}.education-card:before{width:12px;height:12px;border-color:var(--mint);background:var(--background);box-shadow:0 0 0 5px #34d3991a}.education-meta span:last-child strong{color:var(--sun)}.achievement-card{border-radius:.9rem}.achievement-card:nth-child(odd) svg{color:var(--mint)}.achievement-card:nth-child(2n) svg{color:var(--sun)}.certificate-card{position:relative;min-height:218px;overflow:hidden;border-radius:1rem 1rem 1rem .3rem;background:linear-gradient(135deg,#facc1513,#121a30bf 38%)}.certificate-card:before{position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(var(--sun),var(--coral));content:""}.certificate-card .mono-label{color:var(--sun);font-family:DM Mono,monospace}.certificate-card h2{font-family:Space Grotesk,sans-serif;font-size:1.25rem}.certificate-card p{line-height:1.6}.certificate-card p strong{color:var(--text)}.certificate-card .button{margin-top:auto}.unisphere-featured{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);align-items:center;gap:clamp(1.7rem,5vw,4.5rem);min-height:0;margin:0 0 clamp(2.5rem,5vw,4rem);padding-bottom:clamp(2rem,5vw,4rem);border-bottom:1px solid var(--line);color:var(--text)}.unisphere-art{position:relative;display:grid;min-height:420px;overflow:hidden;place-items:center;isolation:isolate;border:1px solid rgba(255,255,255,.16);border-radius:1rem;background:radial-gradient(circle at 24% 23%,rgba(250,204,21,.72),transparent 18%),radial-gradient(circle at 88% 74%,rgba(255,92,92,.7),transparent 24%),radial-gradient(circle at 42% 100%,rgba(59,130,246,.72),transparent 36%),linear-gradient(140deg,#17123a,#31217a 48%,#4338ca)}.unisphere-art:before{position:absolute;z-index:-1;inset:0;background-image:linear-gradient(rgba(248,250,252,.075) 1px,transparent 1px),linear-gradient(90deg,rgba(248,250,252,.075) 1px,transparent 1px);background-size:38px 38px;content:"";-webkit-mask-image:radial-gradient(ellipse at center,black,transparent 78%);mask-image:radial-gradient(ellipse at center,black,transparent 78%)}.unisphere-art:after{position:absolute;z-index:-1;right:0;bottom:0;width:min(25rem,85%);height:auto;aspect-ratio:1;border:1px solid rgba(248,250,252,.2);border-radius:50%;box-shadow:0 0 0 28px #f8fafc09,0 0 0 58px #f8fafc06;content:""}.unisphere-art-label{position:absolute;top:1.5rem;right:1.6rem;left:1.6rem;display:flex;justify-content:space-between;gap:.5rem;color:#f8fafcc7;font-family:DM Mono,monospace;font-size:.63rem;letter-spacing:.12em}.unisphere-art-label span{color:#f8fafc8a}.unisphere-orbit{position:absolute;border:1px solid rgba(248,250,252,.25);border-radius:50%;transform:rotate(-26deg)}.unisphere-orbit--outer{width:min(72%,410px);aspect-ratio:1.32}.unisphere-orbit--inner{width:min(58%,330px);aspect-ratio:1.15;border-color:#facc158c;transform:rotate(36deg)}.unisphere-core{position:absolute;display:flex;width:126px;height:126px;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;border:7px solid rgba(255,255,255,.35);border-radius:50%;background:#f8fafc;color:#312e81;box-shadow:0 20px 55px #0e0a374d}.unisphere-core-mark{font-family:Space Grotesk,sans-serif;font-size:3rem;font-weight:700;letter-spacing:-.1em;line-height:.8}.unisphere-core>span:last-child{color:#66617d;font-family:DM Mono,monospace;font-size:.43rem;letter-spacing:.08em}.unisphere-node{position:absolute;display:grid;min-width:104px;grid-template-columns:1.6rem 1fr;-moz-column-gap:.4rem;column-gap:.4rem;align-items:center;padding:.7rem .8rem;border:1px solid rgba(255,255,255,.62);border-radius:.85rem;background:#f8fafcf0;color:#0b1020;box-shadow:0 15px 38px #0f0c3738;transform:rotate(-5deg)}.unisphere-node>span{display:grid;width:1.5rem;height:1.5rem;grid-row:span 2;place-items:center;border-radius:.5rem;background:#dbeafe;color:#2563eb;font-family:DM Mono,monospace;font-size:.55rem}.unisphere-node strong{font-family:Space Grotesk,sans-serif;font-size:.78rem;line-height:1.1}.unisphere-node small{color:#6b7280;font-family:DM Mono,monospace;font-size:.49rem;letter-spacing:.04em}.unisphere-node--mern{top:28%;left:9%}.unisphere-node--dsa{top:28%;right:8%;transform:rotate(5deg)}.unisphere-node--dsa>span{background:#fef3c7;color:#b45309}.unisphere-node--lessons{right:18%;bottom:13%;transform:rotate(-3deg)}.unisphere-node--lessons>span{background:#dcfce7;color:#15803d}.unisphere-spark{position:absolute;color:#fef3c7;font-size:1.7rem;filter:drop-shadow(0 0 12px currentColor)}.unisphere-spark--one{top:22%;right:28%;color:var(--sun)}.unisphere-spark--two{bottom:22%;left:17%;color:#fecaca}.unisphere-copy{display:flex;min-width:0;flex-direction:column;justify-content:center;padding:0 clamp(.25rem,1.5vw,1rem) 0 0}.unisphere-kicker{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.7rem;color:var(--accent-strong);font-family:DM Mono,monospace;font-size:.65rem;letter-spacing:.1em;text-transform:uppercase}.unisphere-kicker span:last-child{color:var(--muted)}.unisphere-copy h2{margin:1.1rem 0 0;font-family:Space Grotesk,sans-serif;font-size:clamp(3.4rem,6vw,5.4rem);letter-spacing:-.09em;line-height:.95}.unisphere-copy h2 span{color:var(--accent-strong)}.unisphere-tech{margin:.75rem 0 0;color:var(--accent-strong);font-size:.92rem;font-weight:700}.unisphere-description{margin:1.1rem 0 0;color:var(--muted);font-size:.92rem;line-height:1.75}.unisphere-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.3rem}.unisphere-tags span{padding:.45rem .65rem;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--text);font-size:.68rem;font-weight:600}.project-preview{background:linear-gradient(140deg,#19234a,#212e58 54%,#432c7e)}.project-number{border-color:#f8fafc4d;font-family:DM Mono,monospace;background:#0b1020e6}.project-meta{font-family:DM Mono,monospace}.project-meta span:first-child{color:#a8b1ca}.project-content h2{font-family:Space Grotesk,sans-serif;font-size:clamp(1.35rem,2.6vw,1.9rem)}.project-tech{font-family:DM Mono,monospace;font-size:.75rem}.contact-card{border-radius:1rem 1rem 1rem .25rem}.contact-card:nth-child(1) .contact-icon{background:#3b82f624;color:var(--electric)}.contact-card:nth-child(2) .contact-icon{background:#8b5cf629;color:#ad8fff}.contact-card:nth-child(3) .contact-icon{background:#ff5c5c21;color:#ff8585}.contact-card:nth-child(4) .contact-icon{background:#34d39924;color:var(--mint)}.contact-form{border-radius:1.35rem;background:linear-gradient(145deg,#3b82f616,#121a30c7 48%,#8b5cf613)}.contact-form input,.contact-form textarea{border-radius:.75rem}.form-status.success{border-color:#34d3994d;background:#34d39914}.form-status.error{border-color:#ff5c5c47;background:#ff5c5c13}.site-footer{margin-top:3rem;border-top:1px solid rgba(191,204,242,.1);background:linear-gradient(180deg,#121a3085,#070a12d9)}.footer-heading{color:#c7d2fe;font-family:Space Grotesk,sans-serif}.footer-about .brand{font-family:Space Grotesk,sans-serif}.footer-socials{display:flex;gap:.55rem;margin-top:1.2rem}.footer-socials a{display:grid;width:38px;height:38px;place-items:center;border:1px solid var(--line);border-radius:12px;background:var(--surface-soft);color:#b8c4e1;transition:transform .18s ease,color .18s ease,border-color .18s ease}.footer-socials a:hover{transform:translateY(-3px);border-color:var(--coral);color:#ff8585}.email-copy-button{display:inline-flex;align-items:center;gap:.5rem;margin-top:.85rem;padding:.55rem .7rem;border:1px solid var(--line);border-radius:.65rem;background:#f8fafc0a;color:var(--accent-strong);cursor:pointer;font-size:.75rem;font-weight:700;transition:background .18s ease,border-color .18s ease,transform .18s ease}.email-copy-button:hover{transform:translateY(-2px);border-color:var(--accent);background:#8b5cf61c}.email-copy-button svg{color:var(--mint)}.about-page .page-heading .eyebrow{color:#73a8ff}.education-page .page-heading .eyebrow{color:var(--mint)}.certifications-page .page-heading .eyebrow{color:var(--sun)}.projects-page .page-heading .eyebrow{color:#b9a0ff}.skills-page .page-heading .eyebrow{color:#ff8585}.contact-page .page-heading .eyebrow{color:#73a8ff}.about-page .page-heading:after,.education-page .page-heading:after,.certifications-page .page-heading:after,.projects-page .page-heading:after,.skills-page .page-heading:after,.contact-page .page-heading:after{display:block;width:4.6rem;height:4px;margin-top:1.35rem;border-radius:99px;background:linear-gradient(90deg,var(--section-color, var(--accent)),transparent);content:""}.about-page{--section-color: var(--electric)}.education-page{--section-color: var(--mint)}.certifications-page{--section-color: var(--sun)}.projects-page{--section-color: var(--accent)}.skills-page{--section-color: var(--coral)}.contact-page{--section-color: var(--electric)}@keyframes hero-atmosphere{0%{transform:translate3d(-1.5%,0,0) scale(.97);opacity:.72}to{transform:translate3d(1.5%,2%,0) scale(1.04);opacity:1}}@keyframes orbit-slow{to{transform:rotate(360deg)}}@keyframes chip-float{0%,to{translate:0 0}50%{translate:0 -8px}}@keyframes cue-bob{0%,to{transform:translateY(0)}50%{transform:translateY(3px)}}@media(max-width:900px){.home-hero{gap:2.5rem}.hero-portrait-wrap{width:min(100%,340px)}}@media(max-width:720px){.home-hero{width:100%;min-height:auto;grid-template-columns:minmax(0,1fr);gap:2rem;padding:4.3rem 1.4rem 5.7rem}.home-hero:after{display:block;top:auto;right:2%;bottom:15%;width:58vw}.hero-copy{width:100%;min-width:0;text-align:left}.hero-title{font-size:clamp(4rem,15vw,6.5rem);line-height:.88}.hero-intro{margin-left:0}.hero-actions,.hero-socials{justify-content:flex-start}.hero-portrait-wrap{width:min(74%,330px);justify-self:center;margin:0}.hero-tech-chip--react{left:-16%}.hero-tech-chip--java{right:-18%}.hero-tech-chip--node{left:-15%}.scroll-cue{left:1.4rem;transform:none}.intro-strip{display:grid;grid-template-columns:1fr;gap:.65rem;width:calc(100% - 2rem)}.intro-stat,.intro-stat:first-child,.intro-stat:last-child{min-height:auto;border:1px solid var(--line);border-radius:.9rem}.intro-stat+.intro-stat{border-left:1px solid var(--line)}.page-shell{width:100%}.page-shell:before{right:0;width:min(76vw,420px);height:24rem}.about-layout{gap:2.6rem}.about-prose p:first-child{font-size:1.35rem}}@media(max-width:560px){.home-hero{padding:3.8rem 1.2rem 5.2rem}.home-hero:before{right:0;width:min(82vw,520px)}.home-hero:after{bottom:15%;width:65vw}.hero-copy .eyebrow{font-size:.67rem}.hero-title{font-size:clamp(3.6rem,16.5vw,5.2rem)}.hero-role{font-size:1.2rem}.hero-intro{font-size:.96rem;line-height:1.72}.hero-actions{gap:.55rem}.hero-actions .button{min-height:44px;padding:.6rem .8rem;font-size:.79rem}.hero-portrait-wrap{width:min(72%,270px)}.hero-tech-chip{min-height:36px;gap:.35rem;padding:.4rem .55rem;font-size:.68rem}.hero-tech-chip--react{top:13%;left:-20%}.hero-tech-chip--java{top:47%;right:-21%}.hero-tech-chip--node{bottom:13%;left:-18%}.hero-tech-chip span{font-size:.54rem}.scroll-cue{bottom:.95rem;left:1.2rem;font-size:.57rem}.scroll-cue span:last-child{width:26px}.intro-stat{padding:1rem 1.15rem}.interest-grid,.project-grid,.certificate-grid,.contact-grid,.achievement-grid{grid-template-columns:1fr}.unisphere-art-label{top:1.1rem;right:1rem;left:1rem;font-size:.53rem}.unisphere-core{width:104px;height:104px}.unisphere-core-mark{font-size:2.55rem}.unisphere-node{min-width:90px;padding:.52rem .58rem}.unisphere-node--mern{left:4%}.unisphere-node--dsa{right:4%}.unisphere-node--lessons{right:11%;bottom:10%}.unisphere-copy h2{font-size:3.6rem}.unisphere-description{font-size:.88rem}.unisphere-tags span{font-size:.63rem}.unisphere-kicker{font-size:.56rem}}@media(prefers-reduced-motion:reduce){.home-hero:before,.home-hero:after,.hero-tech-chip,.scroll-cue>svg{animation:none}}:root{--cyan: #22d3ee}.home-hero{min-height:min(760px,calc(100svh - 88px));padding-top:clamp(3.5rem,7vw,5rem);padding-bottom:4.5rem}.hero-title{font-size:clamp(3rem,4.2vw,4rem);line-height:.94}.hero-intro{max-width:570px;font-size:clamp(1rem,1.2vw,1.08rem)}.page-heading{margin-bottom:clamp(2rem,4vw,3rem)}.page-title{font-size:clamp(2rem,2.8vw,2.5rem);line-height:1.12;letter-spacing:-.055em}.page-description{font-size:clamp(.95rem,1.1vw,1.05rem);line-height:1.7}.project-content h2{font-size:clamp(1.375rem,2vw,1.75rem);line-height:1.18}.project-tech{font-size:.78rem}.unisphere-copy h2{font-size:clamp(2.3rem,4vw,3.25rem);line-height:1}.unisphere-description{font-size:clamp(.94rem,1.1vw,1rem);line-height:1.72}.certificate-card p{font-size:.9rem}.navbar-inner{gap:1rem}.desktop-nav{gap:clamp(.55rem,1.15vw,1rem)}.nav-link{font-size:.78rem}.experience-page{--page-glow: radial-gradient(circle, rgba(34, 211, 238, .13), transparent 68%);--section-color: var(--cyan)}.experience-page .page-heading .eyebrow{color:var(--cyan)}.experience-page .page-heading:after{display:block;width:4.6rem;height:4px;margin-top:1.35rem;border-radius:99px;background:linear-gradient(90deg,var(--cyan),transparent);content:""}.experience-timeline{position:relative;max-width:1040px;margin-left:.45rem;padding-left:1.6rem}.experience-timeline:before{position:absolute;top:0;bottom:0;left:0;width:2px;border-radius:2px;background:linear-gradient(var(--cyan),var(--electric),var(--mint));content:""}.experience-card{position:relative;overflow:hidden;padding:clamp(1.2rem,3vw,2.25rem);border-radius:.35rem 1.25rem 1.25rem;background:linear-gradient(115deg,#22d3ee13,#121a30c2 40%,#4338ca14)}.experience-card:before{position:absolute;top:0;bottom:0;left:0;width:4px;background:linear-gradient(var(--cyan),var(--electric),var(--mint));content:""}.experience-card:after{position:absolute;top:2rem;left:-2.06rem;width:11px;height:11px;border:3px solid var(--cyan);border-radius:50%;background:var(--background);box-shadow:0 0 0 5px #22d3ee1f;content:""}.experience-card-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1.25rem 2rem;padding-bottom:1.35rem;border-bottom:1px solid var(--line)}.experience-identity{display:flex;min-width:min(100%,290px);align-items:center;gap:1rem}.experience-mark{display:grid;width:54px;height:54px;flex:0 0 auto;place-items:center;border:1px solid rgba(34,211,238,.35);border-radius:16px 16px 16px 5px;background:linear-gradient(145deg,#22d3ee33,#3b82f624);color:var(--cyan);font-family:Space Grotesk,sans-serif;font-size:.9rem;font-weight:700}.experience-company{margin:0 0 .28rem;color:var(--cyan);font-family:DM Mono,monospace;font-size:.76rem;letter-spacing:.12em;text-transform:uppercase}.experience-identity h2{margin:0;color:var(--text);font-family:Space Grotesk,sans-serif;font-size:clamp(1.25rem,2.2vw,1.75rem);font-weight:600;letter-spacing:-.045em;line-height:1.2}.experience-meta{display:flex;min-width:min(100%,180px);flex-direction:column;align-items:flex-end;gap:.5rem}.experience-dates{margin:0;color:var(--text);font-family:DM Mono,monospace;font-size:.86rem}.experience-current{display:inline-flex;align-items:center;gap:.45rem;padding:.38rem .62rem;border:1px solid rgba(52,211,153,.25);border-radius:999px;background:#34d39917;color:#70e3b5;font-size:.73rem;font-weight:600}.experience-current>span{width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 10px currentColor}.experience-card-body{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:1.5rem 3rem;padding-top:1.35rem}.experience-description{margin:0;color:var(--muted);font-size:1rem;line-height:1.8}.experience-responsibilities h3{margin:0 0 .7rem;color:var(--text);font-family:Space Grotesk,sans-serif;font-size:.93rem;font-weight:600}.experience-responsibilities ul{display:grid;gap:.62rem;margin:0;padding:0;list-style:none}.experience-responsibilities li{display:grid;grid-template-columns:1rem minmax(0,1fr);align-items:start;gap:.55rem;color:var(--muted);font-size:.88rem;line-height:1.6}.experience-responsibilities li svg{margin-top:.3rem;color:var(--mint);font-size:.72rem}.experience-card-accent{position:absolute;right:1.3rem;bottom:1.2rem;display:grid;width:34px;height:34px;place-items:center;border:1px solid rgba(34,211,238,.16);border-radius:11px;color:var(--cyan);opacity:.75}.unisphere-featured{grid-template-columns:minmax(0,1fr) minmax(0,.96fr)}.unisphere-art{min-width:0}.unisphere-art-label{font-size:.68rem}.unisphere-node{max-width:calc(50% - .4rem);min-width:0}.unisphere-node strong{overflow-wrap:anywhere}.unisphere-node--mern{left:6%}.unisphere-node--dsa{right:6%}.unisphere-node--lessons{right:15%}.unisphere-tech{font-size:.82rem;line-height:1.5}.unisphere-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.35rem}.unisphere-verified-features{display:grid;gap:.45rem;margin:1rem 0 0;padding-left:1.2rem;color:var(--muted);font-size:.88rem;line-height:1.6}@media(max-width:900px){.experience-card-body{grid-template-columns:1fr;gap:1.1rem}.experience-meta{align-items:flex-start}}@media(max-width:720px){.hero-image-caption{position:static;margin-top:.65rem;padding:.6rem .75rem}.hero-image-caption strong{font-size:.8rem}.hero-image-caption span{font-size:.66rem;line-height:1.4}.page-title{font-size:clamp(2rem,5.6vw,2.5rem)}.page-shell{padding-top:clamp(3.5rem,10vw,5rem)}.page-heading{margin-bottom:2rem}.unisphere-featured{grid-template-columns:minmax(0,1fr)}.unisphere-art{min-height:clamp(280px,54vw,350px)}.experience-timeline{margin-left:.25rem;padding-left:1.25rem}.experience-card:after{left:-1.71rem}}@media(max-width:560px){.hero-title{font-size:clamp(3rem,12.5vw,3.75rem)}.hero-tech-chip--java{right:-12%}.hero-tech-chip--react,.hero-tech-chip--node{left:-11%}.project-actions .button{flex:1 1 auto}.unisphere-art-label{top:1rem;right:.9rem;left:.9rem;font-size:.56rem}.unisphere-core{width:90px;height:90px}.unisphere-core-mark{font-size:2.2rem}.unisphere-core>span:last-child{font-size:.38rem}.unisphere-node{max-width:40%;padding:.45rem .5rem}.unisphere-node--mern{left:3%}.unisphere-node--dsa{right:3%}.unisphere-node--lessons{right:9%;bottom:9%}.experience-card-header{flex-direction:column;align-items:stretch;gap:1rem}.experience-identity{align-items:flex-start;gap:.75rem}.experience-mark{width:46px;height:46px;border-radius:13px 13px 13px 4px}.experience-meta{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.6rem}.experience-dates{font-size:.79rem}.experience-current{font-size:.67rem}.experience-card-accent{display:none}}@media(max-width:360px){.home-hero{padding-right:1rem;padding-left:1rem}.hero-actions .button{padding-inline:.65rem;font-size:.73rem}.hero-portrait-wrap{width:min(69%,250px)}.experience-meta{justify-content:flex-start}.experience-identity h2{font-size:1.15rem}}@media(max-width:320px){html,body{min-width:0}}:root{--pink: #ec4899;--placeholder: #91a0ba;--status-error: #fca5a5;--success-ink: #70e3b5;--primary-foreground: #fff}:root[data-theme=light]{--accent-strong: #3730a3;--electric: #1d4ed8;--coral: #b4233f;--sun: #855b00;--mint: #166534;--cyan: #0e7490;--pink: #be185d;--text: #101827;--muted: #475569;--faint: #596579;--placeholder: #58677d;--status-error: #b42318;--success-ink: #166534;--primary-foreground: #fff}:root[data-theme=light] .about-page .page-heading .eyebrow,:root[data-theme=light] .contact-page .page-heading .eyebrow{color:#1d4ed8}:root[data-theme=light] .education-page .page-heading .eyebrow{color:#166534}:root[data-theme=light] .certifications-page .page-heading .eyebrow{color:#855b00}:root[data-theme=light] .projects-page .page-heading .eyebrow{color:#4338ca}:root[data-theme=light] .skills-page .page-heading .eyebrow{color:#b4233f}:root[data-theme=light] .experience-page .page-heading .eyebrow{color:#0e7490}:root[data-theme=light] .about-prose strong{color:var(--accent-strong)}:root[data-theme=light] .hero-role>span:first-child{color:#754b00}:root[data-theme=light] .availability{border-color:#1665343d;background:#22c55e1f;color:#166534}:root[data-theme=light] .experience-company{color:#0e7490}:root[data-theme=light] .experience-current{border-color:#16653440;background:#dcfce7;color:#166534}:root[data-theme=light] .experience-mark{border-color:#0e749047;background:#e0f2fe;color:#0e7490}:root[data-theme=light] .contact-row-icon--blue{color:#1d4ed8}:root[data-theme=light] .contact-row-icon--green{color:#166534}:root[data-theme=light] .contact-row-icon--coral{color:#b4233f}:root[data-theme=light] .footer-socials a:hover{color:#b4233f}.button-primary{background:linear-gradient(115deg,#1d4ed8,#4338ca 56%,#6d28d9);color:var(--primary-foreground)}.button-primary:hover{background:linear-gradient(115deg,#1e40af,#3730a3 56%,#5b21b6);color:var(--primary-foreground)}.brand-mark{background:linear-gradient(145deg,#1d4ed8,#6d28d9 67%,#be123c)}.button:disabled{opacity:.84}.form-status.success{color:var(--success-ink)}.form-status.error{color:var(--status-error)}.skills-groups{gap:0;border-top:1px solid var(--line)}.skill-category,.skill-category:hover{display:grid;grid-template-columns:minmax(180px,.34fr) minmax(0,1fr);align-items:start;gap:1.1rem 2rem;padding:1.35rem 0;overflow:visible;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none;transform:none}.skill-category:before{top:1.55rem;width:3px;height:1.65rem;border-radius:3px}.skill-category-heading{display:flex;align-items:center;gap:.9rem;min-height:46px}.skill-group-index{color:var(--group-accent, var(--electric));font-family:DM Mono,monospace;font-size:.75rem}.skill-category h2{margin:0;font-size:1.08rem;font-weight:600}.skill-category h2:before{display:none}.skills-grid{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem clamp(1rem,2.7vw,2.2rem);margin:0}.skill-item,.skill-item:hover{display:inline-flex;min-height:44px;flex-direction:row;justify-content:flex-start;gap:.62rem;padding:.35rem 0;border:0;border-radius:0;background:transparent;color:var(--muted);font-size:.9rem;text-align:left;transform:none}.skill-item img{width:30px;height:30px;transition:transform .18s ease}.skill-item:hover{color:var(--text)}.skill-item:hover img{transform:translateY(-2px) scale(1.08)}.skill-category:nth-child(2){--group-accent: var(--electric)}.skill-category:nth-child(3){--group-accent: var(--accent)}.skill-category:nth-child(4){--group-accent: var(--cyan)}.skill-category:nth-child(5){--group-accent: var(--coral)}.project-grid{grid-template-columns:minmax(0,1fr);row-gap:0}.project-card,.project-card:hover{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);align-items:center;gap:clamp(1.5rem,5vw,4rem);overflow:visible;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none;transform:none;padding:clamp(1.7rem,4vw,3.2rem) 0}.project-card:last-child{border-bottom:0}.project-card--reversed .project-preview{grid-column:2;grid-row:1}.project-card--reversed .project-content{grid-column:1;grid-row:1}.project-preview{border:1px solid var(--line);border-radius:1rem;aspect-ratio:16 / 9}.project-preview img{-o-object-fit:cover;object-fit:cover}.project-content{padding:.9rem 0 1.25rem}.project-content h2{margin-top:.55rem;color:var(--text)}.project-tech{color:var(--muted);line-height:1.65}.project-actions{gap:1.25rem;margin-top:.8rem}.project-action-link{display:inline-flex;min-height:40px;align-items:center;gap:.45rem;border-bottom:1px solid color-mix(in srgb,var(--muted) 45%,transparent);color:var(--muted);font-size:.82rem;font-weight:700;transition:color .18s ease,border-color .18s ease,transform .18s ease}.project-action-link:hover{transform:translateY(-2px);border-color:var(--electric);color:var(--electric)}.project-action-link--primary{border-color:color-mix(in srgb,var(--accent) 52%,transparent);color:var(--accent-strong)}:root[data-theme=light] .project-meta span:first-child{color:#526078}:root[data-theme=light] .project-action-link--primary{color:#3730a3}:root[data-theme=light] .project-action-link:hover{color:#1d4ed8}.unisphere-art-label{padding:.55rem .7rem;border:1px solid rgba(248,250,252,.17);border-radius:.5rem;background:#0b1020d6}@media(max-width:1080px){.navbar{top:.45rem;width:calc(100% - 1rem);border-radius:.9rem}.navbar-inner{min-height:66px;gap:.65rem;padding-inline:clamp(.75rem,3vw,1.25rem)}.desktop-nav,.nav-cta{display:none}.menu-toggle{display:inline-grid}.brand{min-width:0;gap:.5rem}.nav-actions{flex:0 0 auto;gap:clamp(.35rem,1.6vw,.6rem)}.mobile-menu-backdrop{padding:5rem .5rem .5rem}.mobile-panel{width:min(430px,100%)}}@media(max-width:900px){.unisphere-featured{grid-template-columns:minmax(0,1fr);gap:1.5rem}.unisphere-art{min-height:clamp(290px,54vw,390px)}.unisphere-copy{padding:0}}@media(min-width:1081px){.desktop-nav{display:flex}.menu-toggle{display:none}.navbar.menu-is-open{z-index:120}}@media(max-width:720px){.unisphere-art{min-height:clamp(280px,58vw,350px)}.project-card,.project-card:hover{grid-template-columns:minmax(0,1fr);gap:1rem;padding:1.5rem 0}.project-card--reversed .project-preview,.project-card--reversed .project-content{grid-column:1;grid-row:auto}.project-actions{gap:.65rem 1rem}.project-action-link{min-height:44px}}.navbar.menu-is-open .navbar-inner>.nav-actions>.theme-toggle{visibility:hidden;pointer-events:none}@media(max-width:360px){.navbar-inner{padding-inline:.65rem}.brand{gap:.4rem}.brand-mark{width:32px;height:32px;flex:0 0 32px}.brand-name{font-size:.87rem}.nav-actions{gap:.3rem}.theme-toggle,.menu-toggle{width:44px;height:44px}.mobile-menu-backdrop{padding:4.9rem .4rem .4rem}.mobile-panel{min-height:min(440px,calc(100dvh - 5.8rem));max-height:calc(100dvh - 5.8rem)}.mobile-nav-links .nav-link{min-height:47px}}.contact-layout{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);align-items:start;gap:clamp(2rem,6vw,5rem)}.contact-info-panel{min-width:0;padding:clamp(1.2rem,3vw,2rem) clamp(1rem,2.5vw,1.7rem);border-left:3px solid var(--electric);background:linear-gradient(135deg,rgba(59,130,246,.09),transparent 68%)}.contact-overline{margin:0 0 .85rem;color:var(--accent-strong);font-family:DM Mono,monospace;font-size:.74rem;letter-spacing:.1em;text-transform:uppercase}:root[data-theme=light] .contact-overline{color:#3730a3}.contact-email-feature{padding:0 0 1.15rem;border-bottom:1px solid var(--line)}.contact-feature-label{display:flex;align-items:center;gap:.5rem;color:var(--muted);font-size:.82rem;font-weight:600}.contact-feature-label svg{color:var(--coral)}.contact-primary-email{display:inline-block;max-width:100%;margin-top:.5rem;color:var(--text);font-family:Space Grotesk,sans-serif;font-size:clamp(1.2rem,2.1vw,1.65rem);font-weight:600;letter-spacing:-.045em;overflow-wrap:anywhere;text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--electric) 55%,transparent);text-decoration-thickness:2px;text-underline-offset:5px}.contact-email-actions{margin-top:.5rem}.contact-detail-list{display:grid;gap:0;margin-top:.4rem}.contact-detail-row{display:grid;grid-template-columns:1.65rem minmax(0,1fr);gap:.75rem;padding:.95rem 0;border-bottom:1px solid var(--line)}.contact-row-icon{padding-top:.05rem;font-size:1.08rem}.contact-row-icon--blue{color:var(--electric)}.contact-row-icon--green{color:var(--mint)}.contact-row-icon--coral{color:var(--coral)}.contact-detail-row h2{margin:0 0 .35rem;color:var(--text);font-size:.86rem;font-weight:600}.contact-details{gap:.2rem;color:var(--muted);font-size:.94rem;line-height:1.6}.contact-details a{color:var(--muted);text-decoration-thickness:1px;text-underline-offset:3px}.contact-details a:hover{color:var(--accent-strong)}:root[data-theme=light] .contact-details a:hover{color:#3730a3}:root[data-theme=light] .icon-link:hover{border-color:#b4233f;background:#b4233f1a;color:#9f1239}.contact-social-section{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:1rem}.contact-social-section h2{display:flex;align-items:center;gap:.5rem;margin:0;color:var(--text);font-size:.86rem;font-weight:600}.contact-social-section h2 svg{color:var(--pink)}.contact-social-section .social-row{gap:.45rem}.contact-social-section .icon-link{width:40px;height:40px;border-radius:50%;background:transparent}.contact-form-wrap{min-width:0;margin-top:0}.contact-form-wrap>.section-label{margin-bottom:1rem;font-size:1.45rem}.contact-form{gap:1rem 1.2rem;padding:.4rem 0 0;border:0;border-radius:0;background:transparent;box-shadow:none}.form-field{min-width:0}.form-field label{color:var(--text);font-size:.88rem;font-weight:600}.form-field input,.form-field textarea{border-width:1px;border-radius:.65rem;background:var(--surface);color:var(--text)}.form-field input::-moz-placeholder,.form-field textarea::-moz-placeholder{color:var(--placeholder);opacity:1}.form-field input::placeholder,.form-field textarea::placeholder{color:var(--placeholder);opacity:1}.form-field input:focus,.form-field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.form-status{padding:.65rem .8rem;border:1px solid var(--line)}.button:disabled{opacity:1;border-style:dashed;cursor:not-allowed}.form-field input:disabled,.form-field textarea:disabled{opacity:1;background:var(--surface-raised);color:var(--muted);cursor:not-allowed}:root[data-theme=light] .form-status.success{border-color:#16653438;background:#f0fdf4;color:#166534}:root[data-theme=light] .form-status.error{border-color:#b4231833;background:#fef2f2;color:#b42318}:root[data-theme=dark] .form-status.success{color:#86efac}:root[data-theme=dark] .form-status.error{color:#fda4af}@media(max-width:900px){.contact-layout{grid-template-columns:1fr;gap:2rem}.contact-info-panel{padding:1.25rem 1rem}.contact-form-wrap{padding:0 1rem}}@media(max-width:720px){.skill-category,.skill-category:hover{grid-template-columns:1fr;gap:.7rem}.skill-category:before{top:1.65rem}.skills-grid{gap:.3rem 1.3rem}}@media(max-width:560px){.contact-layout{gap:1.6rem}.contact-social-section{align-items:flex-start;flex-direction:column}.contact-form{grid-template-columns:1fr}.contact-form .form-field-full{grid-column:auto}.project-actions{flex-wrap:wrap;gap:.7rem 1rem}}.project-preview{display:grid;aspect-ratio:16 / 9;place-items:center;background:var(--surface-raised)}.project-preview:after{display:none}.project-preview img{-o-object-fit:contain;object-fit:contain;padding:clamp(.25rem,.8vw,.65rem);transition:none}.project-card:hover .project-preview img{transform:none;filter:none}.info-item{border-color:color-mix(in srgb,var(--text) 50%,var(--surface));background:var(--surface);color:var(--text)}.info-item svg{color:var(--accent-strong)}.about-page .interest-card{border-color:color-mix(in srgb,var(--text) 50%,var(--surface))}.about-page .interest-card:hover{border-color:color-mix(in srgb,var(--accent-strong) 55%,var(--surface))}:root .about-page .about-availability{border-color:var(--mint)}.visitor-count{max-width:100%;min-height:2rem;flex:0 0 auto;flex-wrap:nowrap;padding:.35rem .65rem;border:1px solid rgba(191,204,242,.18);border-radius:999px;background:#f8fafc0b;color:#d2d9e9;font-size:.7rem;white-space:nowrap}.visitor-count svg{flex:0 0 auto;color:#b8c4e1}.visitor-count-label{font-weight:600}.visitor-count-separator{opacity:.65}.visitor-count-value{color:#f8fafc;font-variant-numeric:tabular-nums;font-weight:700}
