@charset "UTF-8";:root{color-scheme:dark;--bg: #050505;--bg-nav: rgba(5, 5, 5, .86);--fg: #ede9e3;--fg-55: rgba(226, 232, 240, .55);--fg-48: rgba(226, 232, 240, .48);--fg-40: rgba(226, 232, 240, .4);--fg-35: rgba(226, 232, 240, .35);--fg-28: rgba(226, 232, 240, .28);--fg-18: rgba(226, 232, 240, .18);--fg-12: rgba(226, 232, 240, .12);--fg-09: rgba(226, 232, 240, .09);--fg-07: rgba(226, 232, 240, .07);--fg-05: rgba(226, 232, 240, .05);--fg-04: rgba(226, 232, 240, .04);--fg-03: rgba(226, 232, 240, .03);--surface: rgba(255, 255, 255, .04);--surface-md: rgba(255, 255, 255, .055);--surface-hi: rgba(255, 255, 255, .09);--glass-bg: rgba(255, 255, 255, .028);--glass-bg-hi: rgba(255, 255, 255, .05);--glass-border: rgba(255, 255, 255, .08);--glass-border-hi: rgba(255, 255, 255, .13);--glass-blur-soft: blur(8px);--glass-blur-medium: blur(16px);--glass-blur-strong: blur(24px);--img-brightness-dark: brightness(1.02);--img-contrast-dark: contrast(1.04);--img-saturate-dark: saturate(1.05);--img-filter-dark: var(--img-brightness-dark) var(--img-contrast-dark) var(--img-saturate-dark);--particle-color: #a6a8ac;--particle-glow: #c2c4c8;--particle-opacity: .11;--particle-size: 2.6;--particle-fog: #0a0a0a;--silver: rgba(210, 212, 218, 1);--silver-a08: rgba(210, 212, 218, .08);--silver-a14: rgba(210, 212, 218, .14);--silver-a22: rgba(210, 212, 218, .22);--silver-a36: rgba(210, 212, 218, .36);--sb-track: #111111;--sb-thumb: #333333;--sb-thumb-h: #555555;--btn-solid-from: rgba(255, 255, 255, .97);--btn-solid-to: rgba(230, 230, 230, .91);--btn-solid-border: rgba(255, 255, 255, .55);--btn-solid-color: #0a0a0a;--btn-solid-sh: 0 1px 0 rgba(255, 255, 255, .85) inset, 0 4px 20px rgba(0, 0, 0, .35);--btn-solid-sh-h: 0 1px 0 rgba(255, 255, 255, .9) inset, 0 10px 32px rgba(0, 0, 0, .45);--font-display: "Unbounded", sans-serif;--r-sm: 8px;--r-md: 14px;--r-lg: 20px;--r-xl: 28px;--r-pill: 100px;--r-circle: 50%;--icon-xs: 14px;--icon-sm: 16px;--icon-md: 18px;--shadow-photo: rgba(0, 0, 0, .6);--shadow-photo-md: rgba(0, 0, 0, .48);--shadow-card-lg: rgba(0, 0, 0, .55);--shadow-card: rgba(0, 0, 0, .26);--shadow-form: rgba(0, 0, 0, .18);--shadow-tile: rgba(0, 0, 0, .2);--shadow-tile-h: rgba(0, 0, 0, .3)}html.light{color-scheme:light;--bg: #ffffff;--bg-nav: rgba(255, 255, 255, .88);--fg: #1c1a18;--fg-55: rgba(28, 26, 24, .58);--fg-48: rgba(28, 26, 24, .52);--fg-40: rgba(28, 26, 24, .44);--fg-35: rgba(28, 26, 24, .38);--fg-28: rgba(28, 26, 24, .3);--fg-18: rgba(28, 26, 24, .18);--fg-12: rgba(28, 26, 24, .12);--fg-09: rgba(28, 26, 24, .09);--fg-07: rgba(28, 26, 24, .07);--fg-05: rgba(28, 26, 24, .05);--fg-04: rgba(28, 26, 24, .04);--fg-03: rgba(28, 26, 24, .03);--surface: rgba(0, 0, 0, .045);--surface-md: rgba(0, 0, 0, .065);--surface-hi: rgba(0, 0, 0, .1);--glass-bg: rgba(0, 0, 0, .02);--glass-bg-hi: rgba(0, 0, 0, .038);--glass-border: rgba(0, 0, 0, .07);--glass-border-hi: rgba(0, 0, 0, .13);--glass-blur-soft: blur(6px);--glass-blur-medium: blur(12px);--glass-blur-strong: blur(18px);--sb-track: #ebe9e5;--sb-thumb: #c4c2be;--sb-thumb-h: #a6a4a0;--btn-solid-from: #222222;--btn-solid-to: #050505;--btn-solid-border: rgba(0, 0, 0, .15);--btn-solid-color: #ffffff;--btn-solid-sh: 0 1px 0 rgba(255, 255, 255, .14) inset, 0 4px 16px rgba(0, 0, 0, .06);--btn-solid-sh-h: 0 1px 0 rgba(255, 255, 255, .16) inset, 0 10px 26px rgba(0, 0, 0, .1);--shadow-photo: rgba(0, 0, 0, .06);--shadow-photo-md: rgba(0, 0, 0, .04);--shadow-card-lg: rgba(0, 0, 0, .05);--shadow-card: rgba(0, 0, 0, .03);--shadow-form: rgba(0, 0, 0, .03);--shadow-tile: rgba(0, 0, 0, .02);--shadow-tile-h: rgba(0, 0, 0, .04);--img-brightness-light: brightness(.98);--img-contrast-light: contrast(1.08);--img-saturate-light: saturate(.88);--img-filter-light: var(--img-brightness-light) var(--img-contrast-light) var(--img-saturate-light);--particle-color: #8a8884;--particle-glow: #5c5a56;--particle-opacity: .15;--particle-size: 2;--particle-fog: #f5f5f7}@media (hover: hover){*{cursor:none!important}}*{margin:0;box-sizing:border-box;font-family:Inter,sans-serif;color:var(--fg);transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*::-webkit-scrollbar{width:8px}*::-webkit-scrollbar-track{background:var(--sb-track)}*::-webkit-scrollbar-thumb{background-color:var(--sb-thumb);border-radius:4px;border:2px solid var(--sb-track)}*::-webkit-scrollbar-thumb:hover{background-color:var(--sb-thumb-h)}body{position:relative;z-index:2;background:transparent!important}app-root{display:block;position:relative;z-index:1;background:transparent!important}.hero-text,.hero-photo-wrapper,.about-content,.about-photo-wrap,.skills-text,.skills-grid,.contact-heading,.contact-columns{transition:none!important;transform:translateZ(0);backface-visibility:hidden}img{transform:translateZ(0)}html{background-color:var(--bg);position:relative;z-index:0}router-outlet{position:relative;z-index:1;display:block}.skill-item,.project-info,.project-img-wrap,.about-icon,.social-icon-link,form{position:relative}.skill-item:before,.project-info:before,.project-img-wrap:before,.about-icon:before,.social-icon-link:before,form:before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:radial-gradient(120px circle at var(--mx, -400px) var(--my, -400px),rgba(255,255,255,.08),rgba(255,255,255,.03),transparent 65%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:destination-out;mask-composite:subtract;pointer-events:none;z-index:2;transition:none}.skill-item:after,.project-info:after,.project-img-wrap:after,.about-icon:after,.social-icon-link:after,form:after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(135deg,rgba(255,255,255,.02) 0%,transparent 40%),radial-gradient(100px circle at var(--mx, -400px) var(--my, -400px),rgba(255,255,255,.012) 0%,transparent 75%);pointer-events:none;z-index:1;transition:none}button:before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:radial-gradient(80px circle at var(--mx, -400px) var(--my, -400px),rgba(255,255,255,.06),rgba(255,255,255,.02),transparent 65%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:destination-out;mask-composite:subtract;pointer-events:none;z-index:2;transition:none}html.light .skill-item:before,html.light .project-info:before,html.light .project-img-wrap:before,html.light .about-icon:before,html.light .social-icon-link:before,html.light form:before{background:radial-gradient(120px circle at var(--mx, -400px) var(--my, -400px),rgba(8,8,12,.08),rgba(20,20,30,.03),transparent 65%)}html.light .skill-item:after,html.light .project-info:after,html.light .project-img-wrap:after,html.light .about-icon:after,html.light .social-icon-link:after,html.light form:after{background:linear-gradient(135deg,rgba(8,8,12,.01) 0%,transparent 40%),radial-gradient(100px circle at var(--mx, -400px) var(--my, -400px),rgba(8,8,12,.008) 0%,transparent 75%)}html.light button:before{background:radial-gradient(80px circle at var(--mx, -400px) var(--my, -400px),rgba(8,8,12,.06),rgba(20,20,30,.02),transparent 65%)}.glass-layer{background:var(--glass-bg);backdrop-filter:var(--glass-blur-soft);-webkit-backdrop-filter:var(--glass-blur-soft);border:1px solid var(--glass-border)}.glass-layer-strong{background:var(--glass-bg-hi);backdrop-filter:var(--glass-blur-strong);-webkit-backdrop-filter:var(--glass-blur-strong);border:1px solid var(--glass-border-hi)}.liquid-glass{background:#ffffff08;backdrop-filter:blur(20px) saturate(190%);-webkit-backdrop-filter:blur(20px) saturate(190%);border:1px solid rgba(255,255,255,.08);box-shadow:inset 0 1px 1px #ffffff1f,0 8px 32px #00000040}html.light .liquid-glass{background:#ffffff73;backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);border:1px solid rgba(0,0,0,.06);box-shadow:inset 0 1px 1px #fff9,0 8px 32px #0000000d}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}#global-canvas{display:none}}h1,h2{font-family:Unbounded,sans-serif;font-style:normal;font-weight:500;letter-spacing:-.02em;line-height:1.1;will-change:opacity,transform;backface-visibility:visible}.section-heading{display:flex;align-items:center;gap:14px}@media (min-width: 768px){.section-heading{gap:20px}}@media (min-width: 1024px){.section-heading{gap:28px}}.section-heading:before{content:"";display:block;flex-shrink:0;height:2px;width:18px;background:linear-gradient(90deg,transparent,var(--fg-28));border-radius:2px}@media (min-width: 768px){.section-heading:before{width:28px}}@media (min-width: 1024px){.section-heading:before{width:40px}}.section-heading h1{font-size:clamp(28px,5vw,52px)}@media (min-width: 768px){.section-heading h1{font-size:clamp(32px,4.6vw,56px)}}@media (min-width: 1024px){.section-heading h1{font-size:clamp(36px,4.4vw,60px)}}app-main-content{display:block;position:relative;z-index:1}
