@import"https://fonts.googleapis.com/css2?family=Manrope:wght@200;300;400;500;600;700;800&family=Playfair+Display:ital,wght@0,400;0,700;1,400&display=swap";:root{--bg-color: #080808;--bg-elevated: #0f0f0f;--text-primary: #F2F2F2;--text-secondary: #888888;--text-muted: #555555;--accent: #2563EB;--accent-light: #3b82f6;--accent-glow: rgba(37, 99, 235, .4);--accent-subtle: rgba(37, 99, 235, .1);--border-light: rgba(255, 255, 255, .08);--border-medium: rgba(255, 255, 255, .15);--surface-hover: rgba(255, 255, 255, .03);--font-heading: "Manrope", sans-serif;--font-serif: "Playfair Display", serif;--font-body: "Manrope", sans-serif;--container-width: 1400px;--container-narrow: 900px;--section-spacing: 10rem;--section-spacing-sm: 6rem;--ease-out: cubic-bezier(.2, 1, .3, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--duration-fast: .2s;--duration-normal: .3s;--duration-slow: .5s;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 12px rgba(0, 0, 0, .4);--shadow-lg: 0 12px 40px rgba(0, 0, 0, .5)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}body{margin:0;padding:0;background-color:var(--bg-color);color:var(--text-primary);font-family:var(--font-body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}::selection{background:var(--accent);color:#fff}a{text-decoration:none;color:inherit;transition:color var(--duration-normal) ease,opacity var(--duration-normal) ease}a:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}ul{list-style:none;padding:0;margin:0}img{max-width:100%;display:block}button{font-family:inherit}h1,h2,h3,h4{margin:0;font-weight:300;letter-spacing:-.03em;line-height:1.1}h1{font-size:clamp(3rem,8vw,6.5rem);font-weight:500;letter-spacing:-.04em}h2{font-size:clamp(2.25rem,5vw,3.5rem);margin-bottom:1.5rem}h3{font-size:clamp(1.5rem,3vw,2rem)}p{color:var(--text-secondary);font-size:1.1rem;font-weight:400;line-height:1.75;margin:0}p+p{margin-top:1.5rem}.text-serif{font-family:var(--font-serif);font-style:italic}.text-accent{color:var(--accent)}.text-large{font-size:1.25rem}.text-small{font-size:.9rem}.container{max-width:var(--container-width);margin:0 auto;padding:0 2rem}.container-narrow{max-width:var(--container-narrow);margin:0 auto;padding:0 2rem}section{padding:var(--section-spacing) 0;border-top:1px solid var(--border-light)}section:first-of-type{border-top:none}.skip-link{position:absolute;top:-100%;left:50%;transform:translate(-50%);background:var(--accent);color:#fff;padding:.75rem 1.5rem;border-radius:4px;z-index:9999;font-weight:500}.skip-link:focus{top:1rem}nav{position:fixed;top:0;left:0;width:100%;padding:1.5rem 2rem;z-index:999;display:flex;justify-content:space-between;align-items:center;mix-blend-mode:difference;color:#fff}.hero{min-height:100vh;width:100%;display:flex;align-items:center;justify-content:center;position:relative;padding:6rem 2rem;border:none;overflow:hidden}.hero-bg{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center;opacity:.35;filter:grayscale(100%) contrast(1.1);z-index:0;transform:scale(1.05);will-change:transform}.hero:after{content:"";position:absolute;bottom:0;left:0;right:0;height:40%;background:linear-gradient(to top,var(--bg-color) 0%,transparent 100%);z-index:1;pointer-events:none}.hero-content{position:relative;z-index:10;text-align:center;max-width:900px;padding:2rem}.hero h1{margin-bottom:1.5rem;opacity:0;transform:translateY(40px);animation:heroFadeUp 1s var(--ease-out) forwards .3s}.hero p{font-size:clamp(1.1rem,2vw,1.35rem);max-width:600px;margin:0 auto;opacity:0;transform:translateY(30px);animation:heroFadeUp 1s var(--ease-out) forwards .6s}.hero .btn-primary{opacity:0;transform:translateY(20px);animation:heroFadeUp 1s var(--ease-out) forwards .9s;margin-top:2.5rem}.page-header{min-height:50vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:8rem 2rem 4rem;border:none}.page-header h1{opacity:0;transform:translateY(30px);animation:heroFadeUp .8s var(--ease-out) forwards .2s}.page-header p{opacity:0;transform:translateY(20px);animation:heroFadeUp .8s var(--ease-out) forwards .4s;margin-top:1rem}.manifesto{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start}.descriptor{position:sticky;top:8rem}.descriptor span{display:inline-block;font-size:.8rem;text-transform:uppercase;letter-spacing:.15em;margin-bottom:1.5rem;color:var(--accent);font-weight:600}.manifesto h2{font-size:clamp(2rem,4vw,2.75rem);line-height:1.25;font-weight:400}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:3rem}.stat{padding:1.5rem 0}.stat h3{font-size:clamp(2.5rem,5vw,4rem);font-weight:200;color:var(--text-primary);margin-bottom:.5rem;letter-spacing:-.02em}.stat p{font-size:.85rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-secondary)}.work-showcase h2{text-align:left;margin-bottom:4rem}.project-list{display:flex;flex-direction:column;gap:8rem}.project{display:grid;grid-template-columns:1.2fr .8fr;gap:4rem;align-items:center}.project:nth-child(2n){grid-template-columns:.8fr 1.2fr}.project:nth-child(2n) .project-info{order:1}.project:nth-child(2n) .project-img{order:2}.project-img{aspect-ratio:4/3;overflow:hidden;position:relative;border-radius:4px}.project-img img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease-out),filter .5s ease;filter:grayscale(30%) brightness(.95)}.project:hover .project-img img{transform:scale(1.05);filter:grayscale(0%) brightness(1)}.project-info{padding:2rem 0}.project-category{display:inline-block;font-size:.8rem;text-transform:uppercase;letter-spacing:.12em;color:var(--accent);margin-bottom:1rem;font-weight:600}.project-title{font-size:clamp(2rem,4vw,2.75rem);margin-bottom:1.25rem;font-weight:400;line-height:1.2}.project-info p{margin-bottom:1.5rem}.project-link{display:inline-flex;align-items:center;gap:.5rem;font-size:.9rem;text-transform:uppercase;letter-spacing:.08em;font-weight:500;color:var(--text-primary);position:relative;padding-bottom:4px}.project-link:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:1px;background:var(--text-primary);transform:scaleX(1);transform-origin:left;transition:transform .3s ease}.project-link:hover:after{transform:scaleX(0);transform-origin:right}.project-link:before{content:"→";opacity:0;transform:translate(-10px);transition:opacity .3s ease,transform .3s ease}.project-link:hover:before{opacity:1;transform:translate(0)}.services-list{display:flex;flex-direction:column}.service-item{border-bottom:1px solid var(--border-light);display:grid;grid-template-columns:60px 1fr 280px;align-items:baseline;gap:2rem;transition:background .3s ease;margin:0 -2rem;padding:2.5rem 2rem}.service-item:hover{background:var(--surface-hover)}.service-num{font-size:.85rem;font-family:var(--font-serif);font-style:italic;color:var(--text-muted)}.service-name{font-size:clamp(1.5rem,3vw,2.25rem);font-weight:300;transition:color .3s ease}.service-item:hover .service-name{color:var(--accent-light)}.service-desc{font-size:.95rem;color:var(--text-secondary);line-height:1.6}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem 2.5rem;border:1px solid var(--text-primary);border-radius:50px;font-size:.9rem;text-transform:uppercase;letter-spacing:.08em;font-weight:500;transition:all var(--duration-normal) ease;background:transparent;color:var(--text-primary);cursor:pointer}.btn-primary:hover{background:var(--text-primary);color:var(--bg-color);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-primary:active{transform:translateY(0)}.btn-primary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.btn-accent{background:var(--accent);border-color:var(--accent);color:#fff}.btn-accent:hover{background:var(--accent-light);border-color:var(--accent-light);color:#fff}.footer-cta{text-align:center;padding:8rem 0 6rem}.footer-cta h2{font-size:clamp(2.5rem,6vw,4.5rem);margin-bottom:2.5rem;font-weight:400}.footer-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;padding:2rem 0;border-top:1px solid var(--border-light);color:var(--text-muted);font-size:.85rem}.footer-bottom a{color:var(--text-secondary);transition:color .3s ease}.footer-bottom a:hover{color:var(--text-primary)}.socials{display:flex;gap:.5rem}.socials a{padding:0 .25rem}.form-group{margin-bottom:2rem}.form-label{display:block;margin-bottom:.75rem;text-transform:uppercase;font-size:.75rem;letter-spacing:.12em;color:var(--text-secondary);font-weight:600}.form-input,.form-textarea{width:100%;padding:1rem 0;background:transparent;border:none;border-bottom:1px solid var(--border-medium);color:var(--text-primary);font-family:inherit;font-size:1.1rem;transition:border-color var(--duration-normal) ease}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--accent)}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-muted)}.form-textarea{resize:vertical;min-height:120px}@keyframes heroFadeUp{to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.reveal{opacity:0;transform:translateY(30px);transition:opacity .8s var(--ease-out),transform .8s var(--ease-out)}.reveal.visible{opacity:1;transform:translateY(0)}.loading{position:relative;overflow:hidden}.loading:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.05),transparent);animation:shimmer 1.5s infinite}@keyframes shimmer{to{left:100%}}@media (max-width: 1200px){:root{--section-spacing: 8rem}}@media (max-width: 900px){:root{--section-spacing: 6rem}.project,.project:nth-child(2n){grid-template-columns:1fr;gap:2rem}.project:nth-child(2n) .project-info{order:2}.project:nth-child(2n) .project-img{order:1}.project-img{aspect-ratio:16/10}.manifesto{grid-template-columns:1fr;gap:3rem}.descriptor{position:static}.service-item{grid-template-columns:1fr;gap:.75rem;padding:2rem;margin:0 -2rem}.service-num{font-size:.8rem}.footer-bottom{flex-direction:column;text-align:center}}@media (max-width: 600px){:root{--section-spacing: 4rem}.container{padding:0 1.5rem}.hero{padding:5rem 1.5rem;min-height:90vh}.stats-grid{grid-template-columns:1fr;gap:2rem}.project-list{gap:5rem}.btn-primary{width:100%;padding:1.25rem 2rem}}.clients-section{padding-top:0}.clients-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--border-light);border:1px solid var(--border-light);margin-top:4rem}.client-logo{background:var(--bg-color);aspect-ratio:16/9;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;position:relative;transition:background .3s ease;text-align:center}.client-logo:hover{background:var(--surface-hover)}.client-logo img{max-width:80%;max-height:60%;object-fit:contain;filter:grayscale(100%) opacity(.7);transition:filter .3s ease}.client-logo:hover img{filter:grayscale(0%) opacity(1)}.client-logo span{font-family:var(--font-heading);font-size:1.1rem;font-weight:500;color:var(--text-secondary);transition:color .3s ease}.client-logo:hover span{color:var(--text-primary)}.client-logo .client-loc{display:block;margin-top:.25rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted)}@media (max-width: 900px){.clients-grid{grid-template-columns:repeat(2,1fr)}}@media print{nav,.mobile-menu,.footer-cta{display:none!important}body{background:#fff;color:#000}a{text-decoration:underline}}.logo-svg[data-astro-cid-tvrurpns]{display:block;transition:transform .3s ease,opacity .3s ease}.logo-svg[data-astro-cid-tvrurpns]:hover{transform:scale(1.02)}.logo-main[data-astro-cid-tvrurpns],.logo-subtext[data-astro-cid-tvrurpns],.logo-tm[data-astro-cid-tvrurpns]{transition:opacity .3s ease}.logo-subtext[data-astro-cid-tvrurpns]{opacity:.8}.logo-tm[data-astro-cid-tvrurpns]{opacity:.85}.nav[data-astro-cid-pux6a34n]{position:fixed;top:0;left:0;width:100%;padding:1.5rem 2rem;z-index:1000;display:flex;justify-content:space-between;align-items:center;mix-blend-mode:difference;color:#fff;transition:padding .3s ease}.nav[data-astro-cid-pux6a34n].scrolled{padding:1rem 2rem}.logo-link[data-astro-cid-pux6a34n]{display:flex;align-items:center;text-decoration:none;z-index:1001}.logo-svg[data-astro-cid-pux6a34n]{width:clamp(130px,16vw,190px);height:auto;fill:currentColor;transition:transform .3s ease}.logo-link[data-astro-cid-pux6a34n]:hover .logo-svg[data-astro-cid-pux6a34n]{transform:scale(1.05)}.nav-links[data-astro-cid-pux6a34n]{display:flex;gap:2.5rem;list-style:none;margin:0;padding:0}.nav-links[data-astro-cid-pux6a34n] a[data-astro-cid-pux6a34n]{font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;font-weight:500;opacity:.7;position:relative;padding:.25rem 0;transition:opacity .3s ease}.nav-links[data-astro-cid-pux6a34n] a[data-astro-cid-pux6a34n]:after{content:"";position:absolute;bottom:0;left:0;width:0;height:1px;background:currentColor;transition:width .3s ease}.nav-links[data-astro-cid-pux6a34n] a[data-astro-cid-pux6a34n]:hover,.nav-links[data-astro-cid-pux6a34n] a[data-astro-cid-pux6a34n].active{opacity:1}.nav-links[data-astro-cid-pux6a34n] a[data-astro-cid-pux6a34n]:hover:after,.nav-links[data-astro-cid-pux6a34n] a[data-astro-cid-pux6a34n].active:after{width:100%}.menu-btn[data-astro-cid-pux6a34n]{display:none;align-items:center;gap:.75rem;background:none;border:none;color:inherit;cursor:pointer;padding:.5rem;z-index:1001;font-family:inherit}.menu-icon[data-astro-cid-pux6a34n]{display:flex;flex-direction:column;gap:6px;width:24px}.menu-icon[data-astro-cid-pux6a34n] span[data-astro-cid-pux6a34n]{display:block;height:1.5px;background:currentColor;transition:transform .3s ease,opacity .3s ease}.menu-icon[data-astro-cid-pux6a34n] span[data-astro-cid-pux6a34n]:first-child{width:100%}.menu-icon[data-astro-cid-pux6a34n] span[data-astro-cid-pux6a34n]:last-child{width:60%}.menu-btn[data-astro-cid-pux6a34n].active .menu-icon[data-astro-cid-pux6a34n] span[data-astro-cid-pux6a34n]:first-child{transform:rotate(45deg) translate(5px,5px)}.menu-btn[data-astro-cid-pux6a34n].active .menu-icon[data-astro-cid-pux6a34n] span[data-astro-cid-pux6a34n]:last-child{transform:rotate(-45deg) translate(3px,-3px);width:100%}.menu-text[data-astro-cid-pux6a34n]{font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;font-weight:500}.mobile-menu[data-astro-cid-pux6a34n]{position:fixed;top:0;left:0;width:100%;height:100vh;height:100dvh;background:var(--bg-color, #080808);z-index:999;display:flex;flex-direction:column;justify-content:center;padding:6rem 2rem 2rem;opacity:0;visibility:hidden;transition:opacity .4s ease,visibility .4s ease}.mobile-menu[data-astro-cid-pux6a34n].active{opacity:1;visibility:visible}.mobile-nav-links[data-astro-cid-pux6a34n]{list-style:none;padding:0;margin:0}.mobile-nav-links[data-astro-cid-pux6a34n] li[data-astro-cid-pux6a34n]{opacity:0;transform:translateY(20px);transition:opacity .4s ease,transform .4s ease;transition-delay:var(--delay, 0s)}.mobile-menu[data-astro-cid-pux6a34n].active .mobile-nav-links[data-astro-cid-pux6a34n] li[data-astro-cid-pux6a34n]{opacity:1;transform:translateY(0)}.mobile-nav-links[data-astro-cid-pux6a34n] a[data-astro-cid-pux6a34n]{display:block;font-size:clamp(2rem,8vw,3.5rem);font-weight:300;padding:.75rem 0;color:var(--text-primary, #F2F2F2);opacity:.6;transition:opacity .3s ease,padding-left .3s ease}.mobile-nav-links[data-astro-cid-pux6a34n] a[data-astro-cid-pux6a34n]:hover,.mobile-nav-links[data-astro-cid-pux6a34n] a[data-astro-cid-pux6a34n].active{opacity:1;padding-left:1rem}.mobile-menu-footer[data-astro-cid-pux6a34n]{margin-top:auto;padding-top:2rem;border-top:1px solid var(--border-light, rgba(255,255,255,.1));opacity:0;transform:translateY(20px);transition:opacity .4s ease .5s,transform .4s ease .5s}.mobile-menu[data-astro-cid-pux6a34n].active .mobile-menu-footer[data-astro-cid-pux6a34n]{opacity:1;transform:translateY(0)}.mobile-menu-footer[data-astro-cid-pux6a34n] a[data-astro-cid-pux6a34n]{color:var(--text-secondary, #888);font-size:.9rem}.mobile-menu-footer[data-astro-cid-pux6a34n] a[data-astro-cid-pux6a34n]:hover{color:var(--text-primary, #F2F2F2)}.mobile-socials[data-astro-cid-pux6a34n]{display:flex;gap:1.5rem;margin-top:1rem;flex-wrap:wrap}.mobile-socials[data-astro-cid-pux6a34n] a[data-astro-cid-pux6a34n]{display:inline-flex;align-items:center;gap:.4rem;color:var(--text-secondary, #888)}.mobile-socials[data-astro-cid-pux6a34n] a[data-astro-cid-pux6a34n]:hover{color:var(--text-primary, #F2F2F2)}.social-icon[data-astro-cid-pux6a34n] svg[data-astro-cid-pux6a34n]{display:block}.social-icon[data-astro-cid-pux6a34n]{display:inline-flex;align-items:center}@media (max-width: 900px){.nav-links[data-astro-cid-pux6a34n]{display:none}.menu-btn[data-astro-cid-pux6a34n]{display:flex}.logo-svg[data-astro-cid-pux6a34n]{width:120px}}.footer[data-astro-cid-sz7xmlte]{background:var(--bg-elevated, #0f0f0f);padding-top:2rem}.footer-cta[data-astro-cid-sz7xmlte]{text-align:center;padding:6rem 0;border-bottom:1px solid var(--border-light, rgba(255,255,255,.08))}.footer-cta[data-astro-cid-sz7xmlte] h2[data-astro-cid-sz7xmlte]{font-size:clamp(2.5rem,6vw,4.5rem);margin-bottom:2rem;font-weight:400}.footer-cta[data-astro-cid-sz7xmlte] .btn-primary[data-astro-cid-sz7xmlte]{display:inline-flex;align-items:center;gap:.75rem}.footer-cta[data-astro-cid-sz7xmlte] .btn-primary[data-astro-cid-sz7xmlte] svg[data-astro-cid-sz7xmlte]{transition:transform .3s ease}.footer-cta[data-astro-cid-sz7xmlte] .btn-primary[data-astro-cid-sz7xmlte]:hover svg[data-astro-cid-sz7xmlte]{transform:translate(4px)}.footer-grid[data-astro-cid-sz7xmlte]{display:grid;grid-template-columns:1.5fr 1fr;gap:4rem;padding:4rem 0}.footer-brand[data-astro-cid-sz7xmlte]{max-width:400px}.footer-logo[data-astro-cid-sz7xmlte]{width:180px;height:auto;margin-bottom:1.5rem;color:var(--text-primary, #F2F2F2);opacity:.9}.footer-brand[data-astro-cid-sz7xmlte] p[data-astro-cid-sz7xmlte]{font-size:.95rem;line-height:1.7;color:var(--text-secondary, #888)}.footer-links[data-astro-cid-sz7xmlte]{display:flex;gap:4rem}.footer-col[data-astro-cid-sz7xmlte] h4[data-astro-cid-sz7xmlte]{font-size:.75rem;text-transform:uppercase;letter-spacing:.15em;color:var(--text-muted, #555);margin-bottom:1.5rem;font-weight:600}.footer-col[data-astro-cid-sz7xmlte] ul[data-astro-cid-sz7xmlte]{display:flex;flex-direction:column;gap:.75rem}.footer-col[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{color:var(--text-secondary, #888);font-size:.9rem;transition:color .3s ease;display:inline-flex;align-items:center;gap:.5rem}.footer-col[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--text-primary, #F2F2F2)}.footer-col[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte] svg[data-astro-cid-sz7xmlte]{display:block}.footer-bottom[data-astro-cid-sz7xmlte]{display:flex;justify-content:space-between;align-items:center;padding:2rem 0;border-top:1px solid var(--border-light, rgba(255,255,255,.08));font-size:.8rem;color:var(--text-muted, #555)}.footer-legal[data-astro-cid-sz7xmlte]{display:flex;gap:2rem}.footer-legal[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{color:var(--text-muted, #555);transition:color .3s ease}.footer-legal[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--text-secondary, #888)}@media (max-width: 900px){.footer-grid[data-astro-cid-sz7xmlte]{grid-template-columns:1fr;gap:3rem}.footer-links[data-astro-cid-sz7xmlte]{gap:3rem}.footer-cta[data-astro-cid-sz7xmlte]{padding:4rem 0}}@media (max-width: 600px){.footer-links[data-astro-cid-sz7xmlte]{flex-direction:column;gap:2rem}.footer-bottom[data-astro-cid-sz7xmlte]{flex-direction:column;gap:1rem;text-align:center}.footer-legal[data-astro-cid-sz7xmlte]{gap:1.5rem}}.custom-cursor{position:fixed;top:0;left:0;pointer-events:none;z-index:9999;mix-blend-mode:difference}.cursor-dot{width:8px;height:8px;background:#fff;border-radius:50%;transform:translate(-50%,-50%);transition:width .2s ease,height .2s ease,background .2s ease}.custom-cursor.cursor-hover .cursor-dot{width:40px;height:40px;background:#ffffff4d}@media (pointer: fine) and (min-width: 1024px){body,a,button,.project{cursor:none}}
