@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter Fallback;src:local("Arial");ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.00%;size-adjust:107.12%}.__className_f367f3{font-family:Inter,Inter Fallback;font-style:normal}.__variable_f367f3{--font-inter:"Inter","Inter Fallback"}@font-face{font-family:Great Vibes;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/dad5af6a451969b9-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Great Vibes;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/f751862dd005bbab-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Great Vibes;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/162bae04ee86dd69-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Great Vibes;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/67d172d8d0152ee1-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Great Vibes;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/536d9d896eaf4f3f-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Great Vibes;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/87069f06a4f1ee13-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Great Vibes Fallback;src:local("Arial");ascent-override:124.79%;descent-override:58.80%;line-gap-override:0.00%;size-adjust:68.19%}.__className_a10525{font-family:Great Vibes,Great Vibes Fallback;font-weight:400;font-style:normal}.__variable_a10525{--font-great-vibes:"Great Vibes","Great Vibes Fallback"}:root{--primitive-color-blue-50:#eff6ff;--primitive-color-blue-100:#dbeafe;--primitive-color-blue-300:#93c5fd;--primitive-color-blue-400:#60a5fa;--primitive-color-blue-500:#3b82f6;--primitive-color-blue-600:#2563eb;--primitive-color-blue-700:#1d4ed8;--primitive-color-teal-50:#f0fdfa;--primitive-color-teal-300:#5eead4;--primitive-color-teal-500:#14b8a6;--primitive-color-teal-600:#0d9488;--primitive-color-teal-700:#0f766e;--primitive-color-neutral-50:#fafaf9;--primitive-color-neutral-100:#f5f5f4;--primitive-color-neutral-200:#e7e5e4;--primitive-color-neutral-300:#d6d3d1;--primitive-color-neutral-400:#a8a29e;--primitive-color-neutral-500:#78716c;--primitive-color-neutral-600:#57534e;--primitive-color-neutral-700:#44403c;--primitive-color-neutral-800:#292524;--primitive-color-neutral-900:#1c1917;--primitive-color-neutral-950:#0a0a0a;--primitive-color-slate-100:#f1f5f9;--primitive-color-slate-300:#cbd5e1;--primitive-color-slate-400:#94a3b8;--primitive-color-slate-500:#64748b;--primitive-color-slate-600:#475569;--primitive-color-slate-700:#334155;--primitive-color-slate-800:#1e293b;--primitive-color-slate-900:#0f172a;--primitive-color-slate-950:#020617;--primitive-color-green-500:#10b981;--primitive-color-green-400:#34d399;--primitive-color-green-600:#059669;--primitive-color-amber-500:#f59e0b;--primitive-color-amber-400:#fbbf24;--primitive-color-amber-600:#d97706;--primitive-color-red-400:#f87171;--primitive-color-red-500:#ef4444;--primitive-color-red-600:#dc2626;--primitive-color-warm-100:#ffecd2;--primitive-color-warm-400:#FF9A9E;--primitive-color-warm-500:#ff8e53;--primitive-color-purple-400:#8b89ff;--primitive-color-purple-500:#a855f7;--primitive-color-purple-600:#7c3aed;--primitive-color-purple-700:#6d28d9;--primitive-color-rose-300:#fda4af;--primitive-color-rose-500:#f43f5e;--primitive-color-rose-600:#e11d48;--primitive-color-rose-700:#be123c;--primitive-space-0:0;--primitive-space-1:8px;--primitive-space-2:16px;--primitive-space-3:24px;--primitive-space-4:32px;--primitive-space-5:40px;--primitive-space-6:48px;--primitive-space-8:64px;--primitive-space-10:80px;--primitive-space-12:96px;--primitive-space-16:128px;--primitive-radius-sm:8px;--primitive-radius-md:12px;--primitive-radius-lg:16px;--primitive-radius-xl:20px;--primitive-radius-2xl:24px;--primitive-radius-full:980px;--primitive-duration-instant:100ms;--primitive-duration-fast:200ms;--primitive-duration-base:300ms;--primitive-duration-slow:500ms;--primitive-duration-slower:800ms;--primitive-ease-out:cubic-bezier(0.4,0,0.2,1);--primitive-ease-in:cubic-bezier(0.4,0,1,1);--primitive-ease-in-out:cubic-bezier(0.4,0,0.6,1);--primitive-ease-spring:cubic-bezier(0.34,1.56,0.64,1);--primitive-ease-smooth:cubic-bezier(0.25,0.1,0.25,1);--primitive-ease-linear:linear;--primitive-font-size-display-large:clamp(3.5rem,8vw,5.5rem);--primitive-font-size-display-medium:clamp(2.5rem,6vw,4rem);--primitive-font-size-display-small:clamp(2rem,5vw,3rem);--primitive-font-size-headline-large:clamp(2.5rem,5vw,3.5rem);--primitive-font-size-headline-medium:clamp(2rem,4vw,2.75rem);--primitive-font-size-headline-small:clamp(1.75rem,3.5vw,2.25rem);--primitive-font-size-title-large:1.75rem;--primitive-font-size-title-medium:1.375rem;--primitive-font-size-title-small:1.125rem;--primitive-font-size-body-large:1.125rem;--primitive-font-size-body-medium:1rem;--primitive-font-size-body-small:0.875rem;--primitive-font-size-label-large:1.0625rem;--primitive-font-size-label-medium:0.9375rem;--primitive-font-size-label-small:0.8125rem;--primitive-font-size-caption:0.75rem;--primitive-font-size-overline:0.75rem;--primitive-font-weight-light:300;--primitive-font-weight-regular:400;--primitive-font-weight-medium:500;--primitive-font-weight-semibold:600;--primitive-font-weight-bold:700;--primitive-line-height-tight:1.1;--primitive-line-height-snug:1.25;--primitive-line-height-normal:1.5;--primitive-line-height-relaxed:1.75;--primitive-line-height-loose:2;--primitive-shadow-xs:0 1px 2px rgba(0,0,0,0.05);--primitive-shadow-sm:0 1px 2px rgba(0,0,0,0.05);--primitive-shadow-base:0 4px 6px rgba(0,0,0,0.05),0 2px 4px rgba(0,0,0,0.03);--primitive-shadow-md:0 4px 20px rgba(0,0,0,0.08),0 2px 10px rgba(0,0,0,0.05);--primitive-shadow-lg:0 12px 40px rgba(0,0,0,0.12),0 6px 20px rgba(0,0,0,0.08);--primitive-shadow-xl:0 20px 60px rgba(0,0,0,0.15),0 10px 30px rgba(0,0,0,0.1);--primitive-container-narrow:960px;--primitive-container-default:1200px;--primitive-container-wide:1440px;--primitive-breakpoint-mobile:640px;--primitive-breakpoint-tablet:768px;--primitive-breakpoint-desktop:1200px;--primitive-touch-target-min:44px;--primitive-touch-target-mobile:48px;--color-primary:var(--primitive-color-blue-500);--color-primary-light:var(--primitive-color-blue-400);--color-primary-dark:var(--primitive-color-blue-600);--color-primary-50:var(--primitive-color-blue-50);--color-primary-100:var(--primitive-color-blue-100);--color-accent:var(--primitive-color-teal-500);--color-accent-light:var(--primitive-color-teal-300);--color-accent-dark:var(--primitive-color-teal-700);--color-accent-50:var(--primitive-color-teal-50);--color-neutral-50:var(--primitive-color-neutral-50);--color-neutral-100:var(--primitive-color-neutral-100);--color-neutral-200:var(--primitive-color-neutral-200);--color-neutral-300:var(--primitive-color-neutral-300);--color-neutral-400:var(--primitive-color-neutral-400);--color-neutral-500:var(--primitive-color-neutral-500);--color-neutral-600:var(--primitive-color-neutral-600);--color-neutral-700:var(--primitive-color-neutral-700);--color-neutral-800:var(--primitive-color-neutral-800);--color-neutral-900:var(--primitive-color-neutral-900);--color-neutral-950:var(--primitive-color-neutral-950);--color-success:var(--primitive-color-green-500);--color-success-light:var(--primitive-color-green-400);--color-success-dark:var(--primitive-color-green-600);--color-warning:var(--primitive-color-amber-500);--color-warning-light:var(--primitive-color-amber-400);--color-warning-dark:var(--primitive-color-amber-600);--color-error:var(--primitive-color-red-500);--color-error-light:var(--primitive-color-red-400);--color-error-dark:var(--primitive-color-red-600);--color-info:var(--primitive-color-blue-500);--color-info-light:var(--primitive-color-blue-400);--color-info-dark:var(--primitive-color-blue-600);--spacing-0:var(--primitive-space-0);--spacing-1:var(--primitive-space-1);--spacing-2:var(--primitive-space-2);--spacing-3:var(--primitive-space-3);--spacing-4:var(--primitive-space-4);--spacing-5:var(--primitive-space-5);--spacing-6:var(--primitive-space-6);--spacing-8:var(--primitive-space-8);--spacing-10:var(--primitive-space-10);--spacing-12:var(--primitive-space-12);--spacing-16:var(--primitive-space-16);--radius-sm:var(--primitive-radius-sm);--radius-md:var(--primitive-radius-md);--radius-lg:var(--primitive-radius-lg);--radius-xl:var(--primitive-radius-xl);--radius-2xl:var(--primitive-radius-2xl);--radius-full:var(--primitive-radius-full);--container-max-width:var(--primitive-container-default);--container-max-width-wide:var(--primitive-container-wide);--container-max-width-narrow:var(--primitive-container-narrow);--section-gap:var(--primitive-space-16);--section-gap-mobile:var(--primitive-space-12);--card-gap:var(--primitive-space-4);--card-gap-mobile:var(--primitive-space-3);--content-gap:var(--primitive-space-3);--content-gap-small:var(--primitive-space-2);--touch-target-min:var(--primitive-touch-target-min);--touch-target-mobile:var(--primitive-touch-target-mobile);--duration-instant:var(--primitive-duration-instant);--duration-fast:var(--primitive-duration-fast);--duration-base:var(--primitive-duration-base);--duration-slow:var(--primitive-duration-slow);--duration-slower:var(--primitive-duration-slower);--ease-out:var(--primitive-ease-out);--ease-in:var(--primitive-ease-in);--ease-in-out:var(--primitive-ease-in-out);--ease-spring:var(--primitive-ease-spring);--ease-smooth:var(--primitive-ease-smooth);--ease-linear:var(--primitive-ease-linear);--font-weight-light:var(--primitive-font-weight-light);--font-weight-regular:var(--primitive-font-weight-regular);--font-weight-medium:var(--primitive-font-weight-medium);--font-weight-semibold:var(--primitive-font-weight-semibold);--font-weight-bold:var(--primitive-font-weight-bold);--font-display-large:var(--primitive-font-size-display-large);--font-display-medium:var(--primitive-font-size-display-medium);--font-display-small:var(--primitive-font-size-display-small);--font-headline-large:var(--primitive-font-size-headline-large);--font-headline-medium:var(--primitive-font-size-headline-medium);--font-headline-small:var(--primitive-font-size-headline-small);--font-title-large:var(--primitive-font-size-title-large);--font-title-medium:var(--primitive-font-size-title-medium);--font-title-small:var(--primitive-font-size-title-small);--font-body-large:var(--primitive-font-size-body-large);--font-body-medium:var(--primitive-font-size-body-medium);--font-body-small:var(--primitive-font-size-body-small);--font-label-large:var(--primitive-font-size-label-large);--font-label-medium:var(--primitive-font-size-label-medium);--font-label-small:var(--primitive-font-size-label-small);--font-caption:var(--primitive-font-size-caption);--font-overline:var(--primitive-font-size-overline);--line-height-tight:var(--primitive-line-height-tight);--line-height-snug:var(--primitive-line-height-snug);--line-height-normal:var(--primitive-line-height-normal);--line-height-relaxed:var(--primitive-line-height-relaxed);--line-height-loose:var(--primitive-line-height-loose);--shadow-xs:var(--primitive-shadow-xs);--shadow-sm:var(--primitive-shadow-sm);--shadow-base:var(--primitive-shadow-base);--shadow-md:var(--primitive-shadow-md);--shadow-lg:var(--primitive-shadow-lg);--shadow-xl:var(--primitive-shadow-xl)}@media (max-width:768px){:root{--section-gap:var(--primitive-space-12);--card-gap:var(--primitive-space-3)}}@media (max-width:480px){:root{--section-gap:var(--primitive-space-10);--card-gap:var(--primitive-space-2);--content-gap:var(--primitive-space-2);--font-display-large:clamp(2rem,8vw,2.5rem);--font-display-medium:clamp(1.75rem,6vw,2rem);--font-headline-large:clamp(1.75rem,5vw,2rem);--font-headline-medium:clamp(1.5rem,4vw,1.75rem);--font-body-medium:var(--primitive-font-size-body-small);--font-body-small:var(--primitive-font-size-body-small)}}:root{--spacing-unit:8px;--spacing-0:0;--spacing-1:8px;--spacing-2:16px;--spacing-3:24px;--spacing-4:32px;--spacing-5:40px;--spacing-6:48px;--spacing-8:64px;--spacing-10:80px;--spacing-12:96px;--spacing-16:128px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-2xl:24px;--radius-full:980px;--container-max-width:1200px;--container-max-width-wide:1440px;--container-max-width-narrow:960px;--container-padding-x:clamp(16px,5vw,64px);--container-padding-y:clamp(32px,8vh,96px);--section-gap:var(--spacing-16);--section-gap-mobile:var(--spacing-12);--card-gap:var(--spacing-4);--card-gap-mobile:var(--spacing-3);--content-gap:var(--spacing-3);--content-gap-small:var(--spacing-2);--touch-target-min:44px;--touch-target-mobile:48px;--spacing-google-standard:72px;--breakpoint-mobile:479px;--breakpoint-tablet:767px;--breakpoint-tablet-lg:1023px;--breakpoint-desktop:1024px;--breakpoint-desktop-lg:1440px}@media (max-width:768px){:root{--section-gap:var(--spacing-12);--card-gap:var(--spacing-3)}}@media (max-width:480px){:root{--section-gap:var(--spacing-10);--card-gap:var(--spacing-2);--content-gap:var(--spacing-2)}}:root{--color-primary:#3b82f6;--color-primary-light:#60a5fa;--color-primary-dark:#2563eb;--color-primary-50:#eff6ff;--color-primary-100:#dbeafe;--color-accent:#14b8a6;--color-accent-light:#5eead4;--color-accent-dark:#0f766e;--color-accent-50:#f0fdfa;--color-neutral-50:#fafaf9;--color-neutral-100:#f5f5f4;--color-neutral-200:#e7e5e4;--color-neutral-300:#d6d3d1;--color-neutral-400:#a8a29e;--color-neutral-500:#78716c;--color-neutral-600:#57534e;--color-neutral-700:#44403c;--color-neutral-800:#292524;--color-neutral-900:#1c1917;--color-neutral-950:#0a0a0a;--color-success:#10b981;--color-success-light:#34d399;--color-success-dark:#059669;--color-warning:#f59e0b;--color-warning-light:#fbbf24;--color-warning-dark:#d97706;--color-error:#ef4444;--color-error-light:#f87171;--color-error-dark:#dc2626;--color-info:#3b82f6;--color-info-light:#60a5fa;--color-info-dark:#2563eb;--color-text-primary:#1a1a1a;--color-text-secondary:#666666;--color-text-tertiary:#999999;--color-text-disabled:#cccccc;--color-text-inverse:#ffffff;--color-bg-primary:#ffffff;--color-bg-secondary:#fafaf8;--color-bg-tertiary:#f5f5f7;--color-bg-elevated:#ffffff;--color-bg-overlay:rgba(0,0,0,0.6);--color-border-light:rgba(0,0,0,0.08);--color-border-medium:rgba(0,0,0,0.12);--color-border-dark:rgba(0,0,0,0.2);--gradient-primary:linear-gradient(135deg,#3b82f6,#2563eb);--gradient-primary-soft:linear-gradient(135deg,#60a5fa,#3b82f6);--gradient-accent:linear-gradient(135deg,#14b8a6,#0d9488);--gradient-accent-soft:linear-gradient(135deg,#5eead4,#14b8a6);--gradient-rainbow:linear-gradient(135deg,#667eea,#764ba2 50%,#f093fb);--gradient-rainbow-bright:linear-gradient(135deg,#fa709a,#fee140 50%,#30cfd0);--gradient-sunset:linear-gradient(135deg,#fa709a,#fee140);--gradient-tech:linear-gradient(135deg,#4facfe,#00f2fe);--shadow-xs:0 1px 2px rgba(0,0,0,0.05);--shadow-sm:0 1px 2px rgba(0,0,0,0.05);--shadow-base:0 4px 6px rgba(0,0,0,0.05),0 2px 4px rgba(0,0,0,0.03);--shadow-md:0 4px 20px rgba(0,0,0,0.08),0 2px 10px rgba(0,0,0,0.05);--shadow-lg:0 12px 40px rgba(0,0,0,0.12),0 6px 20px rgba(0,0,0,0.08);--shadow-xl:0 20px 60px rgba(0,0,0,0.15),0 10px 30px rgba(0,0,0,0.1);--shadow-card:0 2px 8px rgba(0,0,0,0.08);--shadow-dropdown:0 4px 12px rgba(0,0,0,0.15);--shadow-primary:0 4px 24px rgba(59,130,246,0.35),0 2px 12px rgba(59,130,246,0.25);--shadow-accent:0 4px 24px rgba(20,184,166,0.35),0 2px 12px rgba(20,184,166,0.25);--shadow-error:0 4px 24px rgba(248,113,113,0.35),0 2px 12px rgba(248,113,113,0.25);--opacity-disabled:0.4;--opacity-hover:0.8;--opacity-active:0.6;--color-accent-warm:#FF9A9E;--color-accent-warm-dark:#ff8e53;--color-accent-warm-light:#ffecd2;--color-accent-purple:#a855f7;--color-accent-purple-light:#8b89ff;--color-accent-purple-dark:#7c3aed;--color-accent-rose:#f43f5e;--color-accent-rose-light:#fda4af;--color-accent-rose-dark:#e11d48;--gradient-error:linear-gradient(135deg,#f87171,#ef4444);--gradient-error-hover:linear-gradient(135deg,#ef4444,#dc2626);--gradient-dark:linear-gradient(135deg,#1a1a1a,#374151);--gradient-dark-hover:linear-gradient(135deg,#374151,#4b5563);--gradient-bg-warm:linear-gradient(180deg,#F5F5F7 0%,#FAFAF8);--gradient-bg-cool:linear-gradient(180deg,#FAFAF8 0%,#F5F5F7);--gradient-timeline:linear-gradient(180deg,#14b8a6 0%,#3b82f6 50%,#a855f7);--gradient-skill:linear-gradient(90deg,#14b8a6,#3b82f6);--gradient-progress:linear-gradient(90deg,#3b82f6,#2563eb);--gradient-blob-accent:linear-gradient(135deg,#14b8a6,#0d9488 50%,#0f766e);--gradient-blob-primary:linear-gradient(135deg,#3b82f6,#2563eb 50%,#1d4ed8);--gradient-blob-purple:linear-gradient(135deg,#8b5cf6,#7c3aed 50%,#6d28d9);--gradient-blob-rose:linear-gradient(135deg,#f43f5e,#e11d48 50%,#be123c);--gradient-skill-icon:linear-gradient(135deg,#f0f9ff,#e0f2fe);--color-tag-accent-bg:#f0fdf4;--color-tag-primary-bg:#eff6ff;--color-tag-purple-bg:#faf5ff;--color-tag-rose-bg:#fff1f2;--color-decoration-indigo:#667eea;--shadow-warm:0 4px 24px rgba(255,154,158,0.35),0 2px 12px rgba(255,154,158,0.25);--shadow-purple:0 4px 24px rgba(168,85,247,0.35),0 2px 12px rgba(168,85,247,0.25);--shadow-rose:0 4px 24px rgba(244,63,94,0.35),0 2px 12px rgba(244,63,94,0.25);--shadow-card-hover:0 12px 40px rgba(0,0,0,0.12),0 6px 20px rgba(0,0,0,0.08);--shadow-btn-hover:0 8px 32px rgba(0,0,0,0.2),0 4px 16px rgba(0,0,0,0.15);--btn-primary-bg:linear-gradient(135deg,#3b82f6,#2563eb);--btn-primary-bg-hover:linear-gradient(135deg,#2563eb,#1d4ed8);--btn-primary-shadow:0 4px 14px rgba(59,130,246,0.35);--btn-primary-shadow-hover:0 8px 24px rgba(59,130,246,0.45);--btn-secondary-bg:linear-gradient(135deg,#14b8a6,#0d9488);--btn-secondary-bg-hover:linear-gradient(135deg,#0d9488,#0f766e);--btn-secondary-shadow:0 4px 14px rgba(20,184,166,0.35);--btn-secondary-shadow-hover:0 8px 24px rgba(20,184,166,0.45);--btn-chip-active-bg:linear-gradient(135deg,#3b82f6,#2563eb);--btn-chip-active-shadow:0 4px 12px rgba(59,130,246,0.3);--btn-ghost-underline:linear-gradient(90deg,rgba(59,130,246,0.8),rgba(20,184,166,0.8));--skeleton-bg:#f0f0f0;--skeleton-bg-highlight:#e0e0e0;--skeleton-gradient:linear-gradient(90deg,var(--skeleton-bg) 25%,var(--skeleton-bg-highlight) 50%,var(--skeleton-bg) 75%);--skeleton-bg-dark:#2a2a2a;--skeleton-bg-highlight-dark:#3a3a3a;--skeleton-gradient-dark:linear-gradient(90deg,var(--skeleton-bg-dark) 25%,var(--skeleton-bg-highlight-dark) 50%,var(--skeleton-bg-dark) 75%);--glass-bg:rgba(255,255,255,0.72);--glass-bg-dark:rgba(0,0,0,0.72);--glass-border:rgba(255,255,255,0.18);--glass-border-dark:rgba(255,255,255,0.08);--glass-blur:blur(20px) saturate(180%);--glass-blur-sm:blur(8px);--glass-blur-md:blur(12px);--glass-blur-lg:blur(20px);--glass-blur-xl:blur(30px) saturate(180%);--glass-shadow:0 8px 32px rgba(0,0,0,0.08);--hero-overlay:linear-gradient(180deg,rgba(15,23,42,0.2),rgba(15,23,42,0.35) 50%,rgba(15,23,42,0.5));--color-admin-bg:#0f172a;--color-admin-bg-secondary:#1e293b;--color-admin-surface:rgba(148,163,184,0.06);--color-admin-surface-elevated:rgba(148,163,184,0.10);--color-admin-surface-hover:rgba(148,163,184,0.14);--color-admin-border:rgba(148,163,184,0.12);--color-admin-border-light:rgba(148,163,184,0.08);--color-admin-border-medium:rgba(148,163,184,0.18);--color-admin-text-primary:#f1f5f9;--color-admin-text-secondary:#94a3b8;--color-admin-text-tertiary:#64748b;--color-admin-text-muted:#475569;--admin-glass-bg:rgba(30,41,59,0.6);--admin-glass-border:rgba(148,163,184,0.12);--admin-glass-blur:blur(20px) saturate(180%);--admin-glass-shadow:0 8px 32px rgba(15,23,42,0.5);--admin-glass-shadow-lg:0 16px 48px rgba(15,23,42,0.6);--shadow-admin-sm:0 2px 8px rgba(15,23,42,0.4);--shadow-admin-md:0 4px 16px rgba(15,23,42,0.5);--shadow-admin-lg:0 8px 32px rgba(15,23,42,0.6);--shadow-admin-card:0 4px 20px rgba(15,23,42,0.4),0 0 0 1px rgba(148,163,184,0.08);--shadow-admin-card-hover:0 8px 32px rgba(15,23,42,0.5),0 0 0 1px rgba(148,163,184,0.12);--admin-nav-active-bg:linear-gradient(135deg,rgba(59,130,246,0.25),rgba(59,130,246,0.15));--admin-nav-active-border:rgba(59,130,246,0.6);--admin-nav-hover-bg:rgba(148,163,184,0.08);--btn-danger-bg:linear-gradient(135deg,#ef4444,#dc2626);--btn-danger-bg-hover:linear-gradient(135deg,#dc2626,#b91c1c);--btn-danger-shadow:0 4px 14px rgba(239,68,68,0.35);--btn-danger-shadow-hover:0 8px 24px rgba(239,68,68,0.45);--btn-warning-bg:linear-gradient(135deg,#f59e0b,#d97706);--btn-warning-bg-hover:linear-gradient(135deg,#d97706,#b45309);--btn-warning-shadow:0 4px 14px rgba(245,158,11,0.35);--btn-warning-shadow-hover:0 8px 24px rgba(245,158,11,0.45);--btn-success-bg:linear-gradient(135deg,#10b981,#059669);--btn-success-bg-hover:linear-gradient(135deg,#059669,#047857);--btn-success-shadow:0 4px 14px rgba(16,185,129,0.35);--btn-success-shadow-hover:0 8px 24px rgba(16,185,129,0.45);--font-family-primary:var(--font-inter,"Inter"),-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-family-secondary:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Helvetica Neue",Arial,sans-serif;--font-family-serif:"Times New Roman","Georgia","Cambria",serif;--font-family-mono:ui-monospace,"Fira Code","Monaco","Menlo","Consolas","Courier New",monospace;--font-family-script:var(--font-great-vibes,"Great Vibes"),"Brush Script MT",cursive;--font-weight-light:300;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-display-large:clamp(3.5rem,8vw,5.5rem);--font-display-medium:clamp(2.5rem,6vw,4rem);--font-display-small:clamp(2rem,5vw,3rem);--font-display-weight:var(--font-weight-bold);--font-display-line-height:1.15;--font-display-letter-spacing:-0.03em;--font-headline-large:clamp(2.5rem,5vw,3.5rem);--font-headline-medium:clamp(2rem,4vw,2.75rem);--font-headline-small:clamp(1.75rem,3.5vw,2.25rem);--font-headline-weight:var(--font-weight-bold);--font-headline-line-height:1.1;--font-headline-letter-spacing:-0.02em;--font-title-large:1.75rem;--font-title-medium:1.375rem;--font-title-small:1.125rem;--font-title-weight:var(--font-weight-semibold);--font-title-line-height:1.25;--font-title-letter-spacing:-0.01em;--font-body-large:1.125rem;--font-body-medium:1rem;--font-body-small:0.875rem;--font-body-weight:var(--font-weight-regular);--font-body-weight-medium:var(--font-weight-medium);--font-body-line-height:1.6;--font-body-letter-spacing:0;--font-label-large:1.0625rem;--font-label-medium:0.9375rem;--font-label-small:0.8125rem;--font-label-weight:var(--font-weight-medium);--font-label-line-height:1.4;--font-label-letter-spacing:0.02em;--font-caption:0.75rem;--font-caption-weight:var(--font-weight-regular);--font-caption-line-height:1.4;--font-overline:0.75rem;--font-overline-weight:var(--font-weight-semibold);--font-overline-line-height:1.4;--font-overline-letter-spacing:0.1em;--font-overline-transform:uppercase;--line-height-tight:1.1;--line-height-snug:1.25;--line-height-normal:1.5;--line-height-relaxed:1.75;--line-height-loose:2}@media (max-width:768px){:root{--font-display-large:clamp(2.5rem,8vw,3.5rem);--font-display-medium:clamp(2rem,6vw,2.75rem);--font-headline-large:clamp(2rem,5vw,2.5rem);--font-headline-medium:clamp(1.75rem,4vw,2rem)}}@media (max-width:480px){:root{--font-display-large:clamp(2rem,8vw,2.5rem);--font-display-medium:clamp(1.75rem,6vw,2rem);--font-headline-large:clamp(1.75rem,5vw,2rem);--font-headline-medium:clamp(1.5rem,4vw,1.75rem);--font-body-medium:0.875rem;--font-body-small:0.875rem}}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-feature-settings:"kern" 1,"liga" 1;font-family:var(--font-family-secondary)}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-primary);font-weight:var(--font-weight-semibold);letter-spacing:-.02em}.font-serif{font-family:var(--font-family-serif)}.font-script{font-family:var(--font-family-script)}button,input,select,textarea{font-family:var(--font-family-secondary)}code,pre{font-family:var(--font-family-mono)}:root{--duration-instant:100ms;--duration-fast:200ms;--duration-base:300ms;--duration-slow:500ms;--duration-slower:800ms;--ease-out:cubic-bezier(0.4,0,0.2,1);--ease-in:cubic-bezier(0.4,0,1,1);--ease-in-out:cubic-bezier(0.4,0,0.6,1);--ease-spring:cubic-bezier(0.34,1.56,0.64,1);--ease-smooth:cubic-bezier(0.25,0.1,0.25,1);--ease-linear:linear;--transition-button:all var(--duration-fast) var(--ease-out);--transition-card:all var(--duration-slow) var(--ease-out);--transition-color:color var(--duration-base) var(--ease-out),background-color var(--duration-base) var(--ease-out);--transition-transform:transform var(--duration-base) var(--ease-out);--transition-opacity:opacity var(--duration-base) var(--ease-out);--delay-0:0ms;--delay-100:100ms;--delay-200:200ms;--delay-300:300ms;--delay-500:500ms;--delay-1000:1000ms;--gpu-acceleration:translateZ(0);--will-change-transform:transform,opacity}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes scaleOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.9)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes rotateIn{0%{opacity:0;transform:rotate(-10deg) scale(.9)}to{opacity:1;transform:rotate(0deg) scale(1)}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}@keyframes rippleExpand1{0%{transform:scale(.9);opacity:0}10%{opacity:.6}to{transform:scale(1.6);opacity:0}}@keyframes rippleExpand2{0%{transform:scale(.85);opacity:0}15%{opacity:.4}to{transform:scale(1.8);opacity:0}}@keyframes buttonGlow{0%,to{box-shadow:0 4px 24px rgba(59,130,246,.35),0 2px 12px rgba(59,130,246,.25)}50%{box-shadow:0 8px 40px rgba(59,130,246,.55),0 4px 20px rgba(59,130,246,.4),0 0 60px rgba(59,130,246,.3)}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media (max-width:768px){:root{--duration-slow:400ms;--duration-slower:600ms}}@keyframes pageEnter{0%{opacity:0}to{opacity:1}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}@keyframes popIn{0%{opacity:0;transform:scale(.8)}70%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@keyframes blurIn{0%{opacity:0;filter:blur(10px)}to{opacity:1;filter:blur(0)}}.page-enter{animation:pageEnter var(--duration-slower) var(--ease-out)}.stagger-1{animation-delay:.1s}.stagger-2{animation-delay:.2s}.stagger-3{animation-delay:.3s}.stagger-4{animation-delay:.4s}.stagger-5{animation-delay:.5s}.stagger-6{animation-delay:.6s}.scroll-animate{opacity:0;transform:translateY(20px);transition:opacity .5s var(--ease-out),transform .5s var(--ease-out)}.scroll-animate.visible{opacity:1;transform:translateY(0)}.scroll-animate-left{opacity:0;transform:translateX(-20px);transition:opacity .5s var(--ease-out),transform .5s var(--ease-out)}.scroll-animate-left.visible{opacity:1;transform:translateX(0)}.scroll-animate-right{opacity:0;transform:translateX(20px);transition:opacity .5s var(--ease-out),transform .5s var(--ease-out)}.scroll-animate-right.visible{opacity:1;transform:translateX(0)}.scroll-animate-scale{opacity:0;transform:scale(.95);transition:opacity .5s var(--ease-out),transform .5s var(--ease-out)}.scroll-animate-scale.visible{opacity:1;transform:scale(1)}@keyframes liquidGlass{0%{backdrop-filter:blur(10px) saturate(100%);background:rgba(255,255,255,.5)}50%{backdrop-filter:blur(20px) saturate(180%);background:rgba(255,255,255,.7)}to{backdrop-filter:blur(10px) saturate(100%);background:rgba(255,255,255,.5)}}@keyframes gentleFloat{0%,to{transform:translateY(0) rotate(0deg)}33%{transform:translateY(-8px) rotate(1deg)}66%{transform:translateY(-4px) rotate(-1deg)}}@keyframes breatheGlow{0%,to{box-shadow:0 0 20px rgba(96,165,250,.2)}50%{box-shadow:0 0 40px rgba(96,165,250,.4)}}@keyframes gradientFlow{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}@keyframes cardLift{0%{transform:translateY(0) perspective(1000px) rotateX(0);box-shadow:0 4px 20px rgba(0,0,0,.1)}to{transform:translateY(-8px) perspective(1000px) rotateX(2deg);box-shadow:0 20px 40px rgba(0,0,0,.15)}}@keyframes cursorBlink{0%,to{opacity:1}50%{opacity:0}}.animate-liquid-glass{animation:liquidGlass 4s var(--ease-smooth) infinite}.animate-float{animation:gentleFloat 6s var(--ease-smooth) infinite}.animate-breathe{animation:breatheGlow 3s var(--ease-smooth) infinite}.animate-gradient-flow{background-size:200% 200%;animation:gradientFlow 8s var(--ease-smooth) infinite}:root{--header-ease:cubic-bezier(0.4,0,0.2,1)}.header{transition:background-color .5s var(--header-ease),border-color .5s var(--header-ease),box-shadow .5s var(--header-ease),backdrop-filter .5s var(--header-ease)}.header-logo{font-family:var(--font-family-script,"Great Vibes"),"Brush Script MT","Lucida Handwriting",cursive;font-size:1.4rem;letter-spacing:.08em;line-height:1.6;padding:.25em 0;overflow:visible;transition:color .4s var(--header-ease),opacity .4s var(--header-ease)}.header-logo:hover{transform:scale(1.05);filter:brightness(1.1)}.header-transparent{background:rgba(0,0,0,.1);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.1)}.header-scrolled{background:rgba(255,255,255,.95);border-bottom:1px solid rgba(0,0,0,.08);box-shadow:0 1px 3px rgba(0,0,0,.05),0 1px 2px rgba(0,0,0,.03)}.header-scrolled,.header-scrolled-dark{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.header-scrolled-dark{background:rgba(0,0,0,.6);border-bottom:1px solid rgba(255,255,255,.1)}.header-nav-item{position:relative;padding:8px 16px;font-size:1.05rem;font-weight:450;letter-spacing:.08em;border-radius:24px;transition:transform .3s cubic-bezier(.4,0,.2,1),font-weight .3s cubic-bezier(.4,0,.2,1),letter-spacing .3s cubic-bezier(.4,0,.2,1)}.header-transparent .header-nav-item{color:rgba(255,255,255,.85)}.header-scrolled .header-nav-item{color:#555555}.header-scrolled-dark .header-nav-item{color:rgba(255,255,255,.85)}.header-nav-item:hover{animation:gradient-flow 3s linear infinite;transform:translateY(-2px) scale(1.02);font-weight:500;letter-spacing:.12em}.header-nav-item.active,.header-nav-item:hover{background:linear-gradient(90deg,#BC82F3,#F5B9EA,#8D9FFF,#AA6EEE,#FF6778,#FFBA71,#C686FF,#BC82F3,#F5B9EA,#8D9FFF);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.header-nav-item.active{animation:gradient-flow 4s linear infinite;font-weight:550;letter-spacing:.1em}@keyframes gradient-flow{0%{background-position:0 50%}to{background-position:200% 50%}}.header-nav-item:active{transform:translateY(0) scale(.98);transition:all .1s ease}@media (prefers-reduced-motion:reduce){.header-nav-item.active,.header-nav-item:hover{animation:none;transform:none}}.hamburger-button{position:relative;width:44px;height:44px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;background:transparent;border:none;cursor:pointer;z-index:60}.hamburger-button,.hamburger-line{transition:all .3s var(--header-ease)}.hamburger-line{width:24px;height:2px;background-color:currentColor;transform-origin:center}.header-transparent .hamburger-button{color:white}.header-scrolled .hamburger-button{color:#1f2937}.header-scrolled-dark .hamburger-button{color:white}.hamburger-button.active .hamburger-line:first-child{transform:translateY(8px) rotate(45deg)}.hamburger-button.active .hamburger-line:nth-child(2){opacity:0;transform:scaleX(0)}.hamburger-button.active .hamburger-line:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.mobile-menu{position:fixed;inset:0;z-index:50;pointer-events:none;opacity:0;transition:opacity .3s var(--header-ease)}.mobile-menu.active{pointer-events:auto;opacity:1}.mobile-menu-overlay{position:absolute;inset:0;background:rgba(0,0,0,.6);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);opacity:0;transition:opacity .3s var(--header-ease)}.mobile-menu.active .mobile-menu-overlay{opacity:1}.mobile-menu-panel{position:absolute;inset:0 0 auto 0;min-height:100vh;background:rgba(0,0,0,.85);backdrop-filter:blur(24px) saturate(120%);-webkit-backdrop-filter:blur(24px) saturate(120%);display:flex;flex-direction:column;padding:80px 24px 40px;transform:translateY(-100%);transition:transform .5s var(--header-ease)}.mobile-menu.active .mobile-menu-panel{transform:translateY(0)}.mobile-menu-close{position:absolute;top:20px;right:20px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.1);border:none;border-radius:50%;color:white;cursor:pointer;transition:all .3s var(--header-ease)}.mobile-menu-close:hover{background:rgba(255,255,255,.2);transform:rotate(90deg)}.mobile-menu-close:active{transform:rotate(90deg) scale(.95)}.mobile-menu-nav{flex:1;display:flex;flex-direction:column;justify-content:center;gap:8px;margin-top:40px}.mobile-menu-item{display:block;padding:16px 20px;font-family:var(--font-family-primary);font-size:1.5rem;font-weight:400;color:rgba(255,255,255,.7);text-decoration:none;border-radius:16px;position:relative;overflow:hidden;opacity:0;transform:translateY(-20px);animation:slideInFromTop .5s var(--header-ease) forwards;transition:all .3s var(--header-ease)}.mobile-menu-item:before{content:"";position:absolute;inset:0;border-radius:16px;background:linear-gradient(135deg,rgba(20,184,166,0),rgba(59,130,246,0) 50%,rgba(139,92,246,0));opacity:0;transition:all .4s ease}.mobile-menu-item:hover{color:white}.mobile-menu-item:hover:before{background:linear-gradient(135deg,rgba(20,184,166,.15),rgba(59,130,246,.1) 50%,rgba(139,92,246,.15));opacity:1}.mobile-menu-item.active{background:linear-gradient(135deg,rgba(20,184,166,.3),rgba(59,130,246,.25) 50%,rgba(139,92,246,.3));color:white;font-weight:500}.mobile-menu-item.active:hover{background:linear-gradient(135deg,rgba(20,184,166,.4),rgba(59,130,246,.35) 50%,rgba(139,92,246,.4))}.mobile-menu-footer{padding:24px 20px;text-align:center;border-top:1px solid rgba(255,255,255,.1);margin-top:auto}.mobile-menu-footer p{font-family:var(--font-family-script,"Great Vibes"),cursive;font-size:1.5rem}.mobile-menu-footer p:last-child{font-family:var(--font-family-secondary);font-size:.875rem;color:rgba(255,255,255,.5);margin-top:.5rem}@keyframes slideInFromTop{to{opacity:1;transform:translateY(0)}}@media (min-width:768px){.header-logo{font-size:1.8rem}.hamburger-button,.mobile-menu{display:none}}body.blog-article-active .header{background:rgba(255,255,255,.95)!important;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(0,0,0,.08);box-shadow:0 1px 3px rgba(0,0,0,.05),0 1px 2px rgba(0,0,0,.03)}body.blog-article-active .header-nav-item{color:#4b5563!important}body.blog-article-active .header-nav-item.active,body.blog-article-active .header-nav-item:hover{color:#1f2937!important}body.blog-article-active .hamburger-line{background-color:#1f2937}body.blog-article-dark-mode{background:#121212}body.blog-article-dark-mode .header{background:rgba(26,26,26,.95)!important;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.1);box-shadow:0 1px 3px rgba(0,0,0,.3),0 1px 2px rgba(0,0,0,.2)}body.blog-article-dark-mode .header-nav-item{color:rgba(255,255,255,.8)!important}body.blog-article-dark-mode .header-nav-item.active,body.blog-article-dark-mode .header-nav-item:hover{color:rgba(255,255,255,1)!important}body.blog-article-dark-mode .hamburger-line{background-color:rgba(255,255,255,.9)}body.blog-article-dark-mode .header-logo{color:white}body.blog-article-dark-mode .footer{--footer-bg:linear-gradient(180deg,#1a1a1a,#0f0f0f);--footer-text:rgba(255,255,255,0.7);--footer-text-hover:rgba(255,255,255,1);--footer-accent:#14b8a6;--footer-border:rgba(255,255,255,0.1);background:var(--footer-bg)!important;border-top-color:var(--footer-border)!important}body.blog-article-dark-mode .footer:before{background:linear-gradient(90deg,transparent,rgba(20,184,166,.5) 20%,rgba(59,130,246,.5) 50%,rgba(139,92,246,.5) 80%,transparent)}body.blog-article-dark-mode .footer-logo{color:#ffffff!important}body.blog-article-dark-mode .footer-logo:hover{color:var(--footer-accent)!important;text-shadow:0 0 20px rgba(20,184,166,.5)}body.blog-article-dark-mode .footer-tagline{color:rgba(255,255,255,.7)!important}body.blog-article-dark-mode .footer-skill-tag{background:rgba(255,255,255,.08)!important;border:1px solid rgba(255,255,255,.15)!important;color:rgba(255,255,255,.8)!important}body.blog-article-dark-mode .footer-skill-tag:hover{background:rgba(20,184,166,.2)!important;border-color:rgba(20,184,166,.5)!important;color:#14b8a6!important;box-shadow:0 0 12px rgba(20,184,166,.3)}body.blog-article-dark-mode .footer-nav-title{color:rgba(255,255,255,.9)!important}body.blog-article-dark-mode .footer-nav-link{color:rgba(255,255,255,.7)!important}body.blog-article-dark-mode .footer-nav-link:hover{color:#ffffff!important}body.blog-article-dark-mode .footer-social-link{color:rgba(255,255,255,.7)!important}body.blog-article-dark-mode .footer-social-link:hover{color:#ffffff!important}body.blog-article-dark-mode .footer-social-icon{background:rgba(255,255,255,.1)!important;border:1px solid rgba(255,255,255,.15)!important;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}body.blog-article-dark-mode .footer-social-icon svg{color:rgba(255,255,255,.9)!important}body.blog-article-dark-mode .footer-social-link[data-social=github]:hover .footer-social-icon{background:#ffffff!important;border-color:#ffffff!important;box-shadow:0 4px 16px rgba(255,255,255,.2)}body.blog-article-dark-mode .footer-social-link[data-social=github]:hover .footer-social-icon svg{color:#24292f!important}body.blog-article-dark-mode .footer-social-link[data-social=email]:hover .footer-social-icon{background:#14b8a6!important;border-color:#14b8a6!important;box-shadow:0 4px 16px rgba(20,184,166,.4)}body.blog-article-dark-mode .footer-social-link[data-social=email]:hover .footer-social-icon svg{color:#ffffff!important}body.blog-article-dark-mode .footer-bottom{border-top-color:rgba(255,255,255,.1)!important}body.blog-article-dark-mode .footer-copyright,body.blog-article-dark-mode .footer-links a{color:rgba(255,255,255,.5)!important}body.blog-article-dark-mode .footer-links a:hover{color:#14b8a6!important}body.blog-article-dark-mode .footer-divider{color:rgba(255,255,255,.3)!important}body.blog-article-dark-mode .footer-built{color:rgba(255,255,255,.5)!important}.footer{--footer-ease:cubic-bezier(0.4,0,0.2,1);--footer-bg:linear-gradient(180deg,#f8fafc,#f1f5f9);--footer-text:#64748b;--footer-text-hover:#0f172a;--footer-accent:#14b8a6;--footer-border:rgba(0,0,0,0.06);background:var(--footer-bg);border-top:1px solid var(--footer-border);position:relative;overflow:hidden}.footer:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(20,184,166,.3) 20%,rgba(59,130,246,.3) 50%,rgba(139,92,246,.3) 80%,transparent)}.footer-content{max-width:1280px;margin:0 auto;padding:48px 24px 32px}.footer-main{display:grid;grid-template-columns:1fr;gap:40px;margin-bottom:40px}@media (min-width:768px){.footer-main{grid-template-columns:2fr 1fr 1fr;gap:48px}}.footer-brand{max-width:400px}.footer-logo{font-family:var(--font-family-script,"Great Vibes"),"Brush Script MT",cursive;font-size:2rem;letter-spacing:.08em;color:#0f172a;margin-bottom:12px;display:inline-block;transition:all .3s var(--footer-ease)}.footer-logo:hover{transform:scale(1.02);color:var(--footer-accent)}.footer-tagline{font-size:.9375rem;line-height:1.7;color:var(--footer-text);margin-bottom:20px}.footer-skills{display:flex;flex-wrap:wrap;gap:8px}.footer-skill-tag{padding:6px 14px;font-size:.75rem;font-weight:500;color:#475569;background:rgba(255,255,255,.8);border:1px solid rgba(0,0,0,.06);border-radius:20px;transition:all .3s var(--footer-ease);cursor:default}.footer-skill-tag:hover{background:rgba(20,184,166,.1);border-color:rgba(20,184,166,.3);color:var(--footer-accent);transform:translateY(-2px)}.footer-nav-title{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:#0f172a;margin-bottom:20px}.footer-nav-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px 24px}@media (min-width:768px){.footer-nav-list{grid-template-columns:1fr;gap:12px}}.footer-nav-link{display:inline-flex;align-items:center;gap:8px;font-size:.875rem;color:var(--footer-text);text-decoration:none;transition:all .3s var(--footer-ease)}.footer-nav-link:before{content:"";width:0;height:2px;background:var(--footer-accent);border-radius:1px;transition:width .3s var(--footer-ease)}.footer-nav-link:hover{color:var(--footer-text-hover);transform:translateX(4px)}.footer-nav-link:hover:before{width:16px}.footer-social-list{display:flex;flex-direction:column;gap:16px}.footer-social-link{gap:12px;font-size:.875rem;color:var(--footer-text);text-decoration:none}.footer-social-icon,.footer-social-link{display:flex;align-items:center;transition:all .3s var(--footer-ease)}.footer-social-icon{width:40px;height:40px;justify-content:center;background:rgba(255,255,255,.8);border:1px solid rgba(0,0,0,.06);border-radius:50%}.footer-social-icon svg{width:18px;height:18px;transition:all .3s var(--footer-ease)}.footer-social-link:hover{color:var(--footer-text-hover)}.footer-social-link:hover .footer-social-icon{transform:translateY(-3px);box-shadow:0 4px 12px rgba(0,0,0,.1)}.footer-social-link[data-social=github]:hover .footer-social-icon{background:#24292f;border-color:#24292f}.footer-social-link[data-social=github]:hover .footer-social-icon svg{color:white}.footer-social-link[data-social=email]:hover .footer-social-icon{background:var(--footer-accent);border-color:var(--footer-accent)}.footer-social-link[data-social=email]:hover .footer-social-icon svg{color:white}.footer-social-text{transition:transform .3s var(--footer-ease)}.footer-social-link:hover .footer-social-text{transform:translateX(4px)}.footer-bottom{padding-top:24px;border-top:1px solid var(--footer-border);display:flex;flex-direction:column;align-items:center;gap:16px;font-size:.75rem;color:#64748b}@media (min-width:768px){.footer-bottom{flex-direction:row;justify-content:space-between}}.footer-copyright{text-align:center}.footer-links{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px}.footer-links a{color:#64748b;text-decoration:none;transition:color .3s var(--footer-ease)}.footer-links a:hover{color:var(--footer-accent)}.footer-divider{color:#cbd5e1}.footer-built{color:#64748b}.back-to-top{position:fixed;bottom:24px;left:24px;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#14b8a6,#3b82f6);color:white;border:none;border-radius:50%;cursor:pointer;z-index:50;opacity:0;visibility:hidden;transform:translateY(20px);transition:all .3s var(--footer-ease);box-shadow:0 4px 16px rgba(20,184,166,.3)}.back-to-top.visible{opacity:1;visibility:visible;transform:translateY(0)}.back-to-top:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(20,184,166,.4)}.back-to-top:active{transform:translateY(-2px)}.back-to-top svg{width:24px;height:24px;transition:transform .3s var(--footer-ease)}.back-to-top:hover svg{transform:translateY(-2px)}@media (min-width:640px){.footer-content{padding:56px 32px 36px}}@media (min-width:1024px){.footer-content{padding:64px 48px 40px}.back-to-top{bottom:32px;left:32px}}@media (max-width:768px){.back-to-top{bottom:20px;left:20px}}@media (max-width:480px){.back-to-top{bottom:16px;left:16px;width:44px;height:44px}}@media (prefers-reduced-motion:reduce){.back-to-top,.footer-logo,.footer-nav-link,.footer-skill-tag,.footer-social-icon,.footer-social-link{transition:none}}