:root{--paper:#f2efdf;--ink:#171917;--red:#f04d35;--blue:#3548cc;--lime:#d8ec55;--line:rgba(23,25,23,.2);--muted:#676960;--sans:'DM Sans',sans-serif;--display:'Space Grotesk',sans-serif;--mono:'DM Mono',monospace;--gutter:clamp(20px,5.2vw,78px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:86px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{max-width:100%}button{font:inherit}.mono,.section-number{font:500 10px/1.5 var(--mono);letter-spacing:.1em;text-transform:uppercase}.section-wrap{width:min(1460px,calc(100% - 2*var(--gutter)));margin-inline:auto}.skip-link{position:absolute;left:-9999px;top:10px;background:var(--lime);padding:10px;z-index:100}.skip-link:focus{left:10px}.site-header{height:68px;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:24px}.brand{display:inline-flex;align-items:center;gap:10px;font-size:12px;font-weight:700;letter-spacing:-.025em;white-space:nowrap}.brand-mark{width:24px;height:24px;border-radius:50%;background:var(--red);color:var(--paper);display:grid;place-items:center;font:700 14px var(--display)}.main-nav{display:flex;align-items:center;gap:clamp(13px,2.5vw,36px)}.main-nav a{font:500 9px var(--mono);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.main-nav a:first-letter{color:var(--red)}.main-nav a span{color:var(--muted)}.main-nav a:hover,.main-nav a:focus-visible{color:var(--red)}.header-location{font:9px var(--mono);text-transform:uppercase;color:var(--muted);white-space:nowrap}
.hero{min-height:min(790px,calc(100svh - 68px));padding-top:clamp(44px,8vh,100px);padding-bottom:24px;display:flex;flex-direction:column;justify-content:space-between}.hero-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,25%);align-items:center;gap:clamp(16px,3.4vw,55px)}.hero-copy-block{padding-top:14px}.hero h1{font:600 clamp(70px,11.6vw,164px)/.8 var(--display);letter-spacing:-.095em;margin:0;max-width:1000px}.hero h1 em,.section-heading h2 em,.projects-intro h2 em,.contact-top h2 em,.stack-body h3 em{color:var(--red);font-style:normal}.hero-intro{font-size:clamp(15px,1.35vw,19px);line-height:1.55;max-width:380px;margin:clamp(48px,7vw,96px) 0 0 4px}.hero-intro strong{font-weight:700}.magnetic-space{display:grid;place-items:center;min-width:0}.magnetic-art{position:relative;width:clamp(150px,17vw,224px);aspect-ratio:1;isolation:isolate;display:grid;place-items:center}.magnetic-layer{position:absolute;display:block;transform:translate3d(var(--mx,0px),var(--my,0px),0);will-change:transform;transition:transform .16s cubic-bezier(.2,.75,.25,1)}.magnetic-disc{width:67%;height:67%;border-radius:50%;background:var(--lime);z-index:0}.magnetic-orbit{border:1px solid var(--ink);border-radius:50%;inset:8%;z-index:1}.magnetic-orbit-outer{transform:translate3d(var(--mx,0px),var(--my,0px),0) rotate(-18deg) scaleX(.86)}.magnetic-orbit-inner{inset:18%;border-style:dashed;transform:translate3d(var(--mx,0px),var(--my,0px),0) rotate(32deg) scaleX(.78)}.magnetic-spark{width:11px;height:11px;right:16%;top:22%;border-radius:50%;background:var(--red);z-index:3}.magnetic-words{z-index:4;text-align:center;font:500 clamp(9px,.82vw,12px)/1.35 var(--mono);text-transform:uppercase;letter-spacing:.08em}.hero-bottom{border-top:1px solid var(--line);padding-top:13px;display:flex;align-items:center;justify-content:space-between;color:var(--muted)}.scroll-cue{font:10px var(--mono);text-transform:uppercase;color:var(--ink)}.scroll-cue span{display:inline-block;margin-left:12px;font-size:17px;vertical-align:-2px;color:var(--red)}
.advertising-section{padding-top:clamp(90px,13vw,180px);padding-bottom:clamp(95px,13vw,180px)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:28px;border-bottom:1px solid var(--ink);padding-bottom:23px}.section-number{display:block;margin-bottom:23px}.section-heading h2,.projects-intro h2,.contact-top h2{font:500 clamp(52px,9vw,125px)/.84 var(--display);letter-spacing:-.09em;margin:0}.section-heading>p{font:10px/1.6 var(--mono);text-transform:uppercase;color:var(--muted);text-align:right;margin:0 0 6px}.featured-grid{display:grid;grid-template-columns:1.25fr .88fr .88fr;gap:clamp(16px,3vw,42px);align-items:start;padding-top:30px}.case-placeholder{min-width:0}.case-placeholder:nth-child(2){margin-top:80px}.case-placeholder:nth-child(3){margin-top:30px}.case-placeholder-art{position:relative;display:block;aspect-ratio:1.08;overflow:hidden;isolation:isolate}.case-placeholder-large .case-placeholder-art{aspect-ratio:1.16}.case-placeholder-art b{position:absolute;left:8%;top:12%;z-index:1;font:600 clamp(35px,5.5vw,82px)/.79 var(--display);letter-spacing:-.09em}.art-red{background:var(--red);color:var(--paper)}.art-red .art-disc{position:absolute;right:-7%;bottom:-15%;width:67%;aspect-ratio:1;border-radius:50%;background:var(--lime);mix-blend-mode:multiply}.art-blue{background:var(--blue);color:var(--lime)}.art-blue .art-lines{position:absolute;inset:8% -10%;border:1px solid var(--lime);border-radius:50%;transform:rotate(-27deg);box-shadow:0 0 0 18px var(--blue),0 0 0 19px #d8ec5577,0 0 0 42px var(--blue),0 0 0 43px #d8ec5577}.art-lime{background:var(--lime);color:var(--ink)}.art-lime .art-sun{position:absolute;right:7%;bottom:-18%;width:62%;aspect-ratio:1;border-radius:50%;background:var(--red)}.case-placeholder>.mono{display:block;margin-top:13px;color:var(--muted);font-size:9px}.case-placeholder h3{font:500 20px var(--display);letter-spacing:-.04em;margin:7px 0 3px}.case-placeholder p{font-size:12px;color:var(--muted);margin:0}.section-end-link{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:54px;padding-top:16px;border-top:1px solid var(--line)}.section-end-link p{color:var(--muted);margin:0}.text-link{display:inline-flex;align-items:center;gap:20px;padding-bottom:7px;border-bottom:1px solid var(--ink);font:10px var(--mono);text-transform:uppercase;letter-spacing:.06em}.text-link span{font-size:16px;color:var(--red);transition:transform .2s}.text-link:hover span{transform:translate(3px,-3px)}
.projects-section{background:var(--ink);color:var(--paper);padding:clamp(70px,10vw,145px) 0 clamp(85px,12vw,165px);overflow:hidden}.projects-intro{display:grid;grid-template-columns:1.2fr .8fr;align-items:end;gap:24px 60px}.projects-intro .section-number{grid-column:1/-1;color:var(--lime);margin:0}.projects-intro h2{grid-row:2}.projects-intro>p{max-width:380px;font-size:15px;line-height:1.65;color:#c7c6bb;margin:0 0 5px}.projects-intro h2 em{color:var(--lime)}.project-wall{margin-top:clamp(50px,8vw,105px);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:18px}.project-tile{position:relative;display:flex;flex-direction:column;min-height:390px;padding:20px;overflow:hidden;color:var(--ink);isolation:isolate;transition:transform .35s cubic-bezier(.2,.7,.2,1)}.project-tile:hover{transform:translateY(-7px)}.tile-mooca{grid-column:span 5;background:var(--lime);min-height:500px}.tile-javari{grid-column:span 7;background:var(--red);color:var(--paper);margin-top:100px;min-height:430px}.tile-sp{grid-column:span 4;background:#ece7d6;min-height:450px;margin-top:-35px}.tile-cooletivo{grid-column:span 4;background:var(--blue);color:var(--lime);min-height:420px;margin-top:65px}.tile-centro{grid-column:span 4;background:#f3ad87;min-height:480px;margin-top:-20px}.tile-index{z-index:2;font:10px var(--mono);letter-spacing:.1em}.tile-graphic{position:absolute;inset:0;z-index:-1;display:grid;place-items:center;overflow:hidden;opacity:.9}.tile-graphic i{position:absolute;display:block;width:74%;aspect-ratio:1;border:1px solid currentColor;border-radius:50%;transform:rotate(-22deg) scaleX(.72);box-shadow:0 0 0 25px transparent,0 0 0 26px currentColor,0 0 0 53px transparent,0 0 0 54px currentColor}.tile-graphic b{position:relative;font:700 clamp(75px,14vw,190px)/.7 var(--display);letter-spacing:-.13em;opacity:.26}.tile-name{font:600 clamp(42px,7vw,95px)/.79 var(--display);letter-spacing:-.09em;margin:auto 0 8px;max-width:90%;z-index:2}.tile-note{font:9px var(--mono);text-transform:uppercase;letter-spacing:.08em;z-index:2}.tile-link{display:flex;justify-content:space-between;align-items:center;border-top:1px solid currentColor;margin-top:18px;padding-top:10px;font:9px var(--mono);letter-spacing:.06em;text-transform:uppercase;z-index:2}.tile-link b{font-size:15px;font-weight:400;transition:transform .2s}.project-tile:hover .tile-link b{transform:translate(3px,-3px)}.tile-javari .tile-graphic i{transform:rotate(26deg) scaleX(.76)}.tile-sp .tile-graphic b{font-size:150px}.tile-cooletivo .tile-graphic i{width:90%;border-radius:0;transform:rotate(35deg) scaleX(.72)}.tile-centro .tile-graphic i{transform:rotate(-44deg) scaleX(.72)}
.method-section{padding-top:clamp(95px,12vw,175px);padding-bottom:clamp(95px,13vw,185px)}.method-heading{border:0;padding:0}.method-heading h2 em{color:var(--blue)}.method-lede{max-width:420px;font-size:15px;line-height:1.6;margin:35px 0 55px}.stack-track{position:relative;padding-bottom:8vh}.stack-card{position:sticky;top:92px;min-height:min(65vh,620px);padding:clamp(20px,4vw,50px);margin-bottom:clamp(32px,8vh,90px);display:flex;flex-direction:column;justify-content:space-between;transform:translateY(var(--stack-lift, 0px)) scale(var(--stack-scale,1));transform-origin:top center;box-shadow:0 15px 45px #17191717;transition:transform .12s linear;z-index:1}.stack-card-1{background:var(--lime)}.stack-card-2{background:var(--red);color:var(--paper)}.stack-card-3{background:var(--blue);color:var(--lime)}.stack-card-4{background:var(--ink);color:var(--paper)}.stack-card-5{background:#e5dccc;color:var(--ink)}.stack-meta{display:flex;justify-content:space-between;gap:14px;border-bottom:1px solid currentColor;padding-bottom:12px;opacity:.75}.stack-body{display:grid;grid-template-columns:1.15fr .85fr;align-items:end;gap:20px;padding-top:40px}.stack-body h3{font:500 clamp(45px,8.4vw,112px)/.81 var(--display);letter-spacing:-.09em;margin:0;max-width:780px}.stack-body p{max-width:355px;font-size:14px;line-height:1.6;margin:24px 0 0}.stack-card-2 .stack-body h3 em{color:var(--lime)}.stack-card-3 .stack-body h3 em{color:var(--paper)}.stack-card-4 .stack-body h3 em{color:var(--red)}.stack-art{position:relative;aspect-ratio:1;max-width:310px;width:100%;justify-self:end;display:grid;place-items:center;overflow:hidden}.stack-art-eye{border-radius:50%;background:var(--red)}.stack-art-eye i{width:71%;aspect-ratio:1;border:1px solid var(--paper);border-radius:100% 0;transform:rotate(45deg)}.stack-art-eye i:after{content:'';display:block;width:36%;aspect-ratio:1;position:absolute;top:32%;left:32%;background:var(--lime);border-radius:50%}.stack-art-eye b{position:absolute;font:10px/1.2 var(--mono);text-transform:uppercase;right:6%;bottom:12%;color:var(--paper)}.stack-art-cross i{position:absolute;width:76%;height:1px;background:var(--lime);transform:rotate(-45deg);box-shadow:0 0 0 22px transparent,0 22px 0 var(--lime),0 44px 0 var(--lime),0 -22px 0 var(--lime),0 -44px 0 var(--lime)}.stack-art-cross b{font:700 95px/.6 var(--display);letter-spacing:-.1em}.stack-art-shape i{position:absolute;width:72%;aspect-ratio:1;border:1px solid var(--lime);border-radius:47% 53% 25% 75%;transform:rotate(35deg);animation:shape-turn 12s linear infinite}.stack-art-shape b{font:500 10px/1.5 var(--mono);text-transform:uppercase;text-align:center}.stack-art-type{align-items:start;justify-items:end;color:var(--red);font:700 clamp(65px,10vw,135px)/.62 var(--display);letter-spacing:-.12em}.stack-art-world{background:var(--lime);border-radius:50%}.stack-art-world i{position:absolute;inset:14%;border:1px solid var(--ink);border-radius:50%;box-shadow:0 0 0 20px var(--lime),0 0 0 21px var(--ink),0 0 0 44px var(--lime),0 0 0 45px var(--ink)}.stack-art-world b{z-index:1;font:600 12px/1.2 var(--mono);text-transform:uppercase;text-align:center}.stack-end{text-align:right;color:var(--muted);margin:24px 0 0}
.contact-section{background:var(--red);color:var(--paper);padding:clamp(70px,10vw,140px) 0 clamp(65px,8vw,110px)}.contact-inner>.section-number{color:#f2efdfbf}.contact-top{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-top:20px}.contact-top h2{font-size:clamp(64px,12vw,160px)}.contact-top h2 em{color:var(--lime)}.contact-top p{font:11px/1.55 var(--mono);text-transform:uppercase;margin:0 4px 8px 0}.contact-options{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-top:clamp(55px,8vw,100px);border-top:1px solid #f2efdf80}.contact-options a{display:grid;grid-template-columns:1fr auto;gap:13px 18px;padding-top:14px;border-bottom:1px solid #f2efdf80;padding-bottom:15px}.contact-options .mono{grid-column:1/-1;font-size:9px;color:#f2efdfbb}.contact-options strong{font:500 clamp(16px,2.3vw,28px) var(--display);letter-spacing:-.04em}.contact-options a>span:last-child{font:18px var(--sans);transition:transform .2s}.contact-options a:hover>span:last-child{transform:translate(3px,-3px)}.site-footer{min-height:76px;padding:15px var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--paper)}.site-footer .mono{font-size:8px;color:var(--muted)}.to-top:hover{color:var(--red)}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s cubic-bezier(.2,.65,.25,1)}.reveal.is-visible{opacity:1;transform:none}@keyframes shape-turn{to{transform:rotate(395deg)}}
/* Project pages */
.page-shell{width:min(1400px,calc(100% - 2*var(--gutter)));margin:0 auto}.page-back{display:inline-block;margin-top:30px;font:9px var(--mono);letter-spacing:.08em;text-transform:uppercase}.project-hero{display:grid;grid-template-columns:1fr minmax(210px,28%);gap:30px;align-items:end;padding:clamp(50px,9vw,130px) 0 35px}.project-hero .section-number{color:var(--muted)}.project-hero h1{font:600 clamp(64px,12vw,160px)/.77 var(--display);letter-spacing:-.095em;margin:20px 0 0}.project-hero h1 em{font-style:normal;color:var(--project-accent,var(--red))}.project-hero p{font-size:14px;line-height:1.6;color:var(--muted);margin:0 0 5px;max-width:320px}.project-art{position:relative;min-height:clamp(360px,58vw,680px);background:var(--project-bg,var(--lime));overflow:hidden;display:flex;align-items:end;padding:clamp(20px,5vw,65px);isolation:isolate}.project-art:before,.project-art:after{content:'';position:absolute;z-index:-1;border:1px solid var(--project-ink,var(--ink));border-radius:50%;width:72%;aspect-ratio:1;right:-8%;top:-18%;transform:rotate(-18deg) scaleX(.76)}.project-art:after{width:55%;right:12%;top:11%;transform:rotate(26deg) scaleX(.74)}.project-art-word{position:relative;z-index:1;max-width:90%;font:700 clamp(62px,13vw,180px)/.72 var(--display);letter-spacing:-.12em;color:var(--project-ink,var(--ink));opacity:.88}.project-art-stamp{position:absolute;right:20px;top:20px;font:9px var(--mono);letter-spacing:.1em;text-transform:uppercase}.project-art-mark{position:absolute;top:50%;right:25%;translate:50% -50%;font:700 clamp(100px,22vw,320px)/.7 var(--display);letter-spacing:-.15em;color:var(--project-accent,var(--red));opacity:.55}.project-content{padding:clamp(70px,10vw,135px) 0}.project-story{display:grid;grid-template-columns:.7fr 1.3fr;gap:30px 70px;border-bottom:1px solid var(--line);padding-bottom:40px}.project-story .section-number{color:var(--project-accent,var(--red))}.project-story h2{font:500 clamp(34px,5.5vw,72px)/.88 var(--display);letter-spacing:-.075em;margin:0}.project-story p{font-size:15px;line-height:1.7;color:#585950;max-width:600px;margin:0}.placeholder-note{font:10px/1.6 var(--mono)!important;letter-spacing:.03em;text-transform:uppercase;color:var(--muted)!important}.project-role{display:grid;grid-template-columns:.7fr 1.3fr;gap:30px 70px;padding:34px 0 0}.project-role h2{font:500 clamp(27px,4vw,48px)/.95 var(--display);letter-spacing:-.06em;margin:0}.project-gallery{margin-top:clamp(60px,9vw,115px)}.project-gallery-head{display:flex;justify-content:space-between;align-items:end;border-bottom:1px solid var(--ink);padding-bottom:14px}.project-gallery-head h2{font:500 clamp(34px,5vw,65px)/.9 var(--display);letter-spacing:-.07em;margin:0}.project-gallery-head p{margin:0;color:var(--muted)}.gallery-slots{display:grid;grid-template-columns:1.1fr .9fr;gap:18px;margin-top:22px}.gallery-slot{min-height:clamp(240px,38vw,480px);background:var(--project-bg,var(--lime));display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.gallery-slot:nth-child(2){margin-top:100px;min-height:clamp(190px,28vw,360px);background:var(--project-accent,var(--red));color:var(--paper)}.gallery-slot:after{content:'';position:absolute;width:48%;aspect-ratio:1;border:1px solid currentColor;border-radius:50%;box-shadow:0 0 0 24px transparent,0 0 0 25px currentColor,0 0 0 50px transparent,0 0 0 51px currentColor;opacity:.45}.gallery-slot span{position:relative;z-index:1;font:10px var(--mono);text-transform:uppercase;letter-spacing:.1em}.ig-section{display:grid;grid-template-columns:.7fr 1.3fr;gap:32px 70px;align-items:start;margin-top:clamp(70px,10vw,140px);padding-top:32px;border-top:1px solid var(--line)}.ig-section h2{font:500 clamp(34px,5vw,60px)/.88 var(--display);letter-spacing:-.07em;margin:0}.ig-section-copy p{font-size:13px;line-height:1.6;color:var(--muted);margin:0 0 18px}.instagram-box{max-width:600px;min-height:170px;background:#fff;border:1px solid #ddd;padding:12px;display:flex;align-items:center;justify-content:center;overflow:hidden}.instagram-box .instagram-media{margin:0!important;max-width:100%!important;min-width:0!important;width:100%!important}.instagram-fallback{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;font:10px var(--mono);text-transform:uppercase}.ig-handle{font:500 18px var(--display);letter-spacing:-.04em;text-transform:none}.ig-cta{color:var(--project-accent,var(--red));border-bottom:1px solid currentColor;padding-bottom:4px}.project-bottom-nav{display:flex;justify-content:space-between;gap:20px;padding:18px 0 0;border-top:1px solid var(--line);margin-top:90px}.project-bottom-nav a{font:9px var(--mono);text-transform:uppercase}.project-bottom-nav a:hover{color:var(--project-accent,var(--red))}.project-list-hero{padding:clamp(60px,9vw,125px) 0 35px}.project-list-hero h1{font:600 clamp(64px,12vw,155px)/.79 var(--display);letter-spacing:-.095em;margin:18px 0 24px}.project-list-hero h1 em{font-style:normal;color:var(--red)}.project-list-hero p{font-size:15px;line-height:1.6;max-width:430px;color:var(--muted);margin:0}.all-cases-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:35px 0 120px}.all-case-card{border-top:1px solid var(--ink);padding-top:10px}.all-case-art{min-height:clamp(260px,39vw,480px);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;background:var(--case-color,var(--red));color:var(--case-text,var(--paper))}.all-case-art:before,.all-case-art:after{content:'';position:absolute;width:61%;aspect-ratio:1;border:1px solid currentColor;border-radius:50%;transform:rotate(25deg) scaleX(.78)}.all-case-art:after{width:47%;transform:rotate(-30deg) scaleX(.73)}.all-case-art span{font:600 clamp(46px,9vw,110px)/.78 var(--display);letter-spacing:-.1em;text-align:center;position:relative}.all-case-card:nth-child(3n+2) .all-case-art{aspect-ratio:1.2}.all-case-card:nth-child(3n) .all-case-art{aspect-ratio:.94}.case-meta{display:flex;justify-content:space-between;gap:12px;padding-top:11px}.case-meta strong{font:500 20px var(--display);letter-spacing:-.04em}.case-meta span{font:9px var(--mono);text-transform:uppercase;color:var(--muted);text-align:right}.all-case-card>p{font-size:12px;color:var(--muted);margin:7px 0}.list-footer-cta{background:var(--blue);color:var(--paper);padding:50px;margin:0 0 100px;display:flex;align-items:end;justify-content:space-between;gap:28px}.list-footer-cta h2{font:500 clamp(38px,7vw,82px)/.85 var(--display);letter-spacing:-.08em;margin:0}.list-footer-cta .text-link{border-color:var(--paper)}
@media(max-width:850px){.site-header{height:62px}.header-location{display:none}.hero{min-height:calc(86svh - 62px)}.hero-layout{grid-template-columns:minmax(0,1fr) 175px}.hero h1{font-size:clamp(70px,12vw,120px)}.featured-grid{grid-template-columns:1fr 1fr}.case-placeholder-large{grid-column:1/-1;max-width:75%}.case-placeholder:nth-child(2),.case-placeholder:nth-child(3){margin-top:15px}.tile-mooca,.tile-javari{min-height:390px}.project-story,.project-role,.ig-section{grid-template-columns:.75fr 1.25fr;gap:24px 38px}.project-hero{grid-template-columns:1fr 220px}}
@media(min-width:621px) and (max-width:1100px){.hero-layout{grid-template-columns:minmax(0,1fr) 180px;gap:24px}.hero h1{font-size:clamp(64px,9vw,96px)}}
@media(max-width:620px){:root{--gutter:18px}.site-header{padding-inline:var(--gutter);gap:12px}.brand{font-size:10px}.brand-mark{width:22px;height:22px}.main-nav{gap:11px;overflow-x:auto}.main-nav a{font-size:8px}.main-nav a span{display:none}.main-nav a::first-letter{color:var(--red)}.hero{min-height:auto;padding-top:45px;padding-bottom:18px}.hero-layout{grid-template-columns:1fr;gap:18px}.hero-copy-block{grid-row:1}.hero h1{font-size:clamp(68px,16vw,108px)}.hero-intro{margin:35px 0 0 2px;max-width:320px;font-size:15px}.magnetic-space{grid-row:2;justify-content:end;padding-right:8%}.magnetic-art{width:145px}.hero-bottom{margin-top:36px}.hero-bottom .mono{max-width:190px;font-size:8px}.scroll-cue{font-size:8px}.section-heading{align-items:start}.section-heading h2,.projects-intro h2{font-size:clamp(54px,13vw,80px)}.section-heading>p{font-size:8px}.section-number{font-size:9px;margin-bottom:16px}.advertising-section{padding-top:88px;padding-bottom:90px}.featured-grid{grid-template-columns:1fr;gap:30px}.case-placeholder-large{grid-column:auto;max-width:none}.case-placeholder:nth-child(n){margin:0}.case-placeholder-art,.case-placeholder-large .case-placeholder-art{aspect-ratio:1.2}.case-placeholder-art b{font-size:clamp(55px,13vw,82px)}.section-end-link{align-items:start;flex-direction:column;margin-top:38px}.projects-section{padding:70px 0 84px}.projects-intro{grid-template-columns:1fr;gap:24px}.projects-intro .section-number{grid-column:auto}.projects-intro>p{font-size:13px}.project-wall{grid-template-columns:1fr;gap:14px;margin-top:42px}.project-tile{grid-column:auto!important;margin:0!important;min-height:410px}.tile-mooca,.tile-javari{min-height:440px}.tile-name{font-size:clamp(54px,14vw,82px)}.method-section{padding-top:90px;padding-bottom:90px}.method-heading h2{font-size:clamp(60px,16vw,96px)}.method-lede{font-size:14px;margin:25px 0 38px}.stack-card{top:74px;min-height:70svh;padding:20px;margin-bottom:6vh}.stack-meta{font-size:8px}.stack-meta span:last-child{max-width:125px;text-align:right}.stack-body{grid-template-columns:1fr;align-items:start;padding-top:30px;gap:18px}.stack-body h3{font-size:clamp(51px,13vw,82px)}.stack-body p{font-size:12px;margin-top:15px;max-width:270px}.stack-art{position:absolute;width:31%;right:20px;bottom:19px;opacity:.9}.stack-art-type{font-size:60px}.stack-art-world b{font-size:8px}.stack-art-cross b{font-size:52px}.contact-section{padding:70px 0 58px}.contact-top{display:block}.contact-top h2{font-size:clamp(67px,16vw,100px)}.contact-top p{margin-top:25px}.contact-options{grid-template-columns:1fr;gap:24px;margin-top:45px}.site-footer{flex-wrap:wrap;padding:18px var(--gutter)}.site-footer .mono:nth-child(2){display:none}.project-hero{grid-template-columns:1fr;gap:20px;padding-top:55px}.project-hero h1{font-size:clamp(67px,16vw,110px)}.project-hero p{font-size:13px}.project-art{min-height:410px}.project-art-word{font-size:clamp(72px,18vw,120px)}.project-content{padding:70px 0}.project-story,.project-role,.ig-section{grid-template-columns:1fr;gap:17px}.project-story p{font-size:14px}.project-gallery-head{align-items:start;flex-direction:column;gap:8px}.gallery-slots{grid-template-columns:1fr;gap:12px}.gallery-slot{min-height:300px!important;margin:0!important}.ig-section{margin-top:65px}.instagram-box{min-height:120px}.project-bottom-nav{margin-top:65px}.project-list-hero{padding:55px 0 20px}.project-list-hero h1{font-size:clamp(66px,16vw,100px)}.all-cases-grid{grid-template-columns:1fr;gap:30px;margin-bottom:78px}.all-case-art,.all-case-card:nth-child(n) .all-case-art{aspect-ratio:1.15}.list-footer-cta{padding:28px;display:block;margin-bottom:70px}.list-footer-cta .text-link{margin-top:24px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}.magnetic-layer{transition:none}}

/* Hero movement, restored ribbon and compact contact choices */
.hero h1{font-size:clamp(74px,13vw,190px);max-width:1100px}
.magnetic-art{width:clamp(190px,20vw,290px);animation:hero-float 6s ease-in-out infinite}
.magnetic-disc{width:70%;height:70%}
.magnetic-orbit-outer{inset:0}
.magnetic-orbit-inner{inset:5%;border-style:solid}
.magnetic-spark{display:none}
.magnetic-words{transform:translate3d(var(--mx,0px),var(--my,0px),0) rotate(-13deg);font-size:clamp(9px,.72vw,11px)}
@keyframes hero-float{0%,100%{translate:0 0;rotate:-13deg}50%{translate:0 -11px;rotate:-7deg}}
.ticker{overflow:hidden;background:var(--red);color:var(--paper);padding:12px 0;white-space:nowrap;transform:rotate(-1.2deg) scale(1.02);margin:42px 0 78px}
.ticker-track{display:flex;width:max-content;animation:marquee 30s linear infinite}
.ticker span{font:500 12px var(--mono);letter-spacing:.08em;text-transform:uppercase;padding:0 18px}
.ticker b{font-size:18px;vertical-align:-2px;font-weight:400}
.contact-section{background:#171917;color:#f2efdf}
.contact-inner>.section-number{color:#f2efdf99}
.contact-top h2 em{color:var(--lime)}
.contact-actions{margin-top:clamp(48px,7vw,84px);border-top:1px solid #f2efdf55;padding-top:16px}
.contact-actions>p{margin:0 0 18px;font:10px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#f2efdfaa}
.contact-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.contact-button{min-height:74px;display:flex;align-items:center;gap:14px;padding:16px 19px;border:1px solid #f2efdf77;background:transparent;color:#f2efdf;text-align:left;font:500 clamp(17px,2.4vw,27px) var(--display);cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.contact-button:hover{background:var(--lime);color:var(--ink);border-color:var(--lime)}
.contact-button img{width:22px;height:22px;object-fit:contain;filter:invert(1);transition:filter .2s}
.contact-button:hover img{filter:none}
.contact-dialog{width:min(410px,calc(100vw - 36px));padding:28px;border:1px solid #17191722;background:#f2efdf;color:#171917;box-shadow:0 20px 80px #0004}
.contact-dialog::backdrop{background:#171917a8;backdrop-filter:blur(3px)}
.contact-dialog form{position:absolute;top:12px;right:14px}
.dialog-close{width:34px;height:34px;border:0;background:transparent;color:inherit;font:28px/1 var(--sans);cursor:pointer}
.contact-dialog>.mono{display:block;margin-top:14px;color:#17191788;font-size:9px}
.contact-dialog h3{margin:18px 0 8px;font:600 clamp(25px,7vw,34px)/1 var(--display);letter-spacing:-.05em}
.contact-dialog>p{margin:0;color:#171917aa;font:14px var(--sans)}
.dialog-actions{display:grid;gap:9px;margin-top:26px}
.dialog-primary,.dialog-copy{min-height:45px;display:flex;align-items:center;justify-content:center;padding:10px 14px;border:1px solid #171917;color:#171917;text-decoration:none;font:500 12px var(--mono);text-transform:uppercase;cursor:pointer}
.dialog-primary{background:#171917;color:#f2efdf}
.dialog-primary:hover{background:var(--red);border-color:var(--red)}
.dialog-copy{background:transparent}
.dialog-copy:hover{background:var(--lime)}
.copy-status{display:block;min-height:15px;margin-top:9px;color:#17191788;font:10px var(--mono)}
@media(max-width:850px){.magnetic-art{width:clamp(175px,23vw,220px)}}
@media(max-width:620px){.magnetic-art{width:155px}.ticker{margin:32px 0 62px;padding:10px 0}.ticker span{font-size:10px;padding:0 13px}.contact-buttons{grid-template-columns:1fr}.contact-button{min-height:64px}.contact-dialog{padding:23px}}
@media(prefers-reduced-motion:reduce){.magnetic-art,.ticker-track{animation:none}}

/* Editorial cutout-card carousel and aligned independent-project grid */
.featured-carousel{margin-top:30px}
.featured-grid[data-carousel-track]{display:flex;align-items:stretch;gap:clamp(14px,2vw,28px);overflow-x:auto;overflow-y:hidden;padding:0 1px 10px;scroll-snap-type:x mandatory;scrollbar-width:none;cursor:grab;touch-action:pan-x pan-y}
.featured-grid[data-carousel-track]::-webkit-scrollbar{display:none}
.featured-grid[data-carousel-track].is-dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}
.featured-card{display:flex;flex:0 0 calc(33.333333% - 19px);min-width:0;flex-direction:column;scroll-snap-align:start}
.featured-media{position:relative;isolation:isolate;overflow:hidden;aspect-ratio:1.02;clip-path:polygon(0 0,calc(100% - 24px) 0,100% 24px,100% 100%,24px 100%,0 calc(100% - 24px));transition:clip-path .3s ease}
.featured-image-placeholder{position:absolute;inset:0;display:grid;place-items:center;overflow:hidden}
.featured-image-placeholder>b{position:relative;z-index:1;font:600 clamp(36px,5.5vw,76px)/.79 var(--display);letter-spacing:-.09em}
.featured-image-placeholder i{position:absolute;inset:0;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.featured-card:hover .featured-image-placeholder i{transform:scale(1.07) rotate(5deg)}
.featured-cutout-label{position:absolute;bottom:0;left:0;z-index:2;min-width:128px;padding:13px 22px 12px 16px;background:var(--paper);color:var(--ink);clip-path:polygon(0 0,calc(100% - 13px) 0,100% 13px,100% 100%,0 100%);font:9px var(--mono);letter-spacing:.07em}
.featured-cutout-label i{position:absolute;top:0;right:0;width:13px;height:13px;background:var(--ink);clip-path:polygon(0 0,100% 100%,100% 0)}
.featured-pin{position:absolute;top:14px;right:17px;z-index:2;display:grid;width:36px;height:36px;place-items:center;border-radius:50%;background:var(--paper);color:var(--ink);font-size:18px;transition:transform .35s}
.featured-card:hover .featured-pin{transform:rotate(45deg)}
.featured-action{position:absolute;right:16px;bottom:15px;z-index:3;display:grid;width:44px;height:44px;place-items:center;border-radius:50%;background:var(--ink);color:var(--paper);font-size:20px;opacity:0;transform:translate(-6px,6px);transition:opacity .25s,transform .25s}
.featured-card:hover .featured-action{opacity:1;transform:translate(0,0)}
.featured-copy{flex:1;padding:14px 1px 4px}
.featured-copy>.mono{display:block;color:var(--muted);font-size:8px;letter-spacing:.08em}
.featured-copy h3{margin:10px 0 5px;font:500 clamp(20px,2.3vw,28px)/1.05 var(--display);letter-spacing:-.045em}
.featured-copy p{max-width:340px;margin:0;color:var(--muted);font-size:12px;line-height:1.5}
.carousel-footer{display:grid;grid-template-columns:1fr auto;align-items:center;gap:22px;margin-top:25px;border-top:1px solid var(--line);padding-top:15px}
.carousel-progress{display:flex;gap:7px;align-items:center}
.carousel-progress-step{position:relative;height:3px;flex:1;padding:0;border:0;background:#17191720;cursor:pointer;overflow:hidden}
.carousel-progress-step::before{position:absolute;inset:0;content:"";background:var(--red);transform:scaleX(0);transform-origin:left}
.carousel-progress-step.is-active::before{transform:scaleX(1);animation:carousel-progress var(--carousel-duration,5600ms) linear forwards}
.is-paused .carousel-progress-step.is-active::before{animation-play-state:paused}
@keyframes carousel-progress{to{transform:scaleX(1)}}
.carousel-controls{display:flex;align-items:center;gap:8px}
.carousel-controls button{display:grid;width:34px;height:34px;place-items:center;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--ink);font:17px var(--sans);cursor:pointer;transition:background .2s,color .2s}
.carousel-controls button:hover{background:var(--ink);color:var(--paper)}
.carousel-controls>.mono{margin-left:8px;font-size:9px;color:var(--muted)}
.all-projects-cta{display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%;margin-top:40px;padding:22px 24px;border:1px solid var(--ink);background:var(--ink);color:var(--paper);font:500 clamp(15px,2vw,22px) var(--mono);letter-spacing:.04em;text-decoration:none;transition:background .2s,color .2s}
.all-projects-cta:hover{background:var(--lime);color:var(--ink)}
.all-projects-cta span{font:24px var(--sans);transition:transform .2s}
.all-projects-cta:hover span{transform:translate(3px,-3px)}
.project-wall{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:18px;margin-top:clamp(42px,6vw,76px)}
.project-tile,.tile-mooca,.tile-javari,.tile-sp,.tile-cooletivo,.tile-centro{grid-column:span 1;grid-row:auto;height:clamp(360px,32vw,420px);min-height:0;margin:0;padding:19px}
.tile-graphic{opacity:.52}
.tile-graphic i{width:70%}
.tile-name{font-size:clamp(40px,5.2vw,72px)}
@media(max-width:850px){.featured-card{flex-basis:calc(50% - 14px)}.project-wall{grid-template-columns:repeat(2,minmax(0,1fr))}.project-tile,.tile-mooca,.tile-javari,.tile-sp,.tile-cooletivo,.tile-centro{height:390px}}
@media(max-width:620px){.featured-card{flex-basis:88%}.featured-media{aspect-ratio:1.08}.featured-image-placeholder>b{font-size:clamp(44px,12vw,72px)}.carousel-footer{gap:14px}.carousel-progress{gap:4px}.carousel-controls{gap:5px}.carousel-controls button{width:30px;height:30px}.all-projects-cta{margin-top:30px;padding:19px 16px;font-size:13px}.project-wall{grid-template-columns:1fr;gap:12px}.project-tile,.tile-mooca,.tile-javari,.tile-sp,.tile-cooletivo,.tile-centro{height:350px;padding:17px}.tile-name{font-size:clamp(54px,14vw,74px)}}
@media(prefers-reduced-motion:reduce){.featured-image-placeholder i,.featured-pin,.featured-action,.all-projects-cta,.all-projects-cta span{transition:none}.carousel-progress-step.is-active::before{animation:none}}

/* Hero orbit and four-second, five-case carousel rhythm */
.hero-layout{grid-template-columns:minmax(0,1fr) minmax(320px,36%);gap:clamp(34px,4vw,64px)}
.magnetic-space{transform:translateX(-22px)}
.magnetic-art{width:clamp(270px,29vw,420px);animation:hero-float 5.2s ease-in-out infinite}
.magnetic-disc{width:82%;height:82%}
.magnetic-orbit-outer{inset:0;transform:translate3d(var(--mx,0px),var(--my,0px),0)}
.magnetic-orbit-inner{inset:4%;transform:translate3d(var(--mx,0px),var(--my,0px),0)}
.magnetic-words{font-size:clamp(10px,.85vw,14px)}
@keyframes hero-float{0%,100%{translate:0 0;rotate:-13deg}50%{translate:0 -16px;rotate:-7deg}}
@keyframes marquee{to{transform:translateX(-50%)}}
.ticker-track{animation-duration:28s}
.carousel-progress{position:relative;display:block;height:4px;overflow:hidden;background:#17191722}
.carousel-progress-fill{position:absolute;inset:0;display:block;background:var(--red);transform:scaleX(0);transform-origin:left}
.carousel-progress-fill.is-running{animation:carousel-progress var(--carousel-duration,4000ms) linear forwards}
.is-paused .carousel-progress-fill.is-running{animation-play-state:paused}
@keyframes carousel-progress{to{transform:scaleX(1)}}
@media(max-width:1000px){.hero-layout{grid-template-columns:minmax(0,1fr) minmax(230px,32%);gap:clamp(24px,4vw,40px)}.hero h1{font-size:clamp(72px,9vw,105px)}.magnetic-space{transform:translateX(-16px)}.magnetic-art{width:clamp(220px,28vw,280px)}}
@media(max-width:620px){.hero-layout{grid-template-columns:1fr;gap:18px}.hero h1{font-size:clamp(68px,16vw,108px)}.magnetic-space{grid-row:2;justify-content:center;transform:none;padding:10px 0 0}.magnetic-art{width:clamp(190px,52vw,230px)}}
@media(prefers-reduced-motion:reduce){.magnetic-art,.ticker-track,.carousel-progress-fill.is-running{animation:none;transform:none}}

/* Contact sheet navigation: previous cases become dots, current case fills */
.all-projects-cta{width:80%;margin-inline:auto}
.featured-card{opacity:.42;filter:grayscale(1) saturate(0);transition:opacity .35s ease,filter .35s ease}
.featured-card.is-carousel-active{opacity:1;filter:none}
.featured-card:not(.is-carousel-active) .featured-action{opacity:0}
.carousel-progress{position:relative;display:flex;align-items:center;gap:7px;height:24px;overflow:visible;background:transparent}
.carousel-progress-step{position:relative;display:block;flex:0 0 15px;width:15px;height:24px;padding:0;border:0;background:transparent;cursor:pointer;overflow:visible;transition:flex-basis .25s ease,width .25s ease}
.carousel-progress-step::before{position:absolute;top:50%;left:50%;width:7px;height:7px;border-radius:50%;background:#17191755;content:"";transform:translate(-50%,-50%);transition:width .25s ease,height .25s ease,background .25s ease}
.carousel-progress-step.is-past::before{background:var(--red)}
.carousel-progress-step.is-active{flex-basis:56px;width:56px}
.carousel-progress-step.is-active::before{left:0;width:100%;height:3px;border-radius:3px;background:#17191725;transform:translateY(-50%)}
.carousel-progress-step.is-active::after{position:absolute;top:50%;left:0;width:100%;height:3px;border-radius:3px;background:var(--red);content:"";transform:scaleX(0);transform-origin:left}
.carousel-progress-step.is-active.is-running::after{animation:carousel-progress var(--carousel-duration,4000ms) linear forwards}
.is-paused .carousel-progress-step.is-active.is-running::after{animation-play-state:paused}
.carousel-progress-step:focus-visible{outline:1px solid var(--ink);outline-offset:2px}
@media(prefers-reduced-motion:reduce){.carousel-progress-step,.carousel-progress-step::before{transition:none}.carousel-progress-step.is-active.is-running::after{animation:none;transform:scaleX(1)}}
