@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--color-bg: #F9F9F6;--color-text-primary: #151515;--color-text-secondary: #555555;--color-text-tertiary: #888888;--color-border: #E0E0DB;--color-accent: #000000;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, Arial, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace;--grid-gap: 4rem;--section-padding: 12rem 0;--container-width: 1400px}*{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}html,body{overflow-x:hidden;max-width:100%}body{background-color:var(--color-bg);color:var(--color-text-primary);font-family:var(--font-sans);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-weight:500;line-height:1.1;letter-spacing:-.02em}.t-display-1{font-size:clamp(3rem,8vw,7rem);font-weight:400;letter-spacing:-.03em}.t-heading-1{font-size:clamp(2.5rem,5vw,4.5rem);font-weight:400;letter-spacing:-.02em}.t-heading-2{font-size:clamp(1.5rem,3vw,2.5rem);font-weight:400;border-bottom:1px solid var(--color-border);padding-bottom:1rem;margin-bottom:2rem}.t-body-large{font-size:1.25rem;line-height:1.5;color:var(--color-text-secondary)}.t-mono-caption{font-family:var(--font-mono);font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-tertiary)}.container{max-width:var(--container-width);margin:0 auto;padding:0 2rem}.grid-12{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--grid-gap)}.span-4{grid-column:span 4}.span-6{grid-column:span 6}.section{padding:var(--section-padding)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:1rem 2rem;background-color:var(--color-text-primary);color:var(--color-bg);text-decoration:none;font-size:.875rem;font-weight:500;border:1px solid var(--color-text-primary);transition:all .3s ease;cursor:pointer}.btn:hover,.btn--outline{background-color:transparent;color:var(--color-text-primary)}.btn--outline:hover{background-color:var(--color-text-primary);color:var(--color-bg)}.work-filters{display:flex;gap:2.5rem;flex-wrap:wrap}.filter-btn{background:none;border:none;cursor:pointer;font-family:var(--font-sans);font-size:1.1rem;color:var(--color-text-tertiary);font-weight:400;padding:0;transition:color .3s ease;position:relative}.filter-btn:hover{color:var(--color-text-secondary)}.filter-btn.active{color:var(--color-text-primary);font-weight:500}.filter-btn.active:after{content:"";position:absolute;bottom:-.5rem;left:0;width:100%;height:1px;background-color:var(--color-text-primary)}.project-card{position:relative;display:flex;flex-direction:column;overflow:hidden;background:transparent;cursor:pointer}.project-image-wrapper{position:relative;width:100%;aspect-ratio:4/5;overflow:hidden;background:#eaeaea}.project-image-wrapper img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform 1.2s cubic-bezier(.16,1,.3,1);will-change:transform}.project-card:hover .project-image-wrapper img{transform:scale(1.08)}.project-info{padding:1.5rem 0 0}.project-category{font-family:var(--font-mono);font-size:.65rem;text-transform:uppercase;color:var(--color-text-tertiary);margin-bottom:.5rem;display:block}.project-title{font-size:1.25rem;font-weight:500;margin-bottom:.25rem}.project-role{font-size:.875rem;color:var(--color-text-secondary)}.code-block{background:var(--color-text-primary);color:var(--color-bg);padding:2rem;font-family:var(--font-mono);font-size:.85rem;line-height:1.6;border-radius:2px;overflow-x:auto}.spec-table{width:100%;border-collapse:collapse}.spec-table th,.spec-table td{padding:1rem 0;border-bottom:1px solid var(--color-border);text-align:left;font-size:.875rem}.spec-table th{font-weight:500;color:var(--color-text-primary);width:30%}.spec-table td{color:var(--color-text-secondary)}.site-header{position:fixed;top:0;left:0;width:100%;padding:1.5rem 0;z-index:100;mix-blend-mode:exclusion;color:#fff}.site-header .container{display:flex;justify-content:space-between;align-items:center}.nav-links{display:flex;gap:2rem;list-style:none}.nav-links a{color:inherit;text-decoration:none;font-size:.875rem;font-weight:500}.fade-up{opacity:0;transform:translateY(20px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}.fade-up.visible{opacity:1;transform:translateY(0)}.text-right{text-align:right}.mb-1{margin-bottom:1rem}.mb-2{margin-bottom:2rem}.mb-4{margin-bottom:4rem}.mt-4{margin-top:4rem}@media(max-width:1024px){.grid-12{grid-template-columns:repeat(12,1fr)}.span-4{grid-column:span 6}}@media(max-width:768px){.grid-12{grid-template-columns:repeat(12,1fr);gap:1.5rem}.span-4,.span-6{grid-column:span 12}.section{padding:4rem 0}.spec-table th,.spec-table td{display:block;width:100%}.spec-table th{padding-bottom:.25rem;border-bottom:none}}.project-hero{padding-top:10rem;padding-bottom:4rem;border-bottom:1px solid var(--color-border);margin-bottom:4rem}.project-meta{border-top:1px solid var(--color-border);padding-top:2rem}.project-meta-label{font-family:var(--font-mono);font-size:.75rem;text-transform:uppercase;color:var(--color-text-tertiary);margin-bottom:.5rem}.project-meta-value{font-size:1rem;font-weight:500;margin-bottom:1.5rem}.project-gallery img{width:100%;height:auto;display:block;margin-bottom:2rem;border:1px solid var(--color-border)}.back-link{display:inline-flex;align-items:center;text-decoration:none;color:var(--color-text-primary);font-family:var(--font-mono);font-size:.875rem;margin-bottom:2rem;transition:color .3s}.back-link:hover{color:var(--color-text-tertiary)}.projects-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4rem;border-bottom:1px solid var(--color-border);padding-bottom:2rem;flex-wrap:wrap;gap:2rem}.filter-pills{display:flex;gap:.5rem;flex-wrap:wrap}.pill{background:transparent;border:1px solid var(--color-border);border-radius:50px;padding:.5rem 1.5rem;font-family:var(--font-mono);font-size:.75rem;text-transform:uppercase;color:var(--color-text-secondary);transition:all .3s ease}.pill:hover,.pill.active{background:var(--color-text-primary);color:var(--color-bg);border-color:var(--color-text-primary)}.projects-carousel{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding:4rem calc(50vw - 250px);margin-bottom:4rem;scrollbar-width:none;-ms-overflow-style:none;scroll-behavior:smooth;perspective:1200px}.projects-carousel::-webkit-scrollbar{display:none}.carousel-wrapper{position:relative;width:100%}.carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:20;width:56px;height:56px;border-radius:50%;background:#fff;border:1px solid var(--color-border);color:var(--color-text-primary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;box-shadow:0 8px 24px #0000001f}.carousel-arrow:hover{background:var(--color-text-primary);color:var(--color-bg);transform:translateY(-50%) scale(1.05)}.prev-arrow{left:4rem}.next-arrow{right:4rem}@media(max-width:900px){.prev-arrow{left:1rem}.next-arrow{right:1rem}}.project-card{text-decoration:none;color:inherit;display:flex;flex-direction:column;transition:transform .3s cubic-bezier(.16,1,.3,1),opacity .3s ease;width:100%;background:#fff;border-radius:20px;border:1px solid var(--color-border);box-shadow:0 10px 40px #00000014;overflow:hidden}.project-card.hidden{display:none!important}.project-image-wrapper{position:relative;width:100%;aspect-ratio:4/3;background:#eaeaea;transform:translateZ(0)}.project-info{padding:2.5rem 2rem;text-align:center;background:#fff;display:flex;flex-direction:column;align-items:center;gap:.8rem}.project-categories{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;margin-bottom:.2rem}.project-info .project-category{display:inline-block;font-family:var(--font-sans);font-size:.75rem;font-weight:600;color:var(--color-text-primary);background:transparent;border:1px solid var(--color-text-primary);text-transform:uppercase;letter-spacing:.05em;padding:.35rem .95rem;border-radius:24px}.project-info .project-title{font-family:var(--font-sans);font-size:1.8rem;font-weight:700;letter-spacing:-.02em;color:var(--color-text-primary);margin:0}.project-info .project-role{font-family:var(--font-sans);color:var(--color-text-secondary);font-size:1.05rem;line-height:1.4;margin:0}@media(max-width:900px){.projects-header{flex-direction:column;align-items:flex-start}}.case-study-section{padding:6rem 0;border-top:1px solid var(--color-border)}.case-study-title{font-family:var(--font-serif);font-size:2.5rem;font-weight:300;color:var(--color-text-primary);margin-bottom:2rem;letter-spacing:-.02em}.insight-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-top:3rem}.insight-card{background:#f4f4f1;padding:2.5rem;border-radius:12px;border:1px solid var(--color-border);transition:transform .3s ease}.insight-card:hover{transform:translateY(-5px)}.data-metric{font-family:var(--font-mono);font-size:3.5rem;color:var(--color-text-primary);display:block;margin-bottom:1rem;line-height:1}.pull-quote{font-family:var(--font-serif);font-size:2rem;font-style:italic;color:var(--color-text-primary);border-left:4px solid var(--color-text-secondary);padding-left:2rem;margin:4rem 0;line-height:1.4}.image-placeholder{width:100%;aspect-ratio:16/9;background:#eaeaea;border-radius:12px;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);color:#888;text-align:center;padding:2rem;border:1px dashed #ccc;margin:2rem 0}html.lenis{height:auto}.lenis.lenis-smooth{scroll-behavior:auto}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-stopped{overflow:hidden}.noise{position:fixed;top:0;left:0;width:100%;height:100vh;pointer-events:none;z-index:9998;opacity:.05;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")}[data-speed]{will-change:transform}@media(max-width:900px){.morphing-blob{width:300px;height:300px;right:-20%;top:40%}}
