:root{--breakpoint-mobile: 768px;--breakpoint-tablet: 1920px;--color-peach-light: #FFCCBC;--color-peach-main: #FF8A65;--color-peach-dark: #D84315;--color-peach-glow: rgba(255, 138, 101, .6);--color-blue-light: #B3E5FC;--color-blue-main: #29B6F6;--color-blue-dark: #0277BD;--color-blue-glow: rgba(41, 182, 246, .6);--color-bg-dark: #050505;--color-bg-card: rgba(20, 20, 20, .6);--color-white: #FFFFFF;--color-gray: #A0A0A0;--color-black: #000000;--color-text-primary: #F5F5F5;--color-text-secondary: #B0B0B0;--color-text-muted: #757575;--color-text-on-dark: #FFFFFF;--color-link: #4FC3F7;--color-link-hover: #81D4FA;--spacing-xs: clamp(6px, 1vw, 8px);--spacing-sm: clamp(12px, 2vw, 16px);--spacing-md: clamp(18px, 3vw, 24px);--spacing-lg: clamp(24px, 4vw, 32px);--spacing-xl: clamp(36px, 6vw, 48px);--spacing-2xl: clamp(48px, 8vw, 64px);--radius-sm: 8px;--radius-md: 16px;--radius-lg: 24px;--shadow-soft: 0 8px 32px rgba(0, 0, 0, .1);--shadow-medium: 0 12px 40px rgba(0, 0, 0, .15);--shadow-strong: 0 16px 48px rgba(0, 0, 0, .2);--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--font-size-xs: clamp(.7rem, .8vw, .75rem);--font-size-sm: clamp(.8rem, .9vw, .875rem);--font-size-base: clamp(.9rem, 1vw, 1rem);--font-size-lg: clamp(1rem, 1.1vw, 1.125rem);--font-size-xl: clamp(1.1rem, 1.2vw, 1.25rem);--font-size-2xl: clamp(1.25rem, 1.5vw, 1.5rem);--font-size-3xl: clamp(1.5rem, 2vw, 2rem);--font-size-4xl: clamp(2rem, 2.5vw, 2.5rem);--z-background: 0;--z-content: 10;--z-navigation: 100;--transition-fast: .15s ease;--transition-base: .3s ease;--transition-slow: .5s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:1.6;color:var(--color-text-primary);background-color:var(--color-bg-dark);background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.05'/%3E%3C/svg%3E");min-height:100vh;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2}h1{font-size:var(--font-size-4xl)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}p{margin-bottom:1rem}a{color:inherit;text-decoration:none;transition:color var(--transition-base)}a:hover{color:var(--color-blue-dark)}:focus-visible{outline:2px solid var(--color-blue-main);outline-offset:2px}.container{max-width:1920px;margin:0 auto;padding:0 var(--spacing-lg)}.section{padding:var(--spacing-2xl) 0}.p-xs{padding:var(--spacing-xs)}.p-sm{padding:var(--spacing-sm)}.p-md{padding:var(--spacing-md)}.p-lg{padding:var(--spacing-lg)}.p-xl{padding:var(--spacing-xl)}.p-2xl{padding:var(--spacing-2xl)}.px-xs{padding-left:var(--spacing-xs);padding-right:var(--spacing-xs)}.px-sm{padding-left:var(--spacing-sm);padding-right:var(--spacing-sm)}.px-md{padding-left:var(--spacing-md);padding-right:var(--spacing-md)}.px-lg{padding-left:var(--spacing-lg);padding-right:var(--spacing-lg)}.px-xl{padding-left:var(--spacing-xl);padding-right:var(--spacing-xl)}.py-xs{padding-top:var(--spacing-xs);padding-bottom:var(--spacing-xs)}.py-sm{padding-top:var(--spacing-sm);padding-bottom:var(--spacing-sm)}.py-md{padding-top:var(--spacing-md);padding-bottom:var(--spacing-md)}.py-lg{padding-top:var(--spacing-lg);padding-bottom:var(--spacing-lg)}.py-xl{padding-top:var(--spacing-xl);padding-bottom:var(--spacing-xl)}.m-xs{margin:var(--spacing-xs)}.m-sm{margin:var(--spacing-sm)}.m-md{margin:var(--spacing-md)}.m-lg{margin:var(--spacing-lg)}.m-xl{margin:var(--spacing-xl)}.m-2xl{margin:var(--spacing-2xl)}.mx-xs{margin-left:var(--spacing-xs);margin-right:var(--spacing-xs)}.mx-sm{margin-left:var(--spacing-sm);margin-right:var(--spacing-sm)}.mx-md{margin-left:var(--spacing-md);margin-right:var(--spacing-md)}.mx-lg{margin-left:var(--spacing-lg);margin-right:var(--spacing-lg)}.mx-xl{margin-left:var(--spacing-xl);margin-right:var(--spacing-xl)}.my-xs{margin-top:var(--spacing-xs);margin-bottom:var(--spacing-xs)}.my-sm{margin-top:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.my-md{margin-top:var(--spacing-md);margin-bottom:var(--spacing-md)}.my-lg{margin-top:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.my-xl{margin-top:var(--spacing-xl);margin-bottom:var(--spacing-xl)}.gap-xs{gap:var(--spacing-xs)}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.gap-xl{gap:var(--spacing-xl)}.backdrop-blur{background:#ffffff80}@supports (backdrop-filter: blur(10px)){.backdrop-blur{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}}@supports not (backdrop-filter: blur(10px)){.backdrop-blur{background:#ffffffe6}}@supports not (display: grid){.grid-fallback{display:flex;flex-wrap:wrap}}@supports not (--css: variables){body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;color:#1a1a1a}}@supports not (clip-path: polygon(0 0)){.clip-path-fallback{overflow:hidden;border-radius:8px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}html{scroll-behavior:auto}}@media(hover:none)and (pointer:coarse){button,a,input,textarea,select{min-height:44px;min-width:44px}a:hover{color:inherit}a:active{color:var(--color-blue-dark)}button:hover{transform:none}button:active{transform:scale(.98)}*:hover{transition:none}*{-webkit-tap-highlight-color:rgba(129,212,250,.2);touch-action:manipulation}}.touch-target{min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center}.no-touch-callout{-webkit-touch-callout:none;user-select:none}.touch-device button,.touch-device a{cursor:pointer}.user-is-touching *:hover{transition:none!important}.touch-device{-webkit-overflow-scrolling:touch}.touch-device button,.touch-device .project-icon,.touch-device .filter-btn,.touch-device .social-link{-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:rgba(129,212,250,.2)}
