:root{--color-bg: #0a0a0a;--color-bg-card: #111111;--color-bg-surface: #161616;--color-primary: #c8f542;--color-primary-dark: #a8d828;--color-text: #e2e8f0;--color-text-muted: #94a3b8;--color-text-dim: #64748b;--color-border: rgba(255, 255, 255, .05);--color-border-light: rgba(255, 255, 255, .1);--navbar-height: 72px;--font-body: "Space Grotesk", -apple-system, BlinkMacSystemFont, sans-serif;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--transition: .2s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-body);background:var(--color-bg);color:var(--color-text);line-height:1.65;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh}a{color:inherit;text-decoration:none}img,video{max-width:100%;display:block}button{font-family:inherit;cursor:pointer}input,textarea,select{font-family:inherit;font-size:inherit}ul{list-style:none}.container{max-width:1280px;margin:0 auto;padding:0 1.5rem}@media(min-width:1024px){.container{padding:0 2.5rem}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1.5rem;border:none;border-radius:var(--radius-md);font-size:.9375rem;font-weight:600;text-decoration:none;cursor:pointer;transition:opacity var(--transition),transform var(--transition);white-space:nowrap}.btn:hover{opacity:.88;transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn--primary{background:var(--color-primary);color:var(--color-bg)}.btn--outline{background:transparent;color:var(--color-text);border:1px solid var(--color-border-light)}.btn--outline:hover{border-color:var(--color-primary);color:var(--color-primary);opacity:1}.btn--ghost{background:transparent;color:var(--color-text-muted)}.btn--ghost:hover{color:var(--color-primary);opacity:1}.section{padding:5rem 0}.section__header{text-align:center;margin-bottom:3rem}.section__header h2{font-size:clamp(1.75rem,4vw,2.75rem);font-weight:700;letter-spacing:-.03em;margin-bottom:.75rem}.section__header p{color:var(--color-text-muted);font-size:1.0625rem;max-width:560px;margin:0 auto}.card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;transition:border-color var(--transition),transform var(--transition)}.card:hover{border-color:var(--color-border-light);transform:translateY(-3px)}.error{color:#f87171;font-size:.875rem;padding:.75rem 1rem;background:#f8717114;border:1px solid rgba(248,113,113,.2);border-radius:var(--radius-md)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--color-bg)}::-webkit-scrollbar-thumb{background:var(--color-border-light);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-dim)}.material-symbols-outlined{font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24;-webkit-user-select:none;user-select:none;vertical-align:middle;line-height:1}@keyframes anim-fade-up{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes anim-fade-in{0%{opacity:0}to{opacity:1}}@keyframes anim-fade-in-left{0%{opacity:0;transform:translate(-22px)}to{opacity:1;transform:translate(0)}}@keyframes anim-fade-in-right{0%{opacity:0;transform:translate(22px)}to{opacity:1;transform:translate(0)}}@keyframes anim-float{0%,to{transform:translateY(0)}50%{transform:translateY(-18px)}}@keyframes anim-pulse-glow{0%,to{box-shadow:0 0 #c8f54200}50%{box-shadow:0 0 22px 4px #c8f54238}}@keyframes vt-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes vt-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-8px)}}::view-transition-old(root){animation:.26s cubic-bezier(.25,.46,.45,.94) both vt-out}::view-transition-new(root){animation:.4s cubic-bezier(.25,.46,.45,.94) both vt-in}.hero-badge{animation:anim-fade-up .55s cubic-bezier(.25,.46,.45,.94) 0ms both}.hero-title{animation:anim-fade-up .65s cubic-bezier(.25,.46,.45,.94) .1s both}.hero-sub{animation:anim-fade-up .65s cubic-bezier(.25,.46,.45,.94) .26s both}.hero-cta{animation:anim-fade-up .65s cubic-bezier(.25,.46,.45,.94) .4s both}.blob-float{animation:anim-float 7s ease-in-out infinite}.blob-float-delayed{animation:anim-float 9s ease-in-out 3.5s infinite}[appFadeUp]{opacity:0;transform:translateY(30px);transition:opacity .65s cubic-bezier(.25,.46,.45,.94),transform .65s cubic-bezier(.25,.46,.45,.94);will-change:transform,opacity}[appFadeUp].is-visible{opacity:1;transform:translateY(0);will-change:auto}.skill-bar{transform-origin:left center;transform:scaleX(0);transition:transform 1.2s cubic-bezier(.25,.46,.45,.94)}.skills-section.is-visible .skill-bar{transform:scaleX(1)}.skills-section.is-visible .skill-bar:nth-of-type(1){transition-delay:0ms}.skills-section.is-visible .skill-bar:nth-of-type(2){transition-delay:80ms}.skills-section.is-visible .skill-bar:nth-of-type(3){transition-delay:.16s}.skills-section.is-visible .skill-bar:nth-of-type(4){transition-delay:.24s}.skills-section.is-visible .skill-bar:nth-of-type(5){transition-delay:.32s}.skills-section.is-visible .skill-bar:nth-of-type(6){transition-delay:.4s}.skills-section.is-visible .skill-bar:nth-of-type(7){transition-delay:.48s}.skills-section.is-visible .skill-bar:nth-of-type(8){transition-delay:.56s}.card-hover{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.card-hover:hover{transform:translateY(-6px);box-shadow:0 24px 48px #00000080}button:active,a.btn-press:active{transform:scale(.97)!important}.arrow-icon{transition:transform .2s ease}.arrow-link:hover .arrow-icon{transform:translate(4px)}.pulse-glow{animation:anim-pulse-glow 3s ease-in-out infinite}.reading-progress{position:fixed;top:0;left:0;height:3px;background:var(--color-primary, #c8f542);z-index:9999;pointer-events:none;transition:width .1s linear}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}[appFadeUp]{opacity:1!important;transform:none!important;transition:none!important}.skill-bar{transform:scaleX(1)!important;transition:none!important}::view-transition-old(root),::view-transition-new(root){animation:none!important}}
