:root{--app-brand-primary: #0284e5;--app-brand-dark: #014076;--app-brand-light: #33bec5;--app-brand-gray: #cfcfcf;--app-color-canvas: #f7f8fa;--app-color-surface: #ffffff;--app-color-ink: #17212b;--app-color-heading: #102f4b;--app-color-muted: #4b5b68;--app-color-border: #cfcfcf;--app-color-link: #014076;--app-color-link-hover: #00345f;--app-radius-sm: .35rem;--app-radius-md: .55rem;--app-radius-lg: .75rem;--app-shadow-card: 0 .25rem 1rem rgb(16 47 75 / 6%);--app-space-1: .5rem;--app-space-2: .75rem;--app-space-3: 1rem;--app-space-4: 1.5rem;--app-space-5: 2rem;--app-space-6: 3rem;--app-space-7: 4rem}html{--mat-button-filled-container-shape: 9999px;--mat-button-filled-horizontal-padding: 24px;--mat-button-filled-icon-offset: -8px;--mat-button-filled-icon-spacing: 8px;--mat-button-filled-touch-target-size: 48px;--mat-button-outlined-container-shape: 9999px;--mat-button-outlined-horizontal-padding: 24px;--mat-button-outlined-icon-offset: -8px;--mat-button-outlined-icon-spacing: 8px;--mat-button-outlined-outline-width: 1px;--mat-button-outlined-touch-target-size: 48px;--mat-button-protected-container-shape: 9999px;--mat-button-protected-horizontal-padding: 24px;--mat-button-protected-icon-offset: -8px;--mat-button-protected-icon-spacing: 8px;--mat-button-protected-touch-target-size: 48px;--mat-button-text-container-shape: 9999px;--mat-button-text-horizontal-padding: 12px;--mat-button-text-icon-offset: -4px;--mat-button-text-icon-spacing: 8px;--mat-button-text-with-icon-horizontal-padding: 16px;--mat-button-text-touch-target-size: 48px;--mat-button-tonal-container-shape: 9999px;--mat-button-tonal-horizontal-padding: 24px;--mat-button-tonal-icon-offset: -8px;--mat-button-tonal-icon-spacing: 8px;--mat-button-tonal-touch-target-size: 48px}html{--mat-button-filled-container-color: #005cbb;--mat-button-filled-disabled-container-color: color-mix(in srgb, #1a1b1f 12%, transparent);--mat-button-filled-disabled-label-text-color: color-mix(in srgb, #1a1b1f 38%, transparent);--mat-button-filled-disabled-state-layer-color: #44474e;--mat-button-filled-focus-state-layer-opacity: .12;--mat-button-filled-hover-state-layer-opacity: .08;--mat-button-filled-label-text-color: #ffffff;--mat-button-filled-pressed-state-layer-opacity: .12;--mat-button-filled-ripple-color: color-mix(in srgb, #ffffff 12%, transparent);--mat-button-filled-state-layer-color: #ffffff;--mat-button-outlined-disabled-label-text-color: color-mix(in srgb, #1a1b1f 38%, transparent);--mat-button-outlined-disabled-outline-color: color-mix(in srgb, #1a1b1f 12%, transparent);--mat-button-outlined-disabled-state-layer-color: #44474e;--mat-button-outlined-focus-state-layer-opacity: .12;--mat-button-outlined-hover-state-layer-opacity: .08;--mat-button-outlined-label-text-color: #005cbb;--mat-button-outlined-outline-color: #74777f;--mat-button-outlined-pressed-state-layer-opacity: .12;--mat-button-outlined-ripple-color: color-mix(in srgb, #005cbb 12%, transparent);--mat-button-outlined-state-layer-color: #005cbb;--mat-button-protected-container-color: #faf9fd;--mat-button-protected-container-elevation-shadow: 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-button-protected-disabled-container-color: color-mix(in srgb, #1a1b1f 12%, transparent);--mat-button-protected-disabled-container-elevation-shadow: 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-button-protected-disabled-label-text-color: color-mix(in srgb, #1a1b1f 38%, transparent);--mat-button-protected-disabled-state-layer-color: #44474e;--mat-button-protected-focus-container-elevation-shadow: 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-button-protected-focus-state-layer-opacity: .12;--mat-button-protected-hover-container-elevation-shadow: 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-button-protected-hover-state-layer-opacity: .08;--mat-button-protected-label-text-color: #005cbb;--mat-button-protected-pressed-container-elevation-shadow: 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-button-protected-pressed-state-layer-opacity: .12;--mat-button-protected-ripple-color: color-mix(in srgb, #005cbb 12%, transparent);--mat-button-protected-state-layer-color: #005cbb;--mat-button-text-disabled-label-text-color: color-mix(in srgb, #1a1b1f 38%, transparent);--mat-button-text-disabled-state-layer-color: #44474e;--mat-button-text-focus-state-layer-opacity: .12;--mat-button-text-hover-state-layer-opacity: .08;--mat-button-text-label-text-color: #005cbb;--mat-button-text-pressed-state-layer-opacity: .12;--mat-button-text-ripple-color: color-mix(in srgb, #005cbb 12%, transparent);--mat-button-text-state-layer-color: #005cbb;--mat-button-tonal-container-color: #dae2f9;--mat-button-tonal-disabled-container-color: color-mix(in srgb, #1a1b1f 12%, transparent);--mat-button-tonal-disabled-label-text-color: color-mix(in srgb, #1a1b1f 38%, transparent);--mat-button-tonal-disabled-state-layer-color: #44474e;--mat-button-tonal-focus-state-layer-opacity: .12;--mat-button-tonal-hover-state-layer-opacity: .08;--mat-button-tonal-label-text-color: #3e4759;--mat-button-tonal-pressed-state-layer-opacity: .12;--mat-button-tonal-ripple-color: color-mix(in srgb, #3e4759 12%, transparent);--mat-button-tonal-state-layer-color: #3e4759}html{--mat-button-filled-touch-target-display: block;--mat-button-filled-container-height: 40px;--mat-button-outlined-container-height: 40px;--mat-button-outlined-touch-target-display: block;--mat-button-protected-touch-target-display: block;--mat-button-protected-container-height: 40px;--mat-button-text-touch-target-display: block;--mat-button-text-container-height: 40px;--mat-button-tonal-container-height: 40px;--mat-button-tonal-touch-target-display: block}html{--mat-button-filled-label-text-font: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif;--mat-button-filled-label-text-size: .875rem;--mat-button-filled-label-text-tracking: .006rem;--mat-button-filled-label-text-weight: 500;--mat-button-outlined-label-text-font: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif;--mat-button-outlined-label-text-size: .875rem;--mat-button-outlined-label-text-tracking: .006rem;--mat-button-outlined-label-text-weight: 500;--mat-button-protected-label-text-font: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif;--mat-button-protected-label-text-size: .875rem;--mat-button-protected-label-text-tracking: .006rem;--mat-button-protected-label-text-weight: 500;--mat-button-text-label-text-font: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif;--mat-button-text-label-text-size: .875rem;--mat-button-text-label-text-tracking: .006rem;--mat-button-text-label-text-weight: 500;--mat-button-tonal-label-text-font: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif;--mat-button-tonal-label-text-size: .875rem;--mat-button-tonal-label-text-tracking: .006rem;--mat-button-tonal-label-text-weight: 500}html{--mat-card-elevated-container-shape: 12px;--mat-card-filled-container-shape: 12px;--mat-card-outlined-container-shape: 12px;--mat-card-outlined-outline-width: 1px}html{--mat-card-elevated-container-color: #f4f3f6;--mat-card-elevated-container-elevation: 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-card-filled-container-color: #e3e2e6;--mat-card-filled-container-elevation: 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-card-outlined-container-color: #faf9fd;--mat-card-outlined-container-elevation: 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-card-outlined-outline-color: #c4c6d0;--mat-card-subtitle-text-color: #1a1b1f}html{--mat-card-subtitle-text-font: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif;--mat-card-subtitle-text-line-height: 1.5rem;--mat-card-subtitle-text-size: 1rem;--mat-card-subtitle-text-tracking: .009rem;--mat-card-subtitle-text-weight: 500;--mat-card-title-text-font: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif;--mat-card-title-text-line-height: 1.75rem;--mat-card-title-text-size: 1.375rem;--mat-card-title-text-tracking: 0;--mat-card-title-text-weight: 400}:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--app-color-ink);background:var(--app-color-canvas);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box}html{min-width:320px;scroll-behavior:smooth}body{min-width:320px;min-height:100vh;margin:0;line-height:1.65}button,a{font:inherit}a{color:var(--app-color-link);text-decoration-thickness:.08em;text-underline-offset:.2em}a:hover{color:var(--app-color-link-hover)}:focus-visible{outline:3px solid var(--app-brand-primary);outline-offset:3px}.portfolio-ui{--app-button-filled-bg: var(--app-brand-dark);--app-button-filled-label: #ffffff;--app-button-outline: var(--app-brand-dark);--mat-button-filled-container-color: var(--app-button-filled-bg);--mat-button-filled-label-text-color: var(--app-button-filled-label);--mat-button-filled-container-shape: var(--app-radius-sm);--mat-button-filled-label-text-weight: 650;--mat-button-outlined-label-text-color: var(--app-button-outline);--mat-button-outlined-outline-color: var(--app-button-outline);--mat-button-outlined-container-shape: var(--app-radius-sm);--mat-button-text-label-text-color: var(--app-color-link);--mat-card-outlined-container-color: var(--app-color-surface);--mat-card-outlined-outline-color: var(--app-color-border);--mat-card-outlined-container-shape: var(--app-radius-md);--mat-card-title-text-weight: 700;--mat-card-subtitle-text-color: var(--app-color-muted)}.skip-link{position:absolute;z-index:10;top:.5rem;left:.5rem;padding:.75rem 1rem;transform:translateY(-160%);border-radius:var(--app-radius-sm);background:var(--app-color-surface);color:var(--app-color-link)}.skip-link:focus{transform:translateY(0)}.page-container{width:min(100% - 2rem,68rem);margin-inline:auto}.page-section{margin-block:0 4rem}.eyebrow{margin:0 0 .75rem;color:var(--app-brand-dark);font-size:.8rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.section-heading{margin:0 0 1.25rem;color:var(--app-color-heading);font-size:clamp(1.55rem,3vw,2rem);line-height:1.2;letter-spacing:-.025em}.section-intro{max-width:65ch;color:var(--app-color-muted)}.content-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.empty-state{padding:clamp(1.25rem,4vw,2rem);border:1px solid var(--app-color-border);border-inline-start:4px solid var(--app-brand-primary);border-radius:var(--app-radius-md);background:var(--app-color-surface)}.empty-state p{max-width:64ch;margin:0}.empty-state p+p{margin-top:.5rem;color:var(--app-color-muted)}.action-row{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}.prose{max-width:70ch}.prose p{color:var(--app-color-muted)}@media(max-width:42rem){.page-section{margin-bottom:3rem}.content-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
