html{--mat-sys-background: light-dark(#f7faf9, #101414);--mat-sys-error: light-dark(#ba1a1a, #ffb4ab);--mat-sys-error-container: light-dark(#ffdad6, #93000a);--mat-sys-inverse-on-surface: light-dark(#eff1f0, #2d3131);--mat-sys-inverse-primary: light-dark(#00dddd, #006a6a);--mat-sys-inverse-surface: light-dark(#2d3131, #e0e3e2);--mat-sys-on-background: light-dark(#191c1c, #e0e3e2);--mat-sys-on-error: light-dark(#ffffff, #690005);--mat-sys-on-error-container: light-dark(#93000a, #ffdad6);--mat-sys-on-primary: light-dark(#ffffff, #003737);--mat-sys-on-primary-container: light-dark(#004f4f, #00fbfb);--mat-sys-on-primary-fixed: light-dark(#002020, #002020);--mat-sys-on-primary-fixed-variant: light-dark(#004f4f, #004f4f);--mat-sys-on-secondary: light-dark(#ffffff, #1b3534);--mat-sys-on-secondary-container: light-dark(#324b4b, #cce8e7);--mat-sys-on-secondary-fixed: light-dark(#051f1f, #051f1f);--mat-sys-on-secondary-fixed-variant: light-dark(#324b4b, #324b4b);--mat-sys-on-surface: light-dark(#191c1c, #e0e3e2);--mat-sys-on-surface-variant: light-dark(#3f4948, #dae5e4);--mat-sys-on-tertiary: light-dark(#ffffff, #502400);--mat-sys-on-tertiary-container: light-dark(#723600, #ffdcc7);--mat-sys-on-tertiary-fixed: light-dark(#311300, #311300);--mat-sys-on-tertiary-fixed-variant: light-dark(#723600, #723600);--mat-sys-outline: light-dark(#6f7979, #889392);--mat-sys-outline-variant: light-dark(#bec9c8, #3f4948);--mat-sys-primary: light-dark(#006a6a, #00dddd);--mat-sys-primary-container: light-dark(#00fbfb, #004f4f);--mat-sys-primary-fixed: light-dark(#00fbfb, #00fbfb);--mat-sys-primary-fixed-dim: light-dark(#00dddd, #00dddd);--mat-sys-scrim: light-dark(#000000, #000000);--mat-sys-secondary: light-dark(#4a6363, #b0cccb);--mat-sys-secondary-container: light-dark(#cce8e7, #324b4b);--mat-sys-secondary-fixed: light-dark(#cce8e7, #cce8e7);--mat-sys-secondary-fixed-dim: light-dark(#b0cccb, #b0cccb);--mat-sys-shadow: light-dark(#000000, #000000);--mat-sys-surface: light-dark(#f7faf9, #101414);--mat-sys-surface-bright: light-dark(#f7faf9, #363a39);--mat-sys-surface-container: light-dark(#ebefed, #1c2020);--mat-sys-surface-container-high: light-dark(#e6e9e7, #272b2a);--mat-sys-surface-container-highest: light-dark(#e0e3e2, #313635);--mat-sys-surface-container-low: light-dark(#f1f4f3, #191c1c);--mat-sys-surface-container-lowest: light-dark(#ffffff, #0b0f0e);--mat-sys-surface-dim: light-dark(#d7dbd9, #101414);--mat-sys-surface-tint: light-dark(#006a6a, #00dddd);--mat-sys-surface-variant: light-dark(#dae5e4, #3f4948);--mat-sys-tertiary: light-dark(#964900, #ffb787);--mat-sys-tertiary-container: light-dark(#ffdcc7, #723600);--mat-sys-tertiary-fixed: light-dark(#ffdcc7, #ffdcc7);--mat-sys-tertiary-fixed-dim: light-dark(#ffb787, #ffb787);--mat-sys-neutral-variant20: #293232;--mat-sys-neutral10: #191c1c;--mat-sys-level0: 0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12);--mat-sys-level1: 0px 2px 1px -1px rgba(0, 0, 0, .2), 0px 1px 1px 0px rgba(0, 0, 0, .14), 0px 1px 3px 0px rgba(0, 0, 0, .12);--mat-sys-level2: 0px 3px 3px -2px rgba(0, 0, 0, .2), 0px 3px 4px 0px rgba(0, 0, 0, .14), 0px 1px 8px 0px rgba(0, 0, 0, .12);--mat-sys-level3: 0px 3px 5px -1px rgba(0, 0, 0, .2), 0px 6px 10px 0px rgba(0, 0, 0, .14), 0px 1px 18px 0px rgba(0, 0, 0, .12);--mat-sys-level4: 0px 5px 5px -3px rgba(0, 0, 0, .2), 0px 8px 10px 1px rgba(0, 0, 0, .14), 0px 3px 14px 2px rgba(0, 0, 0, .12);--mat-sys-level5: 0px 7px 8px -4px rgba(0, 0, 0, .2), 0px 12px 17px 2px rgba(0, 0, 0, .14), 0px 5px 22px 4px rgba(0, 0, 0, .12);--mat-sys-body-large: 400 1rem / 1.5rem Inter;--mat-sys-body-large-font: Inter;--mat-sys-body-large-line-height: 1.5rem;--mat-sys-body-large-size: 1rem;--mat-sys-body-large-tracking: .031rem;--mat-sys-body-large-weight: 400;--mat-sys-body-medium: 400 .875rem / 1.25rem Inter;--mat-sys-body-medium-font: Inter;--mat-sys-body-medium-line-height: 1.25rem;--mat-sys-body-medium-size: .875rem;--mat-sys-body-medium-tracking: .016rem;--mat-sys-body-medium-weight: 400;--mat-sys-body-small: 400 .75rem / 1rem Inter;--mat-sys-body-small-font: Inter;--mat-sys-body-small-line-height: 1rem;--mat-sys-body-small-size: .75rem;--mat-sys-body-small-tracking: .025rem;--mat-sys-body-small-weight: 400;--mat-sys-display-large: 400 3.562rem / 4rem Inter;--mat-sys-display-large-font: Inter;--mat-sys-display-large-line-height: 4rem;--mat-sys-display-large-size: 3.562rem;--mat-sys-display-large-tracking: -.016rem;--mat-sys-display-large-weight: 400;--mat-sys-display-medium: 400 2.812rem / 3.25rem Inter;--mat-sys-display-medium-font: Inter;--mat-sys-display-medium-line-height: 3.25rem;--mat-sys-display-medium-size: 2.812rem;--mat-sys-display-medium-tracking: 0;--mat-sys-display-medium-weight: 400;--mat-sys-display-small: 400 2.25rem / 2.75rem Inter;--mat-sys-display-small-font: Inter;--mat-sys-display-small-line-height: 2.75rem;--mat-sys-display-small-size: 2.25rem;--mat-sys-display-small-tracking: 0;--mat-sys-display-small-weight: 400;--mat-sys-headline-large: 400 2rem / 2.5rem Inter;--mat-sys-headline-large-font: Inter;--mat-sys-headline-large-line-height: 2.5rem;--mat-sys-headline-large-size: 2rem;--mat-sys-headline-large-tracking: 0;--mat-sys-headline-large-weight: 400;--mat-sys-headline-medium: 400 1.75rem / 2.25rem Inter;--mat-sys-headline-medium-font: Inter;--mat-sys-headline-medium-line-height: 2.25rem;--mat-sys-headline-medium-size: 1.75rem;--mat-sys-headline-medium-tracking: 0;--mat-sys-headline-medium-weight: 400;--mat-sys-headline-small: 400 1.5rem / 2rem Inter;--mat-sys-headline-small-font: Inter;--mat-sys-headline-small-line-height: 2rem;--mat-sys-headline-small-size: 1.5rem;--mat-sys-headline-small-tracking: 0;--mat-sys-headline-small-weight: 400;--mat-sys-label-large: 500 .875rem / 1.25rem Inter;--mat-sys-label-large-font: Inter;--mat-sys-label-large-line-height: 1.25rem;--mat-sys-label-large-size: .875rem;--mat-sys-label-large-tracking: .006rem;--mat-sys-label-large-weight: 500;--mat-sys-label-large-weight-prominent: 700;--mat-sys-label-medium: 500 .75rem / 1rem Inter;--mat-sys-label-medium-font: Inter;--mat-sys-label-medium-line-height: 1rem;--mat-sys-label-medium-size: .75rem;--mat-sys-label-medium-tracking: .031rem;--mat-sys-label-medium-weight: 500;--mat-sys-label-medium-weight-prominent: 700;--mat-sys-label-small: 500 .688rem / 1rem Inter;--mat-sys-label-small-font: Inter;--mat-sys-label-small-line-height: 1rem;--mat-sys-label-small-size: .688rem;--mat-sys-label-small-tracking: .031rem;--mat-sys-label-small-weight: 500;--mat-sys-title-large: 400 1.375rem / 1.75rem Inter;--mat-sys-title-large-font: Inter;--mat-sys-title-large-line-height: 1.75rem;--mat-sys-title-large-size: 1.375rem;--mat-sys-title-large-tracking: 0;--mat-sys-title-large-weight: 400;--mat-sys-title-medium: 500 1rem / 1.5rem Inter;--mat-sys-title-medium-font: Inter;--mat-sys-title-medium-line-height: 1.5rem;--mat-sys-title-medium-size: 1rem;--mat-sys-title-medium-tracking: .009rem;--mat-sys-title-medium-weight: 500;--mat-sys-title-small: 500 .875rem / 1.25rem Inter;--mat-sys-title-small-font: Inter;--mat-sys-title-small-line-height: 1.25rem;--mat-sys-title-small-size: .875rem;--mat-sys-title-small-tracking: .006rem;--mat-sys-title-small-weight: 500;--mat-sys-corner-extra-large: 28px;--mat-sys-corner-extra-large-top: 28px 28px 0 0;--mat-sys-corner-extra-small: 4px;--mat-sys-corner-extra-small-top: 4px 4px 0 0;--mat-sys-corner-full: 9999px;--mat-sys-corner-large: 16px;--mat-sys-corner-large-end: 0 16px 16px 0;--mat-sys-corner-large-start: 16px 0 0 16px;--mat-sys-corner-large-top: 16px 16px 0 0;--mat-sys-corner-medium: 12px;--mat-sys-corner-none: 0;--mat-sys-corner-small: 8px;--mat-sys-dragged-state-layer-opacity: .16;--mat-sys-focus-state-layer-opacity: .12;--mat-sys-hover-state-layer-opacity: .08;--mat-sys-pressed-state-layer-opacity: .12;scroll-behavior:smooth;color-scheme:light;--portfolio-bg: #f6f8fb;--portfolio-surface: #ffffff;--portfolio-surface-strong: #eef3f8;--portfolio-muted: #e8eef5;--portfolio-text: #111827;--portfolio-soft-text: #4b5565;--portfolio-faint-text: #6b7280;--portfolio-border: #d8e1ec;--portfolio-accent: #0f9f94;--portfolio-accent-strong: #087c72;--portfolio-coral: #f36f34;--portfolio-indigo: #4355d8;--portfolio-warning: #f2b705;--portfolio-shadow: 0 22px 70px rgba(17, 24, 39, .13);--portfolio-card-shadow: 0 14px 40px rgba(17, 24, 39, .08);--portfolio-grid: rgba(67, 85, 216, .08)}html.dark-theme{--mat-sys-background: #101414;--mat-sys-error: #ffb4ab;--mat-sys-error-container: #93000a;--mat-sys-inverse-on-surface: #2d3131;--mat-sys-inverse-primary: #006a6a;--mat-sys-inverse-surface: #e0e3e2;--mat-sys-on-background: #e0e3e2;--mat-sys-on-error: #690005;--mat-sys-on-error-container: #ffdad6;--mat-sys-on-primary: #003737;--mat-sys-on-primary-container: #00fbfb;--mat-sys-on-primary-fixed: #002020;--mat-sys-on-primary-fixed-variant: #004f4f;--mat-sys-on-secondary: #1b3534;--mat-sys-on-secondary-container: #cce8e7;--mat-sys-on-secondary-fixed: #051f1f;--mat-sys-on-secondary-fixed-variant: #324b4b;--mat-sys-on-surface: #e0e3e2;--mat-sys-on-surface-variant: #dae5e4;--mat-sys-on-tertiary: #502400;--mat-sys-on-tertiary-container: #ffdcc7;--mat-sys-on-tertiary-fixed: #311300;--mat-sys-on-tertiary-fixed-variant: #723600;--mat-sys-outline: #889392;--mat-sys-outline-variant: #3f4948;--mat-sys-primary: #00dddd;--mat-sys-primary-container: #004f4f;--mat-sys-primary-fixed: #00fbfb;--mat-sys-primary-fixed-dim: #00dddd;--mat-sys-scrim: #000000;--mat-sys-secondary: #b0cccb;--mat-sys-secondary-container: #324b4b;--mat-sys-secondary-fixed: #cce8e7;--mat-sys-secondary-fixed-dim: #b0cccb;--mat-sys-shadow: #000000;--mat-sys-surface: #101414;--mat-sys-surface-bright: #363a39;--mat-sys-surface-container: #1c2020;--mat-sys-surface-container-high: #272b2a;--mat-sys-surface-container-highest: #313635;--mat-sys-surface-container-low: #191c1c;--mat-sys-surface-container-lowest: #0b0f0e;--mat-sys-surface-dim: #101414;--mat-sys-surface-tint: #00dddd;--mat-sys-surface-variant: #3f4948;--mat-sys-tertiary: #ffb787;--mat-sys-tertiary-container: #723600;--mat-sys-tertiary-fixed: #ffdcc7;--mat-sys-tertiary-fixed-dim: #ffb787;--mat-sys-neutral-variant20: #293232;--mat-sys-neutral10: #191c1c;--mat-sys-level0: 0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12);--mat-sys-level1: 0px 2px 1px -1px rgba(0, 0, 0, .2), 0px 1px 1px 0px rgba(0, 0, 0, .14), 0px 1px 3px 0px rgba(0, 0, 0, .12);--mat-sys-level2: 0px 3px 3px -2px rgba(0, 0, 0, .2), 0px 3px 4px 0px rgba(0, 0, 0, .14), 0px 1px 8px 0px rgba(0, 0, 0, .12);--mat-sys-level3: 0px 3px 5px -1px rgba(0, 0, 0, .2), 0px 6px 10px 0px rgba(0, 0, 0, .14), 0px 1px 18px 0px rgba(0, 0, 0, .12);--mat-sys-level4: 0px 5px 5px -3px rgba(0, 0, 0, .2), 0px 8px 10px 1px rgba(0, 0, 0, .14), 0px 3px 14px 2px rgba(0, 0, 0, .12);--mat-sys-level5: 0px 7px 8px -4px rgba(0, 0, 0, .2), 0px 12px 17px 2px rgba(0, 0, 0, .14), 0px 5px 22px 4px rgba(0, 0, 0, .12);--mat-sys-body-large: 400 1rem / 1.5rem Inter;--mat-sys-body-large-font: Inter;--mat-sys-body-large-line-height: 1.5rem;--mat-sys-body-large-size: 1rem;--mat-sys-body-large-tracking: .031rem;--mat-sys-body-large-weight: 400;--mat-sys-body-medium: 400 .875rem / 1.25rem Inter;--mat-sys-body-medium-font: Inter;--mat-sys-body-medium-line-height: 1.25rem;--mat-sys-body-medium-size: .875rem;--mat-sys-body-medium-tracking: .016rem;--mat-sys-body-medium-weight: 400;--mat-sys-body-small: 400 .75rem / 1rem Inter;--mat-sys-body-small-font: Inter;--mat-sys-body-small-line-height: 1rem;--mat-sys-body-small-size: .75rem;--mat-sys-body-small-tracking: .025rem;--mat-sys-body-small-weight: 400;--mat-sys-display-large: 400 3.562rem / 4rem Inter;--mat-sys-display-large-font: Inter;--mat-sys-display-large-line-height: 4rem;--mat-sys-display-large-size: 3.562rem;--mat-sys-display-large-tracking: -.016rem;--mat-sys-display-large-weight: 400;--mat-sys-display-medium: 400 2.812rem / 3.25rem Inter;--mat-sys-display-medium-font: Inter;--mat-sys-display-medium-line-height: 3.25rem;--mat-sys-display-medium-size: 2.812rem;--mat-sys-display-medium-tracking: 0;--mat-sys-display-medium-weight: 400;--mat-sys-display-small: 400 2.25rem / 2.75rem Inter;--mat-sys-display-small-font: Inter;--mat-sys-display-small-line-height: 2.75rem;--mat-sys-display-small-size: 2.25rem;--mat-sys-display-small-tracking: 0;--mat-sys-display-small-weight: 400;--mat-sys-headline-large: 400 2rem / 2.5rem Inter;--mat-sys-headline-large-font: Inter;--mat-sys-headline-large-line-height: 2.5rem;--mat-sys-headline-large-size: 2rem;--mat-sys-headline-large-tracking: 0;--mat-sys-headline-large-weight: 400;--mat-sys-headline-medium: 400 1.75rem / 2.25rem Inter;--mat-sys-headline-medium-font: Inter;--mat-sys-headline-medium-line-height: 2.25rem;--mat-sys-headline-medium-size: 1.75rem;--mat-sys-headline-medium-tracking: 0;--mat-sys-headline-medium-weight: 400;--mat-sys-headline-small: 400 1.5rem / 2rem Inter;--mat-sys-headline-small-font: Inter;--mat-sys-headline-small-line-height: 2rem;--mat-sys-headline-small-size: 1.5rem;--mat-sys-headline-small-tracking: 0;--mat-sys-headline-small-weight: 400;--mat-sys-label-large: 500 .875rem / 1.25rem Inter;--mat-sys-label-large-font: Inter;--mat-sys-label-large-line-height: 1.25rem;--mat-sys-label-large-size: .875rem;--mat-sys-label-large-tracking: .006rem;--mat-sys-label-large-weight: 500;--mat-sys-label-large-weight-prominent: 700;--mat-sys-label-medium: 500 .75rem / 1rem Inter;--mat-sys-label-medium-font: Inter;--mat-sys-label-medium-line-height: 1rem;--mat-sys-label-medium-size: .75rem;--mat-sys-label-medium-tracking: .031rem;--mat-sys-label-medium-weight: 500;--mat-sys-label-medium-weight-prominent: 700;--mat-sys-label-small: 500 .688rem / 1rem Inter;--mat-sys-label-small-font: Inter;--mat-sys-label-small-line-height: 1rem;--mat-sys-label-small-size: .688rem;--mat-sys-label-small-tracking: .031rem;--mat-sys-label-small-weight: 500;--mat-sys-title-large: 400 1.375rem / 1.75rem Inter;--mat-sys-title-large-font: Inter;--mat-sys-title-large-line-height: 1.75rem;--mat-sys-title-large-size: 1.375rem;--mat-sys-title-large-tracking: 0;--mat-sys-title-large-weight: 400;--mat-sys-title-medium: 500 1rem / 1.5rem Inter;--mat-sys-title-medium-font: Inter;--mat-sys-title-medium-line-height: 1.5rem;--mat-sys-title-medium-size: 1rem;--mat-sys-title-medium-tracking: .009rem;--mat-sys-title-medium-weight: 500;--mat-sys-title-small: 500 .875rem / 1.25rem Inter;--mat-sys-title-small-font: Inter;--mat-sys-title-small-line-height: 1.25rem;--mat-sys-title-small-size: .875rem;--mat-sys-title-small-tracking: .006rem;--mat-sys-title-small-weight: 500;--mat-sys-corner-extra-large: 28px;--mat-sys-corner-extra-large-top: 28px 28px 0 0;--mat-sys-corner-extra-small: 4px;--mat-sys-corner-extra-small-top: 4px 4px 0 0;--mat-sys-corner-full: 9999px;--mat-sys-corner-large: 16px;--mat-sys-corner-large-end: 0 16px 16px 0;--mat-sys-corner-large-start: 16px 0 0 16px;--mat-sys-corner-large-top: 16px 16px 0 0;--mat-sys-corner-medium: 12px;--mat-sys-corner-none: 0;--mat-sys-corner-small: 8px;--mat-sys-dragged-state-layer-opacity: .16;--mat-sys-focus-state-layer-opacity: .12;--mat-sys-hover-state-layer-opacity: .08;--mat-sys-pressed-state-layer-opacity: .12;color-scheme:dark;--portfolio-bg: #0d1117;--portfolio-surface: #141b24;--portfolio-surface-strong: #192434;--portfolio-muted: #223043;--portfolio-text: #f7fafc;--portfolio-soft-text: #c9d4e2;--portfolio-faint-text: #94a3b8;--portfolio-border: #2b3a4f;--portfolio-accent: #2dd4bf;--portfolio-accent-strong: #7dd3fc;--portfolio-coral: #fb8a54;--portfolio-indigo: #9aa8ff;--portfolio-warning: #facc15;--portfolio-shadow: 0 24px 80px rgba(0, 0, 0, .38);--portfolio-card-shadow: 0 18px 48px rgba(0, 0, 0, .28);--portfolio-grid: rgba(125, 211, 252, .08)}*{box-sizing:border-box}body{min-width:320px;margin:0;overflow-x:hidden;background:linear-gradient(90deg,var(--portfolio-grid) 1px,transparent 1px),linear-gradient(180deg,var(--portfolio-grid) 1px,transparent 1px),linear-gradient(135deg,color-mix(in srgb,var(--portfolio-accent),transparent 92%),transparent 36%),linear-gradient(315deg,color-mix(in srgb,var(--portfolio-coral),transparent 91%),transparent 42%),var(--portfolio-bg);background-size:48px 48px,48px 48px,100% 920px,100% 920px,auto;color:var(--portfolio-text);font:var(--mat-sys-body-medium)}button,a,input,textarea{font:inherit}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--portfolio-text);letter-spacing:0}h1{max-width:880px;margin-bottom:0;font-size:5.35rem;font-weight:900;line-height:.96;overflow-wrap:break-word}h2{max-width:880px;margin:12px 0 0;font-size:3rem;font-weight:850;line-height:1.08;overflow-wrap:break-word}h3{margin-bottom:8px;font-weight:820}.portfolio-app{position:relative;min-height:100vh;overflow:hidden;color:var(--portfolio-text)}.ambient{position:fixed;z-index:-1;pointer-events:none}.ambient-one{top:82px;left:-8vw;width:44vw;height:220px;background:linear-gradient(120deg,color-mix(in srgb,var(--portfolio-accent),transparent 72%),transparent);clip-path:polygon(0 0,100% 20%,82% 100%,0 78%);opacity:.7}.ambient-two{right:-10vw;bottom:12vh;width:46vw;height:260px;background:linear-gradient(235deg,color-mix(in srgb,var(--portfolio-indigo),transparent 76%),transparent);clip-path:polygon(18% 0,100% 14%,100% 100%,0 78%);opacity:.55}.site-header{position:sticky;top:0;z-index:30;border-bottom:1px solid color-mix(in srgb,var(--portfolio-border),transparent 24%);background:color-mix(in srgb,var(--portfolio-surface),transparent 12%);-webkit-backdrop-filter:blur(18px) saturate(1.28);backdrop-filter:blur(18px) saturate(1.28)}.nav-shell{width:min(100%,1280px);height:74px;margin:0;margin-inline:auto;padding-inline:24px;background:transparent;color:var(--portfolio-text)}.brand{display:inline-flex;max-width:54vw;min-width:0;align-items:center;gap:10px;overflow:hidden;color:var(--portfolio-text);font-size:.98rem;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.brand-mark,.icon-bubble,.resume-icon{display:inline-grid;width:42px;height:42px;flex:0 0 auto;place-items:center;border:1px solid color-mix(in srgb,var(--portfolio-border),transparent 14%);border-radius:8px;background:linear-gradient(135deg,color-mix(in srgb,var(--portfolio-accent),transparent 74%),transparent),var(--portfolio-surface);color:var(--portfolio-accent-strong);box-shadow:0 10px 28px color-mix(in srgb,var(--portfolio-accent),transparent 86%);font-weight:900}.icon-bubble mat-icon,.resume-icon mat-icon{color:var(--portfolio-accent-strong)}.nav-spacer{flex:1 1 auto}.desktop-nav{display:flex;align-items:center;gap:4px}.desktop-nav a,.mobile-nav a{position:relative;color:var(--portfolio-soft-text);font-weight:760;transition:color .18s ease,transform .18s ease}.desktop-nav a:after{position:absolute;right:16px;bottom:7px;left:16px;height:2px;border-radius:999px;background:var(--portfolio-accent);content:"";opacity:0;transform:scaleX(.3);transition:opacity .18s ease,transform .18s ease}.desktop-nav a:hover,.mobile-nav a:hover{color:var(--portfolio-text);transform:translateY(-1px)}.desktop-nav a:hover:after{opacity:1;transform:scaleX(1)}.nav-icon.mat-mdc-icon-button{border:1px solid color-mix(in srgb,var(--portfolio-border),transparent 20%);border-radius:8px;background:color-mix(in srgb,var(--portfolio-surface),transparent 18%);color:var(--portfolio-text)}.theme-button{margin-left:10px;flex:0 0 auto}.mobile-menu-button.mat-mdc-icon-button{flex:0 0 auto;display:none}.mobile-nav{display:none}.section-shell{width:min(100%,1280px);margin-inline:auto;padding:94px 24px}.section-heading,.hero-copy,.project-heading,.skill-title,.contact-link span{min-width:0}.hero-section{display:grid;min-height:calc(100svh - 74px);align-items:center;gap:64px;grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);padding-top:70px}.hero-copy{animation:fade-up .76s cubic-bezier(.2,.8,.2,1) both}.status-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:20px}.status-pill,.location-chip,.category-pill,.featured-pill,.panel-kicker{display:inline-flex;align-items:center;gap:8px;border:1px solid color-mix(in srgb,var(--portfolio-border),transparent 18%);border-radius:8px;background:color-mix(in srgb,var(--portfolio-surface),transparent 12%);color:var(--portfolio-soft-text);font-size:.78rem;font-weight:820;padding:8px 10px}.location-chip mat-icon,.category-pill mat-icon{width:18px;height:18px;color:var(--portfolio-accent);font-size:18px}.status-dot{width:8px;height:8px;border-radius:999px;background:var(--portfolio-accent);box-shadow:0 0 0 6px color-mix(in srgb,var(--portfolio-accent),transparent 82%);animation:pulse-dot 2s ease-in-out infinite}.eyebrow{margin:0;color:var(--portfolio-accent-strong);font-size:.84rem;font-weight:850;letter-spacing:0;text-transform:uppercase}.hero-intro,.section-copy{max-width:820px;margin:24px 0 0;color:var(--portfolio-soft-text);font-size:1.06rem;line-height:1.8}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.primary-action,.secondary-action{min-height:46px;border-radius:8px;font-weight:820;letter-spacing:0}.primary-action{--mdc-filled-button-container-color: var(--portfolio-text);--mdc-filled-button-label-text-color: var(--portfolio-bg);box-shadow:0 16px 38px color-mix(in srgb,var(--portfolio-text),transparent 82%);transition:box-shadow .18s ease,transform .18s ease}.secondary-action{--mdc-outlined-button-outline-color: color-mix(in srgb, var(--portfolio-border), transparent 8%);--mdc-outlined-button-label-text-color: var(--portfolio-text);background:color-mix(in srgb,var(--portfolio-surface),transparent 18%);transition:border-color .18s ease,transform .18s ease,background .18s ease}.primary-action:hover,.secondary-action:hover{transform:translateY(-2px)}.secondary-action:hover{background:color-mix(in srgb,var(--portfolio-accent),transparent 92%);border-color:color-mix(in srgb,var(--portfolio-accent),transparent 45%)}.hero-metrics{display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:34px}.metric-card{display:grid;min-height:138px;align-content:start;gap:8px;border:1px solid color-mix(in srgb,var(--portfolio-border),transparent 16%);border-radius:8px;background:linear-gradient(160deg,color-mix(in srgb,var(--portfolio-surface),transparent 4%),color-mix(in srgb,var(--portfolio-surface-strong),transparent 34%)),var(--portfolio-surface);box-shadow:var(--portfolio-card-shadow);padding:18px;animation:card-rise .66s cubic-bezier(.2,.8,.2,1) both;transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease}.metric-card:hover{border-color:color-mix(in srgb,var(--portfolio-accent),transparent 40%);box-shadow:var(--portfolio-shadow);transform:translateY(-4px)}.metric-card mat-icon{color:var(--portfolio-coral)}.metric-card strong{color:var(--portfolio-text);font-size:2rem;font-weight:900;line-height:1}.metric-card span{color:var(--portfolio-soft-text);font-size:.88rem;font-weight:720;line-height:1.4}.expertise-list,.project-card mat-chip-set{display:block;margin-top:28px}.mat-mdc-chip{--mdc-chip-container-shape-radius: 8px;--mdc-chip-elevated-container-color: color-mix(in srgb, var(--portfolio-accent), transparent 88%);--mdc-chip-label-text-color: var(--portfolio-text);border:1px solid color-mix(in srgb,var(--portfolio-accent),transparent 72%);font-weight:760}.hero-visual{position:relative;display:grid;min-height:620px;place-items:center;isolation:isolate;animation:hero-visual-in .82s cubic-bezier(.2,.8,.2,1) .12s both}.portrait-wrap{position:relative;width:min(100%,440px)}.portrait-accent{position:absolute;inset:30px -24px -30px 24px;z-index:-1;border:1px solid color-mix(in srgb,var(--portfolio-coral),transparent 45%);border-radius:8px;background:linear-gradient(135deg,color-mix(in srgb,var(--portfolio-coral),transparent 82%),transparent 58%),linear-gradient(315deg,color-mix(in srgb,var(--portfolio-indigo),transparent 84%),transparent 58%);transform:rotate(3deg);animation:accent-drift 8s ease-in-out infinite alternate}.portrait-frame{position:relative;overflow:hidden;border:1px solid color-mix(in srgb,var(--portfolio-border),transparent 8%);border-radius:8px;background:var(--portfolio-surface);box-shadow:var(--portfolio-shadow)}.portrait-frame:before{position:absolute;inset:0;z-index:1;border:1px solid color-mix(in srgb,var(--portfolio-surface),transparent 45%);border-radius:inherit;content:"";pointer-events:none}.portrait-frame img{width:100%;aspect-ratio:1/1.18;object-fit:cover;transform:scale(1.015);transition:transform .45s ease,filter .45s ease}.portrait-frame:hover img{filter:saturate(1.05) contrast(1.02);transform:scale(1.045)}.scan-line{position:absolute;top:0;right:0;left:0;z-index:2;height:90px;background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--portfolio-accent),transparent 76%),transparent);opacity:.55;transform:translateY(-100%);animation:scan 5.6s ease-in-out infinite;pointer-events:none}.floating-card,.stack-console{position:absolute;z-index:3;border:1px solid color-mix(in srgb,var(--portfolio-border),transparent 12%);border-radius:8px;background:color-mix(in srgb,var(--portfolio-surface),transparent 10%);box-shadow:var(--portfolio-card-shadow);-webkit-backdrop-filter:blur(18px) saturate(1.2);backdrop-filter:blur(18px) saturate(1.2)}.floating-card{display:inline-flex;align-items:center;gap:10px;color:var(--portfolio-text);font-weight:850;padding:12px 14px;animation:float-card 4.8s ease-in-out infinite}.floating-card mat-icon{color:var(--portfolio-coral)}.floating-card-top{top:82px;right:0}.floating-card-bottom{bottom:154px;left:0;animation-delay:.8s}.stack-console{right:18px;bottom:42px;width:min(92%,382px);overflow:hidden;color:var(--portfolio-soft-text);font-size:.84rem}.console-top{display:flex;gap:6px;border-bottom:1px solid color-mix(in srgb,var(--portfolio-border),transparent 20%);background:color-mix(in srgb,var(--portfolio-muted),transparent 18%);padding:10px 12px}.console-top span{width:10px;height:10px;border-radius:999px}.console-top span:nth-child(1){background:var(--portfolio-coral)}.console-top span:nth-child(2){background:var(--portfolio-warning)}.console-top span:nth-child(3){background:var(--portfolio-accent)}.stack-console code{display:block;color:var(--portfolio-text);font-family:JetBrains Mono,SFMono-Regular,Consolas,monospace;line-height:1.7;overflow-wrap:anywhere;padding:14px;white-space:normal}.animated-section{animation:fade-up .7s cubic-bezier(.2,.8,.2,1) both}.about-layout{display:grid;align-items:stretch;gap:26px;grid-template-columns:minmax(0,1fr) minmax(260px,360px);margin-top:4px}.focus-panel{display:grid;align-content:center;gap:10px;border:1px solid color-mix(in srgb,var(--portfolio-border),transparent 16%);border-radius:8px;background:linear-gradient(135deg,color-mix(in srgb,var(--portfolio-indigo),transparent 88%),transparent 62%),var(--portfolio-surface);box-shadow:var(--portfolio-card-shadow);padding:24px}.focus-panel span,.panel-kicker{color:var(--portfolio-coral);font-size:.78rem;font-weight:850;text-transform:uppercase}.focus-panel strong{color:var(--portfolio-text);font-size:1.2rem;line-height:1.45}.highlight-grid{display:grid;gap:18px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:34px}.highlight-card,.skill-column,.skill-card,.timeline-card,.project-card,.resume-card,.contact-form,.contact-panel{border-color:color-mix(in srgb,var(--portfolio-border),transparent 8%);border-radius:8px;background:color-mix(in srgb,var(--portfolio-surface),transparent 3%);color:var(--portfolio-text);box-shadow:var(--portfolio-card-shadow)}.reveal-card{animation:card-rise .62s cubic-bezier(.2,.8,.2,1) both}.highlight-card,.skill-column,.project-card,.timeline-card,.resume-card,.contact-panel,.contact-form{transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.highlight-card:hover,.skill-column:hover,.project-card:hover,.timeline-card:hover,.resume-card:hover,.contact-panel:hover{border-color:color-mix(in srgb,var(--portfolio-accent),transparent 42%);box-shadow:var(--portfolio-shadow);transform:translateY(-5px)}.highlight-card mat-card-content{display:grid;gap:14px;padding:24px}.highlight-card h3{margin:0;font-size:1.18rem}.highlight-card p{margin:0;color:var(--portfolio-soft-text);line-height:1.62}.skills-grid{columns:4;column-gap:24px;column-fill:balance;margin-top:44px}.skill-column{--accent: var(--portfolio-accent);position:relative;display:grid;align-content:start;gap:18px;padding:22px 20px 20px;overflow:hidden;break-inside:avoid;margin-bottom:24px}.skill-column:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,var(--accent),transparent 92%)}.skill-column:hover{border-color:color-mix(in srgb,var(--accent),transparent 42%);box-shadow:0 20px 46px color-mix(in srgb,var(--accent),transparent 84%)}.skill-column-header{display:flex;align-items:center;gap:12px}.skill-column-header .icon-bubble{background:linear-gradient(135deg,color-mix(in srgb,var(--accent),transparent 72%),transparent),var(--portfolio-surface);border-color:color-mix(in srgb,var(--accent),transparent 45%);box-shadow:0 10px 26px color-mix(in srgb,var(--accent),transparent 84%)}.skill-column-header .icon-bubble mat-icon{color:var(--accent)}.skill-column-title{display:grid;gap:2px;margin-right:auto}.skill-column h3{margin:0;font-size:1.14rem}.skill-column-meta{color:var(--portfolio-faint-text);font-size:.74rem;font-weight:650;text-transform:uppercase;letter-spacing:.04em}.skill-average{flex:0 0 auto;padding:5px 11px;border-radius:999px;border:1px solid color-mix(in srgb,var(--accent),transparent 55%);background:color-mix(in srgb,var(--accent),transparent 88%);color:var(--accent);font-size:.78rem;font-weight:850}.skill-stack{display:grid;gap:12px}.skill-card{box-shadow:none;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,background .18s ease}.skill-card:hover{border-color:color-mix(in srgb,var(--accent),transparent 45%);background:color-mix(in srgb,var(--accent),transparent 94%);box-shadow:0 14px 30px color-mix(in srgb,var(--accent),transparent 86%);transform:translate(3px)}.skill-card mat-card-content{padding:14px 16px}.skill-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}.skill-title{display:inline-flex;align-items:center;gap:10px;color:var(--portfolio-text);font-weight:780;line-height:1.35}.skill-icon-chip{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:30px;height:30px;border-radius:9px;background:color-mix(in srgb,var(--accent),transparent 82%);border:1px solid color-mix(in srgb,var(--accent),transparent 60%);transition:transform .18s ease}.skill-card:hover .skill-icon-chip{transform:scale(1.08) rotate(-4deg)}.skill-icon-chip mat-icon{font-size:18px;width:18px;height:18px;color:var(--accent)}.skill-level{flex:0 0 auto;padding:3px 9px;border-radius:999px;background:color-mix(in srgb,var(--portfolio-coral),transparent 88%);color:var(--portfolio-coral);font-size:.78rem;font-weight:850}.skill-card .mat-mdc-progress-bar{--mat-progress-bar-active-indicator-color: var(--accent);--mat-progress-bar-track-color: color-mix(in srgb, var(--portfolio-muted), transparent 5%);--mat-progress-bar-active-indicator-height: 7px;--mat-progress-bar-track-height: 7px;--mat-progress-bar-track-shape: 999px;border-radius:999px;overflow:hidden}.timeline{display:grid;gap:28px;margin-top:44px}.timeline-item{position:relative;border-left:2px solid color-mix(in srgb,var(--portfolio-accent),transparent 20%);padding-left:34px}.timeline-dot{position:absolute;top:18px;left:-18px;display:grid;width:34px;height:34px;place-items:center;border:6px solid var(--portfolio-bg);border-radius:999px;background:var(--portfolio-accent);box-shadow:0 0 0 8px color-mix(in srgb,var(--portfolio-accent),transparent 86%)}.timeline-dot mat-icon{width:16px;height:16px;color:var(--portfolio-bg);font-size:16px}.timeline-card mat-card-content{padding:28px}.duration{margin-bottom:8px;color:var(--portfolio-coral);font-size:.9rem;font-weight:850}.timeline-card h3,.project-card h3,.resume-card h3{margin-bottom:8px;font-size:1.4rem;font-weight:850}.company,.timeline-card li,.project-card p,.resume-card p{color:var(--portfolio-soft-text);line-height:1.65}.timeline-card ul{display:grid;gap:10px;margin:22px 0 0;padding-left:20px}.timeline-card li::marker{color:var(--portfolio-accent)}.project-toolbar{display:flex;flex-direction:column;align-items:flex-start;gap:22px}.filter-group.mat-button-toggle-group-appearance-standard{display:inline-flex;align-self:center;flex:0 0 auto;flex-wrap:wrap;justify-content:center;gap:6px;padding:7px;border:1px solid color-mix(in srgb,var(--portfolio-border),transparent 30%);border-radius:999px;background:color-mix(in srgb,var(--portfolio-surface),transparent 35%);box-shadow:0 22px 48px color-mix(in srgb,var(--portfolio-text),transparent 90%),inset 0 1px color-mix(in srgb,white,transparent 70%);-webkit-backdrop-filter:blur(16px) saturate(1.4);backdrop-filter:blur(16px) saturate(1.4)}.filter-group .mat-button-toggle{overflow:hidden;border:1px solid color-mix(in srgb,var(--portfolio-border),transparent 10%);border-radius:999px;background:color-mix(in srgb,var(--portfolio-surface),transparent 4%);color:var(--portfolio-soft-text);font-weight:750;transition:border-color .2s ease,background-color .2s ease,color .2s ease,box-shadow .2s ease,transform .2s ease}.filter-group .mat-button-toggle-button{height:32px}.filter-group .mat-button-toggle-label-content{display:inline-flex;align-items:center;gap:6px;padding:0 13px;font-size:.8rem;line-height:1.8!important}.filter-group .mat-button-toggle-label-content mat-icon{width:14px;height:14px;font-size:14px;line-height:14px}.filter-group .mat-button-toggle-button:focus-visible{outline:none;box-shadow:0 0 0 4px color-mix(in srgb,var(--portfolio-accent),transparent 78%)}.filter-group .mat-button-toggle:not(.mat-button-toggle-checked):hover,.filter-group .mat-button-toggle.mat-button-toggle-checked{border-color:transparent;background:linear-gradient(135deg,#4f83f2,#2563eb);color:#fff;box-shadow:0 10px 24px color-mix(in srgb,#2563eb,transparent 72%);transform:translateY(-1px)}.project-grid{display:grid;gap:24px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:34px}.project-card{overflow:hidden}.project-card.featured-project{border-color:color-mix(in srgb,var(--portfolio-coral),transparent 44%)}.project-media{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--portfolio-muted)}.project-media:after{position:absolute;inset:0;background:linear-gradient(180deg,#00000014,#0000002e),linear-gradient(135deg,color-mix(in srgb,var(--portfolio-accent),transparent 78%),transparent 58%);content:"";opacity:0;transition:opacity .22s ease}.project-media img{width:100%;height:100%;filter:saturate(1.04);object-fit:cover;transform:scale(1.01);transition:transform .5s ease,filter .5s ease}.project-card:hover .project-media img{filter:saturate(1.12) contrast(1.02);transform:scale(1.06)}.project-card:hover .project-media:after{opacity:1}.project-overlay{position:absolute;inset:16px 16px auto;z-index:2;display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.previewable-image{cursor:zoom-in}.previewable-image:focus-visible{outline:2px solid var(--portfolio-accent);outline-offset:2px}.preview-hint{position:absolute;z-index:3;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:#1118278c;color:#fff;opacity:0;transform:scale(.85);transition:opacity .22s ease,transform .22s ease;pointer-events:none}.project-media .preview-hint{inset:0;margin:auto}.portrait-frame .preview-hint{right:14px;bottom:14px}.previewable-image:hover .preview-hint,.previewable-image:focus-visible .preview-hint{opacity:1;transform:scale(1)}.category-pill,.featured-pill{background:color-mix(in srgb,var(--portfolio-surface),transparent 8%);box-shadow:0 12px 30px #00000029;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.featured-pill{border-color:color-mix(in srgb,var(--portfolio-coral),transparent 32%);color:var(--portfolio-coral)}.project-card mat-card-content{display:block;padding:24px 24px 10px}.project-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.project-card mat-card-actions{padding:0 24px 24px}.project-link{width:100%;justify-content:center}.resume-card{margin-top:36px}.resume-card mat-card-content{display:grid;align-items:center;gap:24px;grid-template-columns:auto minmax(0,1fr) auto;padding:30px}.resume-icon{width:58px;height:58px}.location-line{display:inline-flex;align-items:center;gap:8px;margin-top:12px;color:var(--portfolio-soft-text);font-weight:800}.location-line mat-icon{color:var(--portfolio-accent)}.contact-layout{display:grid;align-items:start;gap:24px;grid-template-columns:minmax(260px,.42fr) minmax(0,1fr);margin-top:36px}.contact-panel{display:grid;gap:16px;padding:24px}.panel-kicker{width:max-content;background:color-mix(in srgb,var(--portfolio-coral),transparent 90%)}.contact-link{display:flex;min-width:0;align-items:center;gap:12px;border:1px solid color-mix(in srgb,var(--portfolio-border),transparent 20%);border-radius:8px;background:color-mix(in srgb,var(--portfolio-surface-strong),transparent 24%);padding:14px;transition:border-color .18s ease,background .18s ease,transform .18s ease}.contact-link:hover{border-color:color-mix(in srgb,var(--portfolio-accent),transparent 46%);background:color-mix(in srgb,var(--portfolio-accent),transparent 92%);transform:translate(4px)}.contact-link strong,.contact-link small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contact-link strong{color:var(--portfolio-text);font-size:.94rem}.contact-link small{margin-top:4px;color:var(--portfolio-soft-text);font-size:.82rem}.contact-form{display:grid;gap:18px;grid-template-columns:repeat(2,minmax(0,1fr));padding:24px}.full-width,.form-submit{grid-column:1/-1}.form-submit{justify-self:start}.mat-mdc-form-field{width:100%}.success-snackbar{--mdc-snackbar-container-color: #0f766e;--mdc-snackbar-supporting-text-color: #ffffff;--mat-snack-bar-button-color: #ffffff}.error-snackbar{--mdc-snackbar-container-color: #b42318;--mdc-snackbar-supporting-text-color: #ffffff;--mat-snack-bar-button-color: #ffffff}footer{border-top:1px solid color-mix(in srgb,var(--portfolio-border),transparent 12%);color:var(--portfolio-soft-text);padding:30px 24px;text-align:center}footer p{margin:0}@keyframes fade-up{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes card-rise{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes hero-visual-in{0%{opacity:0;transform:translate(24px) scale(.98)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes pulse-dot{0%,to{box-shadow:0 0 0 6px color-mix(in srgb,var(--portfolio-accent),transparent 84%)}50%{box-shadow:0 0 0 10px color-mix(in srgb,var(--portfolio-accent),transparent 92%)}}@keyframes accent-drift{0%{transform:rotate(3deg) translateZ(0)}to{transform:rotate(-1deg) translate3d(8px,-6px,0)}}@keyframes scan{0%,24%{transform:translateY(-100%)}46%,to{transform:translateY(620%)}}@keyframes float-card{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@media(max-width:1140px){.hero-section{gap:46px;grid-template-columns:minmax(0,1fr) minmax(300px,390px)}.skills-grid{columns:2}h1{font-size:4.45rem}h2{font-size:2.65rem}}@media(max-width:920px){.desktop-nav{display:none}.mobile-menu-button.mat-mdc-icon-button{display:inline-flex}.mobile-nav{display:grid;gap:4px;border-top:1px solid var(--portfolio-border);background:color-mix(in srgb,var(--portfolio-surface),transparent 5%);padding:10px 16px 16px}.mobile-nav a{justify-content:flex-start}.section-shell{padding:74px 18px}.hero-section,.about-layout,.highlight-grid,.project-grid,.resume-card mat-card-content,.contact-layout{grid-template-columns:1fr}.hero-section{min-height:auto;padding-top:54px}.hero-visual{min-height:560px}.resume-card mat-card-content{justify-items:start}h1{font-size:3.45rem;line-height:1}h2{font-size:2.35rem}}@media(max-width:640px){body{background-size:38px 38px,38px 38px,100% 820px,100% 820px,auto}.ambient{display:none}.nav-shell{display:grid;grid-template-columns:minmax(0,1fr) 44px 44px;gap:6px;width:100vw;max-width:100vw;padding-inline:14px}.brand{max-width:none}.brand span:last-child{overflow:hidden;text-overflow:ellipsis}.nav-spacer{display:none}.hero-actions{align-items:stretch;flex-direction:column}.status-row{row-gap:8px}.hero-actions a,.resume-card a,.form-submit{width:100%;max-width:100%}.hero-metrics,.contact-form{grid-template-columns:1fr}.hero-metrics{gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.metric-card{min-height:118px;padding:14px}.metric-card strong{font-size:1.7rem}.metric-card span{font-size:.76rem}.skills-grid{columns:1}.hero-visual{min-height:505px;overflow:hidden}.portrait-wrap{width:min(100%,340px)}.floating-card-top{top:42px;right:2px}.floating-card-bottom{bottom:128px;left:2px}.stack-console{right:0;bottom:20px;width:100%}.portrait-accent{inset:18px 0 -18px 10px}.project-overlay{inset:12px 12px auto;flex-wrap:wrap}.filter-group.mat-button-toggle-group-appearance-standard{display:flex;align-self:stretch;width:100%;flex-wrap:nowrap;justify-content:flex-start;gap:8px;padding:4px 14px;margin-inline:-14px;border:0;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none}.filter-group::-webkit-scrollbar{display:none}.filter-group .mat-button-toggle{flex:0 0 auto;white-space:nowrap;scroll-snap-align:start}h1{font-size:2.5rem;line-height:1.06}h2{font-size:2rem}}@media(max-width:420px){.brand-mark{width:38px;height:38px}.section-shell{padding-inline:14px}.hero-visual{min-height:460px}.floating-card{max-width:175px;font-size:.84rem}.floating-card-top{top:30px}.floating-card-bottom{bottom:116px}.stack-console{font-size:.76rem}h1{font-size:2.2rem}h2{font-size:1.78rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}}.image-preview-panel .mat-mdc-dialog-container{--mdc-dialog-container-color: transparent;box-shadow:none}.image-preview-panel .mdc-dialog__surface{overflow:visible;background:transparent;box-shadow:none}.image-preview-panel .mat-mdc-dialog-surface{padding:0}.cdk-overlay-dark-backdrop.image-preview-backdrop{background:#0a0e14b8;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
