@import"https://fonts.googleapis.com/css2?family=Instrument+Serif:ital@0;1&family=Sora:wght@400;500;600;700;800&display=swap";*,: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: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::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: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,: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;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([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]:where(:not([hidden=until-found])){display:none}.\!container{width:100%!important}.container{width:100%}@media (min-width: 640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width: 768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width: 1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width: 1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width: 1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.static{position:static}.fixed{position:fixed}.relative{position:relative}.my-24{margin-top:6rem;margin-bottom:6rem}.mt-2{margin-top:.5rem}.block{display:block}.inline{display:inline}.flex{display:flex}.h-3{height:.75rem}.h-full{height:100%}.w-3{width:.75rem}.w-full{width:100%}.shrink-0{flex-shrink:0}.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}.overflow-visible{overflow:visible}.rounded-lg{border-radius:.5rem}.border{border-width:1px}.border-black-300{--tw-border-opacity: 1;border-color:rgb(28 28 33 / var(--tw-border-opacity, 1))}.bg-black-200{--tw-bg-opacity: 1;background-color:rgb(14 14 16 / var(--tw-bg-opacity, 1))}.px-5{padding-left:1.25rem;padding-right:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.text-center{text-align:center}.text-sm{font-size:.875rem;line-height:1.25rem}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-white-500{--tw-text-opacity: 1;color:rgb(98 100 108 / var(--tw-text-opacity, 1))}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}:root{--bg: #f7f2e9;--bg-soft: #efe5d8;--surface: rgba(255, 255, 255, .72);--surface-strong: rgba(255, 255, 255, .9);--surface-border: rgba(26, 37, 58, .1);--text: #152033;--text-strong: #0b1322;--text-muted: #5d6a82;--text-emphasis: rgba(21, 32, 51, .86);--text-secondary: rgba(21, 32, 51, .84);--text-subtle: rgba(21, 32, 51, .72);--text-faint: rgba(21, 32, 51, .68);--accent: #0f766e;--accent-alt: #d97706;--shadow-soft: 0 18px 40px rgba(34, 41, 57, .08);--shadow-strong: 0 24px 60px rgba(30, 38, 55, .12);--body-glow-a: rgba(15, 118, 110, .12);--body-glow-b: rgba(217, 119, 6, .16);--body-gradient-start: #f8f4ec;--body-gradient-mid: #f5efe6;--body-gradient-end: #efe6d8;--grid-line: rgba(20, 31, 53, .03);--body-haze-a: rgba(255, 255, 255, .65);--body-haze-b: rgba(255, 255, 255, .46);--selection-bg: rgba(15, 118, 110, .18);--scroll-track: rgba(21, 32, 51, .08);--scroll-thumb-start: rgba(15, 118, 110, .8);--scroll-thumb-end: rgba(217, 119, 6, .75);--surface-card-start: rgba(255, 255, 255, .9);--surface-card-end: rgba(255, 255, 255, .6);--eyebrow-bg: rgba(255, 255, 255, .56);--eyebrow-border: rgba(21, 32, 51, .08);--eyebrow-text: rgba(21, 32, 51, .76);--button-primary-border: rgba(7, 14, 25, .12);--button-primary-start: #132033;--button-primary-end: #20385a;--button-primary-text: #f8fafc;--button-primary-shadow: 0 18px 34px rgba(17, 29, 48, .18);--button-secondary-border: rgba(7, 14, 25, .08);--button-secondary-bg: rgba(255, 255, 255, .78);--button-secondary-text: var(--text-strong);--button-ghost-border: rgba(21, 32, 51, .1);--button-ghost-bg: rgba(15, 118, 110, .06);--button-ghost-text: var(--text);--label-text: rgba(21, 32, 51, .72);--chip-bg: rgba(255, 255, 255, .72);--chip-border: rgba(21, 32, 51, .09);--chip-text: rgba(21, 32, 51, .9);--header-bg: rgba(255, 255, 255, .68);--header-border: rgba(21, 32, 51, .08);--header-shadow: 0 14px 32px rgba(18, 25, 39, .08);--brand-mark-start: #152033;--brand-mark-end: #254063;--brand-mark-text: #f8fafc;--nav-link-text: rgba(21, 32, 51, .78);--nav-link-hover-bg: rgba(15, 118, 110, .08);--nav-link-hover-text: var(--text-strong);--nav-link-active-bg: linear-gradient(135deg, rgba(15, 118, 110, .14), rgba(217, 119, 6, .12)), rgba(255, 255, 255, .88);--nav-link-active-shadow: inset 0 0 0 1px rgba(21, 32, 51, .05);--detail-chip-bg: rgba(255, 255, 255, .64);--detail-chip-border: rgba(21, 32, 51, .08);--detail-chip-text: rgba(21, 32, 51, .82);--status-badge-bg: rgba(255, 255, 255, .82);--status-badge-text: var(--text-strong);--status-badge-shadow: 0 10px 22px rgba(26, 37, 58, .08);--hero-note-bg: rgba(20, 32, 53, .84);--hero-note-border: rgba(255, 255, 255, .24);--hero-note-text: rgba(248, 250, 252, .9);--hero-note-label-bg: rgba(255, 255, 255, .08);--hero-note-label-border: rgba(255, 255, 255, .12);--hero-note-label-text: rgba(248, 250, 252, .72);--elevated-card-bg: rgba(255, 255, 255, .62);--elevated-card-border: rgba(21, 32, 51, .08);--pill-border: rgba(21, 32, 51, .08);--profile-badge-bg: rgba(21, 32, 51, .06);--input-bg: rgba(255, 255, 255, .76);--input-border: rgba(21, 32, 51, .1);--input-text: var(--text-strong);--input-placeholder: rgba(93, 106, 130, .75);--input-focus-border: rgba(15, 118, 110, .3);--input-focus-shadow: 0 0 0 4px rgba(15, 118, 110, .08);--input-focus-bg: rgba(255, 255, 255, .94);--status-success-border: rgba(5, 150, 105, .25);--status-success-bg: rgba(16, 185, 129, .08);--status-success-text: #065f46;--status-error-border: rgba(225, 29, 72, .18);--status-error-bg: rgba(244, 63, 94, .08);--status-error-text: #9f1239;--footer-bg: rgba(255, 255, 255, .7);--footer-border: rgba(21, 32, 51, .08);--footer-link: rgba(21, 32, 51, .78);--theme-toggle-bg: rgba(255, 255, 255, .76);--theme-toggle-border: rgba(21, 32, 51, .1);--theme-toggle-shadow: 0 12px 26px rgba(18, 25, 39, .08);--theme-toggle-track-bg: linear-gradient(135deg, rgba(15, 118, 110, .18), rgba(217, 119, 6, .18));--theme-toggle-track-shadow: inset 0 1px 0 rgba(255, 255, 255, .36);--theme-toggle-text: var(--text-strong);--radius-lg: 30px;--radius-md: 22px;--motion-spring: cubic-bezier(.22, 1, .36, 1)}html[data-theme=dark]{--bg: #0f141d;--bg-soft: #121927;--surface: rgba(18, 24, 36, .78);--surface-strong: rgba(22, 29, 41, .92);--surface-border: rgba(148, 163, 184, .14);--text: #d7e1ef;--text-strong: #f5f7fb;--text-muted: #9aa7bd;--text-emphasis: rgba(240, 245, 252, .9);--text-secondary: rgba(233, 240, 248, .86);--text-subtle: rgba(221, 229, 241, .76);--text-faint: rgba(205, 216, 232, .68);--shadow-soft: 0 26px 54px rgba(4, 10, 20, .34);--shadow-strong: 0 30px 72px rgba(1, 7, 16, .42);--body-glow-a: rgba(20, 184, 166, .16);--body-glow-b: rgba(249, 115, 22, .14);--body-gradient-start: #0d1117;--body-gradient-mid: #111722;--body-gradient-end: #151c2a;--grid-line: rgba(148, 163, 184, .06);--body-haze-a: rgba(33, 42, 62, .32);--body-haze-b: rgba(17, 23, 34, .22);--selection-bg: rgba(45, 212, 191, .26);--scroll-track: rgba(148, 163, 184, .08);--scroll-thumb-start: rgba(45, 212, 191, .72);--scroll-thumb-end: rgba(251, 146, 60, .72);--surface-card-start: rgba(22, 29, 41, .92);--surface-card-end: rgba(12, 17, 25, .74);--eyebrow-bg: rgba(18, 24, 36, .68);--eyebrow-border: rgba(148, 163, 184, .14);--eyebrow-text: rgba(226, 232, 240, .76);--button-primary-border: rgba(45, 212, 191, .18);--button-primary-start: #0f766e;--button-primary-end: #1d4c85;--button-primary-text: #eff8ff;--button-primary-shadow: 0 22px 42px rgba(6, 12, 22, .34);--button-secondary-border: rgba(148, 163, 184, .14);--button-secondary-bg: rgba(255, 255, 255, .05);--button-secondary-text: var(--text-strong);--button-ghost-border: rgba(45, 212, 191, .16);--button-ghost-bg: rgba(45, 212, 191, .08);--button-ghost-text: var(--text-strong);--label-text: rgba(226, 232, 240, .72);--chip-bg: rgba(17, 23, 34, .76);--chip-border: rgba(148, 163, 184, .16);--chip-text: rgba(235, 241, 250, .92);--header-bg: rgba(8, 12, 19, .72);--header-border: rgba(148, 163, 184, .12);--header-shadow: 0 20px 44px rgba(3, 8, 16, .34);--brand-mark-start: #112f41;--brand-mark-end: #0f766e;--brand-mark-text: #f8fafc;--nav-link-text: rgba(226, 232, 240, .78);--nav-link-hover-bg: rgba(45, 212, 191, .08);--nav-link-hover-text: var(--text-strong);--nav-link-active-bg: linear-gradient(135deg, rgba(45, 212, 191, .14), rgba(251, 146, 60, .14)), rgba(255, 255, 255, .04);--nav-link-active-shadow: inset 0 0 0 1px rgba(148, 163, 184, .12);--detail-chip-bg: rgba(18, 24, 36, .72);--detail-chip-border: rgba(148, 163, 184, .14);--detail-chip-text: rgba(236, 241, 248, .86);--status-badge-bg: rgba(8, 12, 18, .78);--status-badge-text: var(--text-strong);--status-badge-shadow: 0 14px 28px rgba(1, 7, 16, .28);--hero-note-bg: rgba(7, 10, 16, .84);--hero-note-border: rgba(148, 163, 184, .14);--hero-note-text: rgba(239, 244, 250, .92);--hero-note-label-bg: rgba(255, 255, 255, .06);--hero-note-label-border: rgba(148, 163, 184, .14);--hero-note-label-text: rgba(214, 226, 242, .74);--elevated-card-bg: rgba(18, 24, 36, .8);--elevated-card-border: rgba(148, 163, 184, .12);--pill-border: rgba(148, 163, 184, .16);--profile-badge-bg: rgba(148, 163, 184, .08);--input-bg: rgba(11, 16, 24, .78);--input-border: rgba(148, 163, 184, .14);--input-text: var(--text-strong);--input-placeholder: rgba(154, 167, 189, .78);--input-focus-border: rgba(45, 212, 191, .28);--input-focus-shadow: 0 0 0 4px rgba(45, 212, 191, .14);--input-focus-bg: rgba(16, 22, 33, .94);--status-success-border: rgba(16, 185, 129, .24);--status-success-bg: rgba(16, 185, 129, .12);--status-success-text: #7bf1c8;--status-error-border: rgba(244, 63, 94, .18);--status-error-bg: rgba(244, 63, 94, .12);--status-error-text: #fda4af;--footer-bg: rgba(12, 17, 25, .82);--footer-border: rgba(148, 163, 184, .12);--footer-link: rgba(226, 232, 240, .78);--theme-toggle-bg: rgba(255, 255, 255, .05);--theme-toggle-border: rgba(148, 163, 184, .16);--theme-toggle-shadow: 0 16px 30px rgba(3, 8, 16, .24);--theme-toggle-track-bg: linear-gradient(135deg, rgba(45, 212, 191, .16), rgba(59, 130, 246, .18));--theme-toggle-track-shadow: inset 0 1px 0 rgba(255, 255, 255, .08);--theme-toggle-text: var(--text-strong)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px;scrollbar-gutter:stable;-webkit-text-size-adjust:100%}body{margin:0;min-height:100vh;overflow-x:hidden;font-family:Sora,sans-serif;color:var(--text);background:radial-gradient(circle at 10% 0%,var(--body-glow-a),transparent 28%),radial-gradient(circle at 88% 6%,var(--body-glow-b),transparent 26%),linear-gradient(180deg,var(--body-gradient-start) 0%,var(--body-gradient-mid) 48%,var(--body-gradient-end) 100%);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-2;pointer-events:none;background:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);background-size:72px 72px;-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.45),rgba(0,0,0,.12));mask-image:linear-gradient(180deg,#00000073,#0000001f)}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background:radial-gradient(circle at 20% 15%,var(--body-haze-a),transparent 28%),radial-gradient(circle at 80% 20%,var(--body-haze-b),transparent 24%)}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{border:0;background:none}img,video{display:block;max-width:100%}::-moz-selection{background:var(--selection-bg);color:var(--text-strong)}::selection{background:var(--selection-bg);color:var(--text-strong)}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--scroll-track)}::-webkit-scrollbar-thumb{border-radius:999px;background:linear-gradient(180deg,var(--scroll-thumb-start),var(--scroll-thumb-end))}*{scrollbar-width:thin;scrollbar-color:var(--scroll-thumb-start) var(--scroll-track)}.portfolio-app{position:relative}.scroll-progress{position:fixed;inset:0 0 auto;z-index:80;height:4px;pointer-events:none}.scroll-progress_fill{display:block;width:100%;height:100%;transform:scaleX(0);transform-origin:left center;opacity:0;background:linear-gradient(90deg,#0f766e,#d97706 58%,#132033);box-shadow:0 0 18px #0f766e47;transition:opacity .22s ease}.shell{width:min(1320px,calc(100% - 1.5rem));margin-inline:auto}.section-wrap{position:relative;padding:clamp(4.75rem,8vw,7rem) 0}.section-header{display:flex;flex-direction:column;gap:1rem;max-width:46rem;margin-bottom:2.5rem}.section-eyebrow,.card-label{display:inline-flex;align-items:center;width:-moz-fit-content;width:fit-content;padding:.45rem .85rem;border-radius:999px;border:1px solid var(--eyebrow-border);background:var(--eyebrow-bg);color:var(--eyebrow-text);font-size:.72rem;font-weight:600;letter-spacing:.11em;text-transform:uppercase}.section-title,.hero-display,.hero-name,.skill-card h3,.project-showcase_copy h3,.experience-card h3,.experience-summary_card h3,.contact-info_card h3{margin:0;color:var(--text-strong);letter-spacing:-.04em}.section-title{font-size:clamp(2rem,4vw,3.75rem);line-height:1.02}.section-description{margin:0;color:var(--text-muted);font-size:1rem;line-height:1.85}.premium-card,.metric-card,.project-showcase,.recommendation-card,.profile-card_refined{border:1px solid var(--surface-border);background:linear-gradient(145deg,var(--surface-card-start),var(--surface-card-end)),var(--surface);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.premium-card{border-radius:var(--radius-lg)}.button-primary,.button-secondary,.button-ghost,.nav-cta,.site-menu_button{display:inline-flex;align-items:center;justify-content:center;min-height:3.2rem;padding:.95rem 1.4rem;border-radius:999px;font-size:.95rem;font-weight:600;transition:transform .24s var(--motion-spring),box-shadow .24s var(--motion-spring),background-color .24s ease,border-color .24s ease,color .24s ease}.button-primary,.nav-cta{border:1px solid var(--button-primary-border);background:linear-gradient(135deg,var(--button-primary-start),var(--button-primary-end));color:var(--button-primary-text);box-shadow:var(--button-primary-shadow)}.button-secondary{border:1px solid var(--button-secondary-border);background:var(--button-secondary-bg);color:var(--button-secondary-text)}.button-ghost{border:1px solid var(--button-ghost-border);background:var(--button-ghost-bg);color:var(--button-ghost-text)}.button-primary:hover,.button-secondary:hover,.button-ghost:hover,.nav-cta:hover,.site-menu_button:hover,.text-link_chip:hover,.site-nav_link:hover,.footer-nav a:hover,.contact-detail_card:hover,.profile-card_refined:hover,.skill-card:hover,.recommendation-card:hover,.experience-card:hover,.project-showcase:hover,.detail-card:hover,.highlight-card:hover,.achievement-item:hover,.metric-card:hover{transform:translateY(-2px)}.button-primary:focus-visible,.button-secondary:focus-visible,.button-ghost:focus-visible,.site-menu_button:focus-visible,.site-nav_link:focus-visible,.text-link_chip:focus-visible,.contact-detail_card:focus-visible,.field-input:focus-visible{outline:2px solid rgba(15,118,110,.38);outline-offset:3px}.text-link_chip{display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;padding:.7rem 1rem;border-radius:999px;border:1px solid var(--chip-border);background:var(--chip-bg);color:var(--chip-text);font-size:.9rem;font-weight:500;transition:transform .24s var(--motion-spring),border-color .24s ease,background-color .24s ease}.site-header{position:sticky;top:0;z-index:60;padding-top:1rem}.site-header_inner{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;padding:.95rem 1rem;border-radius:999px;border:1px solid var(--header-border);background:var(--header-bg);box-shadow:var(--header-shadow);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);animation:header-enter .72s var(--motion-spring) both}.site-brand{display:flex;align-items:center;gap:.9rem;min-width:0}.site-brand_mark{display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border-radius:999px;background:linear-gradient(135deg,var(--brand-mark-start),var(--brand-mark-end));color:var(--brand-mark-text);font-size:.95rem;font-weight:700;letter-spacing:.08em}.site-brand_copy{display:flex;flex-direction:column;gap:.1rem;min-width:0}.site-brand_copy strong{color:var(--text-strong);font-size:.95rem;line-height:1.2}.site-brand_copy small{color:var(--text-muted);font-size:.76rem}.site-nav{display:flex;align-items:center;gap:.45rem}.theme-toggle{display:inline-flex;align-items:center;gap:.72rem;min-height:2.75rem;padding:.35rem .5rem .35rem .4rem;border-radius:999px;border:1px solid var(--theme-toggle-border);background:var(--theme-toggle-bg);color:var(--theme-toggle-text);box-shadow:var(--theme-toggle-shadow);transition:transform .24s var(--motion-spring),background-color .24s ease,border-color .24s ease,box-shadow .24s ease,color .24s ease}.theme-toggle:hover{transform:translateY(-2px)}.theme-toggle:focus-visible{outline:2px solid rgba(15,118,110,.38);outline-offset:3px}.theme-toggle_track{position:relative;width:2.25rem;height:2.25rem;border-radius:999px;background:var(--theme-toggle-track-bg);box-shadow:var(--theme-toggle-track-shadow);overflow:hidden}.theme-toggle_track:after{content:"";position:absolute;top:.24rem;right:.24rem;bottom:.24rem;left:.24rem;border-radius:999px;background:#ffffff2e;opacity:.55}.theme-toggle_icon{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;width:100%;height:100%;padding:.55rem;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;transition:opacity .26s ease,transform .32s var(--motion-spring),color .26s ease}.theme-toggle_iconSun{color:#f59e0b;opacity:1;transform:rotate(0) scale(1)}.theme-toggle_iconMoon{color:#dbeafe;opacity:0;transform:rotate(-90deg) scale(.55)}html[data-theme=dark] .theme-toggle_iconSun{opacity:0;transform:rotate(90deg) scale(.55)}html[data-theme=dark] .theme-toggle_iconMoon{opacity:1;transform:rotate(0) scale(1)}.theme-toggle_text{font-size:.84rem;font-weight:600;letter-spacing:.02em}.site-nav_link{display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;padding:.6rem .9rem;border-radius:999px;color:var(--nav-link-text);font-size:.88rem;font-weight:500;transition:transform .22s var(--motion-spring),background-color .22s ease,color .22s ease}.site-nav_link:hover{background:var(--nav-link-hover-bg);color:var(--nav-link-hover-text)}.site-nav_linkActive{background:var(--nav-link-active-bg);color:var(--text-strong);box-shadow:var(--nav-link-active-shadow)}.site-menu_button{display:none;border:1px solid var(--button-secondary-border);background:var(--button-secondary-bg);color:var(--text-strong)}.hero-section{padding-top:clamp(2.5rem,5vw,4.2rem)}.hero-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);align-items:center;gap:clamp(2rem,4vw,4.5rem)}.hero-copy{display:flex;flex-direction:column;gap:1.35rem}.hero-copy>*,.hero-visual>*{opacity:0;transform:translate3d(0,22px,0);animation:hero-enter .86s var(--motion-spring) forwards;will-change:transform,opacity}.hero-copy>:nth-child(1){animation-delay:.12s}.hero-copy>:nth-child(2){animation-delay:.18s}.hero-copy>:nth-child(3){animation-delay:.24s}.hero-copy>:nth-child(4){animation-delay:.3s}.hero-copy>:nth-child(5){animation-delay:.36s}.hero-copy>:nth-child(6){animation-delay:.42s}.hero-visual>:nth-child(1){animation-delay:.26s}.hero-visual>:nth-child(2){animation-delay:.36s}.hero-name{display:flex;flex-direction:column;gap:.45rem;font-size:1.05rem;font-weight:700}.hero-name span{color:var(--text-muted);font-size:.92rem;font-weight:500;letter-spacing:.02em}.hero-display{max-width:12ch;font-size:clamp(3.4rem,8vw,6.6rem);line-height:.93}.hero-display em{font-family:"Instrument Serif",serif;font-style:italic;color:var(--accent);font-weight:400}.hero-body{max-width:40rem;margin:0;color:var(--text-muted);font-size:1rem;line-height:1.92}.hero-detail_row,.hero-actions,.hero-social_row,.contact-social_row{display:flex;flex-wrap:wrap;gap:.85rem}.detail-chip{display:inline-flex;align-items:center;min-height:2.65rem;padding:.7rem 1rem;border-radius:999px;border:1px solid var(--detail-chip-border);background:var(--detail-chip-bg);color:var(--detail-chip-text);font-size:.88rem}.hero-visual{display:flex;flex-direction:column;gap:1rem}.hero-portrait_card{position:relative;overflow:hidden;padding:1.2rem}.hero-portrait_glow{position:absolute;inset:auto -12% -12% auto;width:18rem;height:18rem;border-radius:999px;background:radial-gradient(circle,rgba(15,118,110,.26),transparent 68%);filter:blur(6px)}.hero-status_badge{position:absolute;top:1rem;right:1rem;z-index:1;display:inline-flex;align-items:center;padding:.55rem .85rem;border-radius:999px;background:var(--status-badge-bg);color:var(--status-badge-text);font-size:.75rem;font-weight:600;box-shadow:var(--status-badge-shadow)}.hero-portrait_frame{position:relative;width:min(100%,27rem);margin:0 auto;aspect-ratio:.88;border-radius:calc(var(--radius-lg) - 6px);overflow:hidden;background:linear-gradient(180deg,rgba(255,255,255,.3),transparent),linear-gradient(135deg,#0f766e29,#d977061a)}.hero-portrait_image{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center 18%;object-position:center 18%}.hero-note_card{position:absolute;left:1rem;bottom:1rem;max-width:16rem;padding:1rem;border-radius:1.2rem;border:1px solid var(--hero-note-border);background:var(--hero-note-bg);color:var(--hero-note-text);box-shadow:0 18px 32px #0f172a2e}.hero-note_card p{margin:.45rem 0 0;font-size:.9rem;line-height:1.65}.hero-note_card .card-label{border-color:var(--hero-note-label-border);background:var(--hero-note-label-bg);color:var(--hero-note-label-text)}.hero-metrics_grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.metric-card{min-height:12rem;padding:1.2rem;border-radius:24px;transition:transform .24s var(--motion-spring),box-shadow .24s var(--motion-spring)}.metric-card strong{display:block;color:var(--text-strong);font-size:2rem;font-weight:700;letter-spacing:-.05em}.metric-card span{display:block;margin-top:.35rem;color:var(--text-emphasis);font-size:.9rem;font-weight:600}.metric-card p{margin:.85rem 0 0;color:var(--text-muted);font-size:.82rem;line-height:1.7}@keyframes header-enter{0%{opacity:0;transform:translate3d(0,-18px,0)}to{opacity:1;transform:translateZ(0)}}@keyframes hero-enter{0%{opacity:0;transform:translate3d(0,22px,0) scale(.985)}to{opacity:1;transform:translateZ(0) scale(1)}}.about-layout,.experience-layout,.contact-layout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:1.4rem}.about-story_card,.about-achievements_card,.skills-proof_card,.experience-summary_card,.contact-info_card,.contact-form_card{padding:clamp(1.4rem,2.6vw,2rem)}.about-story_card{display:flex;flex-direction:column;gap:1.2rem}.about-story_lead{margin:0;color:var(--text-strong);font-size:1.38rem;line-height:1.6}.about-story_text{margin:0;color:var(--text-muted);font-size:.95rem;line-height:1.9}.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem}.detail-card,.highlight-card,.contact-detail_card{padding:1rem;border-radius:20px;border:1px solid var(--elevated-card-border);background:var(--elevated-card-bg);transition:transform .22s var(--motion-spring),border-color .22s ease,box-shadow .22s ease}.detail-card strong,.contact-detail_card strong{display:block;margin-top:.35rem;color:var(--text-strong);font-size:.98rem;line-height:1.5}.detail-card p,.highlight-card p,.contact-detail_card span,.contact-info_card p{margin:.45rem 0 0;color:var(--text-muted);font-size:.88rem;line-height:1.72}.about-actions{display:flex;flex-wrap:wrap;gap:.85rem;margin-top:.5rem}.about-aside{display:grid;gap:1rem}.achievement-list,.project-impact_list,.experience-highlights,.experience-summary_list{display:flex;flex-direction:column;gap:.9rem}.achievement-item,.project-impact_item,.experience-highlight_item{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:.7rem;padding:.1rem 0;transition:transform .22s var(--motion-spring)}.achievement-item p,.project-impact_item p,.experience-highlight_item p,.experience-summary_list p{margin:0;color:var(--text-muted);font-size:.92rem;line-height:1.82}.achievement-dot{width:.72rem;height:.72rem;margin-top:.45rem;border-radius:999px;background:linear-gradient(135deg,var(--accent),var(--accent-alt));box-shadow:0 0 0 4px #0f766e14}.about-highlights_grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.skills-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.skill-card{padding:1.4rem;transition:transform .24s var(--motion-spring),box-shadow .24s var(--motion-spring)}.skill-card_header{display:grid;grid-template-columns:auto 1fr;gap:1rem;align-items:start}.skill-accent_bar{width:.75rem;height:3.5rem;border-radius:999px;background:linear-gradient(180deg,var(--skill-accent),transparent)}.skill-card h3{font-size:1.22rem}.skill-card p{margin:.45rem 0 0;color:var(--text-muted);font-size:.92rem;line-height:1.78}.skill-pill_group,.project-tech_row{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.2rem}.skill-pill,.tech-pill{display:inline-flex;align-items:center;gap:.55rem;min-height:2.5rem;padding:.6rem .9rem;border-radius:999px;border:1px solid var(--pill-border);background:var(--skill-surface, rgba(15, 118, 110, .08));color:var(--text-strong);font-size:.84rem;font-weight:500}.skills-proof_card{margin-top:1rem}.skills-proof_intro{display:flex;flex-direction:column;gap:.8rem;max-width:44rem;margin-bottom:1.6rem}.skills-proof_intro h3{margin:0;color:var(--text-strong);font-size:clamp(1.5rem,3vw,2.2rem);line-height:1.15;letter-spacing:-.04em}.profile-grid,.recommendations-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.profile-card_refined{padding:1rem;border-radius:24px;transition:transform .22s var(--motion-spring),box-shadow .22s var(--motion-spring)}.profile-card_topline{display:flex;align-items:start;justify-content:space-between;gap:.75rem}.profile-platform_wrap{display:flex;align-items:center;gap:.75rem;min-width:0}.profile-icon_wrap{display:inline-flex;align-items:center;justify-content:center;width:3rem;height:3rem;flex-shrink:0;border-radius:18px;background:var(--profile-surface, rgba(15, 118, 110, .1))}.profile-platform_icon{width:1.45rem;height:1.45rem;-o-object-fit:contain;object-fit:contain}.profile-platform_wrap strong{display:block;color:var(--text-strong);font-size:.98rem}.profile-platform_wrap p{margin:.2rem 0 0;color:var(--text-muted);font-size:.78rem;word-break:break-word}.profile-badge_refined{display:inline-flex;align-items:center;justify-content:center;min-height:2rem;padding:.25rem .7rem;border-radius:999px;background:var(--profile-badge-bg);color:var(--text-strong);font-size:.72rem;font-weight:600;white-space:nowrap}.profile-highlight_refined{margin:1rem 0 0;color:var(--text-muted);font-size:.88rem;line-height:1.75}.projects-stack{display:flex;flex-direction:column;gap:1.5rem}.project-showcase{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:1.3rem;padding:clamp(1.2rem,2.6vw,1.8rem);border-radius:34px;transition:transform .24s var(--motion-spring),box-shadow .24s var(--motion-spring)}.project-showcase_reverse{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}.project-showcase_reverse .project-showcase_media{order:2}.project-showcase_reverse .project-showcase_copy{order:1}.project-showcase_media{position:relative;display:flex;align-items:center}.project-browser_frame{position:relative;width:100%;padding:.9rem;border-radius:28px;background:radial-gradient(circle at top left,color-mix(in srgb,var(--project-primary) 18%,white 82%),transparent 45%),linear-gradient(145deg,#142035f5,#1c2a40eb);box-shadow:inset 0 1px #ffffff14}.project-browser_bar{display:flex;align-items:center;gap:.45rem;padding-bottom:.75rem}.project-browser_bar span{width:.72rem;height:.72rem;border-radius:999px;background:#ffffff57}.project-media_shell{position:relative;overflow:hidden;border-radius:22px;aspect-ratio:1.04;background:#ffffff0a}.project-spotlight{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;opacity:.65;filter:saturate(1.2)}.project-preview_media{position:relative;z-index:1;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.project-logo_chip{position:absolute;left:1.2rem;bottom:1.2rem;z-index:2;display:inline-flex;align-items:center;justify-content:center;width:4rem;height:4rem;border-radius:20px;background:#ffffffe0;box-shadow:0 16px 28px #0c142133}.project-logo_chip img{width:2rem;height:2rem;-o-object-fit:contain;object-fit:contain}.project-showcase_copy{display:flex;flex-direction:column;justify-content:center;gap:1rem;padding:.4rem .35rem .4rem .15rem}.project-meta{display:flex;align-items:center;justify-content:space-between;gap:.8rem;color:var(--text-subtle);font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.project-showcase_copy h3{font-size:clamp(1.8rem,4vw,2.8rem);line-height:1.02}.project-copy_primary,.project-copy_secondary,.experience-summary_text,.recommendation-quote,.footer-copy p,.footer-meta{margin:0;color:var(--text-muted);line-height:1.84}.project-copy_primary{font-size:1.02rem;color:var(--text-emphasis)}.project-copy_secondary,.experience-summary_text,.recommendation-quote{font-size:.92rem}.tech-pill{background:#ffffffa8}.tech-pill_icon{width:1rem;height:1rem;-o-object-fit:contain;object-fit:contain}.project-availability_note{margin:.5rem 0 0;color:var(--text-subtle);font-size:.86rem;font-weight:500}.projects-gallery{position:relative;display:grid;grid-template-columns:minmax(240px,280px) minmax(0,1fr);gap:1.1rem;padding:clamp(1rem,2.4vw,1.5rem);border:1px solid rgba(21,32,51,.08);border-radius:34px;background:radial-gradient(circle at 0% 0%,color-mix(in srgb,var(--project-primary) 10%,white 90%),transparent 24%),radial-gradient(circle at 100% 0%,color-mix(in srgb,var(--project-secondary) 10%,white 90%),transparent 28%),linear-gradient(160deg,#ffffffe0,#ffffffad);box-shadow:0 24px 54px #12192714;overflow:hidden}.projects-gallery:after{content:"";position:absolute;inset:auto -6% -22% auto;width:22rem;height:22rem;border-radius:999px;background:radial-gradient(circle,color-mix(in srgb,var(--project-secondary) 14%,transparent),transparent 72%);filter:blur(10px);pointer-events:none}.projects-rail{position:relative;z-index:1;display:flex;flex-direction:column;gap:1rem;min-width:0;padding:1rem;border-radius:28px;border:1px solid rgba(21,32,51,.07);background:#fff9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.projects-rail_top{display:flex;flex-direction:column;gap:.9rem}.projects-rail_note,.projects-showcase_caption,.projects-spotlight_note p{margin:0;color:var(--text-muted);font-size:.9rem;line-height:1.72}.projects-rail_controls{display:flex;align-items:center;justify-content:space-between;gap:.8rem}.projects-counter{color:var(--text-subtle);font-size:.8rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}.projects-arrow_group{display:flex;align-items:center;gap:.5rem}.projects-arrow_button{display:inline-flex;align-items:center;justify-content:center;width:2.85rem;height:2.85rem;border-radius:999px;border:1px solid rgba(21,32,51,.1);background:#ffffffc7;color:var(--text-strong);font-size:.98rem;font-weight:700;transition:transform .22s var(--motion-spring),border-color .22s ease,box-shadow .22s ease,background-color .22s ease}.projects-arrow_button:hover{transform:translateY(-2px);border-color:#1520332e;box-shadow:0 10px 22px #12192714}.projects-arrow_buttonSecondary{width:2.55rem;height:2.55rem;background:#f8f2e8eb}.projects-rail_list{display:flex;flex-direction:column;gap:.7rem;min-width:0}.projects-rail_item{position:relative;display:flex;align-items:center;gap:.85rem;width:100%;padding:.9rem .95rem;border-radius:22px;border:1px solid rgba(21,32,51,.08);background:#ffffff80;text-align:left;transition:transform .22s var(--motion-spring),border-color .22s ease,background-color .22s ease,box-shadow .22s ease}.projects-rail_item:hover{transform:translateY(-2px);background:#ffffffbd}.projects-rail_itemActive{border-color:color-mix(in srgb,var(--project-primary) 24%,rgba(21,32,51,.12));background:linear-gradient(135deg,color-mix(in srgb,var(--project-primary) 10%,white 90%),#ffffffe6);box-shadow:0 16px 26px #12192714}.projects-rail_mark,.projects-showcase_badge{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:18px;background:linear-gradient(135deg,var(--project-primary),var(--project-secondary));color:#fffaf4;font-weight:700;letter-spacing:.06em}.projects-rail_mark{width:3rem;height:3rem;font-size:.82rem}.projects-rail_copy{display:flex;flex-direction:column;min-width:0}.projects-rail_copy strong{color:var(--text-strong);font-size:.95rem;line-height:1.4}.projects-rail_copy small{margin-top:.18rem;color:var(--text-muted);font-size:.76rem;line-height:1.5}.projects-spotlight{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:1.2rem}.projects-spotlight_copy,.projects-showcase{min-width:0}.projects-spotlight_copy{display:flex;flex-direction:column;justify-content:center;gap:1rem;padding:clamp(.7rem,2vw,1.1rem)}.projects-spotlight_meta{display:flex;flex-wrap:wrap;gap:.55rem}.projects-spotlight_meta span{display:inline-flex;align-items:center;min-height:2rem;padding:.34rem .72rem;border-radius:999px;border:1px solid rgba(21,32,51,.08);background:#ffffffbd;color:var(--text-subtle);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.projects-spotlight_titleWrap{position:relative}.projects-spotlight_watermark{position:absolute;top:-1.4rem;left:0;color:color-mix(in srgb,var(--project-primary) 26%,transparent);font-size:clamp(4.2rem,10vw,7rem);font-weight:800;letter-spacing:-.08em;line-height:1;pointer-events:none}.projects-spotlight_titleWrap h3{position:relative;z-index:1;margin:0;color:var(--text-strong);font-size:clamp(2.2rem,4vw,3.25rem);line-height:.98;letter-spacing:-.06em}.projects-spotlight_summary{margin:0;color:var(--text-emphasis);font-size:1rem;line-height:1.82}.projects-spotlight_description{margin:0;color:var(--text-muted);font-size:.92rem;line-height:1.82}.projects-spotlight_points{display:flex;flex-direction:column;gap:.8rem}.projects-spotlight_point{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.7rem}.projects-spotlight_point p{margin:0;color:var(--text-muted);font-size:.9rem;line-height:1.74}.projects-spotlight_tags,.projects-spotlight_actions{display:flex;flex-wrap:wrap;gap:.7rem}.project-stage_buttonMuted{pointer-events:none}.projects-spotlight_note{display:flex;flex-direction:column;gap:.55rem;padding:1rem;border-radius:22px;border:1px solid rgba(21,32,51,.08);background:#ffffff8f}.projects-showcase{display:flex;flex-direction:column;gap:.9rem}.projects-showcase_frame{position:relative;padding:.95rem;border-radius:32px;border:1px solid rgba(21,32,51,.08);background:radial-gradient(circle at 14% 16%,color-mix(in srgb,var(--project-primary) 16%,white 84%),transparent 26%),radial-gradient(circle at 84% 18%,color-mix(in srgb,var(--project-secondary) 14%,white 86%),transparent 28%),linear-gradient(160deg,#fffaf1,#f7eddc 62%,#f1e4d4);box-shadow:0 20px 36px #12192714}.projects-showcase_topbar,.projects-showcase_footer{display:flex;align-items:center;justify-content:space-between;gap:.8rem}.projects-showcase_topbar{padding-bottom:.8rem}.projects-showcase_footer{padding-top:.85rem}.projects-showcase_dots{display:flex;align-items:center;gap:.42rem}.projects-showcase_dots span{width:.7rem;height:.7rem;border-radius:999px;background:#1520332e}.projects-showcase_count{color:var(--text-faint);font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.projects-showcase_viewer{position:relative;overflow:hidden;display:grid;place-items:center;min-height:25rem;padding:1.15rem;border-radius:26px;border:1px solid rgba(21,32,51,.06);background:linear-gradient(180deg,#ffffffe0,#f9f4ece0),#ffffffd1}.projects-showcase_viewer_portrait{min-height:33rem}.projects-showcase_glow{position:absolute;inset:auto auto -10% -8%;width:17rem;height:17rem;border-radius:999px;background:radial-gradient(circle,color-mix(in srgb,var(--project-primary) 24%,transparent),transparent 70%);filter:blur(10px)}.projects-showcase_badge{position:absolute;top:1rem;left:1rem;z-index:2;width:3.2rem;height:3.2rem;border-radius:20px;font-size:.84rem;box-shadow:0 14px 24px #1219271f}.projects-showcase_image{position:relative;z-index:1;max-width:100%;max-height:100%;width:auto;height:auto;-o-object-fit:contain;object-fit:contain;border-radius:18px;box-shadow:0 22px 46px #1219271f;animation:project-image-enter .52s var(--motion-spring)}.projects-showcase_image_landscape{width:100%;max-height:100%}.projects-showcase_image_portrait{height:100%;max-width:min(100%,24rem)}.projects-showcase_caption{max-width:24rem}.projects-thumbs{display:flex;gap:.75rem;overflow-x:auto;padding-bottom:.2rem;scrollbar-width:none}.projects-thumbs::-webkit-scrollbar{display:none}.projects-thumb{position:relative;overflow:hidden;display:grid;place-items:center;width:6.5rem;height:4.6rem;flex-shrink:0;padding:.35rem;border-radius:18px;border:1px solid rgba(21,32,51,.08);background:#ffffffc2;transition:transform .22s var(--motion-spring),border-color .22s ease,box-shadow .22s ease,background-color .22s ease}.projects-thumb img{max-width:100%;max-height:100%;width:auto;height:auto;-o-object-fit:contain;object-fit:contain;border-radius:12px}.projects-thumb_active{transform:translateY(-2px);border-color:color-mix(in srgb,var(--project-primary) 30%,rgba(21,32,51,.14));background:#ffffffeb;box-shadow:0 14px 24px #1219271a}@keyframes project-image-enter{0%{opacity:0;transform:scale(1.015)}to{opacity:1;transform:scale(1)}}.experience-summary_card h3{margin-top:.9rem;font-size:clamp(1.6rem,3vw,2.25rem);line-height:1.15}.work-container{display:grid;grid-template-columns:minmax(300px,.88fr) minmax(0,1.12fr);gap:1.2rem;align-items:stretch}.work-canvas{overflow:hidden;min-height:38rem;border:1px solid rgba(21,32,51,.1);border-radius:32px;background:radial-gradient(circle at 14% 16%,rgba(15,118,110,.12),transparent 24%),radial-gradient(circle at 84% 18%,rgba(217,119,6,.15),transparent 26%),linear-gradient(160deg,#fbf5ec,#f4eadb 58%,#efe2d1);box-shadow:0 24px 52px #1219271a}.canvas-placeholder{position:relative;width:100%;height:100%;min-height:28rem;overflow:hidden;border-radius:32px;display:flex;align-items:flex-end;justify-content:flex-start;background:linear-gradient(180deg,#15203305,#1520333d),radial-gradient(circle at 16% 14%,rgba(15,118,110,.1),transparent 24%),radial-gradient(circle at 82% 16%,rgba(217,119,6,.14),transparent 26%),linear-gradient(160deg,#fbf5ec,#f4eadb 58%,#efe2d1)}.canvas-placeholder_tall{min-height:38rem}.canvas-placeholder_visual{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center 16%;object-position:center 16%;opacity:.3;filter:saturate(.88) contrast(.98)}.canvas-placeholder_text{position:relative;z-index:1;margin:0;max-width:16rem;padding:1.2rem;color:var(--text-secondary);font-size:.9rem;line-height:1.7}.work-content{border:1px solid rgba(21,32,51,.08);border-radius:32px;background:linear-gradient(145deg,#ffffffeb,#ffffffb8),#ffffffb8;box-shadow:var(--shadow-soft)}.work-content_inner{padding:1.15rem}.work-content_container{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:1rem;padding:1rem;border-radius:24px;transition:transform .22s var(--motion-spring),background-color .22s ease,box-shadow .22s ease;cursor:pointer;outline:none}.work-content_container:hover,.work-content_container:focus-visible{transform:translateY(-2px);background:#ffffffb8;box-shadow:0 16px 28px #12192714}.work-timeline{display:flex;flex-direction:column;align-items:center;height:100%;padding-top:.1rem}.work-content_logo{display:inline-flex;align-items:center;justify-content:center;width:4.15rem;height:4.15rem;flex-shrink:0;border-radius:22px;background:linear-gradient(145deg,#fff,#f3efe8);border:1px solid rgba(21,32,51,.08);box-shadow:0 10px 22px #12192714}.work-content_logoImage{max-width:2.8rem;max-height:2.8rem;-o-object-fit:contain;object-fit:contain}.work-content_bar{width:2px;flex:1;min-height:3.4rem;margin-top:.75rem;border-radius:999px;background:linear-gradient(180deg,#0f766eeb,#d9770638)}.work-copy{display:flex;flex-direction:column;gap:.5rem;min-width:0}.work-duration{display:inline-flex;width:-moz-fit-content;width:fit-content;padding:.4rem .72rem;border-radius:999px;background:#0f766e14;color:var(--text-subtle);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.work-company{margin:0;color:var(--text-secondary);font-size:.92rem;font-weight:700}.work-position{margin:0;color:var(--text-strong);font-size:1.3rem;line-height:1.28;letter-spacing:-.03em}.work-summary{margin:0;color:var(--text-muted);font-size:.92rem;line-height:1.75}.work-points{display:flex;flex-direction:column;gap:.65rem;padding-top:.35rem}.work-point{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.68rem}.work-point p{margin:0;color:var(--text-muted);font-size:.88rem;line-height:1.72}.experience-card,.recommendation-card{padding:1.3rem;transition:transform .22s var(--motion-spring),box-shadow .22s var(--motion-spring)}.experience-timeline{display:grid;gap:1rem}.experience-card_header{display:flex;justify-content:space-between;gap:1rem}.experience-company_block{display:flex;align-items:start;gap:1rem}.experience-logo_wrap{display:inline-flex;align-items:center;justify-content:center;width:4rem;height:4rem;flex-shrink:0;border-radius:20px;background:#ffffffb8}.experience-logo_wrap img{max-width:2.6rem;max-height:2.6rem;-o-object-fit:contain;object-fit:contain}.experience-company_name{margin:.3rem 0 0;color:var(--text-secondary);font-weight:600}.recommendation-card{display:flex;flex-direction:column;justify-content:space-between;gap:1.4rem}.recommendation-quote{position:relative;padding-left:1.25rem}.recommendation-quote:before{content:'"';position:absolute;left:0;top:-.15rem;color:var(--accent);font-size:2rem;line-height:1}.recommendation-footer{display:flex;align-items:center;gap:.9rem;padding-top:1rem;border-top:1px solid rgba(21,32,51,.08)}.recommendation-avatar{width:3.4rem;height:3.4rem;border-radius:999px;-o-object-fit:cover;object-fit:cover}.recommendation-footer strong{display:block;color:var(--text-strong);line-height:1.4}.recommendation-footer p{margin:.28rem 0 0;color:var(--text-muted);font-size:.8rem;line-height:1.55}.contact-info_card,.contact-form_card{height:100%}.contact-info_card h3{margin-top:.95rem;font-size:clamp(1.5rem,3vw,2.15rem);line-height:1.15}.contact-detail_stack{display:grid;gap:.85rem;margin-top:1.4rem}.contact-detail_card{display:block}.contact-detail_card span{display:block;margin:0;color:var(--label-text);font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.contact-form{display:flex;flex-direction:column;gap:1rem}.field-group{display:flex;flex-direction:column;gap:.5rem}.field-label{color:var(--label-text);font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.field-input{width:100%;min-height:3.35rem;padding:.95rem 1rem;border-radius:22px;border:1px solid var(--input-border);background:var(--input-bg);color:var(--input-text);transition:border-color .22s ease,box-shadow .22s ease,background-color .22s ease}.field-input::-moz-placeholder{color:var(--input-placeholder)}.field-input::placeholder{color:var(--input-placeholder)}.field-input:focus{border-color:var(--input-focus-border);box-shadow:var(--input-focus-shadow);background:var(--input-focus-bg);outline:none}.field-input_textarea{resize:vertical;min-height:10rem}.status-banner{margin:0;padding:.9rem 1rem;border-radius:18px;border:1px solid transparent;font-size:.88rem;line-height:1.65}.status-banner_success{border-color:var(--status-success-border);background:var(--status-success-bg);color:var(--status-success-text)}.status-banner_error{border-color:var(--status-error-border);background:var(--status-error-bg);color:var(--status-error-text)}.contact-actions{display:flex;flex-wrap:wrap;gap:.8rem;padding-top:.35rem}.site-footer{padding:0 0 2rem}.footer-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:1.2rem;padding:1.6rem;border:1px solid var(--footer-border);border-radius:30px;background:var(--footer-bg);box-shadow:var(--shadow-soft)}.footer-brand{color:var(--text-strong);font-size:1.15rem;font-weight:700}.footer-links_group{display:grid;gap:.8rem}.footer-nav{display:flex;flex-wrap:wrap;gap:.75rem 1rem;align-items:center;justify-content:flex-end}.footer-nav a{color:var(--footer-link);font-size:.88rem;transition:color .22s ease}.footer-meta{grid-column:1 / -1;padding-top:.35rem;border-top:1px solid var(--footer-border);font-size:.82rem}.canvas-loader{width:44px;height:44px;border-radius:50%;border:3px solid rgba(21,32,51,.14);border-top-color:#0f766ec7;animation:spin .9s linear infinite}html.theme-ready body,html.theme-ready body:before,html.theme-ready body:after,html.theme-ready .scroll-progress_fill,html.theme-ready .premium-card,html.theme-ready .metric-card,html.theme-ready .project-showcase,html.theme-ready .recommendation-card,html.theme-ready .profile-card_refined,html.theme-ready .detail-card,html.theme-ready .highlight-card,html.theme-ready .contact-detail_card,html.theme-ready .text-link_chip,html.theme-ready .site-header_inner,html.theme-ready .site-brand_mark,html.theme-ready .site-nav_link,html.theme-ready .theme-toggle,html.theme-ready .theme-toggle_track,html.theme-ready .detail-chip,html.theme-ready .hero-status_badge,html.theme-ready .hero-note_card,html.theme-ready .field-input,html.theme-ready .footer-layout,html.theme-ready .footer-nav a,html.theme-ready .projects-gallery,html.theme-ready .projects-rail,html.theme-ready .projects-rail_item,html.theme-ready .projects-showcase_frame,html.theme-ready .projects-showcase_viewer,html.theme-ready .projects-thumb,html.theme-ready .work-canvas,html.theme-ready .canvas-placeholder,html.theme-ready .work-content,html.theme-ready .work-content_container,html.theme-ready .work-content_logo,html.theme-ready .work-duration,html.theme-ready .experience-logo_wrap,html.theme-ready .site-nav,html.theme-ready .site-menu_button{transition:background .28s ease,background-color .28s ease,color .28s ease,border-color .28s ease,box-shadow .28s ease,filter .28s ease}.section-wrap.section-animate{opacity:0;transform:translate3d(0,30px,0);transition:opacity .62s var(--motion-spring),transform .76s var(--motion-spring);transition-delay:var(--section-stagger, 0ms);will-change:opacity,transform}.section-wrap.section-animate.section-visible{opacity:1;transform:translateZ(0)}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 1120px){.hero-layout,.about-layout,.experience-layout,.work-container,.contact-layout,.projects-gallery,.projects-spotlight,.footer-layout{grid-template-columns:1fr}.profile-grid,.recommendations-grid,.about-highlights_grid,.detail-grid,.skills-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-nav{justify-content:flex-start}.projects-rail{padding:.95rem}.projects-showcase_viewer{min-height:22rem}.projects-showcase_viewer_portrait{min-height:29rem}}@media (max-width: 860px){html{scroll-padding-top:86px}.site-header_inner{border-radius:26px}.site-menu_button{display:inline-flex}.site-nav{position:absolute;top:calc(100% + .6rem);left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:.35rem;padding:.9rem;border-radius:24px;border:1px solid rgba(21,32,51,.08);background:#ffffffeb;box-shadow:0 22px 48px #1219271a;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.site-nav_open{display:flex}.site-nav_link,.nav-cta,.theme-toggle{width:100%}.theme-toggle{justify-content:space-between}.hero-display{max-width:100%}.hero-metrics_grid,.profile-grid,.recommendations-grid,.about-highlights_grid,.detail-grid,.skills-grid{grid-template-columns:1fr}.projects-gallery{padding:1rem}.projects-rail{gap:.85rem}.projects-rail_list{flex-direction:row;overflow-x:auto;padding-bottom:.15rem;scrollbar-width:none}.projects-rail_list::-webkit-scrollbar{display:none}.projects-rail_item{min-width:13.4rem}.projects-spotlight{gap:.9rem}.projects-spotlight_copy{padding:.5rem .2rem}.projects-showcase_frame{padding:.8rem}.projects-showcase_viewer{min-height:21rem;padding:.95rem}.projects-showcase_viewer_portrait,.work-canvas,.canvas-placeholder_tall{min-height:28rem}.work-content_inner{padding:.8rem}.work-content_container{gap:.8rem;padding:.85rem}.work-content_logo{width:3.5rem;height:3.5rem;border-radius:18px}.work-content_logoImage{max-width:2.3rem;max-height:2.3rem}}@media (max-width: 640px){.shell{width:min(100% - 1rem,100%)}.section-wrap{padding:4rem 0}.site-header{padding-top:.5rem}.site-header_inner{padding:.85rem}.site-brand_copy small,.theme-toggle_text{display:none}.theme-toggle{justify-content:center}.hero-actions,.contact-actions{flex-direction:column}.button-primary,.button-secondary,.button-ghost,.contact-actions>*{width:100%}.hero-portrait_card{padding:.9rem}.hero-note_card{left:.8rem;right:.8rem;bottom:.8rem;max-width:none}.premium-card,.metric-card{border-radius:24px}.projects-gallery{padding:1rem;border-radius:26px}.projects-rail{padding:.85rem;border-radius:22px}.projects-rail_item{min-width:11.75rem;padding:.78rem .82rem}.projects-rail_mark{width:2.7rem;height:2.7rem}.projects-spotlight_titleWrap h3{font-size:1.9rem}.projects-spotlight_watermark{top:-1rem;font-size:4.1rem}.projects-showcase_badge{width:3rem;height:3rem;border-radius:18px}.projects-showcase_viewer{min-height:18.5rem}.projects-showcase_viewer_portrait{min-height:25rem}.projects-showcase_footer{flex-direction:column;align-items:flex-start}.projects-showcase_caption{max-width:none}.projects-thumb{width:5.5rem;height:4rem}.work-content_container{grid-template-columns:auto minmax(0,1fr)}.work-position{font-size:1.12rem}.canvas-placeholder_text{max-width:100%;padding:1rem}}html[data-theme=dark] .theme-toggle_track:after{background:#ffffff14}html[data-theme=dark] .hero-portrait_frame{background:linear-gradient(180deg,rgba(255,255,255,.08),transparent),linear-gradient(135deg,#0f766e47,#1d4ed82e);box-shadow:inset 0 0 0 1px #94a3b824}html[data-theme=dark] .hero-portrait_image{filter:brightness(.94) saturate(.94) contrast(1.02)}html[data-theme=dark] .hero-portrait_glow{background:radial-gradient(circle,rgba(45,212,191,.28),transparent 68%)}html[data-theme=dark] .projects-gallery{border-color:#94a3b81f;background:radial-gradient(circle at 0% 0%,color-mix(in srgb,var(--project-primary) 18%,#0b1018),transparent 24%),radial-gradient(circle at 100% 0%,color-mix(in srgb,var(--project-secondary) 18%,#0b1018),transparent 28%),linear-gradient(160deg,#111722f0,#0c1119e6);box-shadow:0 28px 58px #02081057}html[data-theme=dark] .projects-gallery:after{background:radial-gradient(circle,color-mix(in srgb,var(--project-secondary) 20%,transparent),transparent 72%)}html[data-theme=dark] .projects-rail{border-color:#94a3b81f;background:#080c125c}html[data-theme=dark] .projects-rail_item{border-color:#94a3b81f;background:#ffffff08}html[data-theme=dark] .projects-rail_item:hover{background:#ffffff0d;box-shadow:0 14px 24px #0208103d}html[data-theme=dark] .projects-rail_itemActive{border-color:color-mix(in srgb,var(--project-primary) 38%,rgba(148,163,184,.18));background:linear-gradient(135deg,color-mix(in srgb,var(--project-primary) 18%,rgba(8,12,18,.92)),#ffffff0a);box-shadow:0 18px 30px #02081047}html[data-theme=dark] .projects-spotlight_meta span{border-color:#94a3b824;background:#ffffff0d;color:#e2e8f0bd}html[data-theme=dark] .projects-spotlight_summary,html[data-theme=dark] .project-copy_primary{color:#ebf1fae0}html[data-theme=dark] .projects-spotlight_note{border-color:#94a3b824;background:#ffffff0a}html[data-theme=dark] .projects-showcase_frame{border-color:#94a3b81f;background:radial-gradient(circle at 14% 16%,color-mix(in srgb,var(--project-primary) 22%,#0e131b),transparent 26%),radial-gradient(circle at 84% 18%,color-mix(in srgb,var(--project-secondary) 18%,#0e131b),transparent 28%),linear-gradient(160deg,#10151d,#141b26 62%,#1a2330);box-shadow:0 24px 46px #02081057}html[data-theme=dark] .projects-showcase_dots span{background:#e2e8f038}html[data-theme=dark] .projects-counter,html[data-theme=dark] .projects-showcase_count,html[data-theme=dark] .project-meta,html[data-theme=dark] .project-availability_note{color:#e2e8f0ad}html[data-theme=dark] .projects-showcase_viewer{border-color:#94a3b81a;background:linear-gradient(180deg,#0f141df0,#0b1018eb),#0c1119d6}html[data-theme=dark] .projects-showcase_image{box-shadow:0 24px 50px #0107105c}html[data-theme=dark] .projects-thumb{border-color:#94a3b81f;background:#ffffff0d}html[data-theme=dark] .projects-thumb_active{background:#ffffff1a;box-shadow:0 16px 28px #02081047}html[data-theme=dark] .projects-arrow_button{border-color:#94a3b824;background:#ffffff0d}html[data-theme=dark] .projects-arrow_buttonSecondary{background:#ffffff0f}html[data-theme=dark] .projects-arrow_button:hover{border-color:#2dd4bf3d;box-shadow:0 12px 24px #02081042}html[data-theme=dark] .tech-pill{background:#ffffff0f}html[data-theme=dark] .work-canvas{border-color:#94a3b81f;background:radial-gradient(circle at 14% 16%,rgba(20,184,166,.16),transparent 24%),radial-gradient(circle at 84% 18%,rgba(249,115,22,.18),transparent 26%),linear-gradient(160deg,#111722,#151c2a 58%,#1a2231);box-shadow:0 28px 54px #02081052}html[data-theme=dark] .canvas-placeholder{background:linear-gradient(180deg,#060a102e,#060a1070),radial-gradient(circle at 16% 14%,rgba(20,184,166,.16),transparent 24%),radial-gradient(circle at 82% 16%,rgba(249,115,22,.18),transparent 26%),linear-gradient(160deg,#111722,#151c2a 58%,#1a2231)}html[data-theme=dark] .canvas-placeholder_visual{opacity:.4;filter:saturate(.82) contrast(1.02) brightness(.78)}html[data-theme=dark] .canvas-placeholder_text{color:#ecf1f8db}html[data-theme=dark] .work-content{border-color:#94a3b81f;background:linear-gradient(145deg,#131925eb,#0c1119d1),#0e141dd1;box-shadow:0 22px 48px #02081047}html[data-theme=dark] .work-content_container:hover,html[data-theme=dark] .work-content_container:focus-visible{background:#ffffff0a;box-shadow:0 18px 30px #02081042}html[data-theme=dark] .work-content_logo{background:linear-gradient(145deg,#1b222ff0,#11161fe6);border-color:#94a3b824;box-shadow:0 12px 24px #02081047}html[data-theme=dark] .work-duration{background:#2dd4bf1a;color:#e2e8f0c2}html[data-theme=dark] .work-company{color:#ebf1fad1}html[data-theme=dark] .experience-logo_wrap{background:#ffffff0f}html[data-theme=dark] .recommendation-footer{border-top-color:#94a3b81f}html[data-theme=dark] .project-browser_frame{box-shadow:inset 0 1px #ffffff0a}html[data-theme=dark] .project-media_shell{background:#ffffff08}html[data-theme=dark] .project-logo_chip{background:#0b1018eb;box-shadow:0 16px 28px #02081052}@media (max-width: 860px){html[data-theme=dark] .site-nav{border-color:#94a3b81f;background:#080c13eb;box-shadow:0 22px 48px #02081066}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition-duration:1ms!important;transition-delay:0ms!important;scroll-behavior:auto!important}.section-wrap.section-animate,.section-wrap.section-animate.section-visible{opacity:1;transform:none}}
