:root{--color-primary:#00ffaa;--color-primary-dark:#00cc88;--color-bg-dark:#0a0a0a;--color-bg-medium:#111111;--color-text-light:#ffffff;--color-text-dim:rgba(255,255,255,0.7);--font-ethernal:'Posterama 1984',sans-serif;--font-ultra:'Posterama 1984 Ultra',sans-serif;--font-bernhardt:'Bernhardt CG Medium',sans-serif;--font-madani:'Madani Arabic',sans-serif;--font-size-base:16px;--font-size-sm:0.875rem;--font-size-md:1rem;--font-size-lg:1.25rem;--font-size-xl:1.5rem;--font-size-2xl:2rem;--font-size-3xl:3rem;--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--spacing-3xl:5rem;--transition:all 0.8s cubic-bezier(0.25,0.8,0.25,1);--shadow-sm:0 2px 5px rgba(0,0,0,0.1);--shadow-md:0 5px 15px rgba(0,0,0,0.1);--shadow-lg:0 10px 25px rgba(0,0,0,0.15);--border-radius:12px;--glass-bg:rgba(255,255,255,0.03);--glass-border:rgba(255,255,255,0.05);--glass-shadow:0 8px 32px 0 rgba(0,0,0,0.3);--glass-blur:blur(12px);--neon-glow:0 0 10px rgba(0,255,170,0.3),0 0 20px rgba(0,255,170,0.2);--neon-border:1px solid rgba(0,255,170,0.3);--card-gradient:linear-gradient(145deg,rgba(255,255,255,0.05) 0%,rgba(255,255,255,0.01) 100%);--breakpoint-sm:480px;--breakpoint-md:768px;--breakpoint-lg:1024px;--breakpoint-xl:1200px;--particle-density:1;--animation-speed:1;@media (prefers-reduced-motion:reduce){--particle-density:0.5;--animation-speed:0.5}@media (max-width:768px){--particle-density:0.7}}body.light-mode{--color-bg-dark:#f5f5f5;--color-bg-medium:#ffffff;--color-text-light:#333333;--color-text-dim:rgba(0,0,0,0.7);--glass-bg:rgba(255,255,255,0.7);--glass-border:rgba(0,0,0,0.05);--glass-shadow:0 8px 32px 0 rgba(0,0,0,0.1);--neon-glow:0 0 10px rgba(0,204,136,0.2),0 0 20px rgba(0,204,136,0.1);--neon-border:1px solid rgba(0,204,136,0.3);--card-gradient:linear-gradient(145deg,rgba(255,255,255,0.9) 0%,rgba(255,255,255,0.5) 100%)}@font-face{font-family:'Madani Arabic';src:url('../../fonts/Madani Arabic Thin.ttf') format('truetype');font-weight:100;font-style:normal;font-display:swap}@font-face{font-family:'Madani Arabic';src:url('../../fonts/Madani Arabic Extra Light.ttf') format('truetype');font-weight:200;font-style:normal;font-display:swap}@font-face{font-family:'Madani Arabic';src:url('../../fonts/Madani Arabic Light.ttf') format('truetype');font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:'Madani Arabic';src:url('../../fonts/Madani Arabic Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:'Madani Arabic';src:url('../../fonts/Madani Arabic Medium.ttf') format('truetype');font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:'Madani Arabic';src:url('../../fonts/Madani Arabic Semi Bold.ttf') format('truetype');font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:'Madani Arabic';src:url('../../fonts/Madani Arabic Bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:'Madani Arabic';src:url('../../fonts/Madani Arabic Extra Bold.ttf') format('truetype');font-weight:800;font-style:normal;font-display:swap}@font-face{font-family:'Madani Arabic';src:url('../../fonts/Madani Arabic Black.ttf') format('truetype');font-weight:900;font-style:normal;font-display:swap}@font-face{font-family:'Bernhardt CG Medium';src:url('../../fonts/Bernhardt CG Medium Regular.otf') format('opentype');font-weight:normal;font-style:normal;font-display:swap}@font-face{font-family:'Posterama 1984';src:url('../../fonts/Posterama 1984 Thin.otf') format('opentype');font-weight:100;font-style:normal;font-display:swap}@font-face{font-family:'Posterama 1984';src:url('../../fonts/Posterama 1984 Light.otf') format('opentype');font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:'Posterama 1984';src:url('../../fonts/Posterama 1984 Regular.otf') format('opentype');font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:'Posterama 1984';src:url('../../fonts/Posterama 1984 Semibold.otf') format('opentype');font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:'Posterama 1984';src:url('../../fonts/Posterama 1984 Bold.otf') format('opentype');font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:'Posterama 1984';src:url('../../fonts/Posterama 1984 Black.otf') format('opentype');font-weight:900;font-style:normal;font-display:swap}@font-face{font-family:'Posterama 1984 Ultra';src:url('../../fonts/Posterama 1984 Ultra.otf') format('opentype');font-weight:normal;font-style:normal;font-display:swap}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;font-size:var(--font-size-base)}body{background-color:var(--color-bg-dark);color:var(--color-text-light);font-family:var(--font-madani);font-weight:400;line-height:1.6;overflow-x:hidden;position:relative}body::before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:9999;opacity:0.03;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E")}.dark-mode-logo{display:block}.light-mode-logo{display:none}body.light-mode .dark-mode-logo{display:none}body.light-mode .light-mode-logo{display:block}a{text-decoration:none;color:inherit;transition:var(--transition)}ul,ol{list-style-position:inside}img{max-width:100%;height:auto;display:block}picture{display:contents}.skip-link{position:absolute;top:-100px;left:0;z-index:10000;padding:0.75rem 1.5rem;background:var(--color-primary);color:var(--color-bg-dark);text-decoration:none;font-weight:600;border-radius:0 0 4px 0;transition:top 0.2s ease}.skip-link:focus,.skip-link:focus-visible{top:0;outline:2px solid var(--color-bg-dark);outline-offset:2px}a,button,[role="button"]{-webkit-tap-highlight-color:transparent}button:active,.btn:active,a.btn:active{transform:scale(0.97);transition:transform 80ms ease}@media (prefers-reduced-motion:reduce){button:active,.btn:active,a.btn:active{transform:none}}.fa-icon{display:inline-block;width:1em;height:1em;fill:currentColor;vertical-align:-0.125em;overflow:visible}.fa-icon.fa-spin{animation:fa-spin 2s linear infinite}@keyframes fa-spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.fa-icon.fa-spin{animation:none}}input,textarea,button,select{font:inherit}button{cursor:pointer;background:none;border:none}h1,h2,h3,h4,h5,h6{line-height:1.2;margin-bottom:var(--spacing-md);font-family:var(--font-madani)}h1{font-size:clamp(2.5rem,5vw,4rem);font-weight:900}h2{font-size:clamp(1.8rem,4vw,3rem);margin-bottom:var(--spacing-2xl);font-weight:700}h3{font-size:clamp(1.4rem,3vw,2rem);font-weight:600}h4{font-size:var(--font-size-xl);font-weight:600}h5{font-size:var(--font-size-lg);font-weight:500}h6{font-size:var(--font-size-md);font-weight:500}p{margin-bottom:var(--spacing-md);font-weight:400}.font-bernhardt{font-family:var(--font-bernhardt)}.font-madani{font-family:var(--font-madani)}.font-ethernal{font-family:var(--font-ethernal)}.font-ultra{font-family:var(--font-ultra)}.font-thin{font-weight:100}.font-extralight{font-weight:200}.font-light{font-weight:300}.font-regular{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-black{font-weight:900}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-primary{color:var(--color-primary)}.text-dim{color:var(--color-text-dim)}.section-title{position:relative;display:inline-block;text-transform:uppercase;margin-bottom:2.5rem;font-weight:800;font-family:var(--font-madani)}.section-title:after{content:'';position:absolute;bottom:-10px;left:0;width:60px;height:3px;background:var(--color-primary)}.text-center.section-title:after{left:50%;transform:translateX(-50%)}.hero-tagline{font-family:var(--font-madani);font-weight:300;letter-spacing:1px;font-size:clamp(1.2rem,3vw,1.6rem);color:var(--color-text-dim);margin-bottom:var(--spacing-2xl);max-width:800px}.nav-links a{font-family:var(--font-madani);font-weight:500;letter-spacing:1px}.service-title,.project-title{font-family:var(--font-madani);font-weight:600;letter-spacing:1px}.testimonial-name{font-family:var(--font-madani);font-weight:600;letter-spacing:1px}.cta-button{font-family:var(--font-madani);font-weight:700;letter-spacing:1px}.copyright{color:var(--color-text-dim);font-family:var(--font-madani);font-weight:300}@keyframes fadeInUp{0%{opacity:0;transform:translateY(50px) translateZ(0)}40%{opacity:0.5;transform:translateY(0px) translateZ(0)}100%{opacity:1;transform:translateY(0px) translateZ(0)}}.fade-in-up{opacity:0;transform:translateY(20px) translateZ(0);will-change:transform,opacity;backface-visibility:hidden;-webkit-backface-visibility:hidden;transform-style:preserve-3d;perspective:1000px}.fade-in-up.animated{animation:fadeInUp 0.8s cubic-bezier(0.215,0.61,0.355,1) forwards}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}100%{transform:scale(1)}}.pulse{animation:pulse 2s infinite}@keyframes rotate{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.rotate{animation:rotate 10s linear infinite}@keyframes fadeIn{from{opacity:0}to{opacity:1}}.fade-in{animation:fadeIn 0.8s ease forwards}@keyframes slideIn{from{transform:translateX(-50px);opacity:0}to{transform:translateX(0);opacity:1}}.slide-in{animation:slideIn 0.5s ease forwards}.cursor,.cursor-follower{display:none}@media (min-width:1024px){.cursor-enabled .cursor{position:fixed;width:8px;height:8px;background:var(--color-primary);border-radius:50%;z-index:9999;pointer-events:none;transform:translate(-50%,-50%);transition:width 0.2s,height 0.2s;display:block}.cursor-enabled .cursor-follower{position:fixed;width:40px;height:40px;border:1px solid var(--color-primary);border-radius:50%;z-index:9998;pointer-events:none;transform:translate(-50%,-50%);transition:all 0.2s ease-out;display:block}.cursor-enabled .cursor.active{width:16px;height:16px;background:rgba(0,255,170,0.5)}.cursor-enabled .cursor-follower.active{width:20px;height:20px;background:rgba(0,255,170,0.1)}}.container{width:90%;max-width:1400px;margin:0 auto;padding:0 var(--spacing-md)}section{padding:var(--spacing-3xl) 0;position:relative}#hero{height:100vh;display:flex;align-items:center;position:relative;padding-top:var(--spacing-3xl)}#about,#services,#portfolio,#testimonials,#contact{min-height:50vh;padding:var(--spacing-3xl) 0;scroll-margin-top:20px}.about-grid{display:grid;grid-template-columns:1fr 2fr;gap:var(--spacing-2xl)}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-2xl)}.skill-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-2xl)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-2xl)}@media (max-width:1024px){.contact-grid{grid-template-columns:1fr}.services-grid{grid-template-columns:repeat(2,1fr)}.skill-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}}@media (max-width:768px){.about-grid{grid-template-columns:1fr}.services-grid{grid-template-columns:1fr}}@media (max-width:576px){.skill-grid{grid-template-columns:repeat(2,1fr)}}header{position:fixed;top:0;left:0;width:100%;z-index:1000;background:rgba(10,10,10,0.85);background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-bottom:1px solid var(--glass-border);transition:var(--transition)}@supports not (backdrop-filter:blur(10px)){header{background:rgba(10,10,10,0.95)}body.light-mode header{background:rgba(255,255,255,0.95)}}body.light-mode header{background:rgba(255,255,255,0.85);backdrop-filter:blur(10px);border-bottom:1px solid rgba(0,0,0,0.05)}body.light-mode .header-content.expanded{box-shadow:none !important}body.light-mode .header-content.collapsed{box-shadow:none !important}.header-content{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 0}.header-content.collapsed{padding:0.5rem 0}.header-content.expanded{padding:1.5rem 0}.logo{text-decoration:none;display:flex;align-items:center}.logo-img{height:60px;width:auto;transition:var(--transition)}.header-content.collapsed .logo-img{height:40px}.logo:hover .logo-img{transform:scale(1.05)}.nav-links{display:flex;gap:var(--spacing-xl);white-space:nowrap}.nav-links a{color:var(--color-text-light);text-decoration:none;font-weight:600;position:relative;transition:var(--transition)}body.light-mode .nav-links a{color:#000000}.nav-links a:after{content:'';position:absolute;width:0;height:2px;bottom:-5px;left:0;background-color:var(--color-primary);transition:var(--transition)}.nav-links a:hover,.nav-links a.active{color:var(--color-primary)}.nav-links a:hover:after,.nav-links a.active:after{width:100%}.mobile-nav-toggle{display:none;background:transparent;border:none;color:var(--color-primary);font-size:1.8rem;cursor:pointer;padding:5px}body.light-mode .mobile-nav-toggle{color:var(--color-primary-dark)}.close-nav{display:none;position:absolute;top:20px;right:20px;background:transparent;border:none;color:var(--color-text-light);font-size:1.5rem;cursor:pointer}@media (max-width:992px){.mobile-nav-toggle{display:block}.close-nav{display:block}.nav-links{position:fixed;top:0;right:-100%;height:100vh;width:100%;max-width:300px;background:var(--color-bg-medium);flex-direction:column;padding:5rem 2rem;transition:var(--transition);z-index:999}.nav-links.active{right:0}.logo-img{height:auto;max-height:40px;width:auto;max-width:100%}}@media (max-width:480px){.logo-img{max-height:35px}}footer{background-color:var(--color-bg-medium);padding:var(--spacing-2xl) 0;text-align:center;position:relative;overflow:hidden;z-index:0}.footer-content{position:relative;z-index:2}.footer-logo{margin-bottom:var(--spacing-lg);display:inline-block}.footer-logo .logo-img{height:60px;width:auto}.social-links{display:flex;justify-content:center;gap:var(--spacing-lg);margin-bottom:var(--spacing-2xl)}.social-link{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:var(--color-bg-dark);color:var(--color-primary);text-decoration:none;transition:var(--transition);font-size:1.2rem}.social-link:hover{background:var(--color-primary);color:var(--color-bg-dark);transform:translateY(-5px)}.copyright{color:var(--color-text-dim);font-family:var(--font-madani);font-weight:300}.footer-grid{position:absolute;bottom:0;left:0;width:100%;height:100%;background-image:linear-gradient(rgba(0,255,170,0.05) 1px,transparent 1px),linear-gradient(90deg,rgba(0,255,170,0.05) 1px,transparent 1px);background-size:30px 30px;z-index:1;opacity:0.5}body.light-mode .footer-grid{background-image:linear-gradient(rgba(0,204,136,0.15) 1px,transparent 1px),linear-gradient(90deg,rgba(0,204,136,0.15) 1px,transparent 1px);opacity:0.7}.theme-toggle{position:fixed;bottom:30px;right:30px;z-index:100;width:50px;height:50px;border-radius:50%;background:var(--color-primary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition);box-shadow:0 5px 15px rgba(0,255,170,0.3)}.theme-toggle i{color:var(--color-bg-dark);font-size:1.5rem;transition:var(--transition)}.theme-toggle:hover{transform:translateY(-5px)}@media (max-width:768px){.footer-logo .logo-img{height:auto;max-height:50px;width:auto;max-width:100%}}@media (max-width:480px){.theme-toggle{bottom:20px;right:20px;width:40px;height:40px}.theme-toggle i{font-size:1.2rem}.footer-logo .logo-img{max-height:40px}}.hero-content{position:relative;z-index:2}.hero-title{margin-bottom:var(--spacing-lg);font-family:var(--font-madani);font-weight:900;text-transform:uppercase;display:flex;align-items:center;gap:var(--spacing-md);flex-wrap:wrap}.hero-logo{margin-top:16px;height:60px;width:auto;vertical-align:middle;transition:var(--transition)}.hero-background{position:absolute;top:0;right:0;width:100%;height:100%;overflow:hidden;z-index:0}#hero{position:relative;z-index:0}.grid-pattern{position:absolute;top:-50%;left:-50%;width:200%;height:200%;background-image:linear-gradient(rgba(0,255,170,0.05) 1px,transparent 1px),linear-gradient(90deg,rgba(0,255,170,0.05) 1px,transparent 1px);background-size:50px 50px;z-index:-1;transform:perspective(500px) rotateX(60deg) translateY(-100px) translateZ(-200px);animation:grid-move 20s linear infinite}@keyframes grid-move{0%{background-position:0 0}100%{background-position:0 50px}}body.light-mode .grid-pattern{background-image:linear-gradient(rgba(0,204,136,0.15) 1px,transparent 1px),linear-gradient(90deg,rgba(0,204,136,0.15) 1px,transparent 1px)}.glow-effect{position:absolute;top:50%;right:-10%;transform:translateY(-50%);width:40vw;height:40vw;background:radial-gradient(circle,rgba(0,255,170,0.15) 0%,rgba(0,255,170,0) 70%);border-radius:50%;z-index:-1;filter:blur(80px);animation:glow-pulse 8s ease-in-out infinite alternate}@keyframes glow-pulse{0%{opacity:0.5;transform:translateY(-50%) scale(0.9)}100%{opacity:1;transform:translateY(-50%) scale(1.1)}}body.light-mode .glow-effect{background:radial-gradient(circle,rgba(0,204,136,0.3) 0%,rgba(0,204,136,0) 70%)}@media (max-width:768px){.hero-content{padding-top:var(--spacing-2xl)}.hero-logo{height:auto;max-height:50px;width:auto;max-width:100%}}@media (max-width:480px){.hero-title{font-size:2rem;flex-direction:column;align-items:flex-start}.hero-logo{height:auto;max-height:40px;width:auto;max-width:100%;margin-top:10px;margin-bottom:10px}}.cta-button{display:inline-block;padding:var(--spacing-md) var(--spacing-2xl);background:var(--color-primary);color:var(--color-bg-dark);text-decoration:none;font-weight:600;border-radius:4px;transition:var(--transition);border:2px solid var(--color-primary);margin-right:var(--spacing-md);margin-bottom:var(--spacing-md);text-transform:uppercase;letter-spacing:1px;box-shadow:0 0 10px rgba(0,255,170,0.2);position:relative;overflow:hidden}.cta-button:hover{background:transparent;color:var(--color-primary);box-shadow:var(--neon-glow);text-shadow:0 0 5px rgba(0,255,170,0.5)}.cta-button.outline{background:transparent;color:var(--color-primary);box-shadow:none}.cta-button.outline:hover{background:var(--color-primary);color:var(--color-bg-dark);box-shadow:var(--neon-glow)}.submit-button{background:var(--color-primary);color:var(--color-bg-dark);border:none;padding:var(--spacing-md) var(--spacing-2xl);font-weight:600;border-radius:4px;cursor:pointer;transition:var(--transition);border:2px solid var(--color-primary);font-family:var(--font-madani);box-shadow:0 0 10px rgba(0,255,170,0.2)}.submit-button:hover{background:transparent;color:var(--color-primary);box-shadow:var(--neon-glow);text-shadow:0 0 5px rgba(0,255,170,0.5)}.testimonial-arrow{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:50%;background-color:var(--color-bg-dark);color:var(--color-primary);border:1px solid var(--color-primary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition);z-index:10}.testimonial-arrow:hover{background-color:var(--color-primary);color:var(--color-bg-dark)}.testimonial-prev{left:0}.testimonial-next{right:0}.testimonial-dots{display:flex;justify-content:center;gap:var(--spacing-xs);margin-top:var(--spacing-2xl)}.testimonial-dot{width:10px;height:10px;padding:0;border:none;border-radius:50%;background-color:rgba(255,255,255,0.3);cursor:pointer;transition:var(--transition)}.testimonial-dot:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}.testimonial-dot.active{background-color:var(--color-primary);transform:scale(1.3)}@media (max-width:768px){.testimonial-arrow{width:30px;height:30px}}@media (max-width:480px){.cta-button{display:block;width:100%;text-align:center;margin-right:0}.testimonial-dots{gap:0.3rem}.testimonial-dot{width:8px;height:8px}}body.light-mode .chat-button{background-color:var(--color-primary);color:var(--color-bg-dark);border-color:var(--color-primary)}body.light-mode .chat-button:hover{background-color:transparent;color:var(--color-primary)}.service-card{background:var(--glass-bg);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);border-radius:var(--border-radius);padding:var(--spacing-2xl);transition:var(--transition);text-align:center;height:100%;display:flex;flex-direction:column;position:relative;overflow:hidden}.service-card::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient( 90deg,transparent,rgba(255,255,255,0.05),transparent );transition:0.5s;pointer-events:none}.service-card:hover::before{left:100%}.service-card:hover{transform:translateY(-10px);border-color:rgba(0,255,170,0.3);box-shadow:0 15px 30px rgba(0,255,170,0.1),var(--glass-shadow)}.service-hexagon{position:relative;width:80px;height:90px;background:var(--color-bg-dark);margin:0 auto var(--spacing-lg);display:flex;align-items:center;justify-content:center;clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);transition:var(--transition)}.service-card:hover .service-hexagon{transform:rotate(30deg);background:var(--color-primary);color:var(--color-bg-dark)}.service-hexagon i{font-size:2rem;color:var(--color-primary);transition:var(--transition);transform:rotate(0deg)}.service-card:hover .service-hexagon i{transform:rotate(-30deg);color:var(--color-bg-dark)}.service-title{margin-bottom:var(--spacing-md);font-size:var(--font-size-xl)}.service-description{color:var(--color-text-dim);margin-bottom:var(--spacing-lg);font-weight:400}.service-features{list-style:none;text-align:left}.service-features li{margin-bottom:var(--spacing-xs);display:flex;align-items:center;gap:var(--spacing-xs);font-weight:400}.service-features li i{color:var(--color-primary);font-size:var(--font-size-sm)}.project-card{background:var(--glass-bg);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);border-radius:var(--border-radius);overflow:hidden;transition:all 0.5s cubic-bezier(0.175,0.885,0.32,1.275);position:relative;height:100%;display:flex;flex-direction:column}.project-card::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;border-radius:var(--border-radius);padding:2px;border:2px solid rgba(0,255,170,0.3);opacity:0;transition:opacity 0.5s ease;pointer-events:none}.project-card:hover{transform:translateY(-10px);box-shadow:0 20px 40px rgba(0,0,0,0.3),0 0 20px rgba(0,255,170,0.2)}.project-card:hover::before{opacity:1}.project-image{position:relative;overflow:hidden;height:400px}.project-image::after{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient( 135deg,rgba(0,255,170,0.1) 0%,transparent 100% );z-index:1;pointer-events:none}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform 0.7s cubic-bezier(0.25,0.8,0.25,1);transform-origin:center center}.project-content{padding:var(--spacing-lg);flex-grow:1;display:flex;flex-direction:column;position:relative;z-index:3}.project-tags{display:flex;gap:var(--spacing-xs);flex-wrap:wrap;margin-bottom:var(--spacing-md)}.project-tag{padding:0.25rem 0.75rem;background:rgba(0,255,170,0.05);color:var(--color-primary);border-radius:20px;font-size:var(--font-size-sm);font-weight:500;transition:all 0.3s ease;border:1px solid rgba(0,255,170,0.2);box-shadow:0 0 5px rgba(0,255,170,0.1);position:relative;overflow:hidden}.project-tag::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient( 90deg,transparent,rgba(0,255,170,0.2),transparent );transition:left 0.7s ease}.project-card:hover .project-tag::before{left:100%}.project-title{margin-bottom:var(--spacing-md);font-size:var(--font-size-xl);position:relative;display:inline-block;color:var(--color-text-light);text-shadow:0 0 5px rgba(0,255,170,0.3);transition:all 0.3s ease}.project-card:hover .project-title{color:var(--color-primary)}.project-description{color:var(--color-text-dim);margin-bottom:var(--spacing-md);flex-grow:1;font-weight:400;max-height:300px;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--color-primary) transparent;line-height:1.6;transition:color 0.3s ease}.project-card:hover .project-description{color:var(--color-text-light)}.project-description::after{content:'';position:sticky;bottom:0;left:0;width:100%;height:50px;background:linear-gradient(to bottom,transparent,rgba(17,17,17,0.9));pointer-events:none;opacity:1;display:block}body.light-mode .project-description::after{background:linear-gradient(to bottom,transparent,var(--color-bg-dark))}.project-links{display:flex;gap:var(--spacing-md);margin-top:auto}.project-links a{color:var(--color-primary);text-decoration:none;font-weight:600;transition:all 0.3s ease;display:flex;align-items:center;gap:var(--spacing-xs);position:relative;padding:0.25rem 0}.project-links a::after{content:'';position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--color-primary);transition:width 0.3s ease}.project-links a:hover{color:var(--color-primary);transform:translateX(3px)}.project-links a:hover::after{width:100%}.project-links a i{transition:color 0.3s ease}.skill-item{background:var(--color-bg-dark);padding:var(--spacing-md);border-radius:var(--border-radius);text-align:center;transition:var(--transition);border:1px solid transparent}.skill-item:hover{transform:translateY(-5px);border-color:var(--color-primary)}.skill-item i{font-size:2rem;color:var(--color-primary);margin-bottom:var(--spacing-xs);display:block}.skill-item span{font-weight:500}.about-image{position:relative;overflow:hidden;border-radius:var(--border-radius)}.about-image img{width:100%;height:auto;display:block;border-radius:var(--border-radius);border:2px solid var(--color-primary)}@media (max-width:576px){.project-image{height:200px}}.carousel-container{position:relative;overflow:hidden}.carousel-track{display:flex;transition:transform 0.5s ease-in-out;height:100%}.carousel-track img{width:100%;height:100%;object-fit:cover;flex-shrink:0}.carousel-button{position:absolute;top:50%;transform:translateY(-50%);background-color:rgba(0,0,0,0.5);color:white;border:none;padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;z-index:10;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;transition:background-color 0.3s ease}.carousel-button:hover{background-color:rgba(0,0,0,0.8)}.carousel-button.prev{left:var(--spacing-md)}.carousel-button.next{right:var(--spacing-md)}.carousel-button:disabled{opacity:0.5;cursor:not-allowed}@keyframes glitchEffect{0%{transform:translate(0)}20%{transform:translate(-2px,2px)}40%{transform:translate(-2px,-2px)}60%{transform:translate(2px,2px)}80%{transform:translate(2px,-2px)}100%{transform:translate(0)}}@keyframes floatingCard{0%{transform:translateY(0)}50%{transform:translateY(-5px)}100%{transform:translateY(0)}}@keyframes glowPulse{0%{box-shadow:0 0 5px rgba(0,255,170,0.2)}50%{box-shadow:0 0 20px rgba(0,255,170,0.4)}100%{box-shadow:0 0 5px rgba(0,255,170,0.2)}}.project-card{transition:transform 0.5s ease,box-shadow 0.5s ease}.project-card:hover{transform:translateY(-10px);box-shadow:0 20px 40px rgba(0,0,0,0.3),0 0 20px rgba(0,255,170,0.2)}.project-tag:hover{transform:translateY(-2px);box-shadow:0 5px 15px rgba(0,255,170,0.3);background:rgba(0,255,170,0.15)}.project-card:hover{box-shadow:0 0 20px rgba(0,255,170,0.4)}.project-card::after{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(to bottom,transparent,var(--color-bg-dark));opacity:0;transition:opacity 0.5s ease;pointer-events:none;z-index:1}body.light-mode .project-card::after{background:linear-gradient(to bottom,transparent,var(-color-bg-dark))}.project-card:hover::after{opacity:1}@media (max-width:768px){.project-card{animation:none}.project-card:hover{transform:translateY(-5px);animation:glowPulse 2s infinite alternate}}.timeline-container{position:relative;padding:var(--spacing-2xl) 0;margin:0 auto;max-width:1400px}.timeline-line{position:absolute;top:0;bottom:0;left:50%;width:4px;background:linear-gradient(to bottom,rgba(0,255,170,0.3),rgba(0,255,170,0.7),rgba(0,255,170,0.3));transform:translateX(-50%);z-index:1}.year-marker{position:relative;margin:var(--spacing-2xl) 0;z-index:2;text-align:center}.year-bubble{display:inline-block;background:var(--color-primary);color:var(--color-bg-dark);font-family:var(--font-madani);font-weight:800;font-size:1.5rem;padding:0.5rem 1.5rem;border-radius:30px;position:relative;z-index:3;box-shadow:0 0 20px rgba(0,255,170,0.5);transition:var(--transition)}.year-bubble:hover{transform:scale(1.05);box-shadow:0 0 30px rgba(0,255,170,0.7)}.timeline-item{position:relative;margin-bottom:var(--spacing-2xl);width:50%;z-index:2}.timeline-item.left{left:0;padding-right:2.5rem}.timeline-item.right{left:50%;padding-left:2.5rem}.timeline-connector{position:absolute;top:30px;width:2.5rem;height:2px;background:linear-gradient(90deg,var(--color-primary),transparent);z-index:2}.timeline-connector::before{content:'';position:absolute;width:10px;height:10px;background:var(--color-primary);border-radius:50%;box-shadow:0 0 10px var(--color-primary);top:50%;transform:translateY(-50%)}.timeline-item.left .timeline-connector{right:0;background:linear-gradient(-90deg,var(--color-primary),transparent)}.timeline-item.left .timeline-connector::before{right:-5px}.timeline-item.right .timeline-connector{left:0}.timeline-item.right .timeline-connector::before{left:-5px}@media (max-width:1200px){.timeline-item{width:50%}}@media (max-width:768px){.timeline-container{padding-left:0;padding-right:0}.timeline-line{left:0;width:2px;background:linear-gradient(to bottom,rgba(0,255,170,0.1),rgba(0,255,170,0.5),rgba(0,255,170,0.1));display:none}.year-marker{text-align:center;padding-left:0;margin:var(--spacing-lg) 0}.year-bubble{font-size:1.2rem;padding:0.3rem 1rem}.year-marker::before{display:none}.timeline-item{width:100%;padding-left:0;padding-right:0;left:0;margin-bottom:var(--spacing-xl)}.timeline-item.left,.timeline-item.right{left:0;padding-left:0;padding-right:0}.timeline-item.left .timeline-connector,.timeline-item.right .timeline-connector{display:none}.project-card{max-width:100%;margin:0;border-radius:0;border-left:none;border-right:none}.container{padding-left:15px;padding-right:15px}}@media (max-width:480px){.year-marker{padding-left:0}.timeline-item{padding-left:0}}#testimonials{background-color:var(--color-bg-medium);position:relative;overflow-x:hidden;overflow-y:visible}.testimonials-container{position:relative;max-width:1000px;margin:0 auto;overflow:hidden;padding:var(--spacing-2xl) 0}.testimonials-track{display:flex;transition:transform 0.5s ease}.testimonial-card{min-width:100%;padding:0 var(--spacing-md);overflow:hidden}.testimonial-content{background:var(--glass-bg);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);padding:var(--spacing-2xl);border-radius:var(--border-radius);margin-bottom:var(--spacing-2xl);position:relative}.testimonial-content:after{content:'';position:absolute;bottom:-10px;left:30px;width:20px;height:20px;background:var(--glass-bg);backdrop-filter:var(--glass-blur);transform:rotate(45deg);border-right:1px solid var(--glass-border);border-bottom:1px solid var(--glass-border);z-index:1}.testimonial-quote{font-size:2rem;color:var(--color-primary);margin-bottom:var(--spacing-md);display:block;opacity:0.5}.testimonial-text{font-style:italic;color:var(--color-text-dim);font-family:var(--font-madani);font-weight:300}.testimonial-author{display:flex;align-items:center;gap:var(--spacing-md);padding-left:var(--spacing-md)}.testimonial-image{width:60px;height:60px;border-radius:50%;object-fit:cover;border:3px solid var(--color-primary)}.testimonial-name{margin-bottom:0.25rem;font-size:1.2rem}.testimonial-role{color:var(--color-primary);font-size:var(--font-size-sm);font-family:var(--font-madani);font-weight:400}@media (max-width:1024px){.testimonial-card{padding:0 var(--spacing-2xl)}}@media (max-width:768px){.testimonial-card{padding:0 var(--spacing-md)}}@media (max-width:576px){.testimonial-content{padding:var(--spacing-lg)}.testimonial-author{flex-direction:column;align-items:flex-start}}.contact-form-container{position:relative;width:100%}.contact-form{background-color:var(--color-bg-medium);padding:var(--spacing-2xl);border-radius:var(--border-radius);border:1px solid rgba(255,255,255,0.1);transition:all 0.3s ease}.form-header{margin-bottom:var(--spacing-xl);text-align:center}.form-header h3{color:var(--color-primary);margin-bottom:var(--spacing-xs);font-family:var(--font-madani);font-weight:600}.form-header p{color:var(--color-text-dim);font-size:0.9rem}.form-row{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.form-row .form-group{flex:1}.form-group{margin-bottom:var(--spacing-lg);position:relative}.hp-field,.hp-field *{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0,0,0,0) !important;clip-path:inset(50%) !important;white-space:nowrap !important;border:0 !important;opacity:0 !important;pointer-events:none !important;left:-9999px !important}.form-label{display:block;margin-bottom:var(--spacing-xs);font-weight:500;display:flex;align-items:center}.required{color:#ff4757;margin-left:4px}.input-wrapper{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:12px;color:var(--color-text-dim);font-size:1rem;pointer-events:none;transition:var(--transition)}.form-control{width:100%;padding:var(--spacing-md) var(--spacing-md) var(--spacing-md) 40px;background:var(--color-bg-dark);border:1px solid rgba(255,255,255,0.1);border-radius:4px;color:var(--color-text-light);transition:var(--transition);font-family:var(--font-madani);font-weight:400}.form-control:focus{outline:none;border-color:var(--color-primary)}.form-control:focus+.input-icon{color:var(--color-primary)}.textarea-wrapper{align-items:flex-start}.textarea-wrapper .input-icon{top:12px}textarea.form-control{min-height:300px;resize:vertical;padding-top:12px}.character-count{text-align:right;font-size:0.8rem;color:var(--color-text-dim);margin-top:4px}.validation-indicator{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:20px;height:20px;border-radius:50%;display:none;align-items:center;justify-content:center}.textarea-wrapper .validation-indicator{top:12px;transform:none}.validation-indicator.valid{display:flex;background-color:rgba(46,213,115,0.2);color:#2ed573}.validation-indicator.valid::before{content:'\f00c';font-family:'Font Awesome 5 Free';font-weight:900;font-size:0.7rem}.validation-indicator.invalid{display:flex;background-color:rgba(255,71,87,0.2);color:#ff4757}.validation-indicator.invalid::before{content:'\f00d';font-family:'Font Awesome 5 Free';font-weight:900;font-size:0.7rem}.error-message{color:#ff4757;font-size:0.8rem;margin-top:4px;display:none}.form-status{margin-bottom:var(--spacing-md);padding:0;max-height:0;overflow:hidden;opacity:0;border-radius:4px;font-size:0.9rem;transition:max-height 0.3s ease,opacity 0.2s ease,padding 0.3s ease}.form-status.show{max-height:200px;opacity:1;padding:0.75rem 1rem}.form-status.error{background:rgba(255,71,87,0.15);border:1px solid rgba(255,71,87,0.4);color:#ff8a95}.form-status.success{background:rgba(46,213,115,0.15);border:1px solid rgba(46,213,115,0.4);color:#6ee2a3}.form-control.field-error{border-color:rgba(255,71,87,0.6);box-shadow:0 0 0 2px rgba(255,71,87,0.15)}.budget-container{display:flex;align-items:center;gap:var(--spacing-md)}.budget-slider{flex:1;height:6px;background:var(--color-bg-dark);border-radius:3px;outline:none}.budget-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:22px;height:22px;border-radius:50%;background:var(--color-primary);cursor:pointer;transition:var(--transition);box-shadow:0 0 0 11px transparent}.budget-slider::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--color-primary);cursor:pointer;transition:var(--transition);border:none;box-shadow:0 0 0 11px transparent}.budget-slider::-webkit-slider-thumb:hover,.budget-slider:focus::-webkit-slider-thumb{transform:scale(1.15)}.budget-slider::-moz-range-thumb:hover,.budget-slider:focus::-moz-range-thumb{transform:scale(1.15)}.budget-slider:focus{outline:none}.budget-slider:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 4px var(--color-primary-dark)}.budget-value-container{min-width:100px;text-align:center;padding:8px 12px;background:var(--color-bg-dark);border-radius:4px;font-weight:500;color:var(--color-primary)}.checkbox-group{display:flex;align-items:flex-start;gap:10px}.checkbox-group input[type="checkbox"]{margin-top:4px;-webkit-appearance:none;appearance:none;width:18px;height:18px;border:1px solid rgba(255,255,255,0.2);border-radius:3px;background:var(--color-bg-dark);cursor:pointer;position:relative;transition:var(--transition)}.checkbox-group input[type="checkbox"]:checked{background:var(--color-primary);border-color:var(--color-primary)}.checkbox-group input[type="checkbox"]:checked::before{content:'\f00c';font-family:'Font Awesome 5 Free';font-weight:900;font-size:0.7rem;color:var(--color-bg-dark);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.checkbox-group label{flex:1;font-size:0.9rem;color:var(--color-text-dim);cursor:pointer}.privacy-link{color:var(--color-primary);text-decoration:none;transition:var(--transition)}.privacy-link:hover{text-decoration:underline}.grecaptcha-badge{visibility:hidden !important}.submit-button{width:100%;padding:var(--spacing-md);background:var(--color-primary);color:var(--color-bg-dark);border:none;border-radius:4px;cursor:pointer;font-size:1rem;transition:var(--transition);display:flex;align-items:center;justify-content:center;gap:10px;position:relative;overflow:hidden}.submit-button:hover{background:var(--color-primary-dark);transform:translateY(-2px)}.button-icon{font-size:0.9rem}.button-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:20px;height:20px;border:2px solid transparent;border-top-color:var(--color-bg-dark);border-radius:50%;animation:spin 1s linear infinite;display:none}@keyframes spin{0%{transform:translate(-50%,-50%) rotate(0deg)}100%{transform:translate(-50%,-50%) rotate(360deg)}}.submit-button.loading .button-text,.submit-button.loading .button-icon{visibility:hidden}.submit-button.loading .button-loader{display:block}.form-success-message{position:absolute;top:0;left:0;width:100%;height:100%;background:var(--color-bg-medium);border-radius:var(--border-radius);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-2xl);text-align:center;opacity:0;visibility:hidden;transition:all 0.3s ease;z-index:-1}.form-success-message.active{opacity:1;visibility:visible;z-index:1}.success-icon{font-size:3rem;color:var(--color-primary);margin-bottom:var(--spacing-lg)}.form-success-message h3{color:var(--color-primary);margin-bottom:var(--spacing-md)}.form-success-message p{color:var(--color-text-dim);margin-bottom:var(--spacing-xl)}.contact-info-container{display:flex;flex-direction:column;gap:var(--spacing-xl)}.contact-info{background-color:var(--color-bg-medium);padding:var(--spacing-2xl);border-radius:var(--border-radius);border:1px solid rgba(255,255,255,0.1)}.contact-info h3{color:var(--color-primary);margin-bottom:var(--spacing-lg);font-family:var(--font-madani);font-weight:600}.contact-method{display:flex;align-items:flex-start;gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.contact-method:last-child{margin-bottom:0}.contact-icon{font-size:1.5rem;color:var(--color-primary);min-width:2rem}.contact-details h4{margin-bottom:var(--spacing-xs);font-family:var(--font-madani);font-weight:500}.contact-details p,.contact-details a{color:var(--color-text-dim);text-decoration:none;transition:var(--transition);font-family:var(--font-madani);font-weight:400}.contact-details a:hover{color:var(--color-primary)}.chat-buttons{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-md)}.chat-button{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:4px;font-size:0.9rem;text-decoration:none;transition:var(--transition)}.chat-button.whatsapp{border:1px solid #25D366;color:#fff}.chat-button.telegram{border:1px solid #0088cc;color:#fff}.chat-button.telegram:hover,.chat-button.whatsapp:hover{border:1px solid var(--color-primary)}.chat-button:hover{transform:translateY(-2px);opacity:0.9}.time-based-video{max-width:500px;margin-top:var(--spacing-sm);border-radius:var(--border-radius);overflow:hidden}#time-video{width:100%;height:100%;border-radius:var(--border-radius);overflow:hidden}@media (max-width:992px){.contact-grid{grid-template-columns:1fr;gap:var(--spacing-xl)}}@media (max-width:768px){.form-row{flex-direction:column;gap:var(--spacing-md)}.chat-buttons{flex-direction:column;align-items:flex-start}}@media (max-width:576px){.contact-method{flex-direction:column}.contact-form,.contact-info,.map-container{padding:var(--spacing-xl)}}.ascii-art-container{display:flex;justify-content:center;align-items:flex-start;width:100%;max-width:500px;height:500px;overflow:hidden;text-align:center;position:relative;will-change:transform;transform:translateZ(0);backface-visibility:hidden;perspective:1000px}.about-content-bio{height:500px;overflow-y:auto;padding-right:var(--spacing-sm);position:relative;scrollbar-width:thin;scrollbar-color:var(--color-primary) var(--color-bg-medium)}body.light-mode .about-content-bio::after{background:linear-gradient(to bottom,transparent,var(--color-bg-dark))}.about-content-bio::-webkit-scrollbar{width:6px}.about-content-bio::-webkit-scrollbar-track{background:var(--color-bg-medium);border-radius:var(--border-radius)}.about-content-bio::-webkit-scrollbar-thumb{background:var(--color-primary);border-radius:var(--border-radius);box-shadow:0 0 5px rgba(0,255,170,0.5);transition:background 0.3s ease}.about-content-bio::-webkit-scrollbar-thumb:hover{background:var(--color-primary-dark)}@keyframes pulse-scrollbar{0%{opacity:0.7}50%{opacity:1}100%{opacity:0.7}}.about-content-bio:hover::-webkit-scrollbar-thumb{animation:pulse-scrollbar 2s infinite}.typing-container{position:relative;display:block;width:100%}.typing-paragraph{margin-bottom:var(--spacing-md);line-height:1.6;position:relative}.typing-cursor{display:inline-block;color:var(--color-primary);font-weight:bold;margin-left:1px;animation:blink 1s infinite;position:relative;vertical-align:baseline;font-size:1.2em;line-height:1;text-shadow:0 0 5px rgba(0,255,170,0.5);bottom:0;top:-5px}@keyframes blink{0%,100%{opacity:1}50%{opacity:0}}.ascii-art{font-family:monospace;white-space:pre;line-height:1;font-size:0.5rem;color:var(--color-primary);margin:0 auto;display:inline-block;opacity:0;transition:opacity 0.5s ease-in-out,text-shadow 0.5s ease-in-out}.ascii-art.is-animating{opacity:1}.ascii-art.has-glow{text-shadow:0 0 5px rgba(0,255,170,0.5)}.about-image{position:relative;will-change:transform;transform:translateZ(0);backface-visibility:hidden;perspective:1000px;z-index:1}@media (min-width:768px){.ascii-art{font-size:0.6rem}.ascii-art-container,.about-content-bio{height:550px}}@media (min-width:992px){.ascii-art{font-size:0.7rem}.ascii-art-container,.about-content-bio{height:600px}}@media (min-width:1200px){.ascii-art{font-size:0.8rem}.ascii-art-container,.about-content-bio{height:650px}}@media (max-width:768px){.ascii-art-container{height:400px}.about-content-bio{height:400px;margin-top:var(--spacing-md)}}.about-content{display:flex;flex-direction:column;height:100%}.about-content-bio{position:relative;overflow-y:auto;flex-grow:1;overscroll-behavior:contain}.about-content-bio::after{content:'';position:sticky;bottom:0;left:0;width:100%;height:50px;background:linear-gradient(to bottom,transparent,var(--color-bg-dark));pointer-events:none;opacity:0;transition:opacity 0.3s ease;display:block}.about-content-bio.is-scrolled::after{opacity:1}.about-content-bio p{visibility:hidden}.about-content-bio.typing-active p{visibility:visible}.about-skills{margin-top:var(--spacing-xl)}.skip-animation-container{position:relative;left:0;width:100%;text-align:center;padding:10px 0;margin-top:1rem;z-index:10;background:linear-gradient(to top,var(--color-bg-secondary) 80%,transparent);height:50px;display:flex;align-items:center;justify-content:center}.skip-animation-button{font-size:0.8em;padding:5px 10px;opacity:0.7;transition:opacity 0.3s ease;background-color:var(--color-bg-secondary);border:1px solid var(--color-primary);color:var(--color-primary);border-radius:4px;cursor:pointer}.skip-animation-button:hover{opacity:1}.typing-container{position:relative;margin-bottom:60px}.cursor-container{display:inline-block;position:relative;vertical-align:baseline;height:1em;line-height:1}.typing-cursor{display:inline-block;vertical-align:middle;animation:blink 1s step-end infinite;position:relative}.typing-complete .typing-cursor{display:none;animation:none}.typing-paragraph{margin-bottom:1rem;line-height:1.6;position:relative}@keyframes blink{from,to{opacity:1}50%{opacity:0}}@media (min-width:768px){}.particle-canvas{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;pointer-events:none}#hero-particle-canvas{z-index:1;opacity:0.8}#footer-particle-canvas{z-index:1;opacity:0.6}body.light-mode .particle-canvas{opacity:0.5}@media (max-width:768px){}body.reduce-animations .particle-canvas{display:none}.skills{margin:2rem 0;padding:1rem;background-color:var(--color-bg-secondary);border-radius:8px}.skills h3{position:relative;margin:2rem 0 1.5rem;padding-bottom:0.75rem;font-size:1.5rem;color:var(--color-text);border-bottom:2px solid var(--color-primary);display:flex;align-items:center}.skills h3:first-of-type{margin-top:0.5rem}.skills h3::before{content:'';display:inline-block;width:8px;height:8px;background-color:var(--color-primary);margin-right:0.75rem;transform:rotate(45deg)}.skill-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1.25rem;margin-bottom:2rem}.skill-grid:last-of-type{margin-bottom:0.5rem}.skill-item{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1.25rem 0.75rem;background-color:var(--color-bg-dark);border-radius:8px;transition:transform 0.5s ease,box-shadow 0.5s ease,opacity 0.6s ease;text-align:center;border:1px solid rgba(255,255,255,0.05);will-change:transform,opacity}.skill-item.skill-hidden{opacity:0;transform:translateY(30px);pointer-events:none}.skill-item.skill-visible{opacity:1;transform:translateY(0);pointer-events:auto}.skill-item:hover{transform:translateY(-5px);box-shadow:0 5px 15px rgba(0,0,0,0.2);border-color:var(--color-primary)}.skill-item i{font-size:2rem;margin-bottom:0.75rem;color:var(--color-primary);transition:transform 0.3s ease}.skill-item:hover i{transform:scale(1.1)}.skill-item span{font-weight:500;font-size:0.95rem}@media (max-width:768px){.skill-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:1rem}.skills h2{font-size:1.3rem}.skill-item{padding:1rem 0.5rem}.skill-item i{font-size:1.75rem}}@media (max-width:480px){.skill-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:0.75rem}.skill-item i{font-size:1.5rem;margin-bottom:0.5rem}.skill-item span{font-size:0.85rem}}@media (min-width:992px){.skills{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;padding:1.5rem}.skills h3{margin-top:0}.skill-category{margin-bottom:0}.skill-category .skill-grid{margin-bottom:0.5rem}}#cta-section{position:relative;padding:var(--spacing-5xl) 0;overflow:visible;margin:var(--spacing-4xl) 0;z-index:1;width:100%}#cta-section .cta-container{position:relative;background:var(--color-bg-medium);border:1px solid var(--color-primary);border-radius:var(--border-radius);box-shadow:0 15px 40px rgba(0,0,0,0.25),0 0 15px rgba(0,255,170,0.2);transition:var(--transition);overflow:hidden;padding:var(--spacing-3xl) 0}.cta-content{position:relative;z-index:2;max-width:1200px;margin:0 auto;padding:0 var(--spacing-2xl);color:#FFFFFF}.cta-title{font-size:2.5rem;font-weight:800;text-align:center;margin-bottom:var(--spacing-xl);letter-spacing:1px;text-shadow:0 0 10px rgba(0,255,170,0.2)}.cta-description{font-size:var(--font-size-lg);margin:var(--spacing-xl) 0 var(--spacing-2xl);line-height:1.6;text-align:center;max-width:800px;margin-left:auto;margin-right:auto}.cta-buttons{margin-top:var(--spacing-2xl);display:flex;justify-content:center;gap:var(--spacing-xl);flex-wrap:wrap}.cta-buttons .cta-button{position:relative;overflow:hidden;transition:transform 0.3s ease,box-shadow 0.3s ease}.cta-buttons .cta-button:hover{transform:translateY(-3px);box-shadow:0 7px 15px rgba(0,0,0,0.2),0 0 10px rgba(0,255,170,0.3)}.cta-buttons .cta-button:before{content:'';position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(0,255,170,0.1) 0%,transparent 70%);opacity:0;transform:scale(0.5);transition:transform 0.5s ease,opacity 0.5s ease;pointer-events:none}.cta-buttons .cta-button:hover:before{opacity:1;transform:scale(1)}.cta-background{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0;opacity:0.5;overflow:hidden}#cta-particle-canvas{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;pointer-events:none}.cta-background:after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(to right,rgba(0,46,32,0.5),transparent,rgba(0,46,32,0.5));pointer-events:none}#cta-section .section-title{margin-bottom:var(--spacing-xl);display:block}#cta-section .section-title:after{background:var(--color-primary);height:4px;bottom:-15px;width:80px}body.light-mode #cta-section .container{color:#002E20;box-shadow:none}body.light-mode .cta-content{color:#002E20}body.light-mode .cta-background{opacity:0.1}body.light-mode .cta-background:after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(to right,rgba(255,255,255,0.5),transparent,rgba(255,255,255,0.5));pointer-events:none}@media (max-width:768px){.cta-title{font-size:2rem}.cta-description{font-size:var(--font-size-md)}#cta-section{padding:var(--spacing-3xl) 0}#cta-section .container{padding:var(--spacing-xl) 0}.cta-buttons{flex-direction:column;align-items:center}.cta-button{width:100%;max-width:300px;text-align:center;margin:0 0 var(--spacing-md) 0}}@media (max-width:480px){.cta-title{font-size:1.75rem}.cta-description{font-size:var(--font-size-base)}#cta-section{padding:var(--spacing-2xl) 0}#cta-section .container{padding:var(--spacing-xl) 0}.cta-content{padding:0 var(--spacing-md)}#cta-section .section-title:after{width:60px}}.mt-0{margin-top:0}.mt-1{margin-top:var(--spacing-xs)}.mt-2{margin-top:var(--spacing-sm)}.mt-3{margin-top:var(--spacing-md)}.mt-4{margin-top:var(--spacing-lg)}.mt-5{margin-top:var(--spacing-xl)}.mt-6{margin-top:var(--spacing-2xl)}.mt-7{margin-top:var(--spacing-3xl)}.mb-0{margin-bottom:0}.mb-1{margin-bottom:var(--spacing-xs)}.mb-2{margin-bottom:var(--spacing-sm)}.mb-3{margin-bottom:var(--spacing-md)}.mb-4{margin-bottom:var(--spacing-lg)}.mb-5{margin-bottom:var(--spacing-xl)}.mb-6{margin-bottom:var(--spacing-2xl)}.mb-7{margin-bottom:var(--spacing-3xl)}.ml-0{margin-left:0}.ml-1{margin-left:var(--spacing-xs)}.ml-2{margin-left:var(--spacing-sm)}.ml-3{margin-left:var(--spacing-md)}.ml-4{margin-left:var(--spacing-lg)}.ml-5{margin-left:var(--spacing-xl)}.ml-6{margin-left:var(--spacing-2xl)}.ml-7{margin-left:var(--spacing-3xl)}.mr-0{margin-right:0}.mr-1{margin-right:var(--spacing-xs)}.mr-2{margin-right:var(--spacing-sm)}.mr-3{margin-right:var(--spacing-md)}.mr-4{margin-right:var(--spacing-lg)}.mr-5{margin-right:var(--spacing-xl)}.mr-6{margin-right:var(--spacing-2xl)}.mr-7{margin-right:var(--spacing-3xl)}.mx-auto{margin-left:auto;margin-right:auto}.my-auto{margin-top:auto;margin-bottom:auto}.pt-0{padding-top:0}.pt-1{padding-top:var(--spacing-xs)}.pt-2{padding-top:var(--spacing-sm)}.pt-3{padding-top:var(--spacing-md)}.pt-4{padding-top:var(--spacing-lg)}.pt-5{padding-top:var(--spacing-xl)}.pt-6{padding-top:var(--spacing-2xl)}.pt-7{padding-top:var(--spacing-3xl)}.pb-0{padding-bottom:0}.pb-1{padding-bottom:var(--spacing-xs)}.pb-2{padding-bottom:var(--spacing-sm)}.pb-3{padding-bottom:var(--spacing-md)}.pb-4{padding-bottom:var(--spacing-lg)}.pb-5{padding-bottom:var(--spacing-xl)}.pb-6{padding-bottom:var(--spacing-2xl)}.pb-7{padding-bottom:var(--spacing-3xl)}.pl-0{padding-left:0}.pl-1{padding-left:var(--spacing-xs)}.pl-2{padding-left:var(--spacing-sm)}.pl-3{padding-left:var(--spacing-md)}.pl-4{padding-left:var(--spacing-lg)}.pl-5{padding-left:var(--spacing-xl)}.pl-6{padding-left:var(--spacing-2xl)}.pl-7{padding-left:var(--spacing-3xl)}.pr-0{padding-right:0}.pr-1{padding-right:var(--spacing-xs)}.pr-2{padding-right:var(--spacing-sm)}.pr-3{padding-right:var(--spacing-md)}.pr-4{padding-right:var(--spacing-lg)}.pr-5{padding-right:var(--spacing-xl)}.pr-6{padding-right:var(--spacing-2xl)}.pr-7{padding-right:var(--spacing-3xl)}.d-none{display:none}.d-block{display:block}.d-inline{display:inline}.d-inline-block{display:inline-block}.d-flex{display:flex}.d-grid{display:grid}.flex-row{flex-direction:row}.flex-column{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.align-start{align-items:flex-start}.align-end{align-items:flex-end}.align-center{align-items:center}.align-stretch{align-items:stretch}.position-relative{position:relative}.position-absolute{position:absolute}.position-fixed{position:fixed}.position-sticky{position:sticky}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-justify{text-align:justify}.text-uppercase{text-transform:uppercase}.text-lowercase{text-transform:lowercase}.text-capitalize{text-transform:capitalize}.text-nowrap{white-space:nowrap}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.visible{visibility:visible}.invisible{visibility:hidden}.border{border:1px solid rgba(255,255,255,0.1)}.border-top{border-top:1px solid rgba(255,255,255,0.1)}.border-right{border-right:1px solid rgba(255,255,255,0.1)}.border-bottom{border-bottom:1px solid rgba(255,255,255,0.1)}.border-left{border-left:1px solid rgba(255,255,255,0.1)}.border-0{border:0}.rounded{border-radius:var(--border-radius)}.rounded-circle{border-radius:50%}.rounded-0{border-radius:0}.w-100{width:100%}.w-75{width:75%}.w-50{width:50%}.w-25{width:25%}.w-auto{width:auto}.h-100{height:100%}.h-75{height:75%}.h-50{height:50%}.h-25{height:25%}.h-auto{height:auto}.bg-primary{background-color:var(--color-primary)}.bg-dark{background-color:var(--color-bg-dark)}.bg-medium{background-color:var(--color-bg-medium)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-none{box-shadow:none}@media (max-width:576px){.d-none-sm{display:none}.d-block-sm{display:block}.d-flex-sm{display:flex}}@media (max-width:768px){.d-none-md{display:none}.d-block-md{display:block}.d-flex-md{display:flex}}@media (max-width:1024px){.d-none-lg{display:none}.d-block-lg{display:block}.d-flex-lg{display:flex}}