@import"https://fonts.googleapis.com/css2?family=Archivo+Black&family=Syne:wght@400;500;600;700;800&family=Inter:wght@400;500;600&display=swap";:root{--black: #0a0a0a;--dark-grey: #1a1a1a;--mid-grey: #4a4a4a;--light-grey: #f5f5f5;--white: #ffffff;--accent-teal: #00d4aa;--accent-coral: #ff6b5b;--accent-blue: #4a9eff;--font-display: "Syne", sans-serif;--font-headline: "Archivo Black", sans-serif;--font-body: "Inter", sans-serif;--space-xs: .5rem;--space-sm: 1rem;--space-md: 2rem;--space-lg: 4rem;--space-xl: 4.5rem;--radius-sm: 8px;--radius-md: 16px;--radius-lg: 24px;--radius-xl: 32px}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-body);background:var(--white);color:var(--black);line-height:1.6;overflow-x:hidden}a{text-decoration:none;color:inherit}ul{list-style:none}button{border:none;background:none;cursor:pointer;font-family:inherit}.loader{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--black);display:flex;align-items:center;justify-content:center;z-index:9999}.loader-content{text-align:center}.loader-logo{font-family:var(--font-display);font-size:clamp(2rem,8vw,4rem);font-weight:800;color:var(--white);letter-spacing:.1em;display:block;margin-bottom:var(--space-md)}.loader-bar{width:200px;height:3px;background:var(--accent-teal);transform-origin:left;border-radius:2px}.navbar{position:fixed;top:0;left:0;right:0;z-index:1000;display:flex;justify-content:space-between;align-items:center;padding:var(--space-md) var(--space-xl);background:#ffffffe6;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);transition:box-shadow .3s ease}.navbar.scrolled{box-shadow:0 2px 30px #0000001a}.logo{font-family:var(--font-display);font-size:1.5rem;font-weight:800;letter-spacing:.1em;color:var(--black)}.nav-links{display:flex;gap:var(--space-md)}.nav-links a{font-family:var(--font-display);font-size:.85rem;font-weight:600;letter-spacing:.05em;color:var(--black);transition:opacity .2s ease}.nav-links.desktop{display:flex}.menu-toggle{display:none;flex-direction:column;gap:5px;padding:5px;z-index:1001}.menu-toggle span{width:24px;height:2px;background:var(--black);display:block}.mobile-menu{position:fixed;top:60px;left:0;right:0;background:var(--white);padding:var(--space-md) var(--space-lg);display:flex;flex-direction:column;gap:var(--space-sm);box-shadow:0 10px 30px #0000001a}.mobile-menu a{font-family:var(--font-display);font-size:1.2rem;font-weight:600;padding:var(--space-sm) 0;border-bottom:1px solid var(--light-grey)}@media (max-width: 768px){.nav-links.desktop{display:none}.menu-toggle{display:flex}.navbar{padding:var(--space-sm) var(--space-md)}}.hero{min-height:auto;height:80vh;display:flex;align-items:center;justify-content:center;position:relative;padding:100px var(--space-lg) var(--space-md);overflow:hidden}.hero-content{text-align:center;max-width:100%;z-index:10;position:relative;padding:0 var(--space-xl)}.hero-badge{display:inline-flex;align-items:center;gap:var(--space-xs);padding:.6rem 1.2rem;background:var(--light-grey);border-radius:50px;font-size:.9rem;font-weight:500;margin-bottom:var(--space-lg)}.badge-dot{width:8px;height:8px;background:var(--accent-teal);border-radius:50%}.hero-headline{font-family:var(--font-headline);font-size:clamp(2rem,5.5vw,5rem);font-weight:900;line-height:1.05;letter-spacing:.02em;margin-bottom:var(--space-md);position:relative;z-index:10;text-transform:uppercase;text-align:center;display:flex;flex-direction:column;align-items:center;width:100%}.hero-headline .headline-line{display:block;white-space:nowrap;text-align:center;width:100%}.hero-headline .word{display:inline-block;white-space:nowrap}.hero-headline .char{display:inline-block}@media (max-width: 480px){.hero-headline{font-size:clamp(1.5rem,6.5vw,2.2rem);letter-spacing:0em;width:100%;max-width:100%;overflow:hidden;padding:0}.hero-headline .headline-line{white-space:nowrap;width:100%;text-align:center;overflow:hidden;display:block;margin:0 auto;max-width:100%;box-sizing:border-box}.hero-headline .char{display:inline-block}.hero-content{padding:0 var(--space-sm);width:100%;max-width:100%;box-sizing:border-box}.cta-button{padding:1rem 1.5rem;font-size:.85rem}}@media (max-width: 768px) and (min-width: 481px){.hero-headline{font-size:clamp(2rem,5.5vw,2.8rem);letter-spacing:.01em;width:100%;max-width:100%;overflow:hidden}.hero-headline .headline-line{white-space:nowrap;width:100%;text-align:center;overflow:hidden}.hero-content{padding:0 var(--space-md);width:100%;max-width:100%;box-sizing:border-box}}.cta-button{display:inline-flex;align-items:center;gap:var(--space-sm);padding:1.2rem 2.5rem;background:var(--black);color:var(--white);font-family:var(--font-display);font-size:.95rem;font-weight:600;letter-spacing:.05em;border-radius:50px}.cta-button svg{width:20px;height:20px}.scroll-indicator{position:absolute;bottom:var(--space-lg);left:50%;transform:translate(-50%);width:2px;height:60px;background:#0000001a;border-radius:2px;overflow:hidden}.scroll-line{width:100%;height:100%;background:var(--black);transform-origin:top}.floating-icons{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.floating-icon{position:absolute;width:70px;height:70px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-lg);box-shadow:0 10px 40px #0000001a}.floating-icon svg{width:32px;height:32px;color:inherit}.floating-icon[style*="background-color: rgb(10, 10, 10)"] svg,.floating-icon[style*="backgroundColor: rgb(10, 10, 10)"] svg{color:var(--white)}.floating-icon[style*="background-color: rgb(0, 212, 170)"] svg{color:var(--white)}.floating-icon[style*="background-color: rgb(255, 107, 91)"] svg{color:var(--white)}.floating-icon[style*="background-color: rgb(74, 158, 255)"] svg{color:var(--white)}@media (max-width: 968px){.floating-icon{width:50px;height:50px}.floating-icon svg{width:24px;height:24px}.hero{padding:var(--space-xl) var(--space-md);overflow-x:hidden}}@media (max-width: 768px){.hero{padding:var(--space-lg) var(--space-sm);overflow-x:hidden}.hero-content{width:100%;max-width:100%;padding:0 var(--space-sm);box-sizing:border-box}}.services{padding:var(--space-xl) var(--space-lg);background:var(--white);min-height:100vh;display:flex;flex-direction:column;justify-content:center}.services h2{font-family:var(--font-display);font-size:clamp(2rem,5vw,4rem);font-weight:800;text-align:center;margin-bottom:var(--space-lg);letter-spacing:-.02em}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-md);max-width:1232px;margin:0 auto;width:100%}.service-card{padding:var(--space-lg);border-radius:var(--radius-xl);display:flex;flex-direction:column;min-height:450px;transition:transform .3s ease,box-shadow .3s ease}.service-card.grey{background:var(--mid-grey);color:var(--white)}.service-card.black{background:var(--black);color:var(--white)}.service-card:hover{box-shadow:0 20px 60px #0003}.service-card h3{font-family:var(--font-display);font-size:2.2rem;font-weight:700;margin-bottom:var(--space-xs)}.service-subtitle{font-size:1rem;opacity:.8;margin-bottom:var(--space-md)}.service-features{flex:1;margin-bottom:var(--space-md)}.service-features li{padding:var(--space-sm) 0;border-bottom:1px solid rgba(255,255,255,.1);font-size:.95rem}.service-features li:last-child{border-bottom:none}.service-cta{display:flex;align-items:center;justify-content:space-between;font-family:var(--font-display);font-size:.9rem;font-weight:600;letter-spacing:.05em;margin-top:auto;gap:1rem;transition:gap .3s ease}.arrow-circle{width:45px;height:45px;display:flex;align-items:center;justify-content:center;background:#fff3;border-radius:50%;transition:all .3s ease}.arrow-circle svg{width:20px;height:20px}.service-card:hover .arrow-circle{background:var(--white);color:var(--black)}@media (max-width: 768px){.services{padding:var(--space-lg) var(--space-md)}.services-grid{grid-template-columns:1fr}}@media (max-width: 375px){.services{padding:var(--space-md) var(--space-sm)}.service-card{padding:var(--space-md);min-height:auto}.service-card h3{font-size:1.8rem}}.form-page{display:grid;grid-template-columns:1fr 1fr;min-height:calc(100vh - 80px);padding-top:80px;padding-bottom:2rem}.form-page-hero{background:var(--light-grey);padding:var(--space-md);display:flex;flex-direction:column;position:relative;overflow:hidden}.form-page-hero-dark{background:var(--black);color:var(--white)}.form-back-link{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-display);font-size:.9rem;font-weight:600;color:inherit;opacity:.7;transition:opacity .3s ease;margin-bottom:var(--space-lg)}.form-back-link:hover{opacity:1}.form-back-link svg{width:20px;height:20px}.form-page-icons{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.form-floating-icon{position:absolute;font-size:2.5rem;opacity:.8}@media (max-width: 768px){.form-page-icons,.form-floating-icon{display:none}}.form-page-headline{margin-top:auto;padding-bottom:var(--space-xl)}.form-page-headline h1{font-family:var(--font-headline);font-size:clamp(1.8rem,3.5vw,2.8rem);font-weight:900;line-height:1.1;margin-bottom:var(--space-md)}.form-page-headline p{font-size:1.1rem;opacity:.7;max-width:400px}.form-page-content{background:var(--white);padding:var(--space-md) var(--space-md);overflow-y:auto;display:flex;flex-direction:column;justify-content:flex-start}.form-page-title{font-family:var(--font-headline);font-size:clamp(1.5rem,3vw,2rem);font-weight:900;margin-bottom:var(--space-sm)}.page-form{display:flex;flex-direction:column;gap:.5rem;max-width:500px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-sm)}.form-group{display:flex;flex-direction:column;gap:.3rem}.form-group label{font-family:var(--font-display);font-size:.8rem;font-weight:600;color:var(--black)}.form-group input,.form-group select,.form-group textarea{padding:.6rem;border:1px solid #e0e0e0;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:.85rem;transition:all .3s ease;background:var(--white)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--black);box-shadow:0 0 0 3px #0000001a}.form-group input::placeholder,.form-group textarea::placeholder{color:#aaa}.form-group select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:20px;padding-right:3rem}.form-group textarea{resize:vertical;min-height:60px}.form-disclaimer{font-size:.8rem;color:var(--mid-grey);margin-top:var(--space-xs)}.form-disclaimer a{color:var(--black);text-decoration:underline}.form-submit-btn{display:flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:1rem 2rem;background:var(--black);color:var(--white);font-family:var(--font-display);font-size:.9rem;font-weight:600;letter-spacing:.05em;border-radius:50px;border:none;cursor:pointer;transition:all .3s ease;margin-top:var(--space-sm)}.form-submit-btn:hover:not(:disabled){background:var(--dark-grey);gap:1.5rem}.form-submit-btn:disabled{opacity:.7;cursor:not-allowed}.form-submit-btn svg{width:20px;height:20px}@media (max-width: 900px){.form-page{grid-template-columns:1fr}.form-page-hero{min-height:40vh}.form-page-content{padding:var(--space-md)}.form-row{grid-template-columns:1fr}}.success-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:9999;padding:var(--space-md)}.success-modal-container{background:var(--white);border-radius:var(--radius-lg);padding:var(--space-xl);max-width:500px;width:100%;text-align:center;box-shadow:0 20px 60px #0000004d}.success-modal-icon{width:80px;height:80px;margin:0 auto var(--space-md);background:var(--accent-teal);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--black)}.success-modal-icon svg{width:40px;height:40px;stroke-width:3}.success-modal-title{font-family:var(--font-headline);font-size:clamp(1.8rem,4vw,2.5rem);font-weight:900;margin-bottom:var(--space-sm);color:var(--black)}.success-modal-message{font-size:1.1rem;color:var(--mid-grey);margin-bottom:var(--space-lg);line-height:1.6}.success-modal-button{padding:1rem 2.5rem;background:var(--black);color:var(--white);font-family:var(--font-display);font-size:.9rem;font-weight:600;letter-spacing:.05em;border-radius:50px;border:none;cursor:pointer;transition:all .3s ease}.success-modal-button:hover{background:var(--dark-grey);transform:translateY(-2px)}@media (max-width: 640px){.success-modal-container{padding:var(--space-lg)}.success-modal-icon{width:60px;height:60px}.success-modal-icon svg{width:30px;height:30px}}.portfolio-why{padding:var(--space-xl) var(--space-lg);padding-top:calc(var(--space-xl) + 2rem);background:var(--white);min-height:auto;width:100%;max-width:100vw;box-sizing:border-box;overflow-x:hidden}.portfolio-why-inner{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-lg);align-items:center;width:100%;max-width:100%;box-sizing:border-box;padding:0;margin:0}.portfolio-box{background:#e8e8e8;padding:var(--space-lg);border-radius:var(--radius-xl);max-width:1200px;width:100%;margin:0 auto;box-sizing:border-box;overflow:hidden}.portfolio-card{background:var(--black);color:var(--white);padding:var(--space-lg);border-radius:var(--radius-lg);width:100%;max-width:100%;box-sizing:border-box;overflow:hidden;margin:0}.portfolio-card h3{font-family:var(--font-display);font-size:1.3rem;font-weight:700;letter-spacing:.05em;margin-bottom:var(--space-md);text-align:center;width:100%;max-width:100%;box-sizing:border-box;overflow:hidden;white-space:nowrap}.portfolio-carousel{position:relative;margin-bottom:var(--space-md)}.portfolio-slide{text-align:center}.portfolio-slide-new{display:flex;align-items:flex-end;justify-content:center;aspect-ratio:16/9;border-radius:var(--radius-lg);background-size:cover;background-position:center;text-decoration:none;color:var(--white);position:relative;overflow:hidden;cursor:pointer}.portfolio-slide-new:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#00000073;pointer-events:none}.portfolio-slide-content{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;padding:var(--space-lg);width:100%;display:flex;align-items:center;justify-content:center}.portfolio-logo{max-width:180px;max-height:60px;object-fit:contain;filter:brightness(0) invert(1)}.portfolio-company-name{font-family:var(--font-display);font-size:2rem;font-weight:700;letter-spacing:.02em;text-align:center;text-shadow:0 2px 8px rgba(0,0,0,.5)}.carousel-btn{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;background:#fff3;border:none;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;color:var(--white)}.carousel-btn:hover{background:#ffffff4d}.carousel-btn.prev{left:var(--space-xs)}.carousel-btn.next{right:var(--space-xs)}.carousel-btn svg{width:20px;height:20px}.carousel-dots{display:flex;justify-content:center;gap:var(--space-xs);margin-bottom:var(--space-md)}.dot{width:8px;height:8px;border-radius:50%;background:#ffffff4d;border:none;cursor:pointer;transition:all .2s ease}.dot.active{background:var(--white);transform:scale(1.2)}.dot:hover{background:#fff9}.view-all{display:flex;align-items:center;justify-content:center;gap:var(--space-xs);font-family:var(--font-display);font-size:.9rem;font-weight:600;letter-spacing:.05em;transition:gap .3s ease}.view-all svg{width:18px;height:18px}.why-section{padding:var(--space-md)}.why-section h3{font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2.2rem);font-weight:800;margin-bottom:var(--space-sm)}.why-subtitle{font-size:1.1rem;color:var(--mid-grey);margin-bottom:var(--space-md)}.why-list li{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) 0;border-bottom:1px solid rgba(0,0,0,.1);font-size:1rem}.why-arrow{color:var(--accent-teal);font-size:.9rem}@media (max-width: 968px){.portfolio-why{padding:var(--space-lg) var(--space-md)}.portfolio-why-inner{grid-template-columns:1fr}}@media (max-width: 768px){.portfolio-why{padding:var(--space-lg) var(--space-sm)}.portfolio-box{padding:var(--space-md);margin:0 auto;width:100%;max-width:100%}.portfolio-why-inner{display:block!important;width:100%!important;padding:0!important;margin:0!important}.portfolio-card{padding:var(--space-md)!important;width:100%!important;max-width:100%!important;margin:0 auto!important;display:block!important;transform:translate(0)!important;position:relative!important;left:auto!important;right:auto!important}.portfolio-card h3{font-size:clamp(1rem,4vw,1.3rem);letter-spacing:.03em}}.team{padding:var(--space-xl) var(--space-lg);background:var(--white);min-height:calc(100vh - 80px)}.team h2{font-family:var(--font-display);font-size:clamp(2.5rem,6vw,5rem);font-weight:800;margin-bottom:var(--space-lg);letter-spacing:-.02em}.team-grid{display:flex;justify-content:center;gap:var(--space-xl);max-width:1000px;margin:0 auto}.team-member{display:flex;flex-direction:column;width:100%;max-width:350px}.team-photo{width:100%;aspect-ratio:1;max-height:400px;background:var(--black);border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;overflow:hidden;margin-bottom:var(--space-sm)}.team-photo img{width:100%;height:100%;object-fit:cover}.team-photo svg{width:80px;height:80px;color:var(--mid-grey)}.team-info{padding:var(--space-xs) 0}.team-member h4{font-family:var(--font-display);font-size:1.4rem;font-weight:700;margin-bottom:.25rem}.team-company{font-size:.9rem;color:var(--black);font-weight:500;margin-bottom:.25rem}.team-role{font-size:.9rem;color:var(--accent-teal);margin-bottom:var(--space-sm)}.team-description{font-size:.95rem;color:var(--mid-grey);line-height:1.6;margin-top:var(--space-sm)}.team-socials{display:flex;gap:var(--space-xs)}.team-socials a{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--light-grey);border-radius:var(--radius-sm);transition:all .2s ease}.team-socials a:hover{background:var(--black);color:var(--white)}.team-socials svg{width:18px;height:18px}@media (max-width: 768px){.team{padding:var(--space-lg) var(--space-md)}.team-grid{flex-direction:column;align-items:center}.team-photo{max-height:300px}}.contact{padding:var(--space-xl) var(--space-lg);background:var(--black);color:var(--white);position:relative;overflow:hidden;min-height:100vh;display:flex;align-items:center;justify-content:center}.contact-inner{max-width:900px;margin:0 auto;text-align:center;position:relative;z-index:1;width:100%;max-width:100%;box-sizing:border-box;padding:0 var(--space-md)}.contact h2{font-family:var(--font-display);font-size:clamp(2.5rem,7vw,5rem);font-weight:800;line-height:1.05;margin-bottom:var(--space-md);width:100%;max-width:100%;box-sizing:border-box;overflow-wrap:break-word;word-wrap:break-word}.contact h2 span{display:inline-block;white-space:nowrap}.contact p{font-size:1.2rem;opacity:.7;margin-bottom:var(--space-lg)}.contact-email{display:inline-block;font-family:var(--font-display);font-size:1.3rem;font-weight:600;padding:1.2rem 2.5rem;border:2px solid var(--white);border-radius:50px;transition:all .3s ease}.contact-bg-gradient{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.5;pointer-events:none}@media (max-width: 768px){.contact{padding:var(--space-lg) var(--space-sm);overflow-x:hidden;width:100%;max-width:100vw;box-sizing:border-box}.contact-inner{padding:0 var(--space-sm);width:100%;max-width:100%}.contact h2{font-size:clamp(1.5rem,6vw,2.5rem);width:100%;max-width:100%;padding:0;margin:0 auto var(--space-md);overflow:hidden}.contact h2 span{white-space:normal;display:inline}}.footer{background:var(--dark-grey);color:var(--white);padding:var(--space-lg) var(--space-lg) var(--space-md)}.footer-inner{max-width:1200px;margin:0 auto}.footer-main{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:var(--space-lg);margin-bottom:var(--space-md);padding-bottom:var(--space-md);border-bottom:1px solid rgba(255,255,255,.1);align-items:start}.footer-logo{font-family:var(--font-display);font-size:1.6rem;font-weight:800;letter-spacing:.1em;display:block;margin-bottom:var(--space-xs)}.footer-brand p{font-size:.95rem;opacity:.7;line-height:1.5;margin-top:var(--space-xs)}.footer-links{display:block}.footer-col h5{font-family:var(--font-display);font-size:.9rem;font-weight:700;letter-spacing:.05em;margin-bottom:var(--space-xs);text-transform:uppercase}.footer-col a{display:block;font-size:.95rem;opacity:.7;padding:.2rem 0;transition:opacity .2s ease}.footer-col a:hover{opacity:1}.footer-certifications{margin-bottom:0;padding-bottom:0;border-bottom:none}.footer-certifications h5{font-family:var(--font-display);font-size:.9rem;font-weight:700;letter-spacing:.05em;margin-bottom:var(--space-sm);text-transform:uppercase}.cert-grid{display:flex;flex-direction:column;gap:var(--space-xs)}.cert-item{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm);background:#ffffff0d;border-radius:var(--radius-sm);transition:all .3s ease}.cert-badge{min-width:50px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--accent-teal);color:var(--black);font-family:var(--font-display);font-size:.75rem;font-weight:700;border-radius:4px}.cert-name{font-size:.85rem;opacity:.8}.footer-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--space-sm)}.footer-bottom p{font-size:.9rem;opacity:.6}.footer-legal{display:flex;gap:var(--space-md)}.footer-legal a{font-size:.9rem;opacity:.6;transition:opacity .2s ease}.footer-legal a:hover{opacity:1}@media (max-width: 968px){.footer{padding:var(--space-lg) var(--space-md) var(--space-md)}.footer-main{grid-template-columns:1fr;gap:var(--space-md)}.footer-certifications{margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid rgba(255,255,255,.1)}.cert-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}}@media (max-width: 640px){.footer-bottom{flex-direction:column;text-align:center}.footer-legal{flex-wrap:wrap;justify-content:center}.cert-grid{grid-template-columns:1fr}}.team-page{padding-top:80px}.team-page .team{padding-top:var(--space-lg)}.team-page .team h2{margin-bottom:var(--space-md)}.projects-page{padding-top:80px}.projects{padding:var(--space-xl) var(--space-lg);background:var(--white);min-height:calc(100vh - 80px);width:100%;max-width:100vw;box-sizing:border-box;overflow-x:hidden}.projects-inner{width:100%;max-width:100%;margin:0 auto;box-sizing:border-box}.projects h1{font-family:var(--font-display);font-size:clamp(2.5rem,6vw,5rem);font-weight:800;margin-bottom:var(--space-md);letter-spacing:-.02em;text-align:center;width:100%;max-width:100%;box-sizing:border-box;overflow:hidden;white-space:nowrap}.projects-subtitle{text-align:center;font-size:1.2rem;color:var(--mid-grey);margin-bottom:var(--space-xl)}.projects-grid{display:grid;grid-template-columns:1fr;gap:var(--space-lg);margin-top:var(--space-lg);width:100%}.project-card{display:flex;flex-direction:column;background:var(--white);border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 4px 20px #00000014;transition:all .3s ease}.project-card-link{display:flex;flex-direction:column;text-decoration:none;color:var(--black);width:100%;height:100%}.project-card:hover{box-shadow:0 8px 30px #0000001f;transform:translateY(-5px)}.project-image{width:100%;aspect-ratio:16/9;background-size:cover;background-position:center;position:relative;overflow:hidden}.project-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0000004d;display:flex;align-items:center;justify-content:center;transition:background .3s ease}.project-card:hover .project-overlay{background:#00000080}.project-logo{max-width:200px;max-height:80px;object-fit:contain;filter:brightness(0) invert(1)}.project-name{font-family:var(--font-display);font-size:2rem;font-weight:700;color:var(--white);text-align:center;text-shadow:0 2px 8px rgba(0,0,0,.5)}.project-info{padding:var(--space-md)}.project-type{display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.1em;color:var(--accent-teal);margin-bottom:var(--space-xs);text-transform:uppercase}.project-info h3{font-family:var(--font-display);font-size:1.5rem;font-weight:700;margin:0}@media (max-width: 968px){.projects-grid{grid-template-columns:1fr}}@media (max-width: 768px){.projects{padding:var(--space-lg) var(--space-sm);width:100%;max-width:100vw;overflow-x:hidden}.projects-inner{width:100%!important;max-width:100%!important;padding:0 var(--space-sm);box-sizing:border-box;display:block!important}.projects h1{font-size:clamp(1.5rem,5vw,2.5rem);width:100%!important;max-width:100%!important;margin:0 auto var(--space-md)!important;text-align:center!important;display:block!important;white-space:nowrap;overflow:hidden}.projects-grid{grid-template-columns:1fr;gap:var(--space-md)}.project-name{font-size:1.5rem}}.project-detail-page{padding-top:80px}.project-detail{padding:var(--space-xl) var(--space-lg);background:var(--white);min-height:calc(100vh - 80px)}.project-detail-inner{max-width:1400px;margin:0 auto}.back-button{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-md);background:var(--light-grey);border-radius:var(--radius-md);font-family:var(--font-body);font-size:.9rem;color:var(--black);margin-bottom:var(--space-lg);transition:all .2s ease}.back-button:hover{background:var(--black);color:var(--white)}.back-button svg{width:18px;height:18px}.project-detail-image{margin-bottom:var(--space-xl)}.project-detail-image-wrapper{width:100%;aspect-ratio:16/9;border-radius:var(--radius-lg);background-size:cover;background-position:center;box-shadow:0 8px 40px #00000026;overflow:hidden}.project-detail-content{max-width:800px}.project-detail-header{margin-bottom:var(--space-lg)}.project-detail-type{display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.1em;color:var(--accent-teal);margin-bottom:var(--space-xs);text-transform:uppercase}.project-detail-header h1{font-family:var(--font-display);font-size:clamp(2.5rem,5vw,4rem);font-weight:800;margin:0;letter-spacing:-.02em}.project-detail-body{margin-top:var(--space-lg)}.project-detail-description{font-size:1.2rem;line-height:1.8;color:var(--mid-grey);margin-bottom:var(--space-xl)}.project-detail-link{display:inline-flex;align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);background:var(--black);color:var(--white);border-radius:var(--radius-md);font-family:var(--font-display);font-size:1rem;font-weight:600;text-decoration:none;transition:all .3s ease}.project-detail-link:hover{background:var(--accent-teal);color:var(--black)}.project-detail-link svg{width:20px;height:20px}.project-features{margin:var(--space-xl) 0;padding:var(--space-xl) 0;border-top:1px solid var(--light-grey);width:100%}.project-features-inner{max-width:1400px;margin:0 auto;padding:0 var(--space-lg)}.project-features-title{font-family:var(--font-display);font-size:clamp(2rem,4vw,2.5rem);font-weight:700;margin-bottom:var(--space-lg);color:var(--black)}.project-features-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-lg)}.project-feature-card{padding:var(--space-lg);background:var(--light-grey);border-radius:var(--radius-md);transition:all .3s ease}.project-feature-card:hover{background:var(--black);color:var(--white);transform:translateY(-4px);box-shadow:0 8px 24px #00000026}.project-feature-title{font-family:var(--font-display);font-size:1.25rem;font-weight:700;margin-bottom:var(--space-sm);color:var(--black);transition:color .3s ease}.project-feature-card:hover .project-feature-title{color:var(--white)}.project-feature-description{font-size:1rem;line-height:1.7;color:var(--mid-grey);margin:0;transition:color .3s ease}.project-feature-card:hover .project-feature-description{color:#ffffffe6}@media (max-width: 968px){.project-features-grid{grid-template-columns:1fr}}@media (max-width: 768px){.project-detail{padding:var(--space-lg) var(--space-md)}.project-detail-image-wrapper{border-radius:var(--radius-md)}.project-detail-description{font-size:1.1rem}.project-features-inner{padding:0 var(--space-md)}.project-features-grid{gap:var(--space-md)}.project-feature-card{padding:var(--space-md)}}.accessibility-button{position:fixed;bottom:var(--space-md);right:var(--space-md);width:56px;height:56px;border-radius:50%;background:var(--black);color:var(--white);border:none;cursor:pointer;z-index:1000;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #00000026;transition:all .3s ease}.accessibility-button:hover{background:var(--accent-teal);color:var(--black);box-shadow:0 6px 20px #00d4aa4d}.accessibility-button svg{width:24px;height:24px}.accessibility-panel{position:fixed;bottom:calc(var(--space-md) + 70px);right:var(--space-md);width:320px;background:var(--white);border-radius:var(--radius-md);box-shadow:0 8px 32px #00000026;z-index:999;overflow:hidden}.accessibility-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-md);background:var(--black);color:var(--white)}.accessibility-header h3{font-family:var(--font-display);font-size:1.1rem;font-weight:700;margin:0}.accessibility-close{background:none;border:none;color:var(--white);font-size:1.5rem;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s ease}.accessibility-close:hover{background:#ffffff1a}.accessibility-content{padding:var(--space-md)}.accessibility-control{margin-bottom:var(--space-md)}.accessibility-control label{display:block;font-family:var(--font-display);font-size:.9rem;font-weight:600;margin-bottom:var(--space-xs);color:var(--black)}.accessibility-buttons{display:flex;align-items:center;gap:var(--space-sm)}.accessibility-buttons button{padding:var(--space-xs) var(--space-sm);background:var(--light-grey);border:1px solid var(--mid-grey);border-radius:var(--radius-sm);font-family:var(--font-display);font-size:1rem;font-weight:700;cursor:pointer;transition:all .2s ease;min-width:40px}.accessibility-buttons button:hover:not(:disabled){background:var(--black);color:var(--white);border-color:var(--black)}.accessibility-buttons button:disabled{opacity:.4;cursor:not-allowed}.accessibility-buttons span{font-family:var(--font-body);font-size:.9rem;color:var(--mid-grey);min-width:50px;text-align:center}.toggle-button{position:relative;width:50px;height:20px!important;background:var(--light-grey)!important;border:none!important;border-radius:10px!important;cursor:pointer;transition:all .3s ease;padding:0!important;margin:0!important;box-sizing:border-box!important;min-height:20px!important;max-height:20px!important}.toggle-button.active{background:var(--accent-teal)!important;border:none!important;height:20px!important}.toggle-slider{position:absolute!important;top:0!important;left:2px!important;width:20px!important;height:20px!important;background:var(--white)!important;border-radius:50%!important;transition:transform .3s ease;box-shadow:0 2px 4px #0003;margin:0!important;padding:0!important}.toggle-button.active .toggle-slider{transform:translate(24px)}.accessibility-reset{width:100%;padding:var(--space-sm);background:var(--light-grey);border:1px solid var(--mid-grey);border-radius:var(--radius-sm);font-family:var(--font-display);font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease;margin-top:var(--space-sm)}.accessibility-reset:hover{background:var(--black);color:var(--white);border-color:var(--black)}body.high-contrast{background:var(--black);color:var(--white)}body.high-contrast .navbar,body.high-contrast .footer{background:var(--black);border-color:var(--white)}body.high-contrast a{color:var(--accent-teal)}body.high-contrast button{border-color:var(--white)}body.reduce-motion *,body.reduce-motion *:before,body.reduce-motion *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}@media (max-width: 768px){.accessibility-button{bottom:var(--space-sm);right:var(--space-sm);width:48px;height:48px}.accessibility-panel{bottom:calc(var(--space-sm) + 60px);right:var(--space-sm);left:var(--space-sm);width:auto;max-width:calc(100vw - 2 * var(--space-sm))}}.legal-content p{font-size:1rem;color:var(--mid-grey);margin-bottom:var(--space-md)}.legal-content ul{margin-left:var(--space-md);margin-bottom:var(--space-md)}.legal-content li{font-size:1rem;color:var(--mid-grey);margin-bottom:var(--space-xs);list-style-type:disc}.legal-content a{color:var(--accent-teal);text-decoration:underline;transition:color .2s ease}.legal-content a:hover{color:var(--black)}@media (max-width: 768px){.legal-page{padding:100px var(--space-md) var(--space-lg)}.cookie-table{font-size:.8rem}.cookie-table th,.cookie-table td{padding:var(--space-xs)}}.app{overflow-x:hidden;scroll-behavior:smooth}::selection{background:var(--accent-teal);color:var(--black)}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--light-grey)}::-webkit-scrollbar-thumb{background:var(--mid-grey);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:var(--black)}.legal-page{padding:120px var(--space-lg) var(--space-xl);background:var(--white);min-height:100vh}.legal-container{max-width:800px;margin:0 auto}.legal-container h1{font-family:var(--font-headline);font-size:clamp(2rem,5vw,3.5rem);font-weight:900;margin-bottom:var(--space-sm);letter-spacing:-.02em}.legal-container .last-updated{font-size:.95rem;color:var(--mid-grey);margin-bottom:var(--space-lg);padding-bottom:var(--space-md);border-bottom:1px solid rgba(0,0,0,.1)}.legal-container section{margin-bottom:var(--space-lg)}.legal-container h2{font-family:var(--font-display);font-size:1.5rem;font-weight:700;margin-bottom:var(--space-sm);color:var(--black)}.legal-container h3{font-family:var(--font-display);font-size:1.15rem;font-weight:600;margin-top:var(--space-md);margin-bottom:var(--space-sm);color:var(--dark-grey)}.legal-container p{font-size:1rem;line-height:1.7;color:var(--dark-grey);margin-bottom:var(--space-sm)}.legal-container ul{margin-left:var(--space-md);margin-bottom:var(--space-sm)}.legal-container ul li{font-size:1rem;line-height:1.7;color:var(--dark-grey);margin-bottom:.5rem;list-style-type:disc}.legal-container a{color:var(--accent-teal);text-decoration:underline;transition:color .2s ease}.legal-container a:hover{color:var(--black)}.cookie-table{width:100%;border-collapse:collapse;margin:var(--space-md) 0;font-size:.9rem}.cookie-table th,.cookie-table td{padding:var(--space-sm);text-align:left;border-bottom:1px solid rgba(0,0,0,.1)}.cookie-table th{font-family:var(--font-display);font-weight:600;background:var(--light-grey);color:var(--black)}.cookie-table td{color:var(--dark-grey)}.cookie-table tr:hover td{background:#00d4aa0d}.footer-legal-links{display:flex;gap:var(--space-md);margin-top:var(--space-xs)}.footer-legal-links a,.footer-legal-links .footer-a11y-btn{font-size:.85rem;opacity:.6;transition:opacity .2s ease}.footer-legal-links a:hover,.footer-legal-links .footer-a11y-btn:hover{opacity:1}.footer-a11y-btn{background:none;border:none;color:inherit;cursor:pointer;padding:0;font-family:inherit;text-decoration:none}@media (max-width: 768px){.legal-page{padding:100px var(--space-md) var(--space-lg)}.cookie-table{font-size:.8rem}.cookie-table th,.cookie-table td{padding:var(--space-xs)}.footer-legal-links{justify-content:center;margin-top:var(--space-sm)}}.a11y-toggle{display:none;position:fixed;bottom:24px;right:24px;width:56px;height:56px;border-radius:50%;background:var(--accent-teal);color:var(--black);border:none;cursor:pointer;z-index:9998;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px #00d4aa66;transition:box-shadow .3s ease}.a11y-toggle:hover{box-shadow:0 6px 30px #00d4aa99}.a11y-toggle svg{width:28px;height:28px}.a11y-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000004d;z-index:9998}.a11y-panel{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:400px;max-width:calc(100vw - 32px);max-height:calc(100vh - 48px);background:var(--white);border-radius:var(--radius-lg);box-shadow:0 10px 50px #0003;z-index:9999;display:flex;flex-direction:column;overflow:hidden}.a11y-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md);border-bottom:1px solid rgba(0,0,0,.1);background:var(--light-grey)}.a11y-header h2{font-family:var(--font-display);font-size:1.2rem;font-weight:700;color:var(--black);margin:0}.a11y-close{width:36px;height:36px;border-radius:50%;background:transparent;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease}.a11y-close:hover{background:#0000001a}.a11y-close svg{width:20px;height:20px;color:var(--black)}.a11y-content{flex:1;overflow-y:auto;padding:var(--space-md)}.a11y-section{margin-bottom:var(--space-md)}.a11y-section:last-child{margin-bottom:0}.a11y-toggle-option{display:flex;align-items:center;justify-content:space-between;padding:var(--space-sm);background:var(--light-grey);border-radius:var(--radius-sm);margin-bottom:var(--space-xs);transition:background .2s ease}.a11y-toggle-option:hover{background:#e8e8e8}.a11y-toggle-option:last-child{margin-bottom:0}.a11y-toggle-option:focus-within{outline:2px solid var(--accent-teal);outline-offset:2px}.a11y-option-label{flex:1;cursor:pointer}.a11y-option-info{display:flex;align-items:flex-start;gap:var(--space-sm)}.a11y-option-info svg{width:20px;height:20px;color:var(--accent-teal);flex-shrink:0;margin-top:2px}.a11y-option-text{display:flex;flex-direction:column;gap:2px}.a11y-option-name{font-size:.9rem;font-weight:600;color:var(--black)}.a11y-option-desc{font-size:.75rem;color:var(--mid-grey);line-height:1.3}.a11y-switch{position:relative;width:48px;height:22px;background:#ccc;border-radius:11px;transition:background .3s ease}.a11y-switch.active{background:var(--accent-teal)}.a11y-switch input{position:absolute;opacity:0;width:100%;height:100%;cursor:pointer;z-index:1}.a11y-switch-slider{position:absolute!important;top:0!important;left:3px!important;width:22px!important;height:22px!important;background:var(--white)!important;border-radius:50%!important;transition:transform .3s ease!important;box-shadow:0 2px 4px #0003!important;margin:0!important;padding:0!important}.a11y-switch.active .a11y-switch-slider{transform:translate(20px)!important}.a11y-reset{display:flex;align-items:center;justify-content:center;gap:var(--space-xs);width:100%;padding:var(--space-sm);background:transparent;border:2px solid var(--black);border-radius:var(--radius-sm);font-family:var(--font-display);font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease;margin-top:var(--space-md)}.a11y-reset:hover{background:var(--black);color:var(--white)}.a11y-reset svg{width:18px;height:18px}.a11y-footer{padding:var(--space-sm) var(--space-md);background:var(--light-grey);border-top:1px solid rgba(0,0,0,.1);display:flex;flex-direction:column;gap:var(--space-xs);align-items:center}.a11y-footer p{font-size:.75rem;color:var(--mid-grey);text-align:center;margin:0}.a11y-statement-link{font-size:.8rem;font-weight:600;color:var(--accent-teal);text-decoration:underline;transition:color .2s ease}.a11y-statement-link:hover{color:var(--black)}.a11y-statement-link:focus{outline:2px solid var(--accent-teal);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}button,a,input[type=checkbox],input[type=radio],[role=button],[role=link],[role=switch]{min-width:24px;min-height:24px}@media (pointer: coarse){button,a,input[type=checkbox],input[type=radio],[role=button],[role=switch]{min-width:44px;min-height:44px}}:focus{scroll-margin:100px}:focus-visible{outline:3px solid var(--accent-teal);outline-offset:2px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[role=button]:focus-visible,[role=switch]:focus-visible{outline:3px solid var(--accent-teal);outline-offset:2px}@media (prefers-contrast: more){:focus-visible{outline:3px solid currentColor;outline-offset:3px}}*:focus-visible{position:relative;z-index:1}.skip-link{position:absolute;top:-40px;left:0;background:var(--black);color:var(--white);padding:var(--space-sm) var(--space-md);z-index:10000;font-family:var(--font-display);font-weight:600;text-decoration:none;border-radius:0 0 var(--radius-sm) 0}.skip-link:focus{top:0}.a11y-high-contrast{filter:contrast(1.4)}.a11y-high-contrast *{border-color:var(--black)!important}.a11y-reduced-motion,.a11y-reduced-motion *{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.a11y-text-spacing,.a11y-text-spacing p,.a11y-text-spacing li,.a11y-text-spacing span{letter-spacing:.12em!important;word-spacing:.16em!important;line-height:1.8!important}.a11y-dyslexia-font,.a11y-dyslexia-font *{font-family:Comic Sans MS,OpenDyslexic,sans-serif!important}.a11y-large-pointer,.a11y-large-pointer *{cursor:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 24 24" fill="%23000"><path d="M4 4l7.07 17 2.51-7.39L21 11.07 4 4z"/></svg>') 0 0,auto!important}.a11y-highlight-links a{background:#ff0!important;color:var(--black)!important;padding:2px 4px!important;text-decoration:underline!important;border-radius:2px!important}.a11y-highlight-links a:hover{background:orange!important}@media (max-width: 768px){.a11y-toggle{bottom:16px;right:16px;width:50px;height:50px}.a11y-toggle svg{width:24px;height:24px}.a11y-panel{top:auto;bottom:0;left:0;right:0;transform:none;width:100%;max-width:100%;max-height:85vh;border-radius:var(--radius-lg) var(--radius-lg) 0 0}}
