@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=JetBrains+Mono:wght@400;500;700&display=swap";*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--clr-bg:#080b12;--clr-surface:#0d1220;--clr-surface-2:#131929;--clr-border:#ffffff0f;--clr-border-hover:#8b5cf659;--clr-primary:#8b5cf6;--clr-primary-light:#a78bfa;--clr-accent:#6366f1;--clr-accent-2:#06b6d4;--clr-text:#e2e8f0;--clr-text-muted:#94a3b8;--clr-text-dim:#475569;--grad-primary:linear-gradient(135deg, #8b5cf6, #6366f1);--grad-card:linear-gradient(135deg, #8b5cf614, #6366f10a);--font-sans:"Inter", system-ui, sans-serif;--font-mono:"JetBrains Mono", "Fira Code", monospace;--section-pad:6rem;--container-max:1140px;--radius-sm:8px;--radius-md:14px;--radius-lg:22px;--ease:cubic-bezier(.4, 0, .2, 1);--dur:.3s}html{scroll-behavior:smooth}body{font-family:var(--font-sans);background-color:var(--clr-bg);color:var(--clr-text);line-height:1.65;overflow-x:hidden}::selection{color:#fff;background:#8b5cf666}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--clr-bg)}::-webkit-scrollbar-thumb{background:var(--clr-primary);border-radius:99px}img,svg{display:block}a{color:inherit;text-decoration:none}.section-container{max-width:var(--container-max);margin:0 auto;padding:0 1.5rem}.section{padding:var(--section-pad) 0}.section-header{text-align:center;margin-bottom:4rem}.section-tag{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--clr-primary);background:#8b5cf61a;border:1px solid #8b5cf640;border-radius:50px;margin-bottom:1rem;padding:.35rem 1rem;font-size:.75rem;font-weight:700;display:inline-block}.section-title{letter-spacing:-.03em;background:linear-gradient(135deg, #fff 30%, var(--clr-text-muted) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:.75rem;font-size:clamp(2rem,4vw,2.75rem);font-weight:800;line-height:1.15}.section-subtitle{color:var(--clr-text-muted);font-size:1.0625rem}.btn{cursor:pointer;transition:all var(--dur) var(--ease);white-space:nowrap;font-size:.9375rem;font-weight:600;font-family:var(--font-sans);border:none;border-radius:50px;align-items:center;gap:.5rem;padding:.75rem 1.75rem;display:inline-flex}.btn svg{width:18px;height:18px;transition:transform var(--dur) var(--ease)}.btn:hover svg{transform:translate(3px)}.btn-primary{background:var(--grad-primary);color:#fff;box-shadow:0 4px 20px #8b5cf659}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 28px #8b5cf68c}.btn-outline{color:var(--clr-text);border:1.5px solid var(--clr-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:0 0}.btn-outline:hover{border-color:var(--clr-primary);color:var(--clr-primary-light);background:#8b5cf614;transform:translateY(-2px)}.btn-secondary{color:var(--clr-text-muted);border:1.5px solid var(--clr-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0a}.btn-secondary:hover{color:var(--clr-text);background:#8b5cf61a;border-color:#8b5cf666;transform:translateY(-2px);box-shadow:0 4px 20px #8b5cf626}.btn-secondary:hover svg{transform:translateY(3px)}.btn-full{justify-content:center;width:100%}.logo-bracket{color:var(--clr-primary)}.reveal{opacity:0;transition:opacity .5s var(--ease), transform .5s var(--ease);transform:translateY(20px)}.reveal.visible{opacity:1;transform:translateY(0)}@keyframes pulse-dot{0%,to{box-shadow:0 0 #22c55e99}50%{box-shadow:0 0 0 6px #22c55e00}}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@keyframes spin-ring{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes float-tag{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes bounce-scroll{0%,to{opacity:1;transform:translate(-50%)translateY(0)}50%{opacity:.5;transform:translate(-50%)translateY(8px)}}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-8px)}40%{transform:translate(8px)}60%{transform:translate(-6px)}80%{transform:translate(6px)}}@media (width<=768px){:root{--section-pad:4rem}}.navbar{z-index:100;transition:background var(--dur) var(--ease), backdrop-filter var(--dur) var(--ease), box-shadow var(--dur) var(--ease);padding:1rem 0;position:fixed;top:0;left:0;right:0}.navbar.scrolled{-webkit-backdrop-filter:blur(20px);box-shadow:0 1px 0 var(--clr-border);background:#080b12e0}.nav-container{max-width:var(--container-max);justify-content:space-between;align-items:center;margin:0 auto;padding:0 1.5rem;display:flex}.nav-logo{font-family:var(--font-mono);letter-spacing:-.02em;transition:color var(--dur) var(--ease);font-size:1.3rem;font-weight:700}.nav-logo:hover{color:var(--clr-primary-light)}.nav-links{gap:.25rem;list-style:none;display:flex}.nav-link{color:var(--clr-text-muted);border-radius:var(--radius-sm);transition:color var(--dur) var(--ease), background var(--dur) var(--ease);padding:.5rem .875rem;font-size:.875rem;font-weight:500;display:block}.nav-link:hover,.nav-link.active{color:var(--clr-text);background:#8b5cf61f}.nav-link.active{color:var(--clr-primary-light)}.hamburger{cursor:pointer;z-index:101;background:0 0;border:none;flex-direction:column;gap:5px;padding:6px;display:none}.hamburger span{background:var(--clr-text);width:24px;height:2px;transition:all var(--dur) var(--ease);border-radius:2px;display:block}.hamburger.open span:first-child{transform:translateY(7px)rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0;transform:scaleX(0)}.hamburger.open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}@media (width<=768px){.hamburger{display:flex}.nav-links{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:99;background:#080b12f7;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;display:none;position:fixed;inset:0}.nav-links.open{display:flex}.nav-link{padding:.75rem 2rem;font-size:1.25rem}}.hero{flex-direction:column;justify-content:center;align-items:center;min-height:100svh;padding:7rem 1.5rem 4rem;display:flex;position:relative;overflow:hidden}.hero-bg-grid{pointer-events:none;background-image:linear-gradient(#8b5cf60a 1px,#0000 1px),linear-gradient(90deg,#8b5cf60a 1px,#0000 1px);background-size:60px 60px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 80% at 50% 0,#000 30%,#0000 100%);mask-image:radial-gradient(80% 80% at 50% 0,#000 30%,#0000 100%)}.hero-orb{filter:blur(80px);pointer-events:none;border-radius:50%;transition:transform .1s linear;position:absolute}.hero-orb-1{background:radial-gradient(circle,#8b5cf62e,#0000 70%);width:600px;height:600px;top:-200px;left:-200px}.hero-orb-2{background:radial-gradient(circle,#6366f11f,#0000 70%);width:500px;height:500px;bottom:-150px;right:-100px}.hero-orb-3{background:radial-gradient(circle,#06b6d41a,#0000 70%);width:300px;height:300px;top:40%;left:45%}.hero-container{max-width:var(--container-max);z-index:1;grid-template-columns:1fr 1fr;align-items:center;gap:4rem;width:100%;margin:0 auto;display:grid;position:relative}.hero-content{max-width:560px}.hero-badge{color:var(--clr-text-muted);border:1px solid var(--clr-border);background:#ffffff0a;border-radius:50px;align-items:center;gap:.5rem;margin-bottom:1.5rem;padding:.4rem 1rem;font-size:.8125rem;font-weight:500;display:inline-flex}.badge-dot{background:#22c55e;border-radius:50%;flex-shrink:0;width:8px;height:8px;animation:2s infinite pulse-dot}.hero-greeting{color:var(--clr-text-muted);margin-bottom:.25rem;font-size:1.125rem}.hero-name{letter-spacing:-.04em;background:linear-gradient(135deg, #fff 0%, var(--clr-primary-light) 60%, var(--clr-accent-2) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:.75rem;font-size:clamp(3rem,6vw,4.5rem);font-weight:900;line-height:1}.hero-title-wrapper{font-family:var(--font-mono);color:var(--clr-primary-light);align-items:center;gap:.25rem;min-height:2rem;margin-bottom:1.5rem;font-size:clamp(1rem,2vw,1.25rem);display:flex}.hero-title-prefix{color:var(--clr-text-muted)}.cursor-blink{color:var(--clr-primary);animation:1s step-end infinite blink}.hero-description{color:var(--clr-text-muted);max-width:480px;margin-bottom:2.25rem;font-size:1.0625rem;line-height:1.75}.hero-actions{flex-wrap:wrap;gap:1rem;margin-bottom:2.5rem;display:flex}.hero-socials{gap:.75rem;display:flex}.social-link{border-radius:var(--radius-sm);border:1px solid var(--clr-border);width:42px;height:42px;color:var(--clr-text-muted);transition:all var(--dur) var(--ease);background:#ffffff0a;justify-content:center;align-items:center;display:flex}.social-link svg{width:18px;height:18px}.social-link:hover{border-color:var(--clr-primary);color:var(--clr-primary-light);background:#8b5cf61a;transform:translateY(-2px)}.hero-visual{flex-direction:column;align-items:center;gap:2rem;display:flex}.avatar-wrapper{justify-content:center;align-items:center;width:280px;height:280px;display:flex;position:relative}.avatar-ring{border:1.5px solid #8b5cf633;border-radius:50%;animation:12s linear infinite spin-ring;position:absolute;inset:-30px}.avatar-ring-2{border-color:#6366f11f;animation-duration:20s;animation-direction:reverse;inset:-75px}.avatar-circle{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);width:230px;height:230px;transform-style:preserve-3d;background:linear-gradient(135deg,#8b5cf640,#6366f126);border:2px solid #8b5cf64d;border-radius:50%;justify-content:center;align-items:center;display:flex;box-shadow:0 0 60px #8b5cf633,inset 0 1px #ffffff1a}.avatar-initials{font-family:var(--font-mono);letter-spacing:-.04em;background:var(--grad-primary);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:4rem;font-weight:800;transform:translateZ(45px)}.floating-tag{border:1px solid var(--clr-border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);color:var(--clr-text);white-space:nowrap;background:#0d1220e6;border-radius:50px;align-items:center;gap:.35rem;padding:.4rem .875rem;font-size:.8125rem;font-weight:600;animation:4s ease-in-out infinite float-tag;display:flex;position:absolute}.tag-icon{font-size:1rem}.tag-1{animation-delay:0s;top:5%;right:-20px}.tag-2{animation-delay:1s;bottom:15%;left:-48px}.tag-3{animation-delay:2s;top:55%;right:-77px}.tag-4{animation-delay:.5s;top:-11%;left:16%}.tag-5{animation-delay:1.5s;bottom:-33px;right:29px}.tag-6{animation-delay:.5s;top:25%;right:96%}.stat-cards{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.stat-card{border:1px solid var(--clr-border);border-radius:var(--radius-md);text-align:center;transition:all var(--dur) var(--ease);background:#ffffff08;min-width:100px;padding:1rem 1.25rem}.stat-card:hover{border-color:var(--clr-border-hover);background:#8b5cf60f;transform:translateY(-3px)}.stat-number{letter-spacing:-.03em;background:var(--grad-primary);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1.75rem;font-weight:800;display:block}.stat-label{color:var(--clr-text-muted);margin-top:.2rem;font-size:.75rem;display:block}.scroll-indicator{color:var(--clr-text-dim);letter-spacing:.06em;text-transform:uppercase;flex-direction:column;align-items:center;gap:.5rem;font-size:.75rem;font-weight:500;animation:2.5s ease-in-out infinite bounce-scroll;display:flex;position:absolute;bottom:2rem;left:50%;transform:translate(-50%)}.scroll-dot{background:var(--clr-primary);border-radius:50%;width:6px;height:6px}@media (width<=768px){.hero-visual{margin-bottom:50px}.scroll-indicator{visibility:hidden}.hero-container{text-align:center;grid-template-columns:1fr;gap:3rem}.hero-content,.hero-description{max-width:100%}.hero-actions{justify-content:center}.hero-socials{justify-content:center;margin-bottom:50px}.avatar-wrapper{width:220px;height:220px}.avatar-circle{width:175px;height:175px}.avatar-initials{font-size:3rem}.tag-1{right:-10px}.tag-3{right:-75px}.tag-4{left:-5px}.stat-cards{gap:.75rem}.stat-card{min-width:90px;padding:.75rem 1rem}}@media (width<=480px){.hero-name{font-size:2.75rem}.floating-tag{padding:.35rem .625rem;font-size:.7rem}}.experience-section{background:linear-gradient(180deg, var(--clr-bg) 0%, var(--clr-surface) 50%, var(--clr-bg) 100%)}.timeline{max-width:800px;margin:0 auto;position:relative}.timeline:before{content:"";background:linear-gradient(180deg, var(--clr-primary) 0%, #8b5cf61a 100%);width:2px;position:absolute;top:0;bottom:0;left:20px}.timeline-item{gap:2rem;margin-bottom:2rem;display:flex}.timeline-marker{flex-shrink:0;justify-content:center;width:40px;padding-top:1.5rem;display:flex}.marker-dot{background:var(--grad-primary);border:3px solid var(--clr-bg);border-radius:50%;flex-shrink:0;width:14px;height:14px;box-shadow:0 0 0 3px #8b5cf64d}.timeline-card{background:var(--grad-card);border:1px solid var(--clr-border);border-radius:var(--radius-lg);transition:border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);flex:1;padding:1.75rem}.timeline-card:hover{border-color:var(--clr-border-hover);box-shadow:0 4px 30px #8b5cf61a}.timeline-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;display:flex}.timeline-company-info{align-items:center;gap:.875rem;display:flex}.company-icon{border-radius:var(--radius-sm);background:var(--grad-primary);width:46px;height:46px;font-family:var(--font-mono);color:#fff;flex-shrink:0;justify-content:center;align-items:center;font-size:.8rem;font-weight:700;display:flex}.timeline-company{color:var(--clr-text);font-size:1.0625rem;font-weight:700}.timeline-role{color:var(--clr-primary-light);font-size:.875rem;font-weight:500}.timeline-badge{letter-spacing:.06em;text-transform:uppercase;border-radius:50px;flex-shrink:0;padding:.3rem .75rem;font-size:.6875rem;font-weight:700}.timeline-badge.current{color:#22c55e;background:#22c55e1f;border:1px solid #22c55e4d}.timeline-achievements{margin-bottom:1.25rem;list-style:none}.timeline-achievements li{color:var(--clr-text-muted);margin-bottom:.6rem;padding-left:1.25rem;font-size:.9rem;line-height:1.6;position:relative}.timeline-achievements li:before{content:"▹";color:var(--clr-primary);position:absolute;left:0}.timeline-tech{flex-wrap:wrap;gap:.5rem;display:flex}.tech-pill{font-family:var(--font-mono);color:var(--clr-primary-light);background:#8b5cf61a;border:1px solid #8b5cf633;border-radius:50px;padding:.25rem .625rem;font-size:.7rem;font-weight:600}@media (width<=768px){.timeline:before{left:16px}.timeline-marker{width:32px}.timeline-item{gap:1.25rem}}.education-section{background:var(--clr-bg)}.edu-timeline{max-width:850px;margin:0 auto;position:relative}.edu-timeline:before{content:"";background:linear-gradient(180deg, var(--clr-primary) 0%, #8b5cf61a 100%);width:2px;position:absolute;top:0;bottom:0;left:20px}.edu-item{gap:2rem;margin-bottom:2.5rem;display:flex}.edu-item:last-child{margin-bottom:0}.edu-marker{z-index:1;flex-shrink:0;justify-content:center;width:40px;padding-top:1.5rem;display:flex}.edu-card{background:var(--grad-card);border:1px solid var(--clr-border);border-radius:var(--radius-lg);transition:all var(--dur) var(--ease);flex:1;padding:2rem}.edu-card:hover{border-color:var(--clr-border-hover);transform:translateY(-2px);box-shadow:0 4px 30px #8b5cf61a}.edu-header{justify-content:space-between;align-items:flex-start;gap:1.5rem;margin-bottom:1.5rem;display:flex}.edu-institution-info{align-items:center;gap:1rem;display:flex}.edu-icon{border-radius:var(--radius-sm);background:var(--grad-primary);width:48px;height:48px;font-family:var(--font-mono);color:#fff;flex-shrink:0;justify-content:center;align-items:center;font-size:.85rem;font-weight:700;display:flex}.edu-name{color:var(--clr-text);margin-bottom:.25rem;font-size:1.125rem;font-weight:700}.edu-degree{color:var(--clr-primary-light);font-size:.9375rem;font-weight:500}.edu-meta{text-align:right;flex-direction:column;align-items:flex-end;gap:.5rem;display:flex}.edu-duration{color:var(--clr-text-muted);font-size:.8125rem;font-weight:600;font-family:var(--font-mono)}.edu-score{color:var(--clr-primary-light);background:#8b5cf61a;border:1px solid #8b5cf633;border-radius:50px;padding:.25rem .75rem;font-size:.75rem;font-weight:700}.edu-details{margin:0;padding:0;list-style:none}.edu-details li{color:var(--clr-text-muted);margin-bottom:.75rem;padding-left:1.5rem;font-size:.9375rem;line-height:1.6;position:relative}.edu-details li:last-child{margin-bottom:0}.edu-details li:before{content:"▹";color:var(--clr-primary);font-weight:700;position:absolute;left:0}@media (width<=768px){.edu-timeline:before{left:16px}.edu-marker{width:32px}.edu-item{gap:1.25rem}.edu-header{flex-direction:column;gap:1rem}.edu-meta{text-align:left;align-items:flex-start;padding-left:4rem}.edu-card{padding:1.5rem}}.skills-section{padding:8rem 0;overflow:hidden}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeInUp .8s var(--ease) forwards}.animate-on-load{opacity:0;animation:fadeInUp .8s var(--ease) forwards;animation-delay:var(--delay,0s)}.section-header{margin-bottom:5rem}.row-title{text-align:center;color:var(--clr-text);margin-bottom:2.5rem;font-size:1.75rem;font-weight:700}.skills-stack-row{margin-bottom:6rem}.stack-categories-grid{grid-template-columns:repeat(2,1fr);gap:2rem;display:grid}.stack-category-card{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius-lg);transition:transform var(--dur) var(--ease);padding:2rem}.stack-category-card:hover{border-color:var(--clr-border-hover);transform:translateY(-5px)}.stack-category-card h3{color:var(--clr-text);border-bottom:1px solid var(--clr-border);margin-bottom:1.5rem;padding-bottom:.75rem;font-size:1.25rem;font-weight:700}.category-skills-grid{grid-template-columns:repeat(auto-fit,minmax(70px,1fr));gap:1.5rem;display:grid}.tech-item{flex-direction:column;align-items:center;gap:.5rem;display:flex}.tech-icon-box{background:#0f172a;border:1px solid #ffffff0d;border-radius:12px;justify-content:center;align-items:center;width:56px;height:56px;padding:12px;display:flex;box-shadow:0 4px 12px #0003}.tech-icon-box img{object-fit:contain;width:100%;height:100%}.tech-name{color:var(--clr-text-muted);text-align:center;white-space:nowrap;font-size:.75rem;font-weight:500}.skills-interests-combined-row{grid-template-columns:1fr 1fr;align-items:start;gap:4rem;display:grid}.interests-vertical-grid{flex-direction:column;gap:1.25rem;display:flex}.interest-card{border-radius:var(--radius-lg);background:var(--card-bg);transition:transform var(--dur) var(--ease), border-color var(--dur) var(--ease);border:1px solid #ffffff08;align-items:center;gap:1.5rem;padding:1.5rem 2rem;display:flex}.interest-card:hover{border-color:#ffffff1a;transform:translateY(-4px)}.interest-icon-wrapper{color:#fff;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.interest-icon-wrapper svg{width:22px;height:22px}.interest-content h3{color:#fff;margin-bottom:.2rem;font-size:1.1rem;font-weight:700}.interest-content p{color:#fff9;font-size:.9rem;line-height:1.4}@media (width<=1024px){.skills-interests-combined-row{gap:2.5rem}}@media (width<=992px){.stack-categories-grid{grid-template-columns:1fr}.skills-interests-combined-row{grid-template-columns:1fr;gap:4rem}}@media (width<=480px){.interest-card{flex-direction:column;align-items:flex-start;padding:1.5rem}.category-skills-grid{grid-template-columns:repeat(3,1fr)}}.projects-section{background:linear-gradient(180deg, var(--clr-bg) 0%, var(--clr-surface) 50%, var(--clr-bg) 100%)}.projects-grid{grid-template-columns:1fr;gap:2rem;max-width:900px;margin:0 auto;display:grid}.project-card{background:var(--grad-card);border:1px solid var(--clr-border);border-radius:var(--radius-lg);transition:all var(--dur) var(--ease);padding:1.75rem;position:relative;overflow:hidden}.project-card:hover{border-color:var(--clr-border-hover);transform:translateY(-6px);box-shadow:0 20px 60px #8b5cf626}.project-card-glow{pointer-events:none;background:radial-gradient(circle at 50% 0,#8b5cf60f,#0000 60%);width:200%;height:200%;position:absolute;top:-50%;left:-50%}.project-title-row{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.project-icon{font-size:2rem}.project-links{gap:.5rem;display:flex}.project-link{border-radius:var(--radius-sm);border:1px solid var(--clr-border);width:34px;height:34px;color:var(--clr-text-muted);transition:all var(--dur) var(--ease);background:#ffffff0a;justify-content:center;align-items:center;display:flex}.project-link svg{width:15px;height:15px}.project-link:hover{border-color:var(--clr-primary);color:var(--clr-primary-light);background:#8b5cf61a}.project-link.live-icon{gap:.5rem;width:auto;padding:0 .75rem;font-size:.8rem;font-weight:600}.project-name{color:var(--clr-text);margin-bottom:0;font-size:1.125rem;font-weight:700}.project-description{color:var(--clr-text-muted);margin-bottom:1rem;font-size:.875rem;line-height:1.7}.project-points{margin:0 0 1.5rem;padding:0;list-style:none}.project-points li{color:var(--clr-text-muted);margin-bottom:.75rem;padding-left:1.25rem;font-size:.875rem;line-height:1.6;position:relative}.project-points li:before{content:"▹";color:var(--clr-primary);font-weight:700;position:absolute;left:0}.project-tech{flex-wrap:wrap;gap:.4rem;display:flex}.tech-tag{font-family:var(--font-mono);color:var(--clr-accent-2);background:#06b6d414;border:1px solid #06b6d433;border-radius:50px;padding:.25rem .625rem;font-size:.6875rem;font-weight:600}@media (width<=768px){.projects-grid{gap:1.5rem}}.faq-list{flex-direction:column;gap:1rem;max-width:760px;margin:0 auto;display:flex}.faq-item{background:var(--grad-card);border:1px solid var(--clr-border);border-radius:var(--radius-md);transition:border-color var(--dur) var(--ease);overflow:hidden}.faq-item.open{border-color:var(--clr-border-hover)}.faq-question{cursor:pointer;width:100%;color:var(--clr-text);font-size:1rem;font-weight:600;font-family:var(--font-sans);text-align:left;transition:color var(--dur) var(--ease);background:0 0;border:none;justify-content:space-between;align-items:center;gap:1rem;padding:1.375rem 1.5rem;display:flex}.faq-item.open .faq-question{color:var(--clr-primary-light)}.faq-icon{width:24px;height:24px;color:var(--clr-text-muted);transition:transform var(--dur) var(--ease);flex-shrink:0}.faq-icon svg{width:100%;height:100%}.faq-item.open .faq-icon{color:var(--clr-primary-light);transform:rotate(180deg)}.faq-answer{max-height:0;transition:max-height .4s var(--ease);overflow:hidden}.faq-answer p{color:var(--clr-text-muted);padding:0 1.5rem 1.375rem;font-size:.9375rem;line-height:1.75}.faq-item.open .faq-answer{max-height:400px}.contact-section{background:linear-gradient(180deg, var(--clr-bg) 0%, var(--clr-surface) 100%)}.contact-grid{grid-template-columns:1.3fr 1fr;gap:3rem;max-width:900px;margin:0 auto;display:grid}.contact-form-wrapper h3,.contact-info h3{color:var(--clr-text);margin-bottom:1.5rem;font-size:1.25rem;font-weight:700}.contact-form{flex-direction:column;gap:1.125rem;display:flex}.form-group{flex-direction:column;gap:.4rem;display:flex}.form-group label{color:var(--clr-text-muted);letter-spacing:.03em;font-size:.8125rem;font-weight:600}.form-group input,.form-group textarea{border:1.5px solid var(--clr-border);border-radius:var(--radius-sm);font-size:.9375rem;font-family:var(--font-sans);color:var(--clr-text);transition:border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);resize:vertical;background:#ffffff08;outline:none;padding:.75rem 1rem}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--clr-text-dim)}.form-group input:focus,.form-group textarea:focus{border-color:var(--clr-primary);box-shadow:0 0 0 3px #8b5cf61f}.form-group.has-error input,.form-group.has-error textarea{border-color:#ef4444}.form-group.has-error input:focus,.form-group.has-error textarea:focus{box-shadow:0 0 0 3px #ef44441f}.form-error-msg{color:#ef4444;align-items:center;gap:.25rem;margin-top:.25rem;font-size:.75rem;font-weight:500;display:flex}.form-process{text-align:center;color:var(--clr-primary-light);border-radius:var(--radius-sm);background:#8b5cf614;border:1px solid #8b5cf633;justify-content:center;align-items:center;gap:.75rem;margin-top:.5rem;padding:.75rem;font-size:.9rem;font-weight:500;animation:.3s fadeIn;display:flex}.process-spinner{border:2px solid #8b5cf64d;border-top-color:var(--clr-primary-light);border-radius:50%;width:14px;height:14px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.form-success{text-align:center;color:#22c55e;border-radius:var(--radius-sm);background:#22c55e14;border:1px solid #22c55e33;margin-top:.5rem;padding:.75rem;font-size:.9rem;font-weight:500}.contact-items{flex-direction:column;gap:1rem;margin-bottom:2rem;display:flex}.contact-item{border:1px solid var(--clr-border);border-radius:var(--radius-md);transition:all var(--dur) var(--ease);background:#ffffff08;align-items:center;gap:1rem;padding:1rem 1.25rem;display:flex}.contact-item:hover{border-color:var(--clr-border-hover);background:#8b5cf60f;transform:translate(4px)}.contact-item-icon{border-radius:var(--radius-sm);width:42px;height:42px;color:var(--clr-primary-light);background:#8b5cf61f;flex-shrink:0;justify-content:center;align-items:center;display:flex}.contact-item-icon svg{width:18px;height:18px}.contact-item-label{color:var(--clr-text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.75rem;font-weight:600;display:block}.contact-item-value{color:var(--clr-text);font-size:.9rem;font-weight:500;display:block}.availability-card{border-radius:var(--radius-md);background:#22c55e0a;border:1px solid #22c55e26;padding:1.25rem}.availability-indicator{color:#22c55e;align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.9rem;font-weight:600;display:flex}.avail-dot{background:#22c55e;border-radius:50%;flex-shrink:0;width:8px;height:8px;animation:2s infinite pulse-dot}.availability-card p{color:var(--clr-text-muted);font-size:.875rem;line-height:1.6}@media (width<=768px){.contact-grid{grid-template-columns:1fr}}.footer{border-top:1px solid var(--clr-border);background:var(--clr-bg);padding:3rem 0 2rem}.footer-container{max-width:var(--container-max);margin:0 auto;padding:0 1.5rem}.footer-top{border-bottom:1px solid var(--clr-border);grid-template-columns:2fr 1fr 1fr;gap:4rem;padding-bottom:3rem;display:grid}.footer-brand{max-width:320px}.footer-logo{font-family:var(--font-mono);margin-bottom:1rem;font-size:1.5rem;font-weight:700}.footer-tagline{color:var(--clr-text-muted);font-size:.95rem;line-height:1.6}.footer-nav-title{text-transform:uppercase;letter-spacing:.1em;color:var(--clr-text);margin-bottom:1.5rem;font-size:.75rem;font-weight:600}.footer-links{grid-template-columns:repeat(3,1fr);gap:.75rem;padding:0;list-style:none;display:grid}.footer-links a{color:var(--clr-text-muted);transition:color var(--dur) var(--ease), transform var(--dur) var(--ease);font-size:.9rem;display:inline-block}.footer-links a:hover{color:var(--clr-primary-light);transform:translate(4px)}.footer-socials .social-icons{gap:1rem;display:flex}.footer-social-link{background:var(--clr-surface);width:40px;height:40px;color:var(--clr-text-muted);border:1px solid var(--clr-border);transition:all var(--dur) var(--ease);border-radius:8px;justify-content:center;align-items:center;display:flex}.footer-social-link svg{width:20px;height:20px}.footer-social-link:hover{color:var(--clr-primary-light);border-color:var(--clr-primary-light);background:rgba(var(--clr-primary-rgb), .1);transform:translateY(-3px)}.footer-bottom{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding-top:2rem;display:flex}.footer-copy{color:var(--clr-text-muted);font-size:.85rem}.footer-bottom-links a{color:var(--clr-text-muted);transition:color var(--dur) var(--ease);font-size:.85rem;text-decoration:none}.footer-bottom-links a:hover{color:var(--clr-text)}@media (width<=992px){.footer-top{grid-template-columns:1fr 1fr;gap:3rem}.footer-brand{grid-column:span 2;max-width:100%}}@media (width<=576px){.footer-top{grid-template-columns:1fr;gap:2.5rem}.footer-brand{grid-column:span 1}.footer-bottom{text-align:center;flex-direction:column}}
