:root{font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh}#root{width:100%;min-height:100vh}:root{--color-primary-50: #fdfcff;--color-primary-100: #faf9ff;--color-primary-200: #f5f3ff;--color-primary-300: #ebe6fa;--color-primary-400: #c8b8e6;--color-primary-500: #967BB6;--color-primary-600: #7c629c;--color-primary-700: #6b5487;--color-primary-800: #5B4E7B;--color-primary-900: #4a3f64;--color-secondary-50: #F8F6FF;--color-secondary-100: #f3f0ff;--color-secondary-200: #E6E6FA;--color-secondary-300: #d5d5f0;--color-secondary-400: #c0b8db;--color-secondary-500: #9A8C98;--color-secondary-600: #827589;--color-secondary-700: #6a5e72;--color-secondary-800: #524a5b;--color-secondary-900: #3a3544;--color-neutral-50: #f9fafb;--color-neutral-100: #f3f4f6;--color-neutral-200: #e5e7eb;--color-neutral-300: #d1d5db;--color-neutral-400: #9ca3af;--color-neutral-500: #6b7280;--color-neutral-600: #4b5563;--color-neutral-700: #374151;--color-neutral-800: #1f2937;--color-neutral-900: #111827;--color-success-50: #f0fdf4;--color-success-500: #22c55e;--color-success-600: #047857;--color-success-700: #047857;--color-error-50: #fef2f2;--color-error-500: #ef4444;--color-error-600: #dc2626;--color-warning-50: #fffbeb;--color-warning-500: #f59e0b;--color-warning-600: #b45309;--color-warning-700: #92400e;--color-info-50: #eff6ff;--color-info-500: #3b82f6;--color-info-600: #2563eb;--space-0: 0;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--space-32: 8rem;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--font-serif: "Georgia", "Times New Roman", serif;--font-mono: "SF Mono", "Monaco", "Consolas", "Liberation Mono", "Courier New", monospace;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--text-6xl: 3.75rem;--font-thin: 100;--font-light: 300;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--font-extrabold: 800;--leading-none: 1;--leading-tight: 1.25;--leading-snug: 1.375;--leading-normal: 1.5;--leading-relaxed: 1.625;--leading-loose: 2;--border-width-0: 0;--border-width-1: 1px;--border-width-2: 2px;--border-width-4: 4px;--border-width-8: 8px;--radius-none: 0;--radius-xs: .125rem;--radius-sm: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-2xl: 1rem;--radius-full: 9999px;--shadow-xs: 0 1px 2px 0 rgba(91, 78, 123, .05);--shadow-sm: 0 1px 3px 0 rgba(91, 78, 123, .1), 0 1px 2px 0 rgba(91, 78, 123, .06);--shadow-md: 0 4px 6px -1px rgba(91, 78, 123, .1), 0 2px 4px -1px rgba(91, 78, 123, .06);--shadow-lg: 0 10px 15px -3px rgba(91, 78, 123, .1), 0 4px 6px -2px rgba(91, 78, 123, .05);--shadow-xl: 0 20px 25px -5px rgba(91, 78, 123, .1), 0 10px 10px -5px rgba(91, 78, 123, .04);--shadow-2xl: 0 25px 50px -12px rgba(91, 78, 123, .25);--shadow-elevation-1: 0 2px 4px rgba(91, 78, 123, .05);--shadow-elevation-2: 0 4px 8px rgba(91, 78, 123, .08);--shadow-elevation-3: 0 8px 16px rgba(91, 78, 123, .1);--shadow-elevation-4: 0 12px 24px rgba(91, 78, 123, .12);--shadow-elevation-5: 0 16px 32px rgba(91, 78, 123, .15);--shadow-hover-lift: 0 8px 24px rgba(91, 78, 123, .2);--shadow-inset-subtle: inset 0 2px 4px rgba(91, 78, 123, .06);--shadow-inset-medium: inset 0 4px 8px rgba(91, 78, 123, .08);--shadow-inset-deep: inset 0 6px 12px rgba(91, 78, 123, .1);--z-0: 0;--z-10: 10;--z-20: 20;--z-30: 30;--z-40: 40;--z-50: 50;--z-modal: 1000;--z-popover: 1010;--z-tooltip: 1020;--z-toast: 1030;--z-background: -1;--z-base: 1;--z-content: 10;--z-overlay: 20;--z-floating: 30;--z-navbar: 50;--z-maximum: 100;--glass-bg-light: rgba(255, 255, 255, .7);--glass-bg-medium: rgba(255, 255, 255, .5);--glass-bg-dark: rgba(255, 255, 255, .3);--glass-bg-darker: rgba(255, 255, 255, .2);--glass-bg-darkest: rgba(255, 255, 255, .1);--glass-border: rgba(255, 255, 255, .3);--glass-border-light: rgba(255, 255, 255, .2);--glass-blur-sm: 5px;--glass-blur-md: 10px;--glass-blur-lg: 20px;--transition-none: none;--transition-all: all .15s ease-in-out;--transition-default: all .15s ease-in-out;--transition-fast: all .1s ease-in-out;--transition-slow: all .3s ease-in-out;--breakpoint-xs: 480px;--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--breakpoint-xxl: 1200px;--breakpoint-2xl: 1536px;--breakpoint-3xl: 1920px;--breakpoint-4k: 2560px;--full-width: 100%;--navbar-top-offset: 20px;--navbar-side-spacing: 40px;--navbar-height: 80px;--project-card-image-height: 200px;--profile-image-size: 250px;--profile-image-size-mobile: 150px;--profile-image-size-lg: 280px;--profile-image-size-xl: 320px;--container-xs: 100%;--container-sm: 100%;--container-md: 90%;--container-lg: 85%;--container-xl: 80%;--container-2xl: 75%;--container-3xl: 70%;--container-4k: 65%;--container-with-margin: calc(var(--full-width) - var(--navbar-side-spacing));--max-width-sm: 640px;--max-width-md: 768px;--max-width-lg: 1024px;--max-width-xl: 1280px;--max-width-2xl: 1440px;--max-width-3xl: 1600px;--max-width-4k: 1800px;--content-narrow: 640px;--content-medium: 768px;--content-wide: 900px;--content-full: 1140px;--content-expanded: 1440px;--margin-xs: 5%;--margin-sm: 4%;--margin-md: 3%;--margin-lg: 5%;--margin-xl: 7.5%;--margin-2xl: 10%;--margin-3xl: 12.5%;--margin-4k: 15%;--margin-min-xs: 16px;--margin-min-sm: 20px;--margin-min-md: 24px;--margin-min-lg: 32px;--margin-min-xl: 48px;--margin-min-2xl: 64px;--margin-min-3xl: 80px;--margin-min-4k: 120px;--gutter-xs: 1rem;--gutter-sm: 1.5rem;--gutter-md: 2rem;--gutter-lg: 2.5rem;--gutter-xl: 3rem;--gutter-2xl: 4rem;--btn-padding-x: var(--space-5);--btn-padding-y: var(--space-3);--btn-border-radius: var(--radius-md);--btn-font-weight: var(--font-medium);--btn-transition: var(--transition-default);--card-padding: var(--space-6);--card-border-radius: var(--radius-xl);--card-shadow: 0 2px 8px rgba(91, 78, 123, .1);--card-bg: var(--color-secondary-50);--input-padding-x: var(--space-4);--input-padding-y: var(--space-3);--input-border-radius: var(--radius-md);--input-border-width: var(--border-width-1);--input-border-color: var(--color-neutral-300);--input-focus-border-color: var(--color-primary-500);--nav-height: 4rem;--nav-padding: var(--space-4);--content-max-width: 1200px;--section-padding-y: var(--space-20);--section-padding-x: var(--space-6);--color-text-primary: var(--color-neutral-900);--color-text-secondary: var(--color-neutral-700);--color-text-muted: var(--color-neutral-600);--color-text-disabled: var(--color-neutral-400);--color-text-inverse: var(--color-secondary-50);--color-bg-primary: var(--color-secondary-50);--color-bg-secondary: var(--color-secondary-100);--color-bg-tertiary: var(--color-secondary-200);--color-bg-inverse: var(--color-primary-800);--color-bg-overlay: rgba(91, 78, 123, .5);--color-border-default: var(--color-secondary-200);--color-border-light: var(--color-secondary-100);--color-border-dark: var(--color-secondary-300);--color-link: var(--color-primary-500);--color-link-hover: var(--color-primary-600);--color-link-visited: var(--color-primary-700);--color-white-alpha-10: rgba(248, 246, 255, .1);--color-white-alpha-50: rgba(248, 246, 255, .5);--color-white-alpha-90: rgba(248, 246, 255, .9);--color-black-alpha-10: rgba(17, 24, 39, .1);--color-black-alpha-50: rgba(17, 24, 39, .5);--color-black-alpha-90: rgba(17, 24, 39, .9);--primary-teal: var(--color-primary-500);--primary-teal-dark: var(--color-primary-600);--primary-blue: var(--color-primary-800);--primary-blue-light: var(--color-primary-700);--accent-green: var(--color-secondary-500);--accent-green-light: var(--color-secondary-400);--accent-purple: var(--color-primary-500);--accent-purple-light: var(--color-primary-400);--text-dark: var(--color-neutral-900);--text-medium: var(--color-neutral-600);--text-light: var(--color-neutral-500);--bg-light: var(--color-secondary-50);--bg-white: var(--color-secondary-50)}.container{width:var(--container-xs);max-width:var(--full-width);margin-left:auto;margin-right:auto;padding-left:var(--margin-min-xs);padding-right:var(--margin-min-xs)}.container--narrow{max-width:var(--content-narrow)!important}.container--medium{max-width:var(--content-medium)!important}.container--wide{max-width:var(--content-wide)!important}.container--full{max-width:var(--content-full)!important}.container--expanded{max-width:var(--content-expanded)!important}.container--fluid{max-width:var(--full-width);padding-left:max(var(--margin-min-xs),var(--margin-xs));padding-right:max(var(--margin-min-xs),var(--margin-xs))}@media (min-width: 480px){.container{width:var(--container-sm);padding-left:var(--margin-min-sm);padding-right:var(--margin-min-sm)}.container--fluid{padding-left:max(var(--margin-min-sm),var(--margin-sm));padding-right:max(var(--margin-min-sm),var(--margin-sm))}}@media (min-width: 640px){.container{width:var(--container-md);max-width:var(--max-width-sm);padding-left:var(--margin-min-md);padding-right:var(--margin-min-md)}.container--fluid{padding-left:max(var(--margin-min-md),var(--margin-md));padding-right:max(var(--margin-min-md),var(--margin-md))}}@media (min-width: 768px){.container{width:var(--container-lg);max-width:var(--max-width-md);padding-left:var(--margin-min-lg);padding-right:var(--margin-min-lg)}.container--fluid{padding-left:max(var(--margin-min-lg),var(--margin-lg));padding-right:max(var(--margin-min-lg),var(--margin-lg))}}@media (min-width: 1024px){.container{width:var(--container-xl);max-width:var(--max-width-lg)}}@media (min-width: 1280px){.container{width:var(--container-2xl);max-width:var(--max-width-xl);padding-left:var(--margin-min-xl);padding-right:var(--margin-min-xl)}.container--fluid{padding-left:max(var(--margin-min-xl),var(--margin-xl));padding-right:max(var(--margin-min-xl),var(--margin-xl))}}@media (min-width: 1536px){.container{width:var(--container-3xl);max-width:var(--max-width-2xl);padding-left:var(--margin-min-2xl);padding-right:var(--margin-min-2xl)}.container--fluid{padding-left:max(var(--margin-min-2xl),var(--margin-2xl));padding-right:max(var(--margin-min-2xl),var(--margin-2xl))}}@media (min-width: 1920px){.container{max-width:var(--max-width-3xl);padding-left:var(--margin-min-3xl);padding-right:var(--margin-min-3xl)}.container--expanded{max-width:var(--max-width-3xl)!important}.container--fluid{padding-left:max(var(--margin-min-3xl),var(--margin-3xl));padding-right:max(var(--margin-min-3xl),var(--margin-3xl))}}@media (min-width: 2560px){.container{width:var(--container-4k);max-width:var(--max-width-4k);padding-left:var(--margin-min-4k);padding-right:var(--margin-min-4k)}.container--expanded{max-width:var(--max-width-4k)!important}.container--fluid{padding-left:max(var(--margin-min-4k),var(--margin-4k));padding-right:max(var(--margin-min-4k),var(--margin-4k))}}.section{padding-top:var(--space-16);padding-bottom:var(--space-16)}@media (min-width: 768px){.section{padding-top:var(--space-20);padding-bottom:var(--space-20)}}@media (min-width: 1280px){.section{padding-top:var(--space-24);padding-bottom:var(--space-24)}}.row{display:flex;flex-wrap:wrap;margin-left:calc(var(--gutter-xs) * -.5);margin-right:calc(var(--gutter-xs) * -.5)}.row>*{padding-left:calc(var(--gutter-xs) * .5);padding-right:calc(var(--gutter-xs) * .5)}@media (min-width: 768px){.row{margin-left:calc(var(--gutter-md) * -.5);margin-right:calc(var(--gutter-md) * -.5)}.row>*{padding-left:calc(var(--gutter-md) * .5);padding-right:calc(var(--gutter-md) * .5)}}@media (min-width: 1280px){.row{margin-left:calc(var(--gutter-lg) * -.5);margin-right:calc(var(--gutter-lg) * -.5)}.row>*{padding-left:calc(var(--gutter-lg) * .5);padding-right:calc(var(--gutter-lg) * .5)}}.max-w-sm{max-width:var(--max-width-sm)}.max-w-md{max-width:var(--max-width-md)}.max-w-lg{max-width:var(--max-width-lg)}.max-w-xl{max-width:var(--max-width-xl)}.max-w-2xl{max-width:var(--max-width-2xl)}.max-w-3xl{max-width:var(--max-width-3xl)}.max-w-4k{max-width:var(--max-width-4k)}.mx-auto{margin-left:auto;margin-right:auto}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app{scroll-behavior:smooth;height:100vh;overflow-y:scroll;overflow-x:hidden}.section{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;padding:5rem 0;box-sizing:border-box;overflow:hidden}.section.blog-section{min-height:auto;align-items:flex-start;padding:8rem 0}#home,#about,#blog,#contact{padding-top:80px}.section.section-alt{position:relative;z-index:var(--z-content)}.container{max-width:1200px;margin:0 auto;padding:0 2rem;width:100%}.section-title{font-size:2.5rem;text-align:center;margin-bottom:3rem;color:var(--text-dark);display:flex;align-items:center;justify-content:center;gap:1rem;position:relative}.title-icon{font-size:2.5rem}.section-content{font-size:1.15rem;line-height:1.9;color:var(--text-medium);max-width:800px;margin:0 auto;text-align:center;font-weight:400}.block{display:block}.inline{display:inline}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.items-start{align-items:flex-start}.items-center{align-items:center}.items-end{align-items:flex-end}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}.m-0{margin:var(--space-0)}.m-1{margin:var(--space-1)}.m-2{margin:var(--space-2)}.m-4{margin:var(--space-4)}.m-6{margin:var(--space-6)}.m-auto{margin:auto}.mt-0{margin-top:var(--space-0)}.mt-2{margin-top:var(--space-2)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mt-8{margin-top:var(--space-8)}.mb-0{margin-bottom:var(--space-0)}.mb-2{margin-bottom:var(--space-2)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.mb-8{margin-bottom:var(--space-8)}.p-0{padding:var(--space-0)}.p-1{padding:var(--space-1)}.p-2{padding:var(--space-2)}.p-4{padding:var(--space-4)}.p-6{padding:var(--space-6)}.pt-0{padding-top:var(--space-0)}.pt-2{padding-top:var(--space-2)}.pt-4{padding-top:var(--space-4)}.pt-6{padding-top:var(--space-6)}.pb-0{padding-bottom:var(--space-0)}.pb-2{padding-bottom:var(--space-2)}.pb-4{padding-bottom:var(--space-4)}.pb-6{padding-bottom:var(--space-6)}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-xs{font-size:var(--text-xs)}.text-sm{font-size:var(--text-sm)}.text-base{font-size:var(--text-base)}.text-lg{font-size:var(--text-lg)}.text-xl{font-size:var(--text-xl)}.text-2xl{font-size:var(--text-2xl)}.font-light{font-weight:var(--font-light)}.font-normal{font-weight:var(--font-normal)}.font-medium{font-weight:var(--font-medium)}.font-semibold{font-weight:var(--font-semibold)}.font-bold{font-weight:var(--font-bold)}.text-primary{color:var(--color-primary-500)}.text-secondary{color:var(--color-secondary-500)}.text-neutral-600{color:var(--color-neutral-600)}.text-neutral-700{color:var(--color-neutral-700)}.text-neutral-900{color:var(--color-neutral-900)}.bg-primary{background-color:var(--color-primary-500)}.bg-secondary{background-color:var(--color-secondary-500)}.bg-neutral-50{background-color:var(--color-neutral-50)}.bg-neutral-100{background-color:var(--color-neutral-100)}.bg-white{background-color:#fff}.rounded-none{border-radius:var(--radius-none)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-full{border-radius:var(--radius-full)}.border{border:var(--border-width-1) solid var(--color-neutral-300)}.border-t{border-top:var(--border-width-1) solid var(--color-neutral-300)}.border-b{border-bottom:var(--border-width-1) solid var(--color-neutral-300)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.w-full{width:100%}.w-auto{width:auto}.h-full{height:100%}.h-auto{height:auto}.h-screen{height:100vh}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-scroll{overflow:scroll}.z-0{z-index:var(--z-0)}.z-10{z-index:var(--z-10)}.z-20{z-index:var(--z-20)}.z-30{z-index:var(--z-30)}.z-40{z-index:var(--z-40)}.z-50{z-index:var(--z-50)}.transition{transition:var(--transition-default)}.transition-fast{transition:var(--transition-fast)}.transition-slow{transition:var(--transition-slow)}.cursor-pointer{cursor:pointer}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}@media (max-width: 768px){.container{padding:0 1rem}.section{padding:3rem 0}.section-title,.title-icon{font-size:2rem}}.section-with-hero-background{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--color-secondary-500) 0%,var(--color-primary-800) 100%)}.section-layers{position:absolute;inset:0;overflow:hidden;z-index:0}.section-layer{position:absolute;inset:0;will-change:transform}.section-layer-1{background:linear-gradient(135deg,var(--color-secondary-500) 0%,var(--color-primary-800) 100%);opacity:.8;transform-origin:center}.section-layer-2{background:radial-gradient(ellipse at top right,rgba(150,123,182,.3) 0%,transparent 60%),radial-gradient(ellipse at bottom left,rgba(91,78,123,.2) 0%,transparent 60%);opacity:.6}.section-layer-pattern{background-image:repeating-linear-gradient(45deg,transparent,transparent 35px,rgba(255,255,255,.05) 35px,rgba(255,255,255,.05) 70px);animation:slide 20s linear infinite;opacity:.3}@keyframes slide{0%{transform:translate(0)}to{transform:translate(100px)}}.section-content-overlay{position:relative;z-index:10;background:var(--glass-bg-light);backdrop-filter:blur(var(--glass-blur-md));-webkit-backdrop-filter:blur(var(--glass-blur-md));border-radius:var(--radius-2xl);box-shadow:var(--shadow-elevation-3);border:1px solid var(--glass-border-light);margin:var(--space-8);padding:var(--space-12)}.hero-style-title{font-size:var(--text-4xl);font-weight:var(--font-bold);color:var(--text-dark);background:linear-gradient(135deg,var(--color-primary-800) 0%,var(--color-primary-500) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;line-height:var(--leading-tight);text-shadow:0 2px 4px rgba(91,78,123,.1);margin-bottom:var(--space-6);text-align:center}.hero-style-subtitle{font-size:var(--text-2xl);font-weight:var(--font-normal);color:var(--color-primary-700);opacity:.9;margin-bottom:var(--space-4);text-align:center}.hero-style-description{font-size:var(--text-lg);line-height:var(--leading-relaxed);color:var(--text-medium);opacity:.95;font-weight:var(--font-normal);text-align:justify;max-width:var(--content-medium);margin:0 auto var(--space-8)}@media (max-width: 768px){.section-content-overlay{margin:var(--space-4);padding:var(--space-8)}.hero-style-title{font-size:var(--text-3xl)}.hero-style-subtitle{font-size:var(--text-xl)}.hero-style-description{font-size:var(--text-base);text-align:center}}.navbar{position:relative;z-index:var(--z-navbar);display:flex;justify-content:center;box-sizing:border-box;margin-top:var(--navbar-top-offset)}.navbar-inner{background:var(--glass-bg-light);backdrop-filter:blur(20px) saturate(150%);-webkit-backdrop-filter:blur(20px) saturate(150%);border:1px solid var(--glass-border-light);border-radius:var(--radius-2xl);transition:all .3s ease;box-sizing:border-box;box-shadow:var(--shadow-elevation-2);width:100%;max-width:100%}.navbar-inner:hover{box-shadow:var(--shadow-elevation-3);filter:brightness(1.02)}@media (max-width: 768px){.navbar{margin-top:0}.navbar-inner{width:var(--full-width);max-width:var(--full-width);border-radius:0;border-left:none;border-right:none}}.nav-container{padding:0 var(--space-8);display:flex;align-items:center;justify-content:space-between;height:var(--navbar-height)}.nav-logo{font-size:1.8rem;font-weight:700;text-decoration:none;background:linear-gradient(135deg,var(--color-primary-500) 0%,var(--color-secondary-500) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;transition:transform .3s ease}.nav-logo:hover{transform:scale(1.05)}.nav-menu{display:flex;list-style:none;gap:2rem;margin:0;padding:0}.nav-link{text-decoration:none;color:var(--color-primary-800);font-weight:500;position:relative;transition:all .3s ease;padding:10px 20px;border-radius:var(--radius-lg)}.nav-link:hover{color:var(--color-primary-500);background:#967bb61a;transform:translateY(-2px)}.nav-link:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background:linear-gradient(90deg,var(--color-primary-500) 0%,var(--color-secondary-500) 100%);transition:width .3s ease}.nav-link:hover:after{width:100%}.mobile-menu-toggle{display:none;flex-direction:column;cursor:pointer;gap:4px;padding:8px;border:none;background:none}.hamburger-line{width:24px;height:3px;background:var(--color-primary-500);transition:all .3s ease;border-radius:2px}.hamburger-line.open:nth-child(1){transform:rotate(45deg) translate(7px,7px)}.hamburger-line.open:nth-child(2){opacity:0}.hamburger-line.open:nth-child(3){transform:rotate(-45deg) translate(7px,-7px)}.menu-overlay{position:fixed;top:80px;left:0;width:100%;height:calc(100vh - 80px);background:#f8f6fffa;backdrop-filter:blur(20px);transform:translateY(-100%);transition:transform .3s ease;z-index:999;box-sizing:border-box}.menu-overlay.open{transform:translateY(0)}.menu-overlay .nav-menu{flex-direction:column;align-items:center;justify-content:flex-start;padding:2rem;gap:2rem;height:100%}.menu-overlay .nav-link{font-size:1.2rem;padding:1rem}@media (max-width: 768px){.nav-menu{position:fixed;top:80px;left:0;width:100%;height:calc(100vh - 80px);background:#f8f6fffa;backdrop-filter:blur(20px);flex-direction:column;align-items:center;justify-content:flex-start;padding:2rem;gap:2rem;transform:translate(-100%);transition:transform .3s ease;z-index:999;box-sizing:border-box}.nav-menu.active{transform:translate(0)}.nav-menu .nav-link{font-size:1.2rem;padding:1rem}.mobile-menu-toggle{display:flex}.nav-container{padding:0 1rem}}.btn{padding:.75rem 2rem;border-radius:50px;text-decoration:none;font-weight:600;transition:all .3s ease;display:inline-flex;align-items:center;gap:.5rem;cursor:pointer;border:none;font-family:inherit;font-size:inherit}.btn-icon{font-size:1.2rem}.btn-primary{background:linear-gradient(135deg,var(--color-primary-500) 0%,var(--color-primary-700) 100%);color:var(--color-secondary-50);box-shadow:var(--shadow-elevation-2)}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-hover-lift);background:linear-gradient(135deg,var(--color-primary-700) 0%,var(--color-primary-500) 100%)}.btn-secondary{background-color:var(--color-secondary-50);color:var(--color-primary-500);box-shadow:var(--shadow-elevation-1);border:2px solid var(--color-primary-500)}.btn-secondary:hover{transform:translateY(-2px);box-shadow:var(--shadow-elevation-3);background-color:var(--color-primary-500);color:var(--color-secondary-50)}.btn-link{background:none;color:var(--color-primary-500);padding:0;border-radius:0;font-weight:600;position:relative}.btn-link:hover{color:var(--color-primary-700);transform:translate(5px)}.btn-link:after{content:"→";margin-left:5px;transition:transform .3s ease}.btn-link:hover:after{transform:translate(3px)}.btn{padding:var(--btn-padding-y) var(--btn-padding-x);border-radius:var(--btn-border-radius);text-decoration:none;display:inline-flex;align-items:center;gap:var(--space-2);font-weight:var(--btn-font-weight);font-size:var(--text-base);border:var(--border-width-1) solid transparent;cursor:pointer;transition:var(--btn-transition);line-height:var(--leading-none)}.btn-primary{background:linear-gradient(135deg,var(--color-primary-500) 0%,var(--color-secondary-500) 100%);color:var(--color-secondary-50);border-color:transparent}.btn-primary:hover{transform:translateY(-1px);box-shadow:var(--shadow-lg);filter:brightness(1.05)}.btn-secondary{background:var(--color-neutral-100);color:var(--color-neutral-700);border-color:var(--color-neutral-300)}.btn-secondary:hover{background:var(--color-neutral-200);border-color:var(--color-neutral-400);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-link{background:none;color:var(--color-primary-500);border:none;padding:5px 10px;text-decoration:underline}.btn-link:hover{color:var(--color-primary-700)}.btn-loading{opacity:.7;cursor:not-allowed}.btn-icon{font-size:18px}.card{background:var(--card-bg);border-radius:var(--card-border-radius);overflow:hidden;box-shadow:var(--card-shadow);transition:var(--transition-default);border:var(--border-width-1) solid var(--color-neutral-200)}.card.editable-project-card{overflow:visible}.card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);border-color:var(--color-neutral-300)}.card[role=button]{cursor:pointer}.card img{width:100%;max-height:40vh;min-height:200px;object-fit:contain;background:var(--color-secondary-50)}.card-content{padding:var(--card-padding)}@media (max-width: 768px){.card img{max-height:50vh}}@media (max-width: 480px){.card img{max-height:60vh}}.card-content h3{margin:0 0 var(--space-3) 0;color:var(--color-neutral-900);font-size:var(--text-xl);font-weight:var(--font-semibold)}.card-content p{color:var(--color-neutral-600);line-height:var(--leading-relaxed);margin:0 0 var(--space-4) 0;font-size:var(--text-base)}.card-link{color:var(--color-primary-500);text-decoration:none;font-weight:500;transition:color .3s ease}.card-link:hover{color:var(--color-primary-700)}.loading-state{text-align:center;padding:40px 20px;color:var(--color-neutral-500)}.error-state{text-align:center;padding:40px 20px;color:var(--color-error-500)}.error-boundary-default{text-align:center;padding:40px 20px;background:var(--color-neutral-50);border-radius:10px;margin:20px}.error-boundary-default h2{color:var(--color-error-500);margin-bottom:20px}.error-boundary-default details{text-align:left;margin-top:20px;padding:20px;background:var(--color-secondary-50);border-radius:5px;border:1px solid var(--color-neutral-300)}.mock-data-notice,.error-notice{background:var(--color-warning-50);border:1px solid var(--color-warning-300);color:var(--color-warning-700);padding:10px 15px;border-radius:5px;margin-bottom:20px;text-align:center}.error-notice{background:var(--color-error-50);border-color:var(--color-error-300);color:var(--color-error-700)}.no-posts-message{text-align:center;color:var(--color-neutral-500);font-style:italic;padding:40px 20px}.error-display{background:var(--color-error-50);border:1px solid var(--color-error-300);border-radius:8px;padding:16px;margin:16px 0}.error-content{display:flex;align-items:flex-start;gap:12px}.error-icon{font-size:20px;margin-top:2px}.error-text{flex:1}.error-text h4{margin:0 0 8px;color:var(--color-error-600);font-size:16px}.error-text p{margin:0 0 12px;color:var(--color-warning-700);line-height:1.5}.error-details{margin-top:12px}.error-details summary{cursor:pointer;color:var(--color-error-600);font-weight:500;margin-bottom:8px}.error-details pre{background:var(--color-neutral-50);padding:8px;border-radius:4px;font-size:12px;color:var(--color-neutral-800);white-space:pre-wrap;margin:8px 0}.error-actions{display:flex;gap:8px;margin-top:12px}.inline-error{display:flex;align-items:center;gap:8px;color:var(--color-error-600);font-size:14px;margin:8px 0}.inline-error .error-icon{font-size:16px}.error-toast{position:fixed;top:20px;right:20px;background:var(--color-error-500);color:var(--color-secondary-50);border-radius:8px;box-shadow:var(--shadow-lg);z-index:1000;animation:slideInRight .3s ease-out}.toast-content{display:flex;align-items:center;gap:12px;padding:12px 16px;max-width:400px}.toast-icon{font-size:18px}.toast-message{flex:1;font-size:14px;line-height:1.4}.toast-dismiss{background:none;border:none;color:var(--color-secondary-50);cursor:pointer;font-size:16px;padding:4px;opacity:.8;transition:opacity .2s}.toast-dismiss:hover{opacity:1}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.dirty-indicator{color:var(--color-warning-600);font-size:var(--text-sm);font-weight:var(--font-normal);font-style:italic}.autosave-indicator{color:var(--color-success-600);font-size:var(--text-sm);font-weight:var(--font-normal);font-style:italic;animation:fadeIn .3s ease-in-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.text-error{color:var(--color-error-600)}.text-success{color:var(--color-success-600)}.text-warning{color:var(--color-warning-600)}.text-muted{color:var(--color-neutral-500)}.bg-error{background-color:var(--color-error-50)}.bg-success{background-color:var(--color-success-50)}.bg-warning{background-color:var(--color-warning-50)}.border-error{border-color:var(--color-error-300)}.border-success{border-color:var(--color-success-300)}.border-warning{border-color:var(--color-warning-300)}.loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-6)}.loading-spinner__icon{position:relative}.loading-spinner__circle{border-radius:var(--radius-full);border:var(--border-width-2) solid var(--color-neutral-200);border-top-color:var(--color-primary-500);animation:spin 1s linear infinite}.loading-spinner--small .loading-spinner__circle{width:var(--space-4);height:var(--space-4)}.loading-spinner--medium .loading-spinner__circle{width:var(--space-6);height:var(--space-6)}.loading-spinner--large .loading-spinner__circle{width:var(--space-8);height:var(--space-8)}.loading-spinner__message{color:var(--color-neutral-600);font-size:var(--text-sm);font-weight:var(--font-medium);text-align:center}.loading-spinner--small .loading-spinner__message{font-size:var(--text-xs)}.loading-spinner--large .loading-spinner__message{font-size:var(--text-base)}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-color-scheme: dark){.loading-spinner__circle{border-color:var(--color-neutral-700);border-top-color:var(--color-primary-400)}.loading-spinner__message{color:var(--color-neutral-300)}}.skeleton-loader{background:linear-gradient(90deg,var(--color-neutral-200) 25%,var(--color-neutral-100) 50%,var(--color-neutral-200) 75%);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite;position:relative;overflow:hidden}.skeleton-loader--text{border-radius:var(--radius-sm)}.skeleton-loader--rectangular{border-radius:var(--radius-md)}.skeleton-loader--circular{border-radius:var(--radius-full)}.skeleton-loader-group{display:flex;flex-direction:column;gap:var(--space-2)}@keyframes skeleton-loading{0%{background-position:-200% 0}to{background-position:200% 0}}@media (prefers-color-scheme: dark){.skeleton-loader{background:linear-gradient(90deg,var(--color-neutral-700) 25%,var(--color-neutral-600) 50%,var(--color-neutral-700) 75%);background-size:200% 100%}}@media (prefers-reduced-motion: reduce){.skeleton-loader{animation:none;background:var(--color-neutral-200)}@media (prefers-color-scheme: dark){.skeleton-loader{background:var(--color-neutral-700)}}}.modal-overlay{position:fixed;inset:0;background-color:var(--color-black-alpha-50);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--space-4);backdrop-filter:blur(4px)}.modal{background-color:var(--color-bg-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-2xl);max-height:90vh;overflow:hidden;display:flex;flex-direction:column;animation:modal-enter .2s ease-out}.modal--small{width:100%;max-width:400px}.modal--medium{width:100%;max-width:600px}.modal--large{width:100%;max-width:800px}.modal__header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-6);border-bottom:var(--border-width-1) solid var(--color-neutral-200);flex-shrink:0}.modal__title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--color-neutral-900);margin:0}.modal__close{background:none;border:none;font-size:var(--text-2xl);color:var(--color-neutral-500);cursor:pointer;padding:var(--space-1);line-height:1;transition:var(--transition-default);border-radius:var(--radius-sm);width:var(--space-8);height:var(--space-8);display:flex;align-items:center;justify-content:center}.modal__close:hover{color:var(--color-neutral-700);background-color:var(--color-neutral-100)}.modal__close:focus{outline:var(--border-width-2) solid var(--color-primary-500);outline-offset:var(--border-width-2)}.modal__content{padding:var(--space-6);overflow-y:auto;flex:1}@keyframes modal-enter{0%{opacity:0;transform:scale(.95) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}@media (max-width: 768px){.modal-overlay{padding:var(--space-2)}.modal--small,.modal--medium,.modal--large{max-width:none;width:100%;max-height:95vh}.modal__header,.modal__content{padding:var(--space-4)}.modal__title{font-size:var(--text-lg)}}@media (max-width: 480px){.modal-overlay{padding:var(--space-1)}.modal{border-radius:var(--radius-lg);max-height:98vh}}@media (prefers-color-scheme: dark){.modal{background-color:var(--color-neutral-800)}.modal__header{border-bottom-color:var(--color-neutral-700)}.modal__title{color:var(--color-neutral-100)}.modal__close{color:var(--color-neutral-400)}.modal__close:hover{color:var(--color-neutral-200);background-color:var(--color-neutral-700)}}@media (prefers-reduced-motion: reduce){.modal{animation:none}}.markdown-content{line-height:1.6}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4,.markdown-content h5,.markdown-content h6{margin:1.5rem 0 1rem!important;font-weight:600;color:var(--text-dark);position:relative}.markdown-content h1{font-size:2rem;margin-top:2rem!important}.markdown-content h2{font-size:1.75rem;margin-top:1.8rem!important}.markdown-content h3{font-size:1.5rem;margin-top:1.5rem!important}.markdown-content h4{font-size:1.25rem}.markdown-content h5{font-size:1.1rem}.markdown-content h6{font-size:1rem}.markdown-content h1:first-child,.markdown-content h2:first-child,.markdown-content h3:first-child{margin-top:0!important}.markdown-content p{margin:1rem 0!important;line-height:1.7!important;display:block!important;text-align:justify}.markdown-content ul,.markdown-content ol{margin:1rem 0!important;padding-left:1.5rem!important}.markdown-content li{margin:.3rem 0!important;line-height:1.6!important}.markdown-content blockquote{margin:1.5rem 0!important;padding:1rem 1.5rem!important;border-left:4px solid var(--primary-teal)!important;background:var(--color-white-alpha-10)!important;font-style:italic!important;border-radius:0 8px 8px 0!important}.markdown-content blockquote p{margin:.5rem 0!important}.markdown-content code{background:var(--color-neutral-100)!important;padding:.2em .4em!important;border-radius:4px!important;font-family:var(--font-mono)!important;font-size:.9em!important;color:var(--primary-teal)!important}.markdown-content pre{background:var(--color-neutral-50)!important;padding:1rem!important;border-radius:8px!important;overflow-x:auto!important;margin:1.5rem 0!important;border:1px solid var(--color-neutral-200)!important}.markdown-content pre code{background:none!important;padding:0!important;color:inherit!important}.markdown-content a{color:var(--primary-teal)!important;text-decoration:underline!important;font-weight:500!important;transition:color .2s ease!important}.markdown-content a:hover{color:var(--primary-teal-dark)!important}.markdown-content hr{border:none!important;border-top:2px solid var(--color-neutral-200)!important;margin:2rem 0!important}.markdown-content strong{font-weight:600!important;color:var(--text-dark)!important}.markdown-content em{font-style:italic!important}.markdown-content img{width:100%!important;max-height:40vh!important;object-fit:contain!important;background:var(--color-bg-primary)!important;display:block!important;margin:1rem auto!important}@media (max-width: 768px){.markdown-content img{max-height:50vh!important}}@media (max-width: 480px){.markdown-content img{max-height:60vh!important}}.sr-only,.sr-only-focusable{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sr-only-focusable:focus{position:static;width:auto;height:auto;padding:.5rem 1rem;margin:0;overflow:visible;clip:auto;white-space:normal;background-color:var(--color-primary);color:var(--color-white);text-decoration:none;border-radius:4px;z-index:1000}.skip-links{position:absolute;top:-100px;left:0;width:100%;z-index:1000}.skip-link{position:absolute;top:-100px;left:0;padding:.75rem 1rem;background-color:var(--color-primary);color:var(--color-white);text-decoration:none;font-weight:600;border-radius:0 0 4px;transition:top .3s ease}.skip-link:focus{top:0;outline:2px solid var(--color-white);outline-offset:2px}:focus{outline:2px solid var(--color-primary);outline-offset:2px}button:focus,a:focus,input:focus,select:focus,textarea:focus,[tabindex]:focus{outline:2px solid var(--color-primary);outline-offset:2px}.btn:focus{outline:2px solid var(--color-primary);outline-offset:2px;box-shadow:0 0 0 4px rgba(var(--color-primary-rgb),.1)}@media (prefers-contrast: high){:focus{outline:3px solid;outline-offset:2px}.btn:focus{outline:3px solid;outline-offset:2px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.modal,.dialog,.overlay{position:fixed;top:0;left:0;width:100%;height:100%;z-index:1000}.modal[aria-hidden=true],.dialog[aria-hidden=true],.overlay[aria-hidden=true]{display:none}.text-contrast-low{color:var(--color-text-secondary)}.text-contrast-high{color:var(--color-text-primary);font-weight:600}[aria-busy=true]{cursor:wait}.loading-spinner{display:inline-block;width:1rem;height:1rem;border:2px solid var(--color-border);border-top:2px solid var(--color-primary);border-radius:50%;animation:spin 1s linear infinite}@media (prefers-reduced-motion: reduce){.loading-spinner{animation:none;border-top-color:var(--color-primary)}}.form-field{margin-bottom:1rem}.form-label{display:block;margin-bottom:.25rem;font-weight:600;color:var(--color-text-primary)}.form-label[aria-required=true]:after{content:" *";color:var(--color-error)}.form-input{width:100%;padding:.5rem;border:1px solid var(--color-border);border-radius:4px;font-size:1rem}.form-input:focus{border-color:var(--color-primary);outline:2px solid var(--color-primary);outline-offset:2px}.form-input[aria-invalid=true]{border-color:var(--color-error)}.form-error{color:var(--color-error);font-size:.875rem;margin-top:.25rem}.form-description{color:var(--color-text-secondary);font-size:.875rem;margin-top:.25rem}.status-message{padding:1rem;border-radius:4px;margin:1rem 0}.status-message[role=status]{background-color:var(--color-info-bg);color:var(--color-info-text);border:1px solid var(--color-info-border)}.status-message[role=alert]{background-color:var(--color-error-bg);color:var(--color-error-text);border:1px solid var(--color-error-border)}.keyboard-navigation{position:relative}.keyboard-navigation [role=menuitem]:focus,.keyboard-navigation [role=tab]:focus,.keyboard-navigation [role=option]:focus{background-color:var(--color-primary);color:var(--color-white)}@media print{.skip-links,.sr-only,.sr-only-focusable{display:none!important}a:after{content:" (" attr(href) ")";font-size:.8em;color:var(--color-text-secondary)}a[href^="#"]:after{content:""}}.error-page{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:var(--space-8);background:linear-gradient(135deg,var(--color-neutral-50) 0%,var(--color-primary-50) 100%)}.error-page-content{text-align:center;max-width:600px;width:100%;background:var(--color-bg-primary);padding:var(--space-12);border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl)}.error-page-icon{font-size:4rem;margin-bottom:var(--space-6);opacity:.8}.error-page h1{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--color-neutral-800);margin-bottom:var(--space-4);line-height:var(--leading-tight)}.error-page-message{font-size:var(--text-lg);color:var(--color-neutral-600);line-height:var(--leading-relaxed);margin-bottom:var(--space-8)}.error-page-actions{display:flex;gap:var(--space-4);justify-content:center;flex-wrap:wrap}.error-boundary-default{display:flex;align-items:center;justify-content:center;min-height:400px;padding:var(--space-8);background:var(--color-error-50);border:1px solid var(--color-error-500);border-radius:var(--radius-lg);margin:var(--space-4)}.error-boundary-content{text-align:center;max-width:500px;width:100%}.error-boundary-content h2{font-size:var(--text-2xl);font-weight:var(--font-semibold);color:var(--color-error-600);margin-bottom:var(--space-4)}.error-boundary-content p{font-size:var(--text-base);color:var(--color-error-600);line-height:var(--leading-relaxed);margin-bottom:var(--space-6)}.error-boundary-details{margin:var(--space-6) 0;text-align:left;background:var(--color-neutral-100);border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);overflow:hidden}.error-boundary-details summary{padding:var(--space-3) var(--space-4);background:var(--color-neutral-200);cursor:pointer;font-weight:var(--font-medium);border-bottom:1px solid var(--color-neutral-300)}.error-boundary-details summary:hover{background:var(--color-neutral-300)}.error-boundary-details pre{padding:var(--space-4);margin:0;font-family:var(--font-mono);font-size:var(--text-sm);line-height:var(--leading-relaxed);overflow-x:auto;background:var(--color-neutral-50)}.error-boundary-actions{display:flex;gap:var(--space-3);justify-content:center;margin-bottom:var(--space-4)}.error-boundary-id{font-size:var(--text-sm);color:var(--color-neutral-500);margin-top:var(--space-4)}@media (max-width: 640px){.error-page{padding:var(--space-4)}.error-page-content{padding:var(--space-8)}.error-page h1{font-size:var(--text-2xl)}.error-page-message{font-size:var(--text-base)}.error-page-actions{flex-direction:column;align-items:center}.error-page-actions .btn{width:100%;max-width:200px}.error-boundary-actions{flex-direction:column;align-items:center}.error-boundary-actions .btn{width:100%;max-width:150px}}@media print{.error-page,.error-boundary-default{min-height:auto;background:var(--color-bg-primary);box-shadow:none;border:1px solid var(--color-neutral-400)}.error-page-actions,.error-boundary-actions{display:none}}@media (prefers-contrast: high){.error-page-content{border:2px solid var(--color-neutral-800)}.error-boundary-default{border:2px solid var(--color-error-600)}}@media (prefers-reduced-motion: reduce){.error-page{background:var(--color-neutral-50)}}.hero-section{min-height:calc(100vh + var(--navbar-height) + var(--navbar-top-offset));display:flex;align-items:center;justify-content:center;position:relative;padding:5rem 0;box-sizing:border-box;overflow:hidden;margin-top:calc(-1 * (var(--navbar-height) + var(--navbar-top-offset)))}.hero-content{position:relative;z-index:10;padding:var(--space-12);background:var(--glass-bg-light);backdrop-filter:blur(var(--glass-blur-md));-webkit-backdrop-filter:blur(var(--glass-blur-md));border-radius:var(--radius-2xl);box-shadow:var(--shadow-elevation-3);border:1px solid var(--glass-border-light)}.profile-section{display:flex;align-items:center;justify-content:center;gap:var(--space-16);flex-wrap:wrap;text-align:center}.profile-image{width:var(--profile-image-size);height:var(--profile-image-size);border-radius:50%;object-fit:cover;border:var(--border-width-8) solid var(--color-bg-primary);box-shadow:var(--shadow-lg);transition:var(--transition-all)}.profile-image:hover{transform:scale(1.05)}.profile-info{flex:0 1 600px;min-width:300px;text-align:left}.hero-title{font-size:var(--text-5xl);margin-bottom:var(--space-2);font-weight:var(--font-bold);color:var(--text-dark);background:linear-gradient(135deg,var(--color-primary-800) 0%,var(--color-primary-500) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;line-height:var(--leading-tight);text-shadow:0 2px 4px rgba(91,78,123,.1)}.hero-subtitle{font-size:var(--text-2xl);margin-bottom:var(--space-6);font-weight:var(--font-normal);color:var(--color-primary-700);opacity:.9}.hero-description{font-size:var(--text-lg);line-height:var(--leading-relaxed);color:var(--text-medium);margin:0 auto var(--space-8);max-width:600px;opacity:.95;font-weight:var(--font-normal);text-align:justify}.hero-buttons{display:flex;justify-content:center;gap:var(--space-4)}@media (min-width: 1280px){.hero-content{padding:var(--space-16)}.profile-section{gap:var(--space-20)}.profile-image{width:var(--profile-image-size-lg);height:var(--profile-image-size-lg)}}@media (min-width: 1920px){.hero-content{padding:var(--space-20)}.profile-section{gap:var(--space-24)}.profile-image{width:var(--profile-image-size-xl);height:var(--profile-image-size-xl)}}@media (max-width: 768px){.hero-section{min-height:90vh;padding:var(--space-12) 0}.profile-section{flex-direction:column;text-align:center;gap:var(--space-8)}.profile-info{text-align:center}.hero-title{font-size:var(--text-4xl)}.hero-subtitle{font-size:var(--text-xl)}.hero-buttons{flex-direction:column;align-items:center}.profile-info{min-width:auto}}@media (max-width: 480px){.hero-title{font-size:var(--text-3xl)}.hero-subtitle{font-size:var(--text-lg)}.hero-description{font-size:var(--text-base)}.profile-image{width:var(--profile-image-size-mobile);height:var(--profile-image-size-mobile)}}#home{padding-top:120px}@media (max-width: 768px){#home{padding-top:80px}.hero-section{min-height:calc(100vh + var(--navbar-height));margin-top:calc(-1 * var(--navbar-height))}}.projects-section{padding:var(--space-20) 0;overflow:hidden;position:relative;z-index:var(--z-content);background:transparent}.projects-section .container{position:relative;z-index:10;padding:var(--space-12);background:var(--glass-bg-light);backdrop-filter:blur(var(--glass-blur-md));-webkit-backdrop-filter:blur(var(--glass-blur-md));border-radius:var(--radius-2xl);box-shadow:var(--shadow-elevation-3);border:1px solid var(--glass-border-light)}.projects-section .section-header{text-align:center;margin-bottom:var(--space-12);position:relative;z-index:10}.projects-section h2{font-size:var(--text-4xl);font-weight:var(--font-bold);color:var(--text-dark);background:linear-gradient(135deg,var(--color-primary-800) 0%,var(--color-primary-500) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;line-height:var(--leading-tight);text-shadow:0 2px 4px rgba(91,78,123,.1);margin-bottom:var(--space-4)}.section-subtitle{font-size:var(--text-lg);color:var(--text-light);max-width:var(--content-narrow);margin:0 auto}.section-description{font-size:var(--text-lg);line-height:var(--leading-relaxed);color:var(--text-medium);opacity:.95;font-weight:var(--font-normal);text-align:center;max-width:var(--content-medium);margin:var(--space-4) auto 0}.carousel-wrapper{position:relative;overflow:hidden;padding:0 60px;z-index:10}.carousel-container{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding:var(--space-2) 0 var(--space-8);align-items:stretch;justify-content:flex-start}.carousel-container::-webkit-scrollbar{display:none}.project-card-wrapper{flex:0 0 33.333%;max-width:33.333%;padding:0 var(--space-4);scroll-snap-align:start;display:flex}.project-card{width:100%;min-height:400px;overflow:visible;position:relative;display:flex;flex-direction:column;height:auto}.project-card .glass-card{height:100%;display:flex;flex-direction:column;padding:0}.project-card-icon{position:absolute;top:var(--space-4);right:var(--space-4);width:var(--space-12);height:var(--space-12);background:var(--color-white-alpha-90);border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;font-size:var(--text-2xl);z-index:var(--z-base);box-shadow:var(--shadow-sm)}.project-card-image{width:100%;aspect-ratio:16 / 9;overflow:hidden;position:relative;flex-shrink:0}.editable-project-card .project-card-image{aspect-ratio:auto;min-height:200px;height:auto;overflow:visible}.project-card-image img{width:100%;height:100%;object-fit:cover;background:#fff;transition:var(--transition-all)}.project-card:hover .project-card-image img{transform:scale(1.05)}.placeholder-image{width:100%;height:100%;background:#fff;display:flex;align-items:center;justify-content:center;font-size:var(--text-5xl)}.project-card-content{padding:var(--space-6);flex:1;display:flex;flex-direction:column;min-height:0}.project-card h3{font-size:var(--text-xl);color:var(--text-dark);margin-bottom:var(--space-3);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.4;min-height:2.8em;text-align:center}.project-description{color:var(--text-light);line-height:var(--leading-relaxed);margin-bottom:var(--space-4);display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden;text-align:justify;min-height:7.5em}.project-meta{display:flex;gap:var(--space-4);margin-bottom:var(--space-4);font-size:var(--text-sm);color:var(--color-neutral-500)}.project-meta span{display:flex;align-items:center;gap:.25rem}.project-card-action{display:none;margin-top:auto;padding-top:1.5rem;text-align:center}.project-card-action a{display:block;text-decoration:none}.project-card-action .read-more-button{width:100%;justify-content:center}.carousel-nav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;background:var(--color-bg-primary);border:1px solid var(--color-neutral-200);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;cursor:pointer;transition:all .3s ease;z-index:2;box-shadow:var(--shadow-sm)}.carousel-nav:hover:not(:disabled){background:var(--primary-teal);color:var(--color-text-inverse);border-color:var(--primary-teal);box-shadow:var(--shadow-md)}.carousel-nav:disabled{opacity:.5;cursor:not-allowed}.carousel-nav-prev{left:12px}.carousel-nav-next{right:12px}.carousel-indicators{display:flex;justify-content:center;gap:.5rem;margin-top:2rem}.indicator{width:8px;height:8px;border-radius:50%;border:none;background:var(--color-neutral-200);cursor:pointer;transition:all .3s ease;padding:0}.indicator:hover{background:var(--color-neutral-400)}.indicator.active{width:24px;border-radius:4px;background:var(--primary-teal)}.loading-container{text-align:center;padding:4rem 0}@media (max-width: 1024px){.project-card-wrapper{flex:0 0 50%;max-width:50%}.carousel-wrapper{padding:0 50px}.carousel-nav-next{right:8px}.carousel-nav-prev{left:8px}}@media (max-width: 768px){.projects-section{padding:3rem 0}.projects-section h2{font-size:2rem}.carousel-container{padding:.5rem 1rem 2rem}.project-card-wrapper{flex:0 0 100%;max-width:100%;padding:0 var(--space-2)}.project-card{min-height:350px}.carousel-wrapper{padding:0;margin:0}.carousel-nav{display:none}.project-card-icon{width:40px;height:40px;font-size:1.25rem}}.section.blog-section{position:relative;padding:var(--space-20) 0;overflow:hidden;background:transparent}.blog-section .section-title{font-size:var(--text-4xl);font-weight:var(--font-bold);color:var(--text-dark);background:linear-gradient(135deg,var(--color-primary-800) 0%,var(--color-primary-500) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;line-height:var(--leading-tight);text-shadow:0 2px 4px rgba(91,78,123,.1);margin-bottom:var(--space-8);text-align:center;position:relative;z-index:10}.blog-section .container{position:relative;z-index:10;padding:var(--space-12);background:var(--glass-bg-light);backdrop-filter:blur(var(--glass-blur-md));-webkit-backdrop-filter:blur(var(--glass-blur-md));border-radius:var(--radius-2xl);box-shadow:var(--shadow-elevation-3);border:1px solid var(--glass-border-light)}.blog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:var(--space-8);margin-top:var(--space-12);width:var(--container-2xl);max-width:var(--max-width-2xl);margin-left:auto;margin-right:auto;transition:var(--transition-all)}.blog-post{background:var(--glass-bg-light);backdrop-filter:blur(var(--glass-blur-md)) saturate(120%);-webkit-backdrop-filter:blur(var(--glass-blur-md)) saturate(120%);border:var(--border-width-1) solid var(--glass-border);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-elevation-2);transition:var(--transition-all)}.blog-post:hover{transform:translateY(calc(var(--space-2) * -1));box-shadow:var(--shadow-hover-lift);border-color:var(--glass-border)}.post-image{width:var(--full-width);max-height:40vh;min-height:200px;overflow:hidden;display:flex;align-items:center;justify-content:center}.post-image img{width:var(--full-width);max-height:40vh;object-fit:contain;background:#fff;transition:var(--transition-all)}.blog-post:hover .post-image img{transform:scale(1.05)}.post-content{padding:2rem}.post-content h3{color:var(--text-dark);margin-bottom:.5rem;font-size:1.4rem;line-height:1.3;font-weight:600}.post-date{color:var(--primary-teal);font-size:.9rem;font-weight:600;margin-bottom:1rem;text-transform:uppercase;letter-spacing:.5px}.post-content p:not(.post-date){color:var(--text-light);line-height:1.7;margin-bottom:1.5rem;font-size:1.05rem}.post-link{color:var(--primary-teal);font-weight:600;text-decoration:none;display:inline-flex;align-items:center;transition:all .3s ease;background:none;border:none;cursor:pointer;font-size:inherit;font-family:inherit;padding:0;position:relative}.post-link:hover{color:var(--primary-teal-dark);transform:translate(5px)}.blog-post-expanded{grid-column:1 / -1;max-width:none;order:999;margin-top:4rem;margin-bottom:4rem;padding:2rem;background:linear-gradient(135deg,var(--color-bg-secondary) 0%,var(--color-bg-primary) 100%);border-radius:20px;box-shadow:0 15px 35px #0000001a}.post-text-collapsed{display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.post-text-expanded{display:block}.post-expanded-content{margin-top:1.5rem;padding-top:1.5rem;animation:fadeInContent .3s ease-in-out}@keyframes fadeInContent{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.post-expanded-content p{color:var(--color-text-muted);line-height:1.6;margin-bottom:1rem}.blog-grid:has(.blog-post-expanded){grid-template-columns:repeat(3,1fr);gap:3rem}.blog-post:not(.blog-post-expanded){animation:slideIntoPlace .3s ease-in-out}@keyframes slideIntoPlace{0%{opacity:.8;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.blog-loading,.blog-error{text-align:center;padding:3rem;color:var(--color-text-muted);font-size:1.1rem}.loading-spinner{width:40px;height:40px;border:4px solid var(--color-bg-secondary);border-top:4px solid var(--color-primary-500);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}@media (max-width: 768px){.blog-grid{grid-template-columns:1fr;gap:1.5rem}.blog-grid:has(.blog-post-expanded){grid-template-columns:1fr}.blog-post-expanded{margin-top:2rem;margin-bottom:2rem;padding:1.5rem}}.section-contact{padding:var(--space-20) 0;overflow:hidden;position:relative;background:transparent}.section-contact h2{font-size:var(--text-4xl);font-weight:var(--font-bold);color:var(--text-dark);line-height:var(--leading-tight);text-shadow:0 2px 4px rgba(91,78,123,.1);margin-bottom:var(--space-8);text-align:center;position:relative;z-index:10;display:flex;align-items:center;justify-content:center;gap:var(--space-2)}.section-contact h2>:not(.title-icon){background:linear-gradient(135deg,var(--color-primary-800) 0%,var(--color-primary-500) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.section-contact .title-icon{color:var(--color-primary-600);font-size:var(--text-4xl)}.section-contact .container{position:relative;z-index:10;padding:var(--space-12);background:var(--glass-bg-light);backdrop-filter:blur(var(--glass-blur-md));-webkit-backdrop-filter:blur(var(--glass-blur-md));border-radius:var(--radius-2xl);box-shadow:var(--shadow-elevation-3);border:1px solid var(--glass-border-light)}.contact-content{display:flex;flex-direction:column;align-items:center}.contact-text{width:100%;display:flex;justify-content:center}.contact-text p,.contact-text .markdown-content p{font-size:var(--text-lg);line-height:var(--leading-relaxed);color:var(--color-text-secondary);max-width:var(--content-medium);margin:0 auto var(--space-12);text-align:justify}.contact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-8);margin-top:var(--space-12)}.contact-card{background:var(--glass-bg-light);backdrop-filter:blur(var(--glass-blur-md));-webkit-backdrop-filter:blur(var(--glass-blur-md));border:var(--border-width-1) solid var(--glass-border);padding:var(--space-8);border-radius:var(--radius-2xl);transition:var(--transition-all);text-align:center;box-shadow:var(--shadow-elevation-3)}.contact-card:hover{transform:translateY(calc(var(--space-1) * -1));box-shadow:var(--shadow-elevation-4)}.contact-icon{font-size:var(--text-3xl);margin-bottom:var(--space-4);color:var(--primary-teal);display:flex;justify-content:center;align-items:center}.contact-logo{transition:var(--transition-all)}.linkedin-logo{color:#0077b5}.linkedin-logo:hover{color:#005885}.bluesky-logo{color:#00a8e8}.bluesky-logo:hover{color:#0087c2}.contact-card:hover .contact-logo{transform:scale(1.1)}.contact-card h3{color:var(--text-dark);margin-bottom:var(--space-2);font-size:var(--text-xl);font-weight:var(--font-semibold)}.contact-card p{color:var(--text-light);margin-bottom:var(--space-4);line-height:var(--leading-relaxed);word-break:break-word;overflow-wrap:break-word;font-size:var(--text-base);text-align:center!important}.location-detail{font-size:var(--text-sm);color:var(--color-text-muted);margin-bottom:0}.contact-link{color:var(--primary-teal);font-weight:var(--font-medium);text-decoration:none;display:inline-flex;align-items:center;transition:var(--transition-all);font-size:var(--text-base)}.contact-link:hover{color:var(--primary-teal-dark)}@media (min-width: 1280px){.section-contact .container{padding-left:var(--space-16);padding-right:var(--space-16)}}@media (min-width: 1920px){.section-contact .container{padding-left:var(--space-20);padding-right:var(--space-20)}}@media (max-width: 1280px){.contact-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-6)}}@media (max-width: 640px){.contact-grid{grid-template-columns:1fr;gap:var(--space-6)}.contact-card{padding:var(--space-6)}}.timeline-container{position:relative;max-width:var(--max-width-2xl);width:var(--container-xl);margin:0 auto;padding:60px 20px;overflow:visible}.timeline-line{position:absolute;left:50%;top:-200px;bottom:0;width:4px;background:linear-gradient(to bottom,transparent 0px,transparent 140px,rgba(150,123,182,.5) 200px,rgba(150,123,182,.5) 100%);transform:translate(-50%)}.timeline-event{position:relative;width:48%;margin-bottom:60px}.timeline-event.left{left:0;padding-right:30px}.timeline-event.right{left:52%;padding-left:30px}.timeline-event{margin-top:0}.timeline-event:nth-child(2){margin-top:0!important}.timeline-event:nth-child(3),.timeline-event:nth-child(4),.timeline-event:nth-child(5),.timeline-event:nth-child(6),.timeline-event:nth-child(7),.timeline-event:nth-child(8),.timeline-event:nth-child(9),.timeline-event:nth-child(10),.timeline-event:nth-child(11){margin-top:-390px!important}.timeline-event:nth-child(2){z-index:10}.timeline-event:nth-child(3){z-index:9}.timeline-event:nth-child(4){z-index:8}.timeline-event:nth-child(5){z-index:7}.timeline-event:nth-child(6){z-index:6}.timeline-event:nth-child(7){z-index:5}.timeline-event:nth-child(8){z-index:4}.timeline-event:nth-child(9){z-index:3}.timeline-event:nth-child(10){z-index:2}.timeline-event:nth-child(11){z-index:1}.timeline-marker{position:absolute;width:20px;height:20px;background:var(--color-bg-primary);border:3px solid var(--color-primary-500);border-radius:50%;top:40px;z-index:10}.timeline-event.left .timeline-marker{right:-37px}.timeline-event.right .timeline-marker{left:-37px}.timeline-connector{position:absolute;top:50px;height:3px;background:var(--color-primary-500);opacity:.5}.timeline-event.left .timeline-connector{right:-30px;width:30px}.timeline-event.right .timeline-connector{left:-30px;width:30px}.event-card{background:var(--glass-bg-light);backdrop-filter:blur(var(--glass-blur-md));-webkit-backdrop-filter:blur(var(--glass-blur-md));border:1px solid var(--glass-border);border-radius:20px;padding:30px;box-shadow:var(--shadow-elevation-3);min-height:400px;transition:all .3s ease}.event-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-elevation-4);filter:brightness(1.05)}.event-header{margin-bottom:20px;text-align:center;width:100%}.event-date{font-size:18px;font-weight:600;color:var(--color-text-primary);margin-bottom:8px;display:block}.event-title{font-size:24px;font-weight:700;color:var(--color-text-primary);margin:0 0 6px;line-height:1.3;display:block}.event-location{font-size:16px;color:var(--color-text-muted);margin:0;display:block}.event-images{background:var(--glass-bg-medium);backdrop-filter:blur(var(--glass-blur-sm));-webkit-backdrop-filter:blur(var(--glass-blur-sm));border:1px solid var(--glass-border-light);border-radius:16px;padding:0;margin:0;display:flex;flex-direction:column;gap:8px;overflow:hidden}.location-section{width:100%;height:300px;position:relative;overflow:hidden;background:var(--glass-bg-dark);border-radius:12px}.gallery-section{width:100%;padding:0;border-radius:12px;overflow:hidden}.location-image{width:100%;height:100%;object-fit:contain;object-position:center;background:var(--glass-bg-darkest)}.location-image-placeholder{width:100%;height:100%;background:var(--glass-bg-darker);display:flex;align-items:center;justify-content:center;color:var(--color-text-disabled);font-size:14px}.gallery-masonry{display:grid;gap:8px}.gallery-masonry.single{grid-template-columns:1fr}.gallery-masonry.single .gallery-image{aspect-ratio:16/9}.gallery-masonry.double{grid-template-columns:1fr 1fr}.gallery-masonry.double .gallery-image{aspect-ratio:1}.gallery-masonry.triple{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.gallery-masonry.triple .gallery-image:first-child{grid-row:span 2;aspect-ratio:1/2}.gallery-masonry.triple .gallery-image:not(:first-child){aspect-ratio:1}.gallery-image{width:100%;height:100%;object-fit:cover;background:var(--glass-bg-darkest);min-height:150px;border-radius:12px}.gallery-masonry-placeholder{background:var(--glass-bg-darker);display:flex;align-items:center;justify-content:center;color:var(--color-text-disabled);font-size:14px;height:100%;min-height:200px;border-radius:12px}.timeline-empty{text-align:center;padding:60px 20px;color:var(--color-text-muted);font-style:italic}.journey-timeline{padding:0 40px 100px;position:relative;overflow:visible;min-height:100vh;z-index:var(--z-content)}.journey-timeline:before{content:"";position:absolute;inset:0;background-image:radial-gradient(ellipse at top left,rgba(150,123,182,.03) 0%,transparent 50%),radial-gradient(ellipse at bottom right,rgba(150,123,182,.03) 0%,transparent 50%);pointer-events:none}.date-type-selector{display:none}@media (min-width: 1920px){.timeline-container{width:var(--container-3xl);max-width:var(--max-width-3xl)}}@media (min-width: 2560px){.timeline-container{width:var(--container-4k);max-width:var(--max-width-4k)}}@media (max-width: 1024px){.timeline-event{width:46%}.timeline-event.right{left:54%}.event-card{padding:25px}.event-title{font-size:22px}.event-images,.gallery-section{padding:0}}@media (max-width: 768px){.timeline-container{padding:40px 20px 40px 40px}.timeline-line{left:20px;top:0}.timeline-event,.timeline-event.left,.timeline-event.right{width:calc(100% - 40px);left:40px;padding:0;margin-bottom:40px}.timeline-event:nth-child(3),.timeline-event:nth-child(4),.timeline-event:nth-child(5),.timeline-event:nth-child(6),.timeline-event:nth-child(7),.timeline-event:nth-child(8),.timeline-event:nth-child(9),.timeline-event:nth-child(10),.timeline-event:nth-child(11){margin-top:0!important}.timeline-marker,.timeline-event.left .timeline-marker,.timeline-event.right .timeline-marker{left:-30px;right:auto;top:30px}.timeline-connector,.timeline-event.left .timeline-connector,.timeline-event.right .timeline-connector{left:-20px;right:auto;width:20px;top:40px}.event-images{gap:8px;padding:0}.gallery-section{padding:0}.event-date{font-size:16px}.event-title{font-size:20px}.event-location{font-size:14px}.event-card{padding:20px}.journey-timeline{padding:60px 20px}}@media (max-width: 480px){.timeline-container{padding:30px 15px 30px 35px}.timeline-line{top:0}.timeline-event,.timeline-event.left,.timeline-event.right{width:calc(100% - 35px);left:35px}.event-card{padding:15px;border-radius:16px}.event-images{padding:0;border-radius:12px}.gallery-section{padding:0}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.timeline-event{animation:fadeInUp .6s ease-out;animation-fill-mode:both}.timeline-event:nth-child(2){animation-delay:.1s}.timeline-event:nth-child(3){animation-delay:.2s}.timeline-event:nth-child(4){animation-delay:.3s}.timeline-event:nth-child(5){animation-delay:.4s}.timeline-event:nth-child(6){animation-delay:.5s}.timeline-event:nth-child(7){animation-delay:.6s}.timeline-event:nth-child(8){animation-delay:.7s}.journey-page{padding-top:80px;min-height:100vh;position:relative;z-index:var(--z-content)}.journey-banner{position:relative;padding:100px 0 80px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-primary-600) 0%,var(--color-primary-700) 100%);overflow:hidden}.journey-banner:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,var(--color-white-alpha-10) 1px,transparent 1px);background-size:50px 50px;animation:drift 20s linear infinite;pointer-events:none}.journey-banner:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:120px;background:linear-gradient(to bottom,transparent,var(--color-bg-secondary) 70%,var(--color-bg-primary) 100%);pointer-events:none}@keyframes drift{0%{transform:translate(0)}to{transform:translate(50px,50px)}}.banner-content{text-align:center;padding:0 2rem;max-width:var(--content-medium);position:relative;z-index:1}.banner-title{font-size:3.5rem;font-weight:800;color:var(--color-bg-primary);margin:0;text-shadow:0 4px 16px var(--color-black-alpha-50);line-height:1.2;letter-spacing:-.02em;animation:fadeInDown .8s ease-out}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.journey-timeline{position:relative}.banner-placeholder{background:linear-gradient(135deg,var(--color-primary-600) 0%,var(--color-primary-700) 100%)!important}.admin-banner-controls{position:absolute;top:20px;right:20px;z-index:4;background:var(--color-black-alpha-90);border-radius:8px;padding:15px;box-shadow:var(--shadow-lg)}.admin-banner-controls .image-upload{margin:0;min-height:auto}.admin-banner-controls .image-upload-container{background:transparent!important;border:none!important;min-height:auto!important;height:auto!important}.admin-banner-controls .image-preview{height:auto!important;min-height:auto!important}.admin-banner-controls .preview-image{display:none!important}.admin-banner-controls .image-placeholder{background:transparent!important;border:none!important;min-height:auto!important;height:auto!important}.admin-banner-controls .placeholder-icon,.admin-banner-controls .placeholder-content p{display:none!important}.admin-banner-controls .image-overlay,.admin-banner-controls .placeholder-content{position:static!important;background:transparent!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;gap:.5rem!important}.admin-banner-controls .upload-info{background:var(--color-white-alpha-10);border:1px solid var(--color-white-alpha-50);color:var(--color-white-alpha-90)}.admin-banner-controls .upload-info p,.admin-banner-controls .upload-info ul{color:var(--color-white-alpha-90)}.banner-title-edit{color:#fff!important;text-shadow:0 2px 20px var(--color-black-alpha-90),0 4px 40px var(--color-black-alpha-50)}.banner-title-edit input,.banner-title-edit textarea{color:#fff!important;background:var(--color-black-alpha-50)!important;border:2px solid var(--color-white-alpha-50)!important;text-shadow:0 2px 20px rgba(0,0,0,.8),0 4px 40px rgba(0,0,0,.6)!important;font-weight:700!important}.banner-title-edit input:focus,.banner-title-edit textarea:focus{background:var(--color-black-alpha-90)!important;border-color:var(--color-white-alpha-90)!important;box-shadow:0 0 0 3px var(--color-white-alpha-50)!important}@media (max-width: 768px){.journey-banner{padding:80px 0 60px}.banner-title{font-size:2.5rem}.banner-content{padding:0 1rem}.admin-banner-controls{top:10px;right:10px;padding:10px}.admin-banner-controls .image-placeholder{width:150px;min-height:100px}}@media (max-width: 480px){.journey-banner{padding:60px 0 40px}.banner-title{font-size:2rem;letter-spacing:-.01em}.admin-banner-controls{top:5px;right:5px;padding:8px}.admin-banner-controls .image-placeholder{width:120px;min-height:80px}.admin-banner-controls .upload-info{font-size:.7rem;padding:.5rem}}.project-detail-page{min-height:100vh;padding-top:var(--navbar-height, 80px);position:relative;z-index:var(--z-content)}.project-banner{position:relative;width:100%;height:400px;overflow:hidden}.project-banner img{width:100%;height:100%;object-fit:cover}.project-container{margin-top:var(--space-12);margin-bottom:var(--space-12);background:var(--glass-bg-light);backdrop-filter:blur(var(--glass-blur-md));-webkit-backdrop-filter:blur(var(--glass-blur-md));border:1px solid var(--glass-border);border-radius:var(--radius-2xl);box-shadow:var(--shadow-elevation-3);overflow:hidden}.project-hero{padding:var(--space-12) var(--space-12) 0;position:relative}.back-link{display:inline-block;margin-bottom:var(--space-8)}.back-link .btn-link{font-size:var(--text-sm);color:var(--color-neutral-500)}.back-link .btn-link:hover{color:var(--primary-teal)}.project-header{text-align:center;margin-bottom:var(--space-12)}.project-header .project-icon{font-size:var(--text-6xl);margin-bottom:var(--space-4);display:block}.project-header h1{font-size:var(--text-4xl);color:var(--text-dark);margin-bottom:var(--space-4);line-height:var(--leading-tight)}.project-meta{display:flex;justify-content:center;gap:var(--space-8);font-size:var(--text-base);color:var(--color-neutral-500)}.project-meta span{display:flex;align-items:center;gap:var(--space-2)}.project-hero-image{width:calc(var(--full-width) + var(--space-24));margin:0 calc(var(--space-12) * -1);max-height:500px;overflow:hidden}.project-hero-image img{width:var(--full-width);height:var(--full-width);object-fit:cover}.project-content{padding:var(--space-16) var(--space-12) var(--space-12);position:relative}.project-content .markdown-content{font-size:var(--text-lg);line-height:var(--leading-relaxed);color:var(--text-dark)}.project-content .markdown-content p{text-align:justify}.project-content h2{font-size:var(--text-3xl);margin:var(--space-12) 0 var(--space-6);color:var(--text-dark)}.project-content h3{font-size:var(--text-2xl);margin:var(--space-8) 0 var(--space-4);color:var(--text-dark)}.project-content p{margin-bottom:var(--space-6)}.project-content ul,.project-content ol{margin-bottom:var(--space-6);padding-left:var(--space-8)}.project-content li{margin-bottom:var(--space-2)}.project-content blockquote{border-left:var(--border-width-4) solid var(--primary-teal);padding-left:var(--space-6);margin:var(--space-8) 0;font-style:italic;color:var(--color-neutral-500)}.project-content code{background:var(--glass-bg-darker);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-sm);font-family:var(--font-mono)}.project-content pre{background:var(--color-neutral-800);opacity:.9;backdrop-filter:blur(var(--glass-blur-sm));-webkit-backdrop-filter:blur(var(--glass-blur-sm));color:var(--color-neutral-200);padding:var(--space-6);border-radius:var(--radius-lg);overflow-x:auto;margin-bottom:var(--space-6);border:var(--border-width-1) solid var(--glass-border-light)}.project-content pre code{background:none;padding:0;color:inherit}.error-container,.loading-container{text-align:center;padding:var(--space-16) var(--space-4);min-height:400px;display:flex;flex-direction:column;align-items:center;justify-content:center}.error-container .back-link{margin-top:var(--space-8)}@media (max-width: 768px){.project-hero{padding:var(--space-8) var(--space-8) 0}.project-content{padding:var(--space-12) var(--space-8) var(--space-8)}.project-hero-image{width:calc(var(--full-width) + var(--space-16));margin:0 calc(var(--space-8) * -1);max-height:300px}.project-header h1{font-size:var(--text-3xl)}.project-header .project-icon{font-size:var(--text-5xl)}.project-meta{flex-direction:column;gap:var(--space-2);align-items:center}.project-content .markdown-content{font-size:var(--text-base)}.project-content h2{font-size:var(--text-2xl)}.project-content h3{font-size:var(--text-xl)}}@media (max-width: 480px){.project-hero{padding:var(--space-6) var(--space-6) 0}.project-content{padding:var(--space-8) var(--space-6) var(--space-6)}.project-hero-image{width:calc(var(--full-width) + var(--space-12));margin:0 calc(var(--space-6) * -1);max-height:250px}.project-header h1{font-size:var(--text-2xl)}}.status-message{position:fixed;top:20px;right:20px;padding:12px 20px;border-radius:8px;font-weight:500;z-index:1000;animation:slideIn .3s ease-out;box-shadow:var(--shadow-md);border:1px solid transparent}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.status-message.success{background:var(--color-success-500);color:var(--color-text-inverse);border-color:var(--color-success-600)}.status-message.error{background:var(--color-error-500);color:var(--color-text-inverse);border-color:var(--color-error-600)}.form-section{margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid var(--color-neutral-200)}.form-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.form-section h3{margin-bottom:1rem;color:var(--text-dark);font-size:1.1rem;font-weight:600}.loading-overlay{position:absolute;inset:0;background:var(--color-white-alpha-90);display:flex;align-items:center;justify-content:center;z-index:100}.loading-spinner{width:40px;height:40px;border:4px solid var(--color-neutral-100);border-top:4px solid var(--primary-teal);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.content-editor{display:flex;gap:2rem;height:calc(100vh - 40px);padding:20px}.editor-panel{flex:1;background:var(--color-bg-primary);border-radius:12px;box-shadow:var(--shadow-sm);padding:2rem;overflow-y:auto}.preview-panel{flex:1;background:var(--color-bg-primary);border-radius:12px;box-shadow:var(--shadow-sm);overflow-y:auto;position:relative}.preview-header{position:sticky;top:0;background:var(--color-neutral-50);padding:1rem 1.5rem;border-bottom:1px solid var(--color-neutral-200);display:flex;align-items:center;gap:.5rem;z-index:10}.preview-header h3{margin:0;font-size:1rem;color:var(--text-medium)}.preview-content{padding:2rem}.editor-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.editor-header h2{margin:0;color:var(--text-dark)}.save-btn{padding:.75rem 1.5rem;background:var(--primary-teal);color:var(--color-text-inverse);border:none;border-radius:8px;cursor:pointer;font-weight:500;transition:all .2s ease}.save-btn:hover:not(:disabled){background:var(--primary-teal-dark);transform:translateY(-1px)}.save-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.reset-btn{padding:.75rem 1.5rem;background:var(--color-bg-primary);color:var(--text-medium);border:2px solid var(--color-neutral-200);border-radius:8px;cursor:pointer;font-weight:500;transition:all .2s ease}.reset-btn:hover{border-color:var(--color-neutral-300);background:var(--color-neutral-50)}.editable-field{position:relative;display:block;width:100%;cursor:text;min-height:1.2em;line-height:inherit;margin-bottom:.5rem}.editable-content{position:relative;display:block;width:100%;background:transparent;border:2px solid transparent;border-radius:4px;padding:4px 40px 4px 8px;transition:all .2s ease;word-wrap:break-word;overflow-wrap:break-word;white-space:pre-wrap}.editable-content:hover{background:var(--color-white-alpha-10);border-color:var(--color-primary-500)}.editable-field.editing .editable-content{display:none}.edit-icon{position:absolute;top:50%;right:8px;transform:translateY(-50%);opacity:0;transition:all .2s ease;font-size:14px;color:var(--primary-teal);pointer-events:none;z-index:5}.editable-field:hover .edit-icon{opacity:1}.edit-form{display:none;width:100%;position:relative;z-index:10}.editable-field.editing .edit-form{display:block}.editable-field.editing{overflow:visible!important}.project-card.editable-project-card,.project-card-content{overflow:visible}.edit-input,.edit-textarea{width:100%;padding:8px 12px;border:2px solid var(--primary-teal);border-radius:6px;font-family:inherit;font-size:inherit;line-height:inherit;color:inherit;background:var(--color-bg-primary);resize:vertical;outline:none;box-shadow:0 0 0 3px var(--color-white-alpha-10)}.edit-input:focus,.edit-textarea:focus{border-color:var(--primary-teal-dark);box-shadow:0 0 0 3px var(--color-white-alpha-10)}.edit-textarea{min-height:100px}.edit-actions{display:flex;gap:8px;margin-top:8px;justify-content:flex-start}.save-edit-btn,.cancel-edit-btn{padding:6px 12px;border:none;border-radius:4px;cursor:pointer;font-size:12px;font-weight:500;transition:all .2s ease}.save-edit-btn{background:var(--primary-teal);color:#fff}.save-edit-btn:hover{background:var(--primary-teal-dark);transform:translateY(-1px)}.cancel-edit-btn{background:var(--color-neutral-100);color:var(--text-medium)}.cancel-edit-btn:hover{background:var(--color-neutral-200)}.markdown-field .editable-content{line-height:1.6}.markdown-field .editable-content h1,.markdown-field .editable-content h2,.markdown-field .editable-content h3,.markdown-field .editable-content h4,.markdown-field .editable-content h5,.markdown-field .editable-content h6{margin:1.5rem 0 1rem;font-weight:600}.markdown-field .editable-content h1{font-size:1.5em}.markdown-field .editable-content h2{font-size:1.3em}.markdown-field .editable-content h3{font-size:1.1em}.markdown-field .editable-content p{margin:1rem 0}.markdown-field .editable-content ul,.markdown-field .editable-content ol{margin:1rem 0;padding-left:1.5rem}.markdown-field .editable-content li{margin:.3rem 0;line-height:1.6}.markdown-field .editable-content blockquote{margin:1.5rem 0;padding:1rem 1.5rem;border-left:4px solid var(--primary-teal);background:var(--color-white-alpha-10);font-style:italic;border-radius:0 8px 8px 0}.markdown-field .editable-content code{background:var(--color-neutral-100);padding:.2em .4em;border-radius:3px;font-family:Courier New,monospace;font-size:.9em}.markdown-field .editable-content pre{background:var(--color-neutral-50);padding:1rem;border-radius:8px;overflow-x:auto;margin:1.5rem 0;border:1px solid var(--color-neutral-200)}.markdown-field .editable-content pre code{background:none;padding:0}.markdown-field .editable-content a{color:var(--primary-teal);text-decoration:underline}.markdown-field .editable-content a:hover{color:var(--primary-teal-dark)}.markdown-field .editable-content hr{border:none;border-top:2px solid var(--color-neutral-200);margin:2rem 0}.markdown-help{margin-top:.5rem;font-size:.75rem}.markdown-help details{border:1px solid var(--color-neutral-200);border-radius:4px;padding:.5rem;background:var(--color-neutral-50)}.markdown-help summary{cursor:pointer;font-weight:500;color:var(--primary-teal);margin-bottom:.5rem}.markdown-help summary:hover{color:var(--primary-teal-dark)}.markdown-guide{margin-top:.5rem;line-height:1.4}.markdown-guide p{margin:.25rem 0;color:var(--text-medium)}.emoji-picker-container{position:relative;display:inline-block}.emoji-picker-trigger{min-width:80px;padding:.5rem 1rem;border:1px solid var(--color-border-default);border-radius:8px;background:var(--color-bg-primary);font-size:1.5rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.emoji-picker-trigger:hover{border-color:var(--primary-teal);box-shadow:var(--shadow-xs)}.emoji-picker-trigger:focus{outline:none;border-color:var(--primary-teal);box-shadow:0 0 0 3px var(--color-primary-400)}.emoji-picker-trigger .placeholder{font-size:.875rem;color:var(--color-text-muted)}.emoji-picker-dropdown{position:absolute;top:calc(100% + .5rem);left:0;z-index:100;background:var(--color-bg-primary);border:1px solid var(--color-border-default);border-radius:12px;box-shadow:var(--shadow-lg);animation:slideDown .2s ease-out;width:400px;max-height:480px;display:flex;flex-direction:column}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.emoji-picker-header{padding:.75rem;border-bottom:1px solid var(--color-border-default)}.emoji-search{width:100%;padding:.5rem .75rem;border:1px solid var(--color-border-default);border-radius:6px;font-size:.875rem;transition:all .2s}.emoji-search:focus{outline:none;border-color:var(--primary-teal);box-shadow:0 0 0 3px var(--color-primary-400)}.emoji-categories{display:flex;flex-wrap:wrap;gap:.25rem;padding:.5rem;border-bottom:1px solid var(--color-border-default);background:var(--color-neutral-50)}.category-tab{padding:.25rem .75rem;border:none;background:transparent;font-size:.75rem;cursor:pointer;border-radius:4px;transition:all .2s;white-space:nowrap}.category-tab:hover{background:var(--color-border-default)}.category-tab.active{background:var(--primary-teal);color:var(--color-bg-primary)}.emoji-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:.25rem;padding:.75rem;overflow-y:auto;flex:1}.emoji-option{width:40px;height:40px;border:none;background:transparent;font-size:1.5rem;cursor:pointer;border-radius:6px;transition:all .2s;display:flex;align-items:center;justify-content:center}.emoji-option:hover{background:var(--color-bg-secondary);transform:scale(1.1)}.emoji-option:focus{outline:none;background:var(--color-bg-secondary);box-shadow:0 0 0 2px var(--primary-teal)}.emoji-option.selected{background:var(--primary-teal);color:var(--color-bg-primary)}.no-emojis{grid-column:1 / -1;text-align:center;padding:2rem;color:var(--color-text-muted)}.emoji-grid::-webkit-scrollbar{width:6px}.emoji-grid::-webkit-scrollbar-track{background:var(--color-bg-secondary);border-radius:3px}.emoji-grid::-webkit-scrollbar-thumb{background:var(--color-neutral-300);border-radius:3px}.emoji-grid::-webkit-scrollbar-thumb:hover{background:var(--color-neutral-400)}@media (max-width: 640px){.emoji-picker-dropdown{width:320px;max-height:400px}.emoji-grid{grid-template-columns:repeat(6,1fr)}.category-tab{font-size:.7rem;padding:.2rem .5rem}}.image-upload{position:relative;width:100%;min-height:200px}.image-upload-container{position:relative;width:100%;min-height:inherit;background:var(--color-neutral-50);border:2px dashed var(--color-neutral-300);border-radius:8px;overflow:hidden}.image-preview{position:relative;width:100%;height:100%;min-height:inherit}.image-placeholder{position:relative;width:100%;height:100%;min-height:inherit;display:flex;align-items:center;justify-content:center;background:var(--color-neutral-50);border:2px dashed var(--color-neutral-300);border-radius:8px}.placeholder-content{text-align:center;color:var(--color-neutral-500);z-index:2;position:relative}.placeholder-content p{margin:.5rem 0;font-size:.875rem;font-weight:500}.placeholder-icon{font-size:2rem;margin-bottom:.5rem}.upload-placeholder-btn{background:var(--primary-blue);color:var(--color-secondary-50);border:none;padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s ease}.upload-placeholder-btn:hover{background:var(--primary-dark);transform:translateY(-1px)}.upload-error{margin-top:.5rem;padding:.5rem;background:var(--color-error-50);border:1px solid var(--color-error-500);border-radius:6px;color:var(--color-error-600);font-size:.875rem}.upload-info{margin-top:1rem;font-size:.75rem;color:var(--color-neutral-500);background:var(--color-neutral-50);padding:.75rem;border-radius:6px;border:1px solid var(--color-neutral-200)}.upload-info p{margin:0 0 .5rem;font-weight:600;color:var(--color-neutral-700)}.upload-info ul{margin:.25rem 0 0 1rem;padding:0;color:var(--color-neutral-500)}.image-upload-overlay{position:absolute;inset:0;background:#111827b3;display:flex;flex-direction:column;align-items:center;justify-content:center;opacity:1;transition:opacity .3s ease;z-index:10;gap:.5rem}.image-upload-overlay .upload-btn,.image-upload-overlay .remove-btn{padding:.5rem 1rem;border:none;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s ease;color:var(--color-secondary-50);backdrop-filter:blur(10px)}.image-upload-overlay .upload-btn{background:#967bb6e6}.image-upload-overlay .upload-btn:hover{background:var(--color-primary-500);transform:translateY(-1px)}.image-upload-overlay .remove-btn{background:#dc2626e6}.image-upload-overlay .remove-btn:hover{background:var(--color-error-600)}.image-upload-overlay .upload-info{display:none}.image-upload-overlay .upload-error{position:absolute;bottom:-30px;left:50%;transform:translate(-50%);background:var(--color-error-600);color:var(--color-secondary-50);padding:.25rem .5rem;border-radius:4px;font-size:.75rem;white-space:nowrap}.image-upload-overlay .placeholder-content{display:flex;flex-direction:column;align-items:center;gap:.5rem}.image-upload-overlay .placeholder-icon{font-size:2rem;margin-bottom:.5rem}.image-upload-overlay .placeholder-content p{color:var(--color-secondary-50);margin:0;font-size:.875rem}.profile-section .image-upload{width:100%;height:100%;min-height:200px}.profile-section .image-upload-container{width:100%;height:100%;position:relative;border-radius:50%;overflow:hidden;background:var(--color-neutral-100);border:2px dashed var(--color-neutral-300)}.profile-section .image-preview{width:100%;height:100%;position:relative;border-radius:50%;overflow:hidden;background:transparent;border:none}.profile-section .preview-image{width:100%;height:100%;object-fit:cover;border-radius:50%;border:6px solid var(--color-secondary-50);box-shadow:var(--shadow-lg);transition:transform .3s ease;box-sizing:border-box}.profile-section .preview-image:hover{transform:scale(1.05)}.profile-section .image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--color-neutral-100);border:2px dashed var(--color-neutral-300);border-radius:50%;box-sizing:border-box}.profile-section .image-overlay{border-radius:50%}.research-card .card-image .image-upload{width:100%;height:100%;min-height:200px}.research-card .card-image .image-upload-container{width:100%;height:100%;position:relative;border-radius:12px 12px 0 0;overflow:hidden;background:var(--color-neutral-100);border:2px dashed var(--color-neutral-300)}.research-card .card-image .image-preview{width:100%;height:100%;position:relative;border-radius:12px 12px 0 0;overflow:hidden;background:transparent;border:none}.research-card .card-image .preview-image{width:100%;max-height:40vh;min-height:200px;object-fit:contain;background:var(--color-secondary-50);border-radius:12px 12px 0 0;box-sizing:border-box}.research-card .card-image .image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--color-neutral-100);border:2px dashed var(--color-neutral-300);border-radius:12px 12px 0 0;box-sizing:border-box}.research-card .card-image .image-overlay{border-radius:12px 12px 0 0}.admin-project-editor{max-width:1200px;margin:0 auto;padding:2rem}.project-editor-header{margin-bottom:2rem}.project-editor-header h3{font-size:1.5rem;color:var(--text-dark);margin-bottom:1rem}.editor-tabs{display:flex;gap:.5rem;margin-bottom:2rem;background:var(--color-bg-secondary);padding:.25rem;border-radius:8px;border:1px solid var(--color-border-default)}.tab-button{background:transparent;border:1px solid transparent;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;color:var(--text-secondary);cursor:pointer;position:relative;transition:all .2s ease;border-radius:6px}.tab-button:hover{color:var(--primary-color);background:var(--color-white-alpha-50)}.tab-button.active{color:var(--primary-color);background:var(--color-bg-primary);border-color:var(--color-border-default);box-shadow:var(--shadow-sm)}.tab-button.active:after{display:none}.tab-content{animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.editor-section{background:var(--color-bg-primary);border:1px solid var(--color-border-default);border-radius:8px;padding:1.5rem}.editor-section.full-width{grid-column:1 / -1}.editor-section h4{font-size:1.125rem;color:var(--text-dark);margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--color-border-default)}.field-group{margin-bottom:1.5rem}.field-group label{display:block;font-weight:500;margin-bottom:.5rem;color:var(--color-text-secondary)}.field-row{display:grid;grid-template-columns:1fr 1fr auto;gap:1rem}.field-error{color:var(--color-error-500);font-size:.875rem;margin-top:.25rem}.slug-preview{font-size:.875rem;color:var(--color-text-muted);margin-top:.25rem;font-family:monospace}.field-help{font-size:.875rem;color:var(--color-text-muted);margin-top:.5rem}.preview-section{background:var(--color-neutral-50)}.card-preview-container{max-width:600px;margin:0 auto}@media (min-width: 1200px){.card-preview-container{max-width:700px}}@media (min-width: 1600px){.card-preview-container{max-width:800px}}.editor-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem;padding-top:2rem;border-top:1px solid var(--color-border-default)}.section-description{color:var(--text-secondary);font-size:.875rem;margin-bottom:1.5rem}.editable-card-container{max-width:600px;margin:0 auto 2rem}@media (min-width: 1200px){.editable-card-container{max-width:700px}}@media (min-width: 1600px){.editable-card-container{max-width:800px}}.projects-content-editor .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.project-list{display:flex;flex-direction:column;gap:.75rem}.project-list-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:var(--color-bg-primary);border:1px solid var(--color-border-default);border-radius:8px;transition:all .2s}.project-list-item:hover{box-shadow:var(--shadow-xs)}.project-info{display:flex;align-items:center;gap:1rem;flex:1}.project-icon{font-size:2rem;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--color-bg-secondary);border-radius:8px}.project-details h4{margin:0 0 .25rem;font-size:1rem;color:var(--text-dark)}.project-details p{margin:0;font-size:.875rem;color:var(--color-text-muted)}.project-actions{display:flex;align-items:center;gap:.5rem}.btn-icon{width:32px;height:32px;padding:0;border:1px solid var(--color-border-default);background:var(--color-bg-primary);border-radius:4px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;font-size:1rem}.btn-icon:hover:not(:disabled){background:var(--color-bg-secondary);border-color:var(--color-neutral-300)}.btn-icon:disabled{opacity:.5;cursor:not-allowed}.btn-danger{background:var(--color-error-500);color:var(--color-bg-primary);border-color:var(--color-error-600)}.btn-danger:hover{background:var(--color-error-600)}.empty-state{text-align:center;padding:3rem;color:var(--color-text-muted)}@media (max-width: 1024px){.project-editor-content{grid-template-columns:1fr}.field-row{grid-template-columns:1fr 1fr}.field-row .field-group:last-child{grid-column:1 / -1}}@media (max-width: 768px){.project-list-item{flex-direction:column;align-items:flex-start;gap:1rem}.project-actions{width:100%;justify-content:flex-end}.field-row{grid-template-columns:1fr}}.admin-login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;position:relative;z-index:var(--z-content)}.login-container{background:var(--color-secondary-50);padding:2.5rem;border-radius:15px;box-shadow:var(--shadow-lg);width:100%;max-width:400px;margin:0 auto}.admin-login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;position:relative;z-index:var(--z-content)}.admin-login-box{background:var(--color-secondary-50);padding:2.5rem;border-radius:15px;box-shadow:var(--shadow-lg);width:100%;max-width:400px;margin:0 auto}@media (min-width: 768px){.admin-login,.admin-login-container{padding:3rem}.login-container,.admin-login-box{max-width:420px}}@media (min-width: 1024px){.login-container,.admin-login-box{max-width:450px}}@media (min-width: 1200px){.admin-login,.admin-login-container{padding:4rem}.login-container,.admin-login-box{max-width:500px}}.login-header{text-align:center;margin-bottom:2rem}.login-header h1{font-size:2rem;color:var(--text-dark);margin-bottom:.5rem}.login-header p{color:var(--text-medium);margin:0;font-size:1rem}.admin-login-box h1{font-size:2rem;color:var(--text-dark);margin-bottom:2rem;text-align:center}.form-group label{display:block;margin-bottom:.5rem;color:var(--text-medium);font-weight:500}.form-group input{width:100%;padding:.75rem;border:2px solid var(--color-neutral-200);border-radius:8px;font-size:1rem;transition:all .3s ease}.form-group input:focus{outline:none;border-color:var(--primary-teal);box-shadow:0 0 0 3px #967bb61a}.form-group input:disabled{background-color:var(--color-neutral-50);cursor:not-allowed}.error-message{color:var(--color-error-600);font-size:.875rem;margin-top:-.5rem;margin-bottom:1rem}.login-btn{width:100%;padding:.875rem;background:linear-gradient(135deg,var(--primary-teal) 0%,var(--primary-teal-dark) 100%);color:var(--color-secondary-50);border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.login-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 15px #967bb64d}.login-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.admin-dashboard{min-height:100vh;position:relative;z-index:var(--z-content)}.admin-header{background:var(--color-secondary-50);padding:1.5rem 2rem;box-shadow:var(--shadow-sm);display:flex;justify-content:space-between;align-items:center}.admin-header h1{font-size:1.75rem;color:var(--text-dark);margin:0}.logout-btn{padding:.5rem 1.5rem;background:var(--color-secondary-50);color:var(--primary-teal);border:2px solid var(--primary-teal);border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .3s ease}.logout-btn:hover{background:var(--primary-teal);color:var(--color-secondary-50)}.admin-navigation.desktop-nav{background-color:var(--color-primary-900);color:var(--color-secondary-50);width:250px;height:100vh;padding:0;overflow-y:auto;position:fixed;left:0;top:0;display:flex;flex-direction:column}.admin-navigation.mobile-nav{display:none;background-color:var(--color-primary-900);color:var(--color-secondary-50);position:fixed;top:0;left:0;right:0;z-index:1000}.admin-nav-header{padding:20px;background-color:var(--color-neutral-900);border-bottom:1px solid var(--color-primary-800)}.admin-nav-header h2{margin:0;font-size:1.5rem;font-weight:600}.admin-nav-list{list-style:none;padding:0;margin:0;flex:1}.admin-nav-item{width:100%;padding:15px 20px;background:none;border:none;color:var(--color-neutral-100);text-align:left;cursor:pointer;display:flex;align-items:center;gap:12px;font-size:1rem;transition:background-color .2s ease}.admin-nav-item:hover{background-color:var(--color-primary-800)}.admin-nav-item.active{background-color:var(--color-primary-600);color:var(--color-secondary-50)}.nav-icon{font-size:1.2rem}.nav-label{flex:1}.welcome-message{margin-top:10px;font-size:.875rem;color:var(--color-neutral-300)}.admin-nav-footer{padding:20px;border-top:1px solid var(--color-primary-800)}.mobile-nav-header{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;background-color:var(--color-neutral-900)}.mobile-nav-brand h2{margin:0;font-size:1.25rem;font-weight:600}.mobile-nav-controls{display:flex;align-items:center;gap:15px}.mobile-welcome{font-size:.875rem;color:var(--color-neutral-300)}.hamburger-btn{background:none;border:none;cursor:pointer;padding:8px;width:40px;height:40px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;border-radius:4px;transition:background-color .2s ease}.hamburger-btn:hover{background-color:var(--color-white-alpha-10)}.hamburger-icon{color:var(--color-secondary-50);font-size:20px;font-weight:400;line-height:1}.hamburger-close{color:var(--color-secondary-50);font-size:18px;font-weight:700;line-height:1}.mobile-menu-overlay{position:absolute;top:100%;left:0;right:0;background-color:var(--color-primary-900);max-height:0;overflow:hidden;transition:max-height .3s ease;box-shadow:var(--shadow-md)}.mobile-menu-overlay.open{max-height:100vh}.mobile-nav-list{list-style:none;padding:0;margin:0}.mobile-nav-item{width:100%;padding:15px 20px;background:none;border:none;color:var(--color-neutral-100);text-align:left;cursor:pointer;display:flex;align-items:center;gap:12px;font-size:1rem;transition:background-color .2s ease;border-bottom:1px solid var(--color-primary-800)}.mobile-nav-item:hover{background-color:var(--color-primary-800)}.mobile-nav-item.active{background-color:var(--color-primary-600);color:var(--color-secondary-50)}.mobile-nav-footer{border-top:1px solid var(--color-primary-800)}.mobile-logout-btn{width:100%;padding:15px 20px;background:none;border:none;color:var(--color-error-500);text-align:left;cursor:pointer;font-size:1rem;font-weight:500;transition:background-color .2s ease}.mobile-logout-btn:hover{background-color:var(--color-primary-800)}.mobile-menu-backdrop{position:fixed;inset:0;background:var(--color-black-alpha-50);z-index:999}.admin-layout{display:flex;min-height:100vh}.admin-content{flex:1;margin-left:250px;padding:0;background-color:var(--color-secondary-50);min-height:100vh}.admin-content.with-nav{max-width:none;margin:0 0 0 250px}.admin-content h2{font-size:1.5rem;color:var(--text-dark);margin-bottom:1rem}.admin-content p{color:var(--text-medium);font-size:1.1rem}.success-message{background:var(--color-success-50);color:var(--color-success-700);padding:.75rem 1rem;border-radius:6px;margin-bottom:1.5rem;border:1px solid var(--color-success-500);font-weight:500}.blog-post-list{background:var(--color-secondary-50);border-radius:12px;box-shadow:var(--shadow-sm);overflow:hidden;margin-bottom:2rem}.blog-post-list-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid var(--color-neutral-200);background:var(--color-neutral-50)}.blog-post-list-header h3{margin:0;color:var(--text-dark);font-size:1.25rem}.header-actions{display:flex;gap:.75rem;align-items:center}.new-post-btn{padding:.5rem 1rem;background:var(--primary-teal);color:var(--color-secondary-50);border:none;border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s ease}.new-post-btn:hover{background:var(--primary-teal-dark);transform:translateY(-1px)}.refresh-btn{padding:.5rem 1rem;background:var(--color-secondary-50);border:1px solid var(--color-neutral-200);border-radius:6px;color:var(--text-medium);cursor:pointer;transition:all .2s ease}.refresh-btn:hover{border-color:var(--primary-teal);color:var(--primary-teal)}.blog-posts-table{width:100%}.table-header{display:grid;grid-template-columns:2fr 1fr 1fr 160px;gap:1rem;padding:1rem 2rem;background:var(--color-neutral-50);border-bottom:1px solid var(--color-neutral-200);font-weight:600;color:var(--text-medium);font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.table-row{display:grid;grid-template-columns:2fr 1fr 1fr 160px;gap:1rem;padding:1.5rem 2rem;border-bottom:1px solid var(--color-neutral-100);transition:background-color .2s ease}.table-row:hover{background:var(--color-neutral-50)}.table-row:last-child{border-bottom:none}.col-title h4{margin:0 0 .5rem;color:var(--text-dark);font-size:1rem;font-weight:600}.content-preview{margin:0;color:var(--text-light);font-size:.875rem;line-height:1.4}.col-date,.col-location{color:var(--text-medium);font-size:.875rem;display:flex;align-items:center}.col-actions{display:flex;gap:.5rem;align-items:center}.edit-btn{padding:.5rem 1rem;background:var(--primary-teal);color:var(--color-secondary-50);border:none;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s ease}.edit-btn:hover:not(:disabled){background:var(--primary-teal-dark);transform:translateY(-1px)}.edit-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.delete-btn{padding:.5rem 1rem;background:var(--color-error-600);color:var(--color-secondary-50);border:none;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s ease}.delete-btn:hover:not(:disabled){background:var(--color-error-600);transform:translateY(-1px)}.delete-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.delete-confirmation-overlay{position:fixed;inset:0;background:var(--color-black-alpha-50);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.delete-confirmation-dialog{background:var(--color-secondary-50);border-radius:12px;padding:2rem;max-width:400px;width:100%;box-shadow:var(--shadow-xl)}.delete-confirmation-dialog h3{margin:0 0 1rem;color:var(--text-dark);font-size:1.25rem}.delete-confirmation-dialog p{margin:0 0 1rem;color:var(--text-medium);line-height:1.5}.warning-text{color:var(--color-error-600)!important;font-weight:500;font-size:.875rem!important}.dialog-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem}.confirm-delete-btn{padding:.5rem 1rem;background:var(--color-error-600);color:var(--color-secondary-50);border:none;border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s ease}.confirm-delete-btn:hover:not(:disabled){background:var(--color-error-600)}.confirm-delete-btn:disabled{opacity:.6;cursor:not-allowed}.loading-state,.error-state,.no-posts{padding:3rem 2rem;text-align:center;color:var(--text-light)}.retry-btn{margin-top:1rem;padding:.5rem 1rem;background:var(--primary-teal);color:var(--color-secondary-50);border:none;border-radius:6px;cursor:pointer}.blog-post-editor{background:var(--color-secondary-50);border-radius:12px;box-shadow:var(--shadow-sm);overflow:hidden}.editor-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid var(--color-neutral-200);background:var(--color-neutral-50)}.editor-header h3{margin:0;color:var(--text-dark);font-size:1.25rem}.editor-actions{display:flex;gap:.75rem}.cancel-btn{padding:.5rem 1rem;background:var(--color-secondary-50);border:1px solid var(--color-neutral-200);border-radius:6px;color:var(--text-medium);cursor:pointer;transition:all .2s ease}.cancel-btn:hover{border-color:var(--color-neutral-300)}.save-btn{padding:.5rem 1rem;background:var(--primary-teal);color:var(--color-secondary-50);border:none;border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s ease}.save-btn:hover:not(:disabled){background:var(--primary-teal-dark)}.save-btn:disabled{opacity:.6;cursor:not-allowed}.blog-post-form{padding:2rem}.form-error{background:var(--color-error-50);color:var(--color-error-600);padding:.75rem 1rem;border-radius:6px;margin-bottom:1.5rem;border:1px solid var(--color-error-500)}.form-row{display:grid;grid-template-columns:2fr 1fr;gap:1rem;margin-bottom:1.5rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;color:var(--text-dark);font-weight:500;font-size:.875rem}.form-group input,.form-group textarea{width:100%;padding:.75rem;border:2px solid var(--color-neutral-300);border-radius:8px;font-size:.875rem;transition:all .2s ease;font-family:inherit;background-color:var(--color-neutral-50);color:var(--text-dark)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-teal);box-shadow:0 0 0 3px #967bb61a;background-color:#fff}.form-group input:hover:not(:focus),.form-group textarea:hover:not(:focus){border-color:var(--color-neutral-400);background-color:#fff}.form-group textarea{resize:vertical;line-height:1.5}.form-group input:disabled,.form-group textarea:disabled{background-color:var(--color-neutral-100);border-color:var(--color-neutral-200);color:var(--color-neutral-500);cursor:not-allowed}.form-info{background:var(--color-info-50);border:1px solid var(--color-info-500);border-radius:6px;padding:1rem;margin-top:1.5rem}.form-info p{margin:0 0 .5rem;color:var(--text-medium);font-size:.875rem}.form-info p:last-child{margin-bottom:0}.image-upload{margin-bottom:1.5rem}.image-upload-label{display:block;margin-bottom:.5rem;color:var(--text-dark);font-weight:500;font-size:.875rem}.image-upload-container{width:100%;min-height:200px;border:2px dashed var(--color-neutral-300);border-radius:8px;overflow:hidden;transition:all .2s ease}.image-upload-container:hover{border-color:var(--primary-teal)}.image-preview{position:relative;width:100%;height:200px}.preview-image{width:100%;max-height:40vh;min-height:200px;object-fit:contain;background:var(--color-secondary-50);display:block}.image-overlay{position:absolute;inset:0;background:transparent;display:flex;align-items:center;justify-content:center;gap:.75rem;opacity:1;transition:opacity .2s ease;pointer-events:none}.image-overlay .overlay-btn{pointer-events:all}.overlay-btn{padding:.5rem 1rem;border:none;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s ease;box-shadow:var(--shadow-sm);backdrop-filter:blur(10px)}.overlay-btn.upload-btn{background:var(--primary-teal);color:var(--color-secondary-50)}.overlay-btn.upload-btn:hover:not(:disabled){background:var(--primary-teal-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.overlay-btn.remove-btn{background:var(--color-error-600);color:var(--color-secondary-50)}.overlay-btn.remove-btn:hover:not(:disabled){background:var(--color-error-600);transform:translateY(-1px);box-shadow:var(--shadow-md)}.overlay-btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.image-placeholder{display:flex;align-items:center;justify-content:center;height:200px;background-color:var(--color-neutral-50)}.placeholder-content{text-align:center;color:var(--text-light)}.placeholder-icon{font-size:3rem;margin-bottom:.5rem}.placeholder-content p{margin:0 0 1rem;color:var(--text-medium)}.upload-placeholder-btn{padding:.5rem 1rem;background:var(--primary-teal);color:var(--color-secondary-50);border:none;border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s ease}.upload-placeholder-btn:hover:not(:disabled){background:var(--primary-teal-dark)}.upload-placeholder-btn:disabled{opacity:.6;cursor:not-allowed}.upload-error{background:var(--color-error-50);color:var(--color-error-600);padding:.75rem;border-radius:6px;margin-top:.5rem;border:1px solid var(--color-error-500);font-size:.875rem}.upload-info{background:var(--color-info-50);border:1px solid var(--color-info-500);border-radius:6px;padding:.75rem;margin-top:.5rem}.upload-info p{margin:0 0 .5rem;color:var(--text-medium);font-size:.875rem;font-weight:500}.upload-info ul{margin:0;padding-left:1.25rem;color:var(--text-medium);font-size:.8rem}.upload-info li{margin-bottom:.25rem}.admin-blog-post-card{margin-bottom:2rem;transition:all .3s ease}.admin-blog-post-card.editing{width:100%;max-width:none;position:relative;z-index:10}.admin-blog-post-card .blog-post-card{position:relative;background:var(--color-secondary-50);border-radius:12px;box-shadow:var(--shadow-md);overflow:hidden;transition:all .3s ease}.admin-blog-post-card.editing .blog-post-card{box-shadow:var(--shadow-lg);border:2px solid var(--primary-teal)}.blog-post-image-container{position:relative;width:100%;height:250px;overflow:hidden}.blog-post-image-container img{width:100%;max-height:40vh;object-fit:contain;background:var(--color-secondary-50)}.image-edit-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#111827cc);padding:15px}.image-url-edit{background:#111827b3;border-radius:8px;padding:8px}.image-url-edit .editable-field input{background:var(--color-white-alpha-90);border:1px solid rgba(248,246,255,.3);color:var(--color-neutral-800);font-size:.875rem}.blog-post-actions{display:flex;gap:.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-border-default);justify-content:flex-end}.blog-post-actions .edit-btn,.blog-post-actions .delete-btn,.blog-post-actions .save-btn,.blog-post-actions .cancel-btn{padding:.5rem 1rem;border:none;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s ease}.blog-post-actions .edit-btn{background:var(--primary-teal);color:var(--color-secondary-50)}.blog-post-actions .edit-btn:hover:not(:disabled){background:var(--primary-teal-dark);transform:translateY(-1px)}.blog-post-actions .delete-btn{background:var(--color-error-600);color:var(--color-secondary-50)}.blog-post-actions .delete-btn:hover:not(:disabled){background:var(--color-error-600);transform:translateY(-1px)}.blog-post-actions .save-btn{background:var(--color-success-600);color:var(--color-secondary-50)}.blog-post-actions .save-btn:hover:not(:disabled){background:var(--color-success-700);transform:translateY(-1px)}.blog-post-actions .cancel-btn{background:var(--color-neutral-500);color:var(--color-secondary-50)}.blog-post-actions .cancel-btn:hover:not(:disabled){background:var(--color-neutral-600);transform:translateY(-1px)}.blog-post-actions button:disabled{opacity:.6;cursor:not-allowed;transform:none}.blog-post-meta-editing{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-neutral-100)}.meta-field{margin-bottom:.75rem}.meta-field label{display:block;font-size:.875rem;font-weight:500;color:var(--text-medium);margin-bottom:.25rem}.admin-blog-post-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:2rem;margin:2rem;padding:0 1rem}.admin-blog-post-grid.editing-mode{grid-template-columns:1fr;max-width:none;margin:2rem auto;padding:0 2rem;width:90%;max-width:1200px}.admin-blog-post-grid.editing-mode .admin-blog-post-card:not(.editing){display:none}.admin-blog-post-editor{min-height:100vh;background:var(--color-bg-secondary)}.blog-post-editor-header{background:var(--color-secondary-50);padding:1.5rem 2rem;border-bottom:1px solid var(--color-neutral-200);box-shadow:var(--shadow-xs)}.blog-post-editor-header h3{margin:0;font-size:1.5rem;color:var(--text-dark);font-weight:600}.blog-post-image-section{padding:1.5rem;border-bottom:1px solid var(--color-neutral-200)}.image-upload-label{display:block;font-size:.875rem;font-weight:500;color:var(--text-medium);margin-bottom:.75rem}@media (max-width: 1024px){.admin-content{padding:0 1rem}.table-header,.table-row{grid-template-columns:2fr 1fr 140px}.col-date,.col-location{font-size:.8rem}.col-actions{gap:.25rem}.edit-btn,.delete-btn{padding:.4rem .75rem;font-size:.8rem}}@media (max-width: 768px){.admin-navigation.desktop-nav{display:none}.admin-navigation.mobile-nav{display:block}.admin-layout{flex-direction:column}.admin-content,.admin-content.with-nav{margin-left:0;margin-top:60px}.mobile-welcome{display:none}.admin-blog-post-grid{grid-template-columns:1fr;gap:1rem;margin:1rem;padding:0 .5rem}.admin-blog-post-grid.editing-mode{margin:1rem;padding:0 .5rem;max-width:none}.blog-post-editor-header{padding:1rem}.blog-post-editor-header h3{font-size:1.25rem}.blog-post-image-section{padding:1rem}.blog-post-actions{flex-direction:column;gap:.75rem}.blog-post-actions button{width:100%;justify-content:center;padding:.75rem}.blog-post-list-header{flex-direction:column;gap:1rem;text-align:center;padding:1rem}.header-actions{justify-content:center;flex-wrap:wrap}.blog-posts-table{display:block}.table-header{display:none}.table-row{display:block;background:var(--color-secondary-50);border:1px solid var(--color-neutral-200);border-radius:8px;margin-bottom:1rem;padding:1rem;box-shadow:var(--shadow-sm)}.table-row:hover{background:var(--color-secondary-50);box-shadow:var(--shadow-md)}.col-title,.col-date,.col-location,.col-actions{display:block;padding:.5rem 0}.col-title h4{margin-bottom:.25rem;font-size:1.1rem}.col-date,.col-location{display:flex;align-items:center;margin-bottom:.5rem}.col-date:before{content:"📅 ";margin-right:.5rem}.col-location:before{content:"📍 ";margin-right:.5rem}.col-actions{border-top:1px solid var(--color-neutral-100);padding-top:1rem;margin-top:.5rem;justify-content:flex-end}.form-row{grid-template-columns:1fr}.editor-header{flex-direction:column;gap:1rem;text-align:center;padding:1rem}.editor-actions{justify-content:center}.blog-post-form{padding:1rem}.delete-confirmation-dialog{margin:1rem;padding:1.5rem}}@media (max-width: 480px){.admin-login-container{padding:1rem .5rem}.admin-login-box{padding:1.5rem 1rem;margin:0 1rem;max-width:calc(100% - 2rem)}.mobile-nav-brand h2{font-size:1.1rem}.mobile-welcome{display:none}.admin-content h2{font-size:1.25rem;text-align:center}.header-actions{flex-direction:column;width:100%}.new-post-btn,.refresh-btn{width:100%;justify-content:center}.table-row{margin-bottom:1rem;padding:.75rem}.col-title h4{font-size:1rem}.content-preview{font-size:.8rem}.col-actions{flex-direction:column;gap:.5rem}.edit-btn,.delete-btn{width:100%;justify-content:center;padding:.75rem}.editor-header h3{font-size:1.1rem}.editor-actions{flex-direction:column;width:100%}.cancel-btn,.save-btn{width:100%;justify-content:center;padding:.75rem}.blog-post-form{padding:.75rem}.form-group label{font-size:.9rem;font-weight:600}.form-group input,.form-group textarea{font-size:1rem;padding:.875rem}.delete-confirmation-dialog{margin:.5rem;padding:1rem}.delete-confirmation-dialog h3{font-size:1.1rem}.dialog-actions{flex-direction:column;gap:.5rem}.cancel-btn,.confirm-delete-btn{width:100%;justify-content:center;padding:.75rem}}.admin-dashboard .preview-content .hero-title .editable-field,.admin-dashboard .preview-content .hero-title input,.admin-dashboard .preview-content .hero-title textarea,.admin-dashboard .preview-content .nav-logo .editable-field,.admin-dashboard .preview-content .nav-logo input,.admin-dashboard .preview-content .nav-logo textarea,.admin-dashboard .preview-content .stat-card h3 .editable-field,.admin-dashboard .preview-content .stat-card h3 input,.admin-dashboard .preview-content .stat-card h3 textarea{-webkit-text-fill-color:var(--text-dark);color:var(--text-dark);background:var(--color-white-alpha-90);-webkit-background-clip:initial;background-clip:initial;border:1px solid var(--primary-teal);border-radius:4px;padding:4px 8px}.admin-dashboard .preview-content .btn .editable-field,.admin-dashboard .preview-content .btn input,.admin-dashboard .preview-content .btn textarea{color:var(--text-dark);-webkit-text-fill-color:var(--text-dark);background:var(--color-white-alpha-90);border:1px solid var(--primary-teal);border-radius:4px;padding:4px 8px;margin:0;display:inline-block;min-width:80px;text-align:center}.admin-dashboard .preview-content .editable-field input,.admin-dashboard .preview-content .editable-field textarea,.admin-dashboard .preview-content input[type=text],.admin-dashboard .preview-content input[type=email],.admin-dashboard .preview-content textarea{color:var(--text-dark);-webkit-text-fill-color:var(--text-dark);background:var(--color-bg-primary);border:1px solid var(--color-neutral-200);border-radius:4px;padding:6px 10px;font-family:inherit;font-size:inherit;line-height:inherit;box-shadow:var(--shadow-xs)}.admin-dashboard .preview-content .editable-field input:focus,.admin-dashboard .preview-content .editable-field textarea:focus,.admin-dashboard .preview-content input[type=text]:focus,.admin-dashboard .preview-content input[type=email]:focus,.admin-dashboard .preview-content textarea:focus{outline:2px solid var(--primary-teal);outline-offset:1px;border-color:var(--primary-teal);box-shadow:0 0 0 3px var(--color-white-alpha-10)}@media (min-width: 769px) and (max-width: 1024px){.container,.hero-content{padding:0 1.5rem}.profile-section{gap:3rem}.blog-grid,.research-grid,.contact-grid{grid-template-columns:repeat(2,1fr)}.mobile-menu-toggle{display:flex}.nav-menu{position:fixed;top:50px;left:0;width:100%;background:#fff;flex-direction:column;box-shadow:var(--shadow-md);padding:1rem 0;transform:translateY(-100%);transition:transform .3s ease;opacity:0;visibility:hidden;z-index:1000}#about,#blog,#contact{padding-top:70px}.nav-menu.active{transform:translateY(0);opacity:1;visibility:visible}.nav-menu li{margin:0;text-align:center}.nav-link{display:block;padding:1rem 2rem;font-size:1.1rem;border-bottom:1px solid var(--color-border-light)}.nav-link:last-child{border-bottom:none}.nav-link:after{display:none}.menu-overlay{display:block}}@media (max-width: 768px){.nav-container{padding:0 1rem}.nav-logo{font-size:1.2rem}.mobile-menu-toggle{display:flex}.nav-menu{position:fixed;top:50px;left:0;width:100%;background:#fff;flex-direction:column;box-shadow:var(--shadow-md);padding:1rem 0;transform:translateY(-100%);transition:transform .3s ease;opacity:0;visibility:hidden;z-index:1000}#about,#blog,#contact{padding-top:50px}.nav-menu.active{transform:translateY(0);opacity:1;visibility:visible}.nav-menu li{margin:0;text-align:center}.nav-link{display:block;padding:1rem 2rem;font-size:1.1rem;border-bottom:1px solid var(--color-border-light)}.nav-link:last-child{border-bottom:none}.nav-link:after{display:none}.menu-overlay{display:block}.hero-section{padding-top:60px}.profile-section{flex-direction:column;text-align:center;gap:2rem}.profile-image{width:150px;height:150px}.hero-title{font-size:1.75rem}.hero-subtitle{font-size:1.1rem}.hero-description{font-size:1rem;margin-bottom:1.5rem}.hero-buttons{justify-content:center;flex-direction:column;gap:.75rem}.section{padding:3rem 0}.section#about,.section#blog,.section#contact{padding-top:70px}.container{padding:0 1.5rem}.section-title{font-size:2rem;margin-bottom:2rem}.title-icon{font-size:2rem}.section-content{font-size:1rem}.about-text p{font-size:1rem;margin-bottom:2rem}.stats-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}.stat-card{padding:1.5rem}.stat-card h3{font-size:2rem}.section.blog-section{padding:4rem 0}.section#blog{padding-top:70px}.blog-grid,.research-grid{grid-template-columns:1fr;gap:1.5rem;margin-top:2rem}.contact-text p{font-size:1rem;margin-bottom:2rem}.contact-grid{grid-template-columns:1fr;gap:1.5rem;margin-top:2rem}.contact-card{padding:1.5rem}}@media (max-width: 480px){.nav-container{padding:0 .75rem}.nav-logo{font-size:1rem}.hero-content{padding:0 1rem}.profile-image{width:120px;height:120px}.hero-title{font-size:1.5rem}.hero-subtitle{font-size:1rem}.hero-description{font-size:.95rem}.btn{padding:.6rem 1.5rem;font-size:.9rem}.section{padding:2rem 0}.container{padding:0 1rem}.section-title{font-size:1.75rem;margin-bottom:1.5rem}.title-icon{font-size:1.75rem}.section-content{font-size:.95rem}.stats-grid{grid-template-columns:1fr}.stat-card{padding:1.25rem}.stat-card h3{font-size:1.75rem}.blog-grid,.research-grid{gap:1rem}.card-content,.post-content{padding:1.5rem}.contact-grid{gap:1rem}.contact-card{padding:1.25rem}.contact-icon{font-size:1.75rem}.research-card h3,.post-content h3{font-size:1.2rem}.research-card p,.post-content p:not(.post-date){font-size:1rem}}.project-detail-page .project-container{padding-left:var(--space-8)!important;padding-right:var(--space-8)!important}@media (min-width: 1280px){.project-detail-page .project-container{padding-left:var(--space-32)!important;padding-right:var(--space-32)!important}}.glass-card{background:var(--glass-bg-light);backdrop-filter:blur(10px) saturate(120%);-webkit-backdrop-filter:blur(10px) saturate(120%);border:1px solid var(--glass-border);border-radius:var(--radius-2xl);padding:var(--space-6);box-shadow:var(--shadow-elevation-3);transition:all .3s ease;position:relative;overflow:hidden;z-index:var(--z-content)}.glass-card:before{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(150,123,182,.08) 0%,transparent 70%);transform:rotate(45deg);pointer-events:none;opacity:0;transition:opacity .3s ease}.glass-card--light{background:#f8f6ffb3;border-color:#967bb633}.glass-card--medium{background:#f8f6ffd9;border-color:#967bb640}.glass-card--dark{background:#f8f6fff2;border-color:#967bb64d}.glass-card--blur-sm{backdrop-filter:blur(6px) saturate(110%);-webkit-backdrop-filter:blur(6px) saturate(110%)}.glass-card--blur-md{backdrop-filter:blur(10px) saturate(120%);-webkit-backdrop-filter:blur(10px) saturate(120%)}.glass-card--blur-lg{backdrop-filter:blur(16px) saturate(130%);-webkit-backdrop-filter:blur(16px) saturate(130%)}.glass-card--hoverable:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover-lift);border-color:#967bb64d}.glass-card--hoverable:hover:before{opacity:1}.glass-card[role=button]{cursor:pointer}.glass-card[role=button]:focus{outline:2px solid var(--color-primary-500);outline-offset:2px}.glass-card[role=button]:active{transform:translateY(-2px);box-shadow:var(--shadow-elevation-2)}.glass-card>*:first-child{margin-top:0}.glass-card>*:last-child{margin-bottom:0}@supports not (backdrop-filter: blur(10px)){.glass-card{background:#f8f6fff2;box-shadow:var(--shadow-elevation-4)}.glass-card--light{background:#f8f6ffe6}.glass-card--medium{background:#f8f6fff2}.glass-card--dark{background:#f8f6fffa}}@media (prefers-reduced-motion: reduce){.glass-card{transition:none}.glass-card:before{transition:none}.glass-card--hoverable:hover{transform:none}}@media (prefers-color-scheme: dark){.glass-card{background:#5b4e7b33;border-color:#967bb64d}.glass-card--light{background:#5b4e7b26}.glass-card--medium{background:#5b4e7b40}.glass-card--dark{background:#5b4e7b59}}.layered-background{position:fixed;inset:0;z-index:var(--z-background);overflow:hidden;pointer-events:none}.layered-background__base{position:absolute;inset:0;background:linear-gradient(135deg,var(--color-primary-800) 0%,var(--color-secondary-500) 100%);opacity:1}.layered-background__ambient{position:absolute;inset:0;background:radial-gradient(ellipse at top right,rgba(150,123,182,.5) 0%,transparent 60%),radial-gradient(ellipse at bottom left,rgba(91,78,123,.4) 0%,transparent 60%);opacity:.8}.layered-background__pattern{position:absolute;inset:0;opacity:.5;background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.05) 0px,rgba(255,255,255,.05) 35px,transparent 35px,transparent 70px)}.blog-section{padding:80px 0;position:relative;z-index:var(--z-content)}.blog-posts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:30px;margin-top:40px}.blog-post-card{background:var(--color-bg-primary);border-radius:15px;overflow:hidden;box-shadow:var(--shadow-sm);transition:all .3s ease;border:1px solid var(--color-border-light)}.blog-post-card:hover{transform:translateY(-10px);box-shadow:var(--shadow-lg);border-color:var(--color-primary-500)}.blog-post-card img{width:100%;max-height:40vh;min-height:250px;object-fit:contain;background:var(--color-bg-primary);transition:transform .3s ease}.blog-post-card:hover img{transform:scale(1.05)}.blog-post-content{padding:25px}.blog-post-content h3{margin:0 0 15px;color:var(--color-text-primary);font-size:1.4em;line-height:1.3}.blog-post-meta{display:flex;gap:20px;margin-bottom:15px;font-size:.9em;color:var(--color-text-muted)}.blog-post-meta .date{font-weight:500}.blog-post-meta .location{position:relative}.blog-post-content p{color:var(--color-text-secondary);line-height:1.7;margin-bottom:20px;text-align:justify}.extended-content{margin-top:15px;padding-top:15px}.extended-content p{color:var(--color-text-muted);font-style:italic;text-align:justify}.read-more-btn{background:linear-gradient(135deg,var(--color-primary-500) 0%,var(--color-primary-600) 100%);color:var(--color-text-inverse);border:none;padding:.75rem 2rem;border-radius:50px;cursor:pointer;font-weight:600;transition:all .3s ease;font-size:inherit;font-family:inherit;box-shadow:var(--shadow-md)}.read-more-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);background:linear-gradient(135deg,var(--color-primary-600) 0%,var(--color-primary-500) 100%)}.read-more-btn:focus{outline:none;box-shadow:0 0 0 3px var(--color-white-alpha-10)}.no-posts-state{text-align:center;padding:60px 20px;margin-top:40px}.no-posts-state p{font-size:1.1em;color:var(--color-text-muted);margin:0}@media (max-width: 768px){.blog-posts-grid{grid-template-columns:1fr;gap:1.5rem}.blog-post-card{margin:0}.blog-post-content{padding:1.5rem}.blog-post-content h3{font-size:1.2rem}.read-more-btn{padding:.6rem 1.5rem;font-size:.9rem}}@media (max-width: 480px){.blog-posts-grid{gap:1rem}.blog-post-content{padding:1.25rem}.blog-post-content h3{font-size:1.1rem}.blog-post-meta{font-size:.85rem}.blog-post-content p{font-size:.95rem}}.blog-post-content .markdown-content h1{font-size:1.8rem}.blog-post-content .markdown-content h2{font-size:1.5rem}.blog-post-content .markdown-content h3{font-size:1.3rem}.blog-post-content .markdown-content h4{font-size:1.2rem}.blog-post-content .markdown-content h5{font-size:1.1rem}.blog-post-content .markdown-content h6{font-size:1rem}.blog-post-content .markdown-content p,.blog-post-content .markdown-content li{color:var(--color-text-secondary)}.blog-post-content .markdown-content blockquote p{font-size:1rem}.blog-post-content .markdown-content code{font-size:.85em}.blog-post-content .markdown-content strong{color:var(--color-text-primary)}.blog-post-content .markdown-content em{color:var(--color-text-muted)}
