:root{--font-heading: "Outfit", sans-serif;--font-body: "Inter", sans-serif;--bg-primary: #0a0a0c;--bg-secondary: #121216;--bg-tertiary: #1a1a22;--bg-glass: rgba(18, 18, 22, .7);--border-color: rgba(255, 255, 255, .08);--border-focus: rgba(99, 102, 241, .5);--text-primary: #f8fafc;--text-secondary: #94a3b8;--text-muted: #64748b;--primary: #6366f1;--primary-hover: #4f46e5;--primary-glow: rgba(99, 102, 241, .15);--accent: #10b981;--accent-glow: rgba(16, 185, 129, .15);--error: #f43f5e;--success: #10b981;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-glow: 0 0 20px rgba(99, 102, 241, .2);--border-radius-sm: 6px;--border-radius-md: 12px;--border-radius-lg: 20px;--border-radius-full: 9999px;--transition-fast: .2s ease;--transition-normal: .3s cubic-bezier(.4, 0, .2, 1);--transition-slow: .5s cubic-bezier(.4, 0, .2, 1)}[data-theme=light]{--bg-primary: #f8fafc;--bg-secondary: #ffffff;--bg-tertiary: #f1f5f9;--bg-glass: rgba(255, 255, 255, .7);--border-color: rgba(0, 0, 0, .08);--border-focus: rgba(99, 102, 241, .3);--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #94a3b8;--primary-glow: rgba(99, 102, 241, .1);--accent-glow: rgba(16, 185, 129, .1)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-marquee{display:flex;width:max-content;animation:marquee 30s linear infinite}.animate-marquee:hover{animation-play-state:paused}.animate-spin{animation:spin 1s linear infinite}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.reveal{opacity:0;transform:translateY(30px);transition:opacity .8s cubic-bezier(.21,1.02,.43,1.01),transform .8s cubic-bezier(.21,1.02,.43,1.01)}.reveal.active{opacity:1;transform:translateY(0)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px;background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-body);transition:background-color var(--transition-normal),color var(--transition-normal)}body{overflow-x:hidden;min-height:100vh;line-height:1.6;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700;line-height:1.2;color:var(--text-primary)}a{color:inherit;text-decoration:none;transition:color var(--transition-fast)}img{max-width:100%;height:auto;display:block}button,input,textarea,select{font:inherit;color:inherit;background:none;border:none;outline:none}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:var(--border-radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.glass-panel{background:var(--bg-glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-color);border-radius:var(--border-radius-md)}.glass-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);padding:2.5rem;transition:transform var(--transition-normal),border-color var(--transition-normal),box-shadow var(--transition-normal)}.glass-card:hover{transform:translateY(-5px);border-color:var(--border-focus);box-shadow:var(--shadow-glow)}.container{width:100%;max-width:1280px;margin:0 auto;padding:0 1.5rem}.section{padding:8rem 0}.flex-center{display:flex;align-items:center;justify-content:center}.grid-cols-2{display:grid;grid-template-columns:repeat(2,1fr);gap:2.5rem}.grid-cols-3{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem}.grid-cols-4{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem}@media (max-width: 1024px){.grid-cols-4,.grid-cols-3{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:1fr}.section{padding:5rem 0}}.gradient-text{background:linear-gradient(135deg,var(--primary),var(--accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent}.material-symbols-outlined{font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24}.italic-lime{font-style:italic;color:#c8f135}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.marquee-track{display:flex;gap:4rem;white-space:nowrap;animation:marquee 22s linear infinite;width:max-content}@keyframes floatUp{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.float-1{animation:floatUp 3s ease-in-out infinite}.float-2{animation:floatUp 4s ease-in-out infinite}.float-3{animation:floatUp 5s ease-in-out 1s infinite}.hover-card{transition:transform .3s ease,box-shadow .3s ease}.hover-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #0000001a}.proj-card{transition:transform .3s cubic-bezier(.25,1,.5,1),box-shadow .3s ease,border-color .3s ease!important}.proj-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px #00000014;border-color:#526600!important}.proj-card:hover .proj-arrow-icon{transform:translateY(4px)}.nav-active{color:#526600;font-weight:700;border-bottom:2px solid #526600}.step-card{transition:background .3s ease}.step-card:hover{background:#fafbe733}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.fade-in-up{animation:fadeInUp .7s ease both}.portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;width:100%}.portfolio-card{position:relative;aspect-ratio:4 / 3;border-radius:16px;overflow:hidden;cursor:pointer;background-color:var(--surface);border:1px solid #c5c9ae;transition:transform .4s cubic-bezier(.25,1,.5,1),box-shadow .4s ease,border-color .4s ease}.portfolio-card:hover{transform:translateY(-6px);box-shadow:0 20px 40px #1a1d111f;border-color:#526600}.portfolio-card-img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s cubic-bezier(.25,1,.5,1)}.portfolio-card:hover .portfolio-card-img{transform:scale(1.05)}.portfolio-card-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#1a1d11e0;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;flex-direction:column;justify-content:space-between;padding:28px;box-sizing:border-box;opacity:0;visibility:hidden;transition:opacity .4s cubic-bezier(.25,1,.5,1),visibility .4s cubic-bezier(.25,1,.5,1);z-index:2}.portfolio-card:hover .portfolio-card-overlay{opacity:1;visibility:visible}.portfolio-overlay-top{transform:translateY(-10px);opacity:0;transition:transform .4s cubic-bezier(.25,1,.5,1),opacity .4s cubic-bezier(.25,1,.5,1)}.portfolio-overlay-bottom{transform:translateY(15px);opacity:0;transition:transform .4s cubic-bezier(.25,1,.5,1),opacity .4s cubic-bezier(.25,1,.5,1);transition-delay:.05s}.portfolio-card:hover .portfolio-overlay-top,.portfolio-card:hover .portfolio-overlay-bottom{transform:translateY(0);opacity:1}.portfolio-badges-row{display:flex;flex-wrap:wrap;gap:8px}.portfolio-badge{background:#ffffff1f;border:1px solid rgba(255,255,255,.2);color:#fff;padding:4px 12px;border-radius:9999px;font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;font-family:var(--font-body);transition:background .3s ease,border-color .3s ease}.portfolio-badge:hover{background:#fff3;border-color:#fff6}.portfolio-footer-row{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;width:100%}.portfolio-card-title{color:#fff;font-family:var(--font-heading);font-size:22px;font-weight:600;margin:0;line-height:1.3}.portfolio-arrow-btn{background:#c8f135;color:#1a1d11;width:44px;height:44px;min-width:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background .3s cubic-bezier(.25,1,.5,1),transform .3s cubic-bezier(.25,1,.5,1),color .3s ease}.portfolio-card:hover .portfolio-arrow-btn{transform:rotate(0)}.portfolio-arrow-btn:hover{background:#fff;color:#1a1d11;transform:scale(1.08)}@media (max-width: 1024px){.portfolio-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.portfolio-grid{grid-template-columns:1fr}.portfolio-card{aspect-ratio:4 / 3}}
