*{box-sizing:border-box;margin:0;padding:0}body{background-color:#fff;color:#333;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.6}.container{margin:0 auto;max-width:1200px;padding:0 20px}.header{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffffa;border-bottom:1px solid #9333ea1a;box-shadow:0 4px 20px #00000014;left:0;position:fixed;right:0;top:0;transition:all .4s ease;z-index:1000}.header.scrolled{background:#fffffffa;box-shadow:0 4px 20px #0000001a}.nav-container{height:80px;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 20px}.logo,.nav-container{align-items:center;display:flex}.logo{text-decoration:none;transition:transform .3s ease}.logo:hover{transform:scale(1.05)}.logo-squares{display:flex;gap:4px;margin-right:12px}.square{align-items:center;border-radius:8px;color:#fff;display:flex;font-size:20px;font-weight:700;height:40px;justify-content:center;width:40px}.square.purple{background:#9333ea}.square.pink{background:#ec4899}.logo-text{color:#333;font-size:18px;font-weight:700}.logo-preview{text-align:center}.logo-preview .logo-squares{justify-content:center;margin:0 0 20px}.logo-preview .square{font-size:40px;height:80px;margin:0 4px;width:80px}.brand-text{color:#1e293b;font-size:24px;font-weight:700;margin-top:20px}.logo-large .logo-squares{justify-content:center;margin:0 0 30px}.logo-large .square{font-size:50px;height:100px;width:100px}.logo-large .brand-text{font-size:32px;margin-top:20px;text-align:center}@media (max-width:768px){.logo-preview .square{font-size:30px;height:60px;width:60px}.logo-large .square{font-size:40px;height:80px;width:80px}.brand-text{font-size:20px}.logo-large .brand-text{font-size:28px}}.nav-menu{display:flex;gap:2rem;list-style:none}.nav-menu a{border-radius:8px;color:#333;font-weight:500;padding:8px 16px;text-decoration:none;transition:color .3s ease}.nav-menu a.active,.nav-menu a:hover{background:#9333ea1a;color:#9333ea}.mobile-menu-button{background:none;border:none;cursor:pointer;display:none;padding:8px}.hamburger{display:block;position:relative}.hamburger,.hamburger:after,.hamburger:before{background:#333;height:2px;transition:all .3s ease;width:24px}.hamburger:after,.hamburger:before{content:"";position:absolute}.hamburger:before{top:-8px}.hamburger:after{bottom:-8px}.hamburger.open{background:#0000}.hamburger.open:before{top:0;transform:rotate(45deg)}.hamburger.open:after{bottom:0;transform:rotate(-45deg)}.mobile-menu{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffffa;border-bottom:1px solid #9333ea1a;left:0;padding:20px;position:fixed;right:0;top:80px}.mobile-menu ul{display:flex;flex-direction:column;gap:.5rem;list-style:none}.mobile-menu a{border-radius:8px;color:#333;display:block;font-weight:500;padding:12px 16px;text-decoration:none;transition:all .3s ease}.mobile-menu a.active,.mobile-menu a:hover{background:#9333ea1a;color:#9333ea}@media (max-width:768px){.nav-menu{display:none}.mobile-menu-button{display:block}}main{padding-top:80px}.hero{align-items:center;background:linear-gradient(135deg,#f8fafc,#e2e8f0);display:flex;min-height:100vh;overflow:hidden;position:relative}.hero-content{grid-gap:60px;align-items:center;display:grid;gap:60px;grid-template-columns:1fr 1fr;margin:0 auto;max-width:1200px;padding:0 20px}.hero-text h1{color:#1e293b;font-size:3.5rem;font-weight:700;line-height:1.2;margin-bottom:20px}.hero-text h1 .brand{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#9333ea,#ec4899);-webkit-background-clip:text;background-clip:text}.hero-text h2{color:#64748b;font-size:2rem;font-weight:400;margin-bottom:30px}.hero-text p{color:#64748b;font-size:1.2rem;line-height:1.6;margin-bottom:40px}.hero-buttons{display:flex;gap:20px}.btn{border:none;border-radius:8px;cursor:pointer;display:inline-block;font-size:1.1rem;font-weight:600;padding:15px 30px;text-decoration:none;transition:all .3s ease}.btn-primary{background:linear-gradient(135deg,#9333ea,#ec4899);box-shadow:0 8px 25px #9333ea4d;color:#fff}.btn-primary:hover{box-shadow:0 12px 35px #9333ea66;transform:translateY(-3px)}.btn-secondary{background:#0000;border:2px solid #9333ea;color:#9333ea}.btn-secondary:hover{background:#9333ea;color:#fff}.hero-visual{align-items:center;display:flex;justify-content:center}.features{background:#f8fafc;padding:100px 0}.features h2{color:#1e293b;font-size:2.5rem;font-weight:700;margin-bottom:60px;text-align:center}.features-grid{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.feature-card{background:#fff;border-radius:16px;box-shadow:0 10px 30px #0000001a;padding:40px 30px;text-align:center;transition:transform .3s ease}.feature-card:hover{transform:translateY(-10px)}.feature-icon{align-items:center;display:flex;justify-content:center;margin-bottom:20px}.feature-icon svg{color:#9333ea}.feature-card h3{color:#1e293b;font-size:1.5rem;font-weight:600;margin-bottom:15px}.feature-card p{color:#64748b;line-height:1.6}.services-preview{padding:100px 0}.services-preview h2{color:#1e293b;font-size:2.5rem;font-weight:700;margin-bottom:60px;text-align:center}.services-grid{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.service-card{background:#fff;border-radius:16px;border-top:4px solid #9333ea;box-shadow:0 10px 30px #0000001a;padding:40px 30px;transition:transform .3s ease}.service-card:hover{transform:translateY(-5px)}.service-icon{align-items:center;display:flex;justify-content:center;margin-bottom:20px}.service-icon svg{color:#9333ea}.service-card h3{color:#1e293b;font-size:1.5rem;font-weight:600;margin-bottom:15px}.service-card p{color:#64748b;line-height:1.6;margin-bottom:20px}.learn-more{color:#9333ea;font-weight:600;text-decoration:none;transition:color .3s ease}.learn-more:hover{color:#ec4899}.cta{background:linear-gradient(135deg,#9333ea,#ec4899);color:#fff;padding:100px 0;text-align:center}.cta h2{font-size:2.5rem;font-weight:700;margin-bottom:20px}.cta p{font-size:1.2rem;margin-bottom:40px;opacity:.9}.cta .btn-primary{background:#fff;box-shadow:0 8px 25px #0003;color:#9333ea}.cta .btn-primary:hover{background:#f8fafc;transform:translateY(-3px)}.page-hero{background:linear-gradient(135deg,#9333ea,#ec4899);color:#fff;padding:100px 0 80px;text-align:center}.page-hero h1{font-size:3rem;font-weight:700;margin-bottom:20px}.page-hero p{font-size:1.2rem;opacity:.9}.about-content{padding:80px 0}.about-grid{grid-gap:60px;align-items:center;display:grid;gap:60px;grid-template-columns:1fr 1fr}.about-text h2{color:#1e293b;font-size:2.5rem;font-weight:700;margin-bottom:30px}.about-text p{color:#64748b;font-size:1.1rem;line-height:1.8;margin-bottom:20px}.logo-large .square{font-size:60px;height:120px;margin:0 6px;width:120px}.logo-large .brand-text{font-size:36px;margin-top:30px}.team-section{background:#f8fafc;padding:80px 0}.team-section h2{color:#1e293b;font-size:2.5rem;font-weight:700;margin-bottom:60px;text-align:center}.team-member{grid-gap:60px;align-items:center;display:grid;gap:60px;grid-template-columns:1fr 1fr}.member-info h3{color:#1e293b;font-size:2rem;font-weight:700;margin-bottom:10px}.position{color:#9333ea;font-size:1.2rem;font-weight:600;margin-bottom:20px}.member-info p{color:#64748b;font-size:1.1rem;line-height:1.8;margin-bottom:30px}.expertise h4{color:#1e293b;font-size:1.3rem;font-weight:600;margin-bottom:15px}.expertise ul{list-style:none}.expertise li{color:#64748b;padding:8px 0 8px 20px;position:relative}.expertise li:before{color:#9333ea;content:"✓";font-weight:700;left:0;position:absolute}.placeholder-photo{align-items:center;background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border-radius:16px;color:#64748b;display:flex;font-size:1.2rem;height:300px;justify-content:center;padding:20px;text-align:center;width:300px}.values-section{padding:80px 0}.values-section h2{color:#1e293b;font-size:2.5rem;font-weight:700;margin-bottom:60px;text-align:center}.values-grid{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.value-card{background:#fff;border-radius:16px;box-shadow:0 10px 30px #0000001a;padding:40px 30px;text-align:center;transition:transform .3s ease}.value-card:hover{transform:translateY(-5px)}.value-icon{align-items:center;display:flex;justify-content:center;margin-bottom:20px}.value-icon svg{color:#9333ea}.value-card h3{color:#1e293b;font-size:1.5rem;font-weight:600;margin-bottom:15px}.value-card p{color:#64748b;line-height:1.6}.mission-section{background:#f8fafc;padding:80px 0}.mission-content{margin:0 auto;max-width:800px;text-align:center}.mission-content h2{color:#1e293b;font-size:2.5rem;font-weight:700;margin-bottom:30px}.mission-content p{color:#64748b;font-size:1.2rem;line-height:1.8}.main-services{padding:80px 0}.main-services h2{color:#1e293b;font-size:2.5rem;font-weight:700;margin-bottom:60px;text-align:center}.service-card.main{border-top:4px solid #ec4899}.service-features{list-style:none;margin-top:20px}.service-features li{color:#64748b;padding:8px 0 8px 20px;position:relative}.service-features li:before{color:#ec4899;content:"✓";font-weight:700;left:0;position:absolute}.additional-services{background:#f8fafc;padding:80px 0}.additional-services h2{color:#1e293b;font-size:2.5rem;font-weight:700;margin-bottom:60px;text-align:center}.process-steps{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.portfolio-grid{padding:80px 0}.portfolio-filters{display:flex;flex-wrap:wrap;gap:20px;justify-content:center;margin-bottom:60px}.filter-btn{background:#fff;border:2px solid #e2e8f0;border-radius:8px;color:#64748b;cursor:pointer;font-weight:500;padding:12px 24px;transition:all .3s ease}.filter-btn.active,.filter-btn:hover{background:#9333ea;border-color:#9333ea;color:#fff}.project-card{background:#fff;border-radius:16px;box-shadow:0 10px 30px #0000001a;overflow:hidden;transition:transform .3s ease}.project-card:hover{transform:translateY(-5px)}.project-image{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);height:250px}.project-image,.project-preview{align-items:center;display:flex;justify-content:center;position:relative}.project-preview{height:100%;width:100%}.project-overlay{align-items:center;background:#9333eae6;bottom:0;display:flex;flex-direction:column;gap:20px;justify-content:center;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.project-card:hover .project-overlay{opacity:1}.project-category{background:#fff;border-radius:20px;color:#9333ea;font-size:.9rem;font-weight:600;padding:8px 16px}.project-link{border:2px solid #fff;border-radius:25px;color:#fff;font-weight:600;padding:10px 20px;text-decoration:none;transition:all .3s ease}.project-link:hover{background:#fff;color:#9333ea}.project-title-overlay{background:linear-gradient(#0000,#000000b3);bottom:0;color:#fff;left:0;padding:20px;position:absolute;right:0}.project-title-overlay h3{font-size:1.3rem;font-weight:600;margin:0}.project-content{padding:30px}.project-content h3{color:#1e293b;font-size:1.5rem;font-weight:600;margin-bottom:15px}.project-content p{color:#64748b;line-height:1.6;margin-bottom:20px}.project-features{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.feature-tag{background:#9333ea1a;border-radius:20px;color:#9333ea;font-size:.8rem;font-weight:500;padding:4px 12px}.project-technologies{margin-bottom:25px}.project-technologies h4{color:#1e293b;font-size:1rem;font-weight:600;margin-bottom:10px}.tech-tags{display:flex;flex-wrap:wrap;gap:8px}.tech-tag{background:#ec48991a;border-radius:20px;color:#ec4899;font-size:.8rem;font-weight:500;padding:4px 12px}.project-actions{text-align:center}.project-actions .btn{text-align:center;width:100%}.technologies-section{background:#f8fafc;padding:80px 0}.technologies-section h2{color:#1e293b;font-size:2.5rem;font-weight:700;margin-bottom:60px;text-align:center}.tech-grid{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.tech-item{background:#fff;border-radius:16px;box-shadow:0 10px 30px #0000001a;padding:40px 30px;text-align:center;transition:transform .3s ease}.tech-item:hover{transform:translateY(-5px)}.tech-icon{align-items:center;display:flex;justify-content:center;margin-bottom:20px}.tech-icon svg{color:#9333ea}.tech-item h3{color:#1e293b;font-size:1.5rem;font-weight:600;margin-bottom:15px}.tech-item p{color:#64748b;line-height:1.6}.process-section{padding:80px 0}.process-section h2{color:#1e293b;font-size:2.5rem;font-weight:700;margin-bottom:60px;text-align:center}.process-timeline{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.process-step{text-align:center}.step-number{align-items:center;background:linear-gradient(135deg,#9333ea,#ec4899);border-radius:50%;color:#fff;display:flex;font-size:1.5rem;font-weight:700;height:60px;justify-content:center;margin:0 auto 20px;width:60px}.process-step h3{color:#1e293b;font-size:1.3rem;font-weight:600;margin-bottom:15px}.process-step p{color:#64748b;line-height:1.6}@media (max-width:768px){.projects-grid{grid-template-columns:1fr}.portfolio-filters{align-items:center;flex-direction:column}.process-timeline,.tech-grid{grid-template-columns:1fr}}.contact-content{padding:80px 0}.contact-grid{grid-gap:60px;display:grid;gap:60px;grid-template-columns:1fr 1fr}.contact-info h2{color:#1e293b;font-size:2.5rem;font-weight:700;margin-bottom:30px}.contact-info p{color:#64748b;font-size:1.1rem;line-height:1.8;margin-bottom:30px}.contact-details{grid-gap:20px;display:grid;gap:20px}.contact-item{background:#fff;border-radius:12px;box-shadow:0 5px 15px #0000001a;gap:15px;padding:20px}.contact-icon,.contact-item{align-items:center;display:flex}.contact-icon{background:#9333ea1a;border-radius:50%;flex-shrink:0;height:40px;justify-content:center;width:40px}.contact-icon svg{color:#9333ea}.contact-item h4{color:#1e293b;font-size:1.1rem;font-weight:600;margin-bottom:5px}.contact-item p{color:#64748b;margin:0}.contact-form{background:#fff;border-radius:16px;box-shadow:0 10px 30px #0000001a;padding:40px}.contact-form h3{color:#1e293b;font-size:2rem;font-weight:700;margin-bottom:30px;text-align:center}.form-group{margin-bottom:20px}.form-group label{color:#1e293b;display:block;font-weight:500;margin-bottom:8px}.form-group input,.form-group select,.form-group textarea{border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;padding:12px 16px;transition:border-color .3s ease;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#9333ea;outline:none}.form-group textarea{min-height:120px;resize:vertical}.faq-section{background:#f8fafc;padding:80px 0}.faq-section h2{color:#1e293b;font-size:2.5rem;font-weight:700;margin-bottom:60px;text-align:center}.faq-grid{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.faq-item{background:#fff;border-radius:16px;box-shadow:0 10px 30px #0000001a;padding:30px}.faq-item h3{color:#1e293b;font-size:1.3rem;font-weight:600;margin-bottom:15px}.faq-item p{color:#64748b;line-height:1.6}.impressum-content{padding:80px 0}.impressum-section{margin-bottom:60px}.impressum-section h2{border-bottom:2px solid #9333ea;color:#1e293b;font-size:2rem;font-weight:700;margin-bottom:20px;padding-bottom:10px}.impressum-section h3{color:#1e293b;font-size:1.5rem;font-weight:600;margin:30px 0 15px}.impressum-section p{color:#64748b;font-size:1.1rem;line-height:1.8;margin-bottom:15px}.company-info p,.contact-info p,.tech-info p{color:#1e293b;font-size:1.1rem;margin-bottom:8px}.impressum-section a{color:#9333ea;text-decoration:none}.impressum-section a:hover{text-decoration:underline}.footer{background:linear-gradient(135deg,#1e293b,#334155);color:#fff;padding:60px 0 20px}.footer-content{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin:0 auto 40px;max-width:1200px;padding:0 20px}.footer-section h3{color:#9333ea;font-size:1.2rem;font-weight:600;margin-bottom:20px}.footer-section p{color:#cbd5e1;line-height:1.6;margin-bottom:10px}.footer-section ul{list-style:none}.footer-section li{margin-bottom:8px}.footer-section a{color:#cbd5e1;text-decoration:none;transition:color .3s ease}.footer-section a:hover{color:#9333ea}.contact-info p{align-items:center;display:flex;gap:10px;margin-bottom:10px}.contact-info .icon{color:#9333ea;width:16px}.social-media{display:flex;gap:15px;margin-top:15px}.social-media a{align-items:center;background:#9333ea1a;border:1px solid #9333ea33;border-radius:50%;color:#cbd5e1;display:flex;height:40px;justify-content:center;text-decoration:none;transition:all .3s ease;width:40px}.social-media a:hover{background:#9333ea;box-shadow:0 4px 12px #9333ea4d;color:#fff;transform:translateY(-2px)}.social-media svg{color:inherit}.footer-bottom{border-top:1px solid #475569;color:#cbd5e1;font-size:.9rem;padding-top:20px;text-align:center}@media (max-width:768px){.hero-content{gap:40px;grid-template-columns:1fr;text-align:center}.hero-text h1{font-size:2.5rem}.hero-text h2{font-size:1.5rem}.hero-buttons{align-items:center;flex-direction:column}.about-grid,.contact-grid,.team-member{gap:40px;grid-template-columns:1fr}.placeholder-photo{margin:0 auto;max-width:300px;width:100%}.faq-grid{grid-template-columns:1fr}.portfolio-filters{align-items:center;flex-direction:column}.footer-content,.process-steps,.process-timeline,.projects-grid,.tech-grid{grid-template-columns:1fr}.footer-content{text-align:center}}@media (max-width:480px){.container{padding:0 15px}.hero-text h1{font-size:2rem}.hero-text h2{font-size:1.3rem}.about-text h2,.additional-services h2,.contact-info h2,.faq-section h2,.features h2,.main-services h2,.mission-content h2,.page-hero h1,.portfolio-filters h2,.process-section h2,.services-preview h2,.team-section h2,.technologies-section h2,.values-section h2{font-size:2rem}}.recent-projects{background:#f8fafc;padding:100px 0}.recent-projects h2{color:#1e293b;font-size:2.5rem;font-weight:700;margin-bottom:60px;text-align:center}.projects-grid{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));margin-bottom:50px}.project-preview-card{background:#fff;border-radius:16px;border-top:4px solid #9333ea;box-shadow:0 10px 30px #0000001a;padding:40px 30px;transition:transform .3s ease}.project-preview-card:hover{transform:translateY(-5px)}.project-preview-card h3{color:#1e293b;font-size:1.5rem;font-weight:600;margin-bottom:15px}.project-preview-card p{color:#64748b;line-height:1.6;margin-bottom:20px}.project-tech{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:25px}.tech-badge{background:#9333ea1a;color:#9333ea;padding:6px 12px}.project-link-btn{border:2px solid #9333ea;border-radius:25px;color:#9333ea;display:inline-block;font-weight:600;padding:10px 20px;text-decoration:none;transition:all .3s ease}.project-link-btn:hover{background:#9333ea;color:#fff}.projects-cta{text-align:center}@media (max-width:768px){.projects-grid{grid-template-columns:1fr}}.form-error,.form-success{border-radius:8px;font-weight:500;margin-bottom:20px;padding:15px 20px}.form-success{background:#22c55e1a;border:1px solid #22c55e33;color:#166534}.form-error{background:#ef44441a;border:1px solid #ef444433;color:#991b1b}.btn:disabled{cursor:not-allowed;opacity:.6;transform:none!important}.btn:disabled:hover{box-shadow:none!important;transform:none!important}.datenschutz-content{padding:80px 0}.datenschutz-section{margin-bottom:60px}.datenschutz-section h2{border-bottom:2px solid #9333ea;color:#1e293b;font-size:2rem;font-weight:700;margin-bottom:20px;padding-bottom:10px}.datenschutz-section h3{color:#1e293b;font-size:1.5rem;font-weight:600;margin:30px 0 15px}.datenschutz-section p{color:#64748b;font-size:1.1rem;line-height:1.8;margin-bottom:15px}.datenschutz-section ul{list-style:none;margin:20px 0}.datenschutz-section li{color:#64748b;line-height:1.6;padding:8px 0 8px 20px;position:relative}.datenschutz-section li:before{color:#9333ea;content:"•";font-weight:700;left:0;position:absolute}.contact-details p,.responsible-party p{color:#1e293b;font-size:1.1rem;margin-bottom:8px}.datenschutz-section a{color:#9333ea;text-decoration:none}.datenschutz-section a:hover{text-decoration:underline}.page-transition{transition:opacity .3s ease-in-out}.page-transition.fade-out{opacity:.95}.page-transition.fade-in{opacity:1}html{scroll-behavior:smooth}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}::-webkit-scrollbar-thumb{background:#9333ea;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#7c3aed}@media (max-width:768px){html{scroll-behavior:auto}body{-webkit-overflow-scrolling:touch;overflow-x:hidden}}.scroll-indicator{animation:scrollProgress .5s ease-out forwards;background:linear-gradient(90deg,#9333ea,#7c3aed,#6d28d9);height:3px;left:0;position:fixed;top:0;transform:scaleX(0);transform-origin:left;width:100%;z-index:9999}@keyframes scrollProgress{to{transform:scaleX(1)}}.page-load{animation:pageLoad .4s ease-out}@keyframes pageLoad{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.portfolio-item{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;overflow:hidden;position:relative;transition:all .3s ease}.portfolio-item:hover{box-shadow:0 8px 30px #0000001f;transform:translateY(-4px)}.portfolio-screenshot{background:#f8fafc;cursor:pointer;height:240px;overflow:hidden;position:relative}.screenshot-image{height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.portfolio-screenshot:hover .screenshot-image{transform:scale(1.05)}.screenshot-placeholder{align-items:center;background:linear-gradient(135deg,#f1f5f9,#e2e8f0);color:#64748b;display:flex;flex-direction:column;height:100%;justify-content:center}.placeholder-icon{font-size:3rem;margin-bottom:1rem}.screenshot-placeholder p{font-size:.9rem;font-weight:500;margin:0}.screenshot-overlay{align-items:center;background:#9333eae6;bottom:0;display:flex;justify-content:center;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.portfolio-screenshot:hover .screenshot-overlay{opacity:1}.overlay-content{color:#fff;text-align:center}.preview-text{display:block;font-size:1.1rem;font-weight:600;margin-bottom:1rem}.preview-buttons{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.preview-btn{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:1px solid #ffffff4d;border-radius:8px;color:#fff;cursor:pointer;font-size:.85rem;padding:.5rem 1rem;transition:all .2s ease}.preview-btn:hover{background:#ffffff4d;transform:translateY(-1px)}.portfolio-content{padding:1.5rem}.portfolio-title{color:#1e293b;font-size:1.4rem;font-weight:600;margin:0 0 1rem}.portfolio-description{color:#64748b;line-height:1.6;margin:0 0 1.5rem}.portfolio-technologies{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.tech-badge{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:20px;color:#475569;font-size:.8rem;font-weight:500;padding:.4rem .8rem}.portfolio-actions{display:flex;justify-content:flex-end}.portfolio-link{align-items:center;background:linear-gradient(135deg,#9333ea,#7c3aed);border-radius:8px;color:#fff;display:inline-flex;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;text-decoration:none;transition:all .2s ease}.portfolio-link:hover{box-shadow:0 4px 15px #9333ea4d;transform:translateY(-1px)}.preview-modal{align-items:center;background:#000c;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:16px;display:flex;flex-direction:column;max-height:90vh;max-width:90vw;overflow:hidden}.modal-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:1.5rem}.modal-header h3{color:#1e293b;font-size:1.3rem;margin:0}.close-btn{background:none;border:none;border-radius:50%;color:#64748b;cursor:pointer;font-size:1.5rem;padding:.5rem;transition:background-color .2s ease}.close-btn:hover{background:#f1f5f9}.modal-body{flex:1 1;overflow:hidden;position:relative}.screenshot-preview{padding:1.5rem;text-align:center}.preview-image{border-radius:8px;box-shadow:0 4px 20px #0000001a;max-height:70vh;max-width:100%}.no-screenshot{color:#64748b;padding:3rem 1.5rem}.iframe-preview{height:70vh;position:relative}.preview-iframe{border:none;border-radius:8px;height:100%;width:100%}.iframe-info{background:#000c;border-radius:8px;bottom:1rem;color:#fff;font-size:.9rem;left:1rem;padding:.75rem;position:absolute;right:1rem;text-align:center}.modal-footer{align-items:center;border-top:1px solid #e2e8f0;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;padding:1.5rem}.preview-mode-switcher{display:flex;gap:.5rem}.mode-btn{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:8px;color:#475569;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:all .2s ease}.mode-btn.active{background:#9333ea;border-color:#9333ea;color:#fff}.mode-btn:hover:not(.active){background:#e2e8f0}.visit-website-btn{background:linear-gradient(135deg,#9333ea,#7c3aed);border-radius:8px;color:#fff;font-weight:500;padding:.75rem 1.5rem;text-decoration:none;transition:all .2s ease}.visit-website-btn:hover{box-shadow:0 4px 15px #9333ea4d;transform:translateY(-1px)}@media (max-width:768px){.portfolio-screenshot{height:200px}.modal-content{max-height:95vh;max-width:95vw}.modal-footer{align-items:stretch;flex-direction:column}.preview-mode-switcher{justify-content:center}.iframe-preview{height:60vh}}@media (max-width:480px){.portfolio-content{padding:1rem}.portfolio-title{font-size:1.2rem}.preview-buttons{align-items:center;flex-direction:column}.preview-btn{max-width:200px;width:100%}}
/*# sourceMappingURL=main.96f5b36d.css.map*/