@import url("https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,300..900;1,9..144,300..900&family=JetBrains+Mono:wght@300;400;500&family=Inter+Tight:wght@300;400;500;600&display=swap");*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root,[data-theme=dark]{--bg:#0a0a0a;--bg-elev:#111;--bg-elev-2:#1a1a1a;--ink:#f4f0e8;--ink-dim:#a8a29a;--ink-faint:#6b6660;--accent:#e8452c;--accent-soft:#f5a08c;--line:hsla(40,35%,93%,.08);--line-bright:hsla(40,35%,93%,.2);--nav-bg:hsla(0,0%,4%,.6);--filter-bg:hsla(0,0%,4%,.85);--grain-opacity:0.04;--grain-blend:overlay;--cta-glow:rgba(232,69,44,.08);--service-glow:rgba(232,69,44,.03);--orb-color:rgba(232,69,44,.12);--work-overlay:linear-gradient(180deg,transparent 40%,rgba(0,0,0,.4));--font-display:"Fraunces","Times New Roman",serif;--font-body:"Inter Tight",system-ui,sans-serif;--font-mono:"JetBrains Mono",monospace;--ease-out:cubic-bezier(0.16,1,0.3,1);--ease-in-out:cubic-bezier(0.65,0,0.35,1)}[data-theme=light]{--bg:#f4f0e8;--bg-elev:#f4f0e8;--bg-elev-2:#ede7db;--ink:#1a1410;--ink-dim:#6b5f54;--ink-faint:#9a8e82;--accent:#c93820;--accent-soft:#b8543a;--line:rgba(26,20,16,.08);--line-bright:rgba(26,20,16,.18);--nav-bg:hsla(40,35%,93%,.8);--filter-bg:hsla(40,35%,93%,.92);--grain-opacity:0.05;--grain-blend:multiply;--cta-glow:rgba(201,56,32,.06);--service-glow:rgba(201,56,32,.04);--orb-color:rgba(201,56,32,.08);--work-overlay:linear-gradient(180deg,transparent 50%,rgba(0,0,0,.15))}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);font-weight:300;line-height:1.5;overflow-x:hidden;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .5s var(--ease-out),color .5s var(--ease-out)}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:1000;opacity:var(--grain-opacity);mix-blend-mode:var(--grain-blend);background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' /%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}a{text-decoration:none}a,button{color:inherit}button{background:none;border:none;font:inherit;cursor:pointer}img{max-width:100%;display:block}ul{list-style:none}::selection{background:var(--accent);color:var(--bg)}.loader{position:fixed;inset:0;background:var(--bg);z-index:9999;display:flex;align-items:center;justify-content:center;transition:opacity .6s var(--ease-out),visibility .6s}.loader.hidden{opacity:0;visibility:hidden}.loader-mark{font-family:var(--font-display);font-style:italic;font-size:clamp(3rem,8vw,6rem);font-weight:300;letter-spacing:-.02em;color:var(--ink);opacity:0;animation:loaderPulse 1.2s var(--ease-out) forwards}@keyframes loaderPulse{0%{opacity:0;transform:translateY(10px)}40%{opacity:1;transform:translateY(0)}to{opacity:1;transform:translateY(0)}}.nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:1.75rem 2.5rem;justify-content:space-between;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:var(--nav-bg);border-bottom:1px solid var(--line);transition:background-color .5s var(--ease-out)}.nav,.nav-logo{display:flex;align-items:center}.nav-logo{font-family:var(--font-display);font-size:1.35rem;font-weight:400;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);gap:.5rem}.nav-logo .dot{width:8px;height:8px;background:var(--accent);border-radius:50%;animation:pulse 2s ease-in-out infinite;flex-shrink:0}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.4);opacity:.6}}.nav-menu{display:flex;gap:2.5rem;align-items:center}.nav-link{font-size:.82rem;font-weight:400;letter-spacing:.08em;text-transform:uppercase;position:relative;padding:.25rem 0;transition:color .3s var(--ease-out);color:var(--ink-dim)}.nav-link:after{content:"";position:absolute;left:0;right:100%;bottom:-4px;height:1px;background:var(--accent);transition:right .4s var(--ease-out)}.nav-link.active,.nav-link:hover{color:var(--ink)}.nav-link.active:after,.nav-link:hover:after{right:0}.nav-link .num{font-family:var(--font-mono);font-size:.65rem;color:var(--ink-faint);margin-right:.4rem;vertical-align:super}.nav-right{display:flex;gap:1.5rem;align-items:center}.lang-switch{display:flex;font-family:var(--font-mono);font-size:.75rem;border:1px solid var(--line-bright);padding:3px}.lang-btn,.lang-switch{border-radius:100px;color:var(--ink-dim)}.lang-btn{padding:.3rem .75rem;transition:all .3s var(--ease-out);letter-spacing:.05em}.lang-btn.active{background:var(--ink);color:var(--bg)}.theme-toggle{width:38px;height:38px;border:1px solid var(--line-bright);border-radius:50%;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;transition:border-color .3s var(--ease-out),transform .4s var(--ease-out)}.theme-toggle:hover{border-color:var(--ink-faint);transform:rotate(-15deg)}.theme-toggle svg{width:16px;height:16px;color:var(--ink);position:absolute;transition:transform .5s var(--ease-out),opacity .4s var(--ease-out)}.icon-moon{opacity:1;transform:rotate(0) scale(1)}.icon-sun{opacity:0;transform:rotate(180deg) scale(.4)}[data-theme=light] .icon-moon{opacity:0;transform:rotate(-180deg) scale(.4)}[data-theme=light] .icon-sun{opacity:1;transform:rotate(0) scale(1)}.menu-toggle{display:none;flex-direction:column;gap:5px;padding:.5rem}.menu-toggle span{display:block;width:24px;height:1.5px;background:var(--ink);transition:all .3s var(--ease-out)}.page-wrapper{min-height:100vh;padding-top:5rem;animation:pageIn .7s var(--ease-out)}@keyframes pageIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.hero{min-height:calc(100vh - 5rem);padding:4rem 2.5rem 6rem;display:flex;flex-direction:column;justify-content:center;overflow:hidden}.hero,.hero-grid{position:relative}.hero-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:4rem;gap:4rem;align-items:end;z-index:2}.hero-label{display:flex;align-items:center;gap:.75rem;font-family:var(--font-mono);font-size:.75rem;color:var(--ink-dim);letter-spacing:.12em;text-transform:uppercase;margin-bottom:2rem;opacity:0;animation:fadeUp .8s var(--ease-out) .3s forwards}.hero-label:before{content:"";width:40px;height:1px;background:var(--accent)}.hero-title{font-family:var(--font-display);font-size:clamp(4rem,13vw,11rem);font-weight:300;line-height:1.05;letter-spacing:-.02em;margin-bottom:1.5rem;color:var(--ink)}.hero-title .line{display:block;overflow:hidden}.hero-title .word{display:inline-block;opacity:0;transform:translateY(110%);animation:wordReveal 1s var(--ease-out) forwards}.hero-title .word:first-child{animation-delay:.4s}.hero-title .word:nth-child(2){animation-delay:.55s}.hero-title .italic{font-style:italic;font-weight:300;color:var(--accent-soft)}@keyframes wordReveal{to{opacity:1;transform:translateY(0)}}.hero-desc{font-size:1.05rem;line-height:1.6;color:var(--ink-dim);max-width:32rem;margin-bottom:2.5rem;opacity:0;animation:fadeUp .8s var(--ease-out) .9s forwards}.hero-desc em{font-family:var(--font-display);font-style:italic;color:var(--ink);font-size:1.15em}.hero-cta-row{align-items:center;animation:fadeUp .8s var(--ease-out) 1.1s forwards}.hero-cta-row,.hero-meta{display:flex;gap:1.5rem;opacity:0}.hero-meta{flex-direction:column;align-items:flex-end;font-family:var(--font-mono);font-size:.75rem;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.1em;animation:fadeUp .8s var(--ease-out) 1.3s forwards}.hero-meta-block{text-align:right;padding-right:1rem;border-right:1px solid var(--line-bright)}.hero-meta-block strong{display:block;font-family:var(--font-display);font-style:italic;font-weight:300;font-size:2.2rem;color:var(--ink);line-height:1;margin-bottom:.4rem;letter-spacing:-.02em}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.hero-bg{position:absolute;inset:0;overflow:hidden;z-index:0;pointer-events:none}.hero-orb{position:absolute;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle at center,var(--orb-color),transparent 70%);filter:blur(40px);top:-200px;right:-200px;animation:orbFloat 20s ease-in-out infinite}@keyframes orbFloat{0%,to{transform:translate(0) scale(1)}50%{transform:translate(-50px,30px) scale(1.1)}}.ticker{position:absolute;bottom:2rem;left:0;right:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:.9rem 0;overflow:hidden;white-space:nowrap;background:var(--nav-bg)}.ticker-track{display:inline-flex;align-items:center;width:max-content;animation:ticker 240s linear infinite;font-family:var(--font-display);font-size:1.1rem;font-weight:300}.ticker-track span{margin-right:3rem;color:var(--ink-dim)}.ticker-track span em{font-style:italic;color:var(--accent-soft)}.ticker-track .star{color:var(--accent);margin-right:3rem}@keyframes ticker{0%{transform:translateX(0)}to{transform:translateX(-50%)}}.clients-ticker{border-bottom:1px solid var(--line);padding:7rem 0 4rem;overflow:hidden;background:var(--bg);position:relative}.clients-ticker .section-header{margin:0 2.5rem 4rem}.clients-ticker-track{display:inline-flex;align-items:center;width:max-content;animation:ticker 150s linear infinite;white-space:nowrap}.clients-ticker-group{display:flex;align-items:center}.clients-ticker-item{justify-content:center;height:32px;margin-right:6rem;color:var(--ink);opacity:1}.btn-primary,.clients-ticker-item{display:inline-flex;align-items:center}.btn-primary{gap:.75rem;padding:1rem 1.75rem;background:var(--ink);color:var(--bg);border-radius:100px;font-size:.85rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;transition:all .4s var(--ease-out);position:relative;overflow:hidden}.btn-primary:before{content:"";position:absolute;inset:0;background:var(--accent);transform:translateY(100%);transition:transform .4s var(--ease-out)}.btn-primary .arrow,.btn-primary span{position:relative;z-index:1}.btn-primary:hover{color:var(--bg)}.btn-primary:hover:before{transform:translateY(0)}.btn-primary .arrow{transition:transform .4s var(--ease-out)}.btn-primary:hover .arrow{transform:translateX(4px)}.btn-ghost{font-size:.85rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-dim);padding:1rem 1.5rem;margin-left:-1.5rem;position:relative;transition:all .3s;border-radius:100px}.btn-ghost:hover{color:var(--bg);background:var(--accent)}.btn-ghost:after{content:"";position:absolute;bottom:.75rem;left:1.5rem;width:calc(100% - 3rem);height:1px;background:var(--ink-faint);transition:opacity .3s}.btn-ghost:hover:after{opacity:0}.dynamic-word-wrapper{display:inline-flex;align-items:center;justify-content:center;background:var(--accent);color:var(--bg);border-radius:.15em;padding:0 .2em;min-width:4.5em;height:1.2em;vertical-align:-.1em;overflow:hidden;position:relative}.dynamic-word-inner{display:inline-block;font-style:italic;font-weight:400;line-height:1;white-space:nowrap;width:100%;text-align:center;padding-bottom:.15em}section{padding:7rem 2.5rem;position:relative}.section-header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:4rem;padding-bottom:2rem;border-bottom:1px solid var(--line)}.section-label{font-family:var(--font-mono);font-size:.72rem;color:var(--ink-faint);letter-spacing:.2em;text-transform:uppercase;margin-bottom:1rem;display:flex;align-items:center;gap:.6rem}.section-title{font-family:var(--font-display);font-size:clamp(2.5rem,6vw,4.5rem);font-weight:300;line-height:.95;letter-spacing:-.03em;color:var(--ink)}.section-title em{font-style:italic;color:var(--accent-soft)}.services{background:var(--bg)}.services-list{display:flex;flex-direction:column}.service{display:grid;grid-template-columns:60px 1fr 3fr 1fr;grid-gap:2rem;gap:2rem;align-items:center;padding:2.5rem 0;border-top:1px solid var(--line);cursor:pointer;transition:background .4s var(--ease-out);position:relative}.service:last-child{border-bottom:1px solid var(--line)}.service:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,var(--service-glow),transparent);opacity:0;transition:opacity .4s}.service:hover:before{opacity:1}.service-num{font-family:var(--font-mono);font-size:.8rem;color:var(--ink-faint)}.service-name{font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2.5rem);font-weight:300;letter-spacing:-.02em;line-height:1;color:var(--ink);transition:transform .4s var(--ease-out)}.service-name em{font-style:italic;color:var(--accent-soft)}.service:hover .service-name{transform:translateX(12px)}.service-desc{font-size:.95rem;color:var(--ink-dim);max-width:32rem}.service-arrow{justify-self:end;font-size:1.5rem;color:var(--ink-faint);transition:all .4s var(--ease-out)}.service:hover .service-arrow{color:var(--accent);transform:rotate(-45deg)}.works{background:var(--bg-elev);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.works-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:3rem;gap:3rem}.work-card{cursor:pointer;position:relative;overflow:hidden}.work-card:nth-child(2){transform:translateY(4rem)}.work-visual{aspect-ratio:4/3;overflow:hidden;position:relative;margin-bottom:1.5rem;background:var(--bg-elev-2)}.work-visual-inner{width:100%;height:100%;transition:transform 1.2s var(--ease-out)}.work-card:hover .work-visual-inner{transform:scale(1.05)}.work-visual-inner:before{content:"";position:absolute;inset:0;background:var(--work-overlay);z-index:2}.work-visual svg{width:100%;height:100%}.work-tag{left:1.25rem;font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;padding:.35rem .75rem;background:hsla(0,0%,4%,.55);border-radius:100px;border:1px solid hsla(40,35%,93%,.2)}.work-tag,.work-year{position:absolute;top:1.25rem;z-index:3;font-family:var(--font-mono);color:#f4f0e8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.work-year{right:1.25rem;font-size:.75rem;padding:.25rem .6rem;background:hsla(0,0%,4%,.45);border-radius:100px}.work-meta{display:flex;justify-content:space-between;align-items:flex-start;gap:2rem}.work-title{font-family:var(--font-display);font-size:1.6rem;font-weight:300;letter-spacing:-.02em;line-height:1.1;margin-bottom:.5rem;color:var(--ink)}.work-title em{font-style:italic;color:var(--accent-soft)}.work-client{font-size:.85rem;color:var(--ink-dim)}.work-link{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-dim);padding:.4rem 0;border-bottom:1px solid var(--line-bright);transition:color .3s;white-space:nowrap}.work-card:hover .work-link{color:var(--accent)}.works-footer{margin-top:5rem;display:flex;justify-content:center}.process{background:var(--bg)}.process-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:3rem 2rem;gap:3rem 2rem}.process-item{padding:2rem 0;border-top:1px solid var(--line)}.process-num{font-style:italic;font-size:4rem;font-weight:300;color:var(--accent);line-height:1;margin-bottom:1rem}.process-num,.process-title{font-family:var(--font-display)}.process-title{font-size:1.3rem;font-weight:400;margin-bottom:.75rem;color:var(--ink)}.process-text{font-size:.9rem;color:var(--ink-dim);line-height:1.6}.cta-section{padding:10rem 2.5rem;text-align:center;background:var(--bg-elev);border-top:1px solid var(--line);position:relative;overflow:hidden}.cta-section:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:120%;height:120%;background:radial-gradient(ellipse at center,var(--cta-glow),transparent 60%);pointer-events:none}.cta-title{font-family:var(--font-display);font-size:clamp(3rem,9vw,7rem);font-weight:300;line-height:.95;letter-spacing:-.04em;margin-bottom:2.5rem;position:relative;color:var(--ink)}.cta-title em{font-style:italic;color:var(--accent-soft)}.projects-hero{padding:6rem 2.5rem 4rem;border-bottom:1px solid var(--line)}.projects-hero-inner{display:grid;grid-template-columns:1fr 1fr;grid-gap:3rem;gap:3rem;align-items:end}.projects-hero h1{font-family:var(--font-display);font-size:clamp(3.5rem,9vw,7rem);font-weight:300;line-height:.9;letter-spacing:-.04em;color:var(--ink)}.projects-hero h1 em{font-style:italic;color:var(--accent-soft)}.projects-hero p{color:var(--ink-dim);font-size:1.05rem;line-height:1.6;max-width:30rem}.filter-bar{padding:2rem 2.5rem;display:flex;gap:.5rem;flex-wrap:wrap;border-bottom:1px solid var(--line);position:-webkit-sticky;position:sticky;top:75px;background:var(--filter-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:50}.filter-btn{padding:.5rem 1.1rem;font-family:var(--font-mono);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-dim);border:1px solid var(--line-bright);border-radius:100px;transition:all .3s var(--ease-out)}.filter-btn:hover{color:var(--ink);border-color:var(--ink-faint)}.filter-btn.active{background:var(--ink);color:var(--bg);border-color:var(--ink)}.filter-count{margin-left:auto;font-family:var(--font-mono);font-size:.72rem;color:var(--ink-faint);letter-spacing:.1em;text-transform:uppercase;align-self:center}.projects-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:2.5rem;gap:2.5rem}.projects-grid,.projects-placeholder{padding:4rem 2.5rem;background:var(--bg)}.projects-placeholder{min-height:50vh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.placeholder-content{text-align:center;max-width:24rem}.placeholder-content h3{font-family:var(--font-display);font-size:1.75rem;font-weight:300;letter-spacing:-.02em;margin-bottom:.75rem;color:var(--ink)}.placeholder-content p{color:var(--ink-dim);font-size:.95rem;line-height:1.5}.project-tile{cursor:pointer;transition:transform .5s var(--ease-out),opacity .5s}.project-tile-visual{aspect-ratio:4/5;margin-bottom:1.25rem;overflow:hidden;position:relative;background:var(--bg-elev-2)}.project-tile-visual svg{width:100%;height:100%;transition:transform 1s var(--ease-out)}.project-tile:hover .project-tile-visual svg{transform:scale(1.06)}.project-tile-meta{display:flex;justify-content:space-between;align-items:flex-start}.project-tile-title{font-family:var(--font-display);font-size:1.25rem;font-weight:400;letter-spacing:-.02em;margin-bottom:.35rem;color:var(--ink)}.project-tile-cat{font-family:var(--font-mono);font-size:.7rem;color:var(--ink-faint);letter-spacing:.1em;text-transform:uppercase}.project-tile-year{font-family:var(--font-mono);font-size:.8rem;color:var(--ink-dim)}.about-hero{padding:6rem 2.5rem 4rem;display:grid;grid-template-columns:1fr 1fr;grid-gap:4rem;gap:4rem;align-items:end;border-bottom:1px solid var(--line)}.about-hero-title{font-family:var(--font-display);font-size:clamp(3rem,7vw,5.5rem);font-weight:300;line-height:1;letter-spacing:-.03em;color:var(--ink)}.about-hero-title em{font-style:italic;color:var(--accent-soft)}.about-hero-text{color:var(--ink-dim);font-size:1.1rem;line-height:1.65}.about-hero-text em{font-family:var(--font-display);font-style:italic;color:var(--ink);font-size:1.08em}.manifesto{padding:6rem 2.5rem;border-bottom:1px solid var(--line)}.manifesto-inner{max-width:60rem;margin:0 auto}.manifesto-quote{font-family:var(--font-display);font-size:clamp(1.5rem,3.2vw,2.5rem);font-weight:300;line-height:1.3;letter-spacing:-.015em;color:var(--ink)}.manifesto-quote em{font-style:italic;color:var(--accent-soft)}.manifesto-quote .hl{position:relative;display:inline-block}.manifesto-quote .hl:after{content:"";position:absolute;left:0;bottom:.1em;width:100%;height:3px;background:var(--accent)}.manifesto-sig{margin-top:3rem;display:flex;align-items:center;gap:1rem;font-family:var(--font-mono);font-size:.8rem;color:var(--ink-faint);letter-spacing:.1em;text-transform:uppercase}.manifesto-sig:before{content:"";width:40px;height:1px;background:var(--ink-faint)}.stats{padding:6rem 2.5rem;display:grid;grid-template-columns:repeat(4,1fr);grid-gap:2rem;gap:2rem;border-bottom:1px solid var(--line)}.stat{padding-top:2rem;border-top:1px solid var(--line)}.stat-num{font-family:var(--font-display);font-size:clamp(3rem,5vw,4.5rem);font-weight:300;line-height:1;letter-spacing:-.03em;margin-bottom:.75rem;color:var(--ink)}.stat-num em{font-style:italic;color:var(--accent-soft)}.stat-label{font-family:var(--font-mono);font-size:.75rem;color:var(--ink-dim);letter-spacing:.1em;text-transform:uppercase}.tools{padding:6rem 2.5rem;border-bottom:1px solid var(--line)}.tools-title{font-family:var(--font-display);font-size:clamp(2rem,4.5vw,3.5rem);font-weight:300;letter-spacing:-.03em;margin-bottom:3rem;color:var(--ink)}.tools-title em{font-style:italic;color:var(--accent-soft)}.tools-list{display:flex;flex-wrap:wrap;gap:.75rem}.tool-chip{padding:.75rem 1.5rem;border:1px solid var(--line-bright);border-radius:100px;font-family:var(--font-mono);font-size:.8rem;color:var(--ink-dim);letter-spacing:.05em;transition:all .3s var(--ease-out)}.tool-chip:hover{color:var(--ink);border-color:var(--ink-faint);transform:translateY(-2px)}.contact{padding:6rem 2.5rem;min-height:calc(100vh - 5rem)}.contact-inner{display:grid;grid-template-columns:1.2fr 1fr;grid-gap:5rem;gap:5rem}.contact-title{font-family:var(--font-display);font-size:clamp(3rem,8vw,6.5rem);font-weight:300;line-height:.95;letter-spacing:-.04em;margin-bottom:2rem;color:var(--ink)}.contact-title em{font-style:italic;color:var(--accent-soft)}.contact-text{color:var(--ink-dim);font-size:1.05rem;line-height:1.6;margin-bottom:3rem;max-width:28rem}.contact-email{display:inline-flex;align-items:center;gap:1rem;font-family:var(--font-display);font-size:clamp(1.5rem,3.5vw,2.75rem);font-weight:300;letter-spacing:-.02em;padding:1rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);position:relative;transition:color .4s var(--ease-out);color:var(--ink)}.contact-email:after{content:"→";font-size:1.5rem;transition:transform .4s var(--ease-out)}.contact-email:hover{color:var(--accent-soft)}.contact-email:hover:after{transform:translate(6px,-4px) rotate(-15deg)}.contact-form{padding:2.5rem;background:var(--bg-elev-2);border:1px solid var(--line)}.form-row{margin-bottom:1.5rem}.form-label{display:block;font-family:var(--font-mono);font-size:.7rem;color:var(--ink-faint);letter-spacing:.1em;text-transform:uppercase;margin-bottom:.5rem}.form-input,.form-textarea{width:100%;padding:.85rem 0;background:transparent;border:none;border-bottom:1px solid var(--line-bright);color:var(--ink);font-family:var(--font-body);font-size:1rem;transition:border-color .3s;outline:none}.form-input:focus,.form-textarea:focus{border-bottom-color:var(--accent)}.form-textarea{resize:vertical;min-height:100px}.form-tags{display:flex;flex-wrap:wrap;gap:.5rem}.tag-check{padding:.5rem 1rem;border:1px solid var(--line-bright);border-radius:100px;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-dim);cursor:pointer;transition:all .3s}.tag-check.selected{background:var(--accent);color:#f4f0e8;border-color:var(--accent)}.form-submit{width:100%;padding:1.1rem;background:var(--ink);color:var(--bg);font-family:var(--font-body);font-size:.85rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;margin-top:1rem;transition:all .3s}.form-submit.sent,.form-submit:hover{background:var(--accent);color:#f4f0e8}footer{background:var(--bg);border-top:1px solid var(--line);padding:5rem 2.5rem 2rem}.footer-main{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;grid-gap:3rem;gap:3rem;margin-bottom:4rem}.footer-brand{display:flex;flex-direction:column;gap:1.5rem}.footer-logo{font-family:var(--font-display);font-size:clamp(3rem,6vw,5rem);font-weight:300;line-height:.9;letter-spacing:-.03em;color:var(--ink)}.footer-logo em{font-style:italic;color:var(--accent-soft)}.footer-tagline{color:var(--ink-dim);font-size:.95rem;line-height:1.5;max-width:24rem}.footer-col h4{font-family:var(--font-mono);font-size:.7rem;color:var(--ink-faint);letter-spacing:.15em;text-transform:uppercase;margin-bottom:1.5rem;font-weight:400}.footer-col li{margin-bottom:.8rem}.footer-col a{color:var(--ink-dim);font-size:.9rem;transition:color .3s}.footer-col a:hover{color:var(--ink)}.social-grid{display:flex;flex-direction:column;gap:.75rem}.social-link{display:flex;align-items:center;justify-content:space-between;padding:.5rem 0;color:var(--ink-dim);font-size:.9rem;border-bottom:1px solid transparent;transition:all .3s var(--ease-out)}.social-link:hover{color:var(--accent-soft);border-bottom-color:var(--line-bright);padding-left:.5rem}.social-link:after{content:"↗";opacity:0;transition:opacity .3s,transform .3s var(--ease-out)}.social-link:hover:after{opacity:1;transform:translate(2px,-2px)}.footer-bottom{padding-top:2rem;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;font-family:var(--font-mono);font-size:.72rem;color:var(--ink-faint);letter-spacing:.1em;text-transform:uppercase;flex-wrap:wrap;gap:1rem}.live-dot{display:inline-flex;align-items:center;gap:.5rem}.live-dot:before{content:"";width:6px;height:6px;background:#4ade80;border-radius:50%;animation:pulse 2s ease-in-out infinite}.modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.75);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:2000;display:flex;align-items:flex-start;justify-content:center;padding:2rem;animation:modalFadeIn .3s var(--ease-out);overflow-y:auto}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.modal-shell{background:#0a0a0a;max-width:1100px;width:100%;margin:auto;border-radius:4px;overflow:hidden;position:relative;animation:modalSlideUp .5s var(--ease-out);box-shadow:0 40px 80px -20px rgba(0,0,0,.5);color:#f4f0e8}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(30px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-close{position:absolute;top:1rem;right:1rem;z-index:10;width:40px;height:40px;border-radius:50%;background:rgba(0,0,0,.55);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#f4f0e8;display:flex;align-items:center;justify-content:center;transition:background .3s,transform .3s var(--ease-out)}.modal-close:hover{background:rgba(0,0,0,.85);transform:rotate(90deg)}.modal-close svg{width:20px;height:20px}.modal-media{width:100%;aspect-ratio:16/9;max-height:65vh;background:#000;position:relative;overflow:hidden}.modal-media img,.modal-media video{width:100%;height:100%;object-fit:contain;display:block}.modal-fallback,.modal-fallback svg{width:100%;height:100%}.modal-info{padding:2rem 2.5rem 2.5rem;background:#0a0a0a;border-top:1px solid hsla(40,35%,93%,.08)}.modal-cat{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:#a8a29a;margin-bottom:.75rem}.modal-title{font-family:var(--font-display);font-size:clamp(1.75rem,3.5vw,2.75rem);font-weight:400;line-height:1.1;letter-spacing:-.02em;margin-bottom:1rem;color:#f4f0e8}.modal-desc{font-family:var(--font-body);font-size:1rem;line-height:1.6;color:#a8a29a;max-width:55rem;margin-bottom:1.25rem}.modal-meta{display:flex;gap:.5rem;font-family:var(--font-mono);font-size:.78rem;color:#6b6660;letter-spacing:.05em}@media (max-width:700px){.modal-backdrop{padding:0;align-items:stretch}.modal-shell{border-radius:0}.modal-info{padding:1.5rem}.clients-ticker .section-header{text-align:center;margin:0 1.5rem 2rem;align-items:center}.clients-ticker .section-label{display:none}.clients-ticker .section-title{font-size:1.5rem;letter-spacing:.05em;text-transform:uppercase;font-family:var(--font-sans);font-weight:800;font-style:normal}.clients-ticker .section-title em{font-style:normal;color:inherit}.clients-ticker-track{display:block;width:100%;animation:none;white-space:normal;padding:0 1.5rem}.clients-ticker-group{display:none}.clients-ticker-group:first-child{display:flex;flex-wrap:wrap;justify-content:center;gap:2rem 1.5rem}.clients-ticker-item{margin-right:0;height:auto;transform:scale(.85);width:40%;max-width:150px}}.reveal{opacity:0;transform:translateY(40px);transition:opacity .9s var(--ease-out),transform .9s var(--ease-out)}.reveal.visible{opacity:1;transform:translateY(0)}@media (max-width:900px){.nav{padding:1.25rem 1.5rem}.nav-right{gap:.75rem}.nav-menu{position:fixed;top:0;right:0;height:100vh;width:100%;max-width:420px;background:var(--bg);flex-direction:column;justify-content:center;padding:3rem;gap:2rem;transform:translateX(100%);transition:transform .5s var(--ease-in-out);border-left:1px solid var(--line)}.nav-menu.open{transform:translateX(0)}.nav-menu .nav-link{font-size:1.25rem}.menu-toggle{display:flex}.menu-toggle.open span:first-child{transform:translateY(6.5px) rotate(45deg)}.menu-toggle.open span:nth-child(2){opacity:0}.menu-toggle.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}.hero{padding:3rem 1.5rem 5rem}.hero-grid{grid-template-columns:1fr;gap:2rem}.hero-meta{flex-direction:row;align-items:flex-start;flex-wrap:wrap}.hero-meta-block{border-right:none;border-left:1px solid var(--line-bright);padding-right:0;padding-left:1rem;text-align:left}.about-hero,.contact,.cta-section,.manifesto,.projects-hero,.stats,.tools,section{padding-left:1.5rem;padding-right:1.5rem}.about-hero,.contact-inner,.footer-main,.process-grid,.projects-hero-inner,.works-grid{grid-template-columns:1fr;gap:2.5rem}.work-card:nth-child(2){transform:translateY(0)}.projects-grid,.stats{grid-template-columns:1fr 1fr}.projects-grid{padding:2rem 1.5rem}.service{grid-template-columns:40px 1fr;gap:1rem;padding:1.75rem 0}.service-arrow,.service-desc{display:none}.section-header{flex-direction:column;align-items:flex-start;gap:1rem;margin-bottom:2rem}.clients-ticker .section-header{margin:0 1.5rem 2rem}.filter-bar{top:68px;padding:1.25rem 1.5rem}.filter-count{display:none}footer{padding:3rem 1.5rem 1.5rem}.footer-bottom{flex-direction:column;align-items:flex-start}}@media (max-width:500px){.projects-grid,.stats{grid-template-columns:1fr}.hero-cta-row{flex-direction:column;align-items:stretch}.hero-cta-row .btn-primary{justify-content:center}.hero-cta-row .btn-ghost{margin-left:0;display:flex;justify-content:center;align-items:center}.form-row[style*=grid]{grid-template-columns:1fr!important;gap:1.5rem!important}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;transition-duration:.01ms!important}}