@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-bg-primary: #0a0e27;--color-bg-secondary: #151932;--color-bg-tertiary: #1e2442;--color-text-primary: #f8fafc;--color-text-secondary: #cbd5e1;--color-text-muted: #94a3b8;--color-accent-primary: #06b6d4;--color-accent-secondary: #3b82f6;--color-accent-tertiary: #8b5cf6;--color-gradient-start: #06b6d4;--color-gradient-mid: #3b82f6;--color-gradient-end: #8b5cf6;--space-xs: .5rem;--space-sm: 1rem;--space-md: 1.5rem;--space-lg: 2rem;--space-xl: 3rem;--space-2xl: 4rem;--space-3xl: 6rem;--font-family-base: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-size-5xl: 3rem;--font-size-6xl: 3.75rem;--font-weight-light: 300;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--font-weight-black: 900;--line-height-tight: 1.2;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1);--shadow-glow: 0 0 20px rgba(6, 182, 212, .3);--shadow-glow-strong: 0 0 40px rgba(6, 182, 212, .5);--transition-fast: .15s ease-in-out;--transition-base: .25s ease-in-out;--transition-slow: .35s ease-in-out;--z-base: 1;--z-dropdown: 10;--z-sticky: 100;--z-fixed: 1000;--z-modal: 10000}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-family-base);font-size:var(--font-size-base);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:var(--color-bg-primary);background-image:radial-gradient(at 0% 0%,rgba(6,182,212,.1) 0px,transparent 50%),radial-gradient(at 100% 100%,rgba(139,92,246,.1) 0px,transparent 50%);background-attachment:fixed;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);color:var(--color-text-primary)}h1{font-size:var(--font-size-5xl);font-weight:var(--font-weight-black)}h2{font-size:var(--font-size-4xl);font-weight:var(--font-weight-extrabold)}h3{font-size:var(--font-size-3xl)}h4{font-size:var(--font-size-2xl)}p{color:var(--color-text-secondary);line-height:var(--line-height-relaxed)}a{color:var(--color-accent-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-accent-secondary)}.gradient-text{background:linear-gradient(135deg,var(--color-gradient-start),var(--color-gradient-mid),var(--color-gradient-end));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;background-size:200% 200%;animation:gradient-shift 8s ease infinite}@keyframes gradient-shift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.glass-card{background:#1e244299;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);transition:all var(--transition-base)}.glass-card:hover{background:#1e2442cc;border-color:#06b6d44d;box-shadow:var(--shadow-glow);transform:translateY(-4px)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-lg);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);border-radius:var(--radius-full);border:none;cursor:pointer;transition:all var(--transition-base);text-decoration:none}.btn-primary{background:linear-gradient(135deg,var(--color-gradient-start),var(--color-gradient-mid));color:#fff;box-shadow:0 4px 14px #06b6d466}.btn-primary:hover{box-shadow:0 6px 20px #06b6d499;transform:translateY(-2px)}.btn-secondary{background:#ffffff1a;color:var(--color-text-primary);border:1px solid rgba(255,255,255,.2)}.btn-secondary:hover{background:#ffffff26;border-color:var(--color-accent-primary)}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--space-md)}.section{padding:var(--space-3xl) 0}@keyframes fade-in-up{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-in-left{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes slide-in-right{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes scale-in{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.animate-fade-in-up{animation:fade-in-up .6s ease-out forwards}.animate-fade-in{animation:fade-in .6s ease-out forwards}.animate-slide-in-left{animation:slide-in-left .6s ease-out forwards}.animate-slide-in-right{animation:slide-in-right .6s ease-out forwards}.animate-scale-in{animation:scale-in .6s ease-out forwards}.stagger-1{animation-delay:.1s}.stagger-2{animation-delay:.2s}.stagger-3{animation-delay:.3s}.stagger-4{animation-delay:.4s}.stagger-5{animation-delay:.5s}.stagger-6{animation-delay:.6s}@media(max-width:768px){:root{--font-size-5xl: 2.5rem;--font-size-4xl: 2rem;--font-size-3xl: 1.5rem}.section{padding:var(--space-2xl) 0}}@media(max-width:480px){:root{--font-size-5xl: 2rem;--font-size-4xl: 1.75rem}}.text-center{text-align:center}.text-muted{color:var(--color-text-muted)}.mb-sm{margin-bottom:var(--space-sm)}.mb-md{margin-bottom:var(--space-md)}.mb-lg{margin-bottom:var(--space-lg)}.mb-xl{margin-bottom:var(--space-xl)}.mt-sm{margin-top:var(--space-sm)}.mt-md{margin-top:var(--space-md)}.mt-lg{margin-top:var(--space-lg)}.mt-xl{margin-top:var(--space-xl)}.navigation{position:fixed;top:0;left:0;right:0;z-index:var(--z-sticky);padding:var(--space-md) 0;transition:all var(--transition-base)}.navigation.scrolled{background:#0a0e27cc;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.1);box-shadow:var(--shadow-lg);padding:var(--space-sm) 0}.nav-container{max-width:1200px;margin:0 auto;padding:0 var(--space-md);display:flex;justify-content:space-between;align-items:center}.nav-logo{font-size:var(--font-size-2xl);font-weight:var(--font-weight-black);letter-spacing:-.05em}.nav-menu{display:flex;gap:var(--space-lg);list-style:none;align-items:center}.nav-link{background:none;border:none;color:var(--color-text-secondary);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-md);transition:all var(--transition-fast);position:relative}.nav-link:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:0;height:2px;background:linear-gradient(90deg,var(--color-gradient-start),var(--color-gradient-mid));transition:width var(--transition-base)}.nav-link:hover,.nav-link.active{color:var(--color-text-primary)}.nav-link.active:after{width:80%}.mobile-menu-toggle{display:none;background:none;border:none;cursor:pointer;padding:var(--space-xs);z-index:calc(var(--z-sticky) + 1)}.hamburger{display:flex;flex-direction:column;gap:5px;width:24px}.hamburger span{display:block;width:100%;height:2px;background:var(--color-text-primary);transition:all var(--transition-base);border-radius:2px}.hamburger.open span:nth-child(1){transform:rotate(45deg) translate(7px,7px)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(7px,-7px)}.mobile-menu{display:none}@media(max-width:768px){.desktop-menu{display:none}.mobile-menu-toggle{display:block}.mobile-menu{display:flex;position:fixed;top:0;right:0;bottom:0;width:70%;max-width:300px;background:#151932fa;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-left:1px solid rgba(255,255,255,.1);flex-direction:column;gap:var(--space-sm);padding:var(--space-3xl) var(--space-lg);transform:translate(100%);transition:transform var(--transition-base)}.mobile-menu.open{transform:translate(0)}.mobile-menu .nav-link{width:100%;text-align:left;padding:var(--space-md);font-size:var(--font-size-lg)}.mobile-menu .nav-link:after{left:0;transform:none}.mobile-menu .nav-link.active:after{width:100%}}.hero{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;position:relative;padding:var(--space-3xl) var(--space-md);overflow:hidden}.hero-container{max-width:1200px;width:100%;display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3xl);align-items:center}.hero-content{z-index:var(--z-base)}.hero-greeting{display:flex;align-items:center;gap:var(--space-sm);font-size:var(--font-size-lg);color:var(--color-text-secondary);margin-bottom:var(--space-md);opacity:0;transform:translateY(20px);transition:all .6s ease-out}.hero-greeting.visible{opacity:1;transform:translateY(0)}.wave{display:inline-block;animation:wave 2s ease-in-out infinite;transform-origin:70% 70%}@keyframes wave{0%,to{transform:rotate(0)}10%,30%{transform:rotate(14deg)}20%{transform:rotate(-8deg)}40%{transform:rotate(-4deg)}50%{transform:rotate(10deg)}60%{transform:rotate(0)}}.hero-title{font-size:var(--font-size-6xl);margin-bottom:var(--space-md);line-height:1.1;opacity:0;transform:translateY(20px);transition:all .6s ease-out .1s}.hero-title.visible{opacity:1;transform:translateY(0)}.hero-subtitle{font-size:var(--font-size-3xl);color:var(--color-text-secondary);margin-bottom:var(--space-lg);font-weight:var(--font-weight-semibold);opacity:0;transform:translateY(20px);transition:all .6s ease-out .2s}.hero-subtitle.visible{opacity:1;transform:translateY(0)}.hero-description{font-size:var(--font-size-lg);line-height:var(--line-height-relaxed);margin-bottom:var(--space-xl);max-width:600px;opacity:0;transform:translateY(20px);transition:all .6s ease-out .3s}.hero-description.visible{opacity:1;transform:translateY(0)}.hero-cta{display:flex;gap:var(--space-md);flex-wrap:wrap;opacity:0;transform:translateY(20px);transition:all .6s ease-out .4s}.hero-cta.visible{opacity:1;transform:translateY(0)}.hero-visual{position:relative;height:500px;display:flex;justify-content:center;align-items:center}.hero-circle{position:absolute;width:400px;height:400px;border-radius:50%;background:linear-gradient(135deg,#06b6d41a,#3b82f61a,#8b5cf61a);filter:blur(40px);animation:pulse 4s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:.5}50%{transform:scale(1.1);opacity:.8}}.floating-card{position:absolute;background:#1e2442cc;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-xl);padding:var(--space-lg);display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);box-shadow:var(--shadow-xl);opacity:0;transition:all .6s ease-out}.floating-card.visible{opacity:1}.card-icon{font-size:var(--font-size-4xl)}.card-text{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary)}.card-1{top:10%;left:10%;animation:float 6s ease-in-out infinite;transition-delay:.5s}.card-2{top:50%;right:10%;animation:float 6s ease-in-out infinite 2s;transition-delay:.6s}.card-3{bottom:10%;left:20%;animation:float 6s ease-in-out infinite 4s;transition-delay:.7s}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.scroll-indicator{position:absolute;bottom:var(--space-xl);left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);color:var(--color-text-muted);font-size:var(--font-size-sm);opacity:0;transition:all .6s ease-out .8s}.scroll-indicator.visible{opacity:1}.mouse{width:24px;height:36px;border:2px solid var(--color-text-muted);border-radius:12px;position:relative}.wheel{width:4px;height:8px;background:var(--color-text-muted);border-radius:2px;position:absolute;top:8px;left:50%;transform:translate(-50%);animation:scroll 2s ease-in-out infinite}@keyframes scroll{0%{opacity:1;transform:translate(-50%) translateY(0)}to{opacity:0;transform:translate(-50%) translateY(12px)}}@media(max-width:968px){.hero-container{grid-template-columns:1fr;gap:var(--space-2xl)}.hero-visual{height:300px}.hero-circle{width:300px;height:300px}.floating-card{padding:var(--space-md)}.card-icon{font-size:var(--font-size-3xl)}}@media(max-width:768px){.hero{min-height:auto;padding:calc(var(--space-3xl) + 60px) var(--space-md) var(--space-2xl)}.hero-title{font-size:var(--font-size-5xl)}.hero-subtitle{font-size:var(--font-size-2xl)}.hero-description{font-size:var(--font-size-base)}.hero-visual{display:none}}.about{background:linear-gradient(180deg,transparent 0%,rgba(21,25,50,.3) 50%,transparent 100%)}.section-title{text-align:center;margin-bottom:var(--space-3xl);opacity:0;transform:translateY(20px);transition:all .6s ease-out}.section-title.visible{opacity:1;transform:translateY(0)}.about-content{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3xl);align-items:start}.about-text{display:flex;flex-direction:column;gap:var(--space-lg);opacity:0;transform:translate(-20px);transition:all .6s ease-out .2s}.about-text.visible{opacity:1;transform:translate(0)}.about-intro{font-size:var(--font-size-lg);color:var(--color-text-primary);font-weight:var(--font-weight-medium)}.education-card{padding:var(--space-xl);opacity:0;transform:translate(20px);transition:all .6s ease-out .3s}.education-card.visible{opacity:1;transform:translate(0)}.education-icon{font-size:3rem;margin-bottom:var(--space-lg);display:inline-block;animation:bounce 2s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.education-content{display:flex;flex-direction:column;gap:var(--space-md)}.education-degree{font-size:var(--font-size-2xl);color:var(--color-text-primary);margin:0}.education-institution{font-size:var(--font-size-lg);color:var(--color-accent-primary);font-weight:var(--font-weight-medium)}.education-period{display:flex;align-items:center;gap:var(--space-xs);color:var(--color-text-muted);font-size:var(--font-size-sm)}.education-period svg{color:var(--color-accent-primary)}.education-highlights{display:flex;flex-direction:column;gap:var(--space-sm);margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid rgba(255,255,255,.1)}.highlight-item{display:flex;align-items:center;gap:var(--space-sm);color:var(--color-text-secondary);font-size:var(--font-size-base)}.highlight-icon{color:var(--color-accent-primary);font-weight:var(--font-weight-bold);font-size:var(--font-size-lg)}@media(max-width:968px){.about-content{grid-template-columns:1fr;gap:var(--space-2xl)}.about-text,.education-card{transform:translateY(20px)}.about-text.visible,.education-card.visible{transform:translateY(0)}}.experience-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));gap:var(--space-xl)}.project-card{padding:var(--space-xl);display:flex;flex-direction:column;gap:var(--space-lg);opacity:0;transform:translateY(30px);transition:all .6s ease-out}.project-card.visible{opacity:1;transform:translateY(0)}.project-header{display:flex;gap:var(--space-lg);align-items:flex-start}.project-icon{font-size:3rem;flex-shrink:0;animation:float 3s ease-in-out infinite}.project-meta{flex:1}.project-title{font-size:var(--font-size-2xl);color:var(--color-text-primary);margin:0 0 var(--space-xs) 0}.project-role{font-size:var(--font-size-lg);color:var(--color-accent-primary);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-sm)}.project-period{display:flex;align-items:center;gap:var(--space-xs);color:var(--color-text-muted);font-size:var(--font-size-sm)}.project-period svg{color:var(--color-accent-secondary)}.project-description{font-size:var(--font-size-base);line-height:var(--line-height-relaxed);color:var(--color-text-secondary)}.project-highlights{display:flex;flex-direction:column;gap:var(--space-md)}.highlights-title{font-size:var(--font-size-lg);color:var(--color-text-primary);font-weight:var(--font-weight-semibold);margin:0}.highlights-list{list-style:none;display:flex;flex-direction:column;gap:var(--space-sm)}.highlights-list li{display:flex;align-items:flex-start;gap:var(--space-sm);color:var(--color-text-secondary);font-size:var(--font-size-base);line-height:var(--line-height-relaxed)}.highlights-list svg{color:var(--color-accent-primary);flex-shrink:0;margin-top:4px}.project-technologies{display:flex;flex-wrap:wrap;gap:var(--space-sm);padding-top:var(--space-md);border-top:1px solid rgba(255,255,255,.1)}.tech-tag{padding:var(--space-xs) var(--space-md);background:#06b6d41a;border:1px solid rgba(6,182,212,.3);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-accent-primary);transition:all var(--transition-fast)}.tech-tag:hover{background:#06b6d433;border-color:var(--color-accent-primary);transform:translateY(-2px)}@media(max-width:1024px){.experience-grid{grid-template-columns:1fr}}@media(max-width:768px){.project-card{padding:var(--space-lg)}.project-header{flex-direction:column;gap:var(--space-md)}.project-icon{font-size:2.5rem}.project-title{font-size:var(--font-size-xl)}}.skills{background:linear-gradient(180deg,transparent 0%,rgba(21,25,50,.3) 50%,transparent 100%)}.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-xl);margin-bottom:var(--space-3xl)}.skill-category{padding:var(--space-xl);display:flex;flex-direction:column;gap:var(--space-lg);opacity:0;transform:translateY(30px);transition:all .6s ease-out}.skill-category.visible{opacity:1;transform:translateY(0)}.category-header{display:flex;align-items:center;gap:var(--space-md);padding-bottom:var(--space-md);border-bottom:2px solid rgba(6,182,212,.2)}.category-icon{font-size:2rem;animation:float 3s ease-in-out infinite}.category-title{font-size:var(--font-size-xl);color:var(--color-text-primary);margin:0;font-weight:var(--font-weight-bold)}.skills-list{display:flex;flex-direction:column;gap:var(--space-sm)}.skill-badge{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:#ffffff08;border-radius:var(--radius-md);transition:all var(--transition-base);opacity:0;transform:translate(-10px);animation:slide-in-skill .4s ease-out forwards}@keyframes slide-in-skill{to{opacity:1;transform:translate(0)}}.skill-badge:hover{background:#06b6d41a;transform:translate(5px);border-left:2px solid var(--color-accent-primary);padding-left:calc(var(--space-md) - 2px)}.skill-dot{width:8px;height:8px;background:var(--color-accent-primary);border-radius:50%;flex-shrink:0;box-shadow:0 0 8px #06b6d480}.skill-name{font-size:var(--font-size-base);color:var(--color-text-secondary);font-weight:var(--font-weight-medium);transition:color var(--transition-fast)}.skill-badge:hover .skill-name{color:var(--color-text-primary)}.skills-footer{text-align:center;opacity:0;transform:translateY(20px);transition:all .6s ease-out .4s}.skills-footer.visible{opacity:1;transform:translateY(0)}.skills-note{display:inline-flex;align-items:center;gap:var(--space-sm);padding:var(--space-lg) var(--space-xl);background:#3b82f61a;border:1px solid rgba(59,130,246,.2);border-radius:var(--radius-xl);color:var(--color-text-secondary);font-size:var(--font-size-base);line-height:var(--line-height-relaxed)}.skills-note svg{color:var(--color-accent-secondary);flex-shrink:0}@media(max-width:768px){.skills-grid{grid-template-columns:1fr}.skill-category{padding:var(--space-lg)}.skills-note{flex-direction:column;text-align:center;padding:var(--space-md)}}.contact{background:linear-gradient(180deg,transparent 0%,rgba(21,25,50,.5) 100%)}.contact-intro{text-align:center;font-size:var(--font-size-lg);max-width:700px;margin:0 auto var(--space-3xl);opacity:0;transform:translateY(20px);transition:all .6s ease-out .2s}.contact-intro.visible{opacity:1;transform:translateY(0)}.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-xl);margin-bottom:var(--space-3xl)}.contact-card{padding:var(--space-xl);display:flex;align-items:center;gap:var(--space-lg);text-decoration:none;position:relative;overflow:hidden;opacity:0;transform:translateY(30px);transition:all .6s ease-out}.contact-card.visible{opacity:1;transform:translateY(0)}.contact-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(180deg,var(--color-gradient-start),var(--color-gradient-mid));transform:scaleY(0);transition:transform var(--transition-base)}.contact-card:hover:before{transform:scaleY(1)}.contact-icon{width:56px;height:56px;display:flex;align-items:center;justify-content:center;background:#ffffff0d;border-radius:var(--radius-lg);flex-shrink:0;transition:all var(--transition-base)}.contact-card:hover .contact-icon{transform:scale(1.1) rotate(5deg);background:#ffffff1a}.contact-info{flex:1}.contact-label{font-size:var(--font-size-lg);color:var(--color-text-primary);margin:0 0 var(--space-xs) 0;font-weight:var(--font-weight-semibold)}.contact-value{font-size:var(--font-size-base);color:var(--color-text-secondary);margin:0}.contact-arrow{color:var(--color-text-muted);transition:all var(--transition-base)}.contact-card:hover .contact-arrow{color:var(--color-accent-primary);transform:translate(5px)}.contact-footer{margin-top:var(--space-3xl);padding-top:var(--space-3xl);border-top:1px solid rgba(255,255,255,.1);opacity:0;transform:translateY(20px);transition:all .6s ease-out .4s}.contact-footer.visible{opacity:1;transform:translateY(0)}.footer-content{text-align:center;display:flex;flex-direction:column;gap:var(--space-md);align-items:center}.footer-logo{font-size:var(--font-size-2xl);font-weight:var(--font-weight-black);margin-bottom:var(--space-sm)}.footer-text{font-size:var(--font-size-base);color:var(--color-text-secondary);margin:0}.footer-location{display:flex;align-items:center;gap:var(--space-xs);color:var(--color-text-muted);font-size:var(--font-size-sm)}.footer-location svg{color:var(--color-accent-primary)}.footer-copyright{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-top:var(--space-md)}@media(max-width:768px){.contact-grid{grid-template-columns:1fr}.contact-card{padding:var(--space-lg)}.contact-icon{width:48px;height:48px}}
