/* Rogue — bold upright type, flat colour and purposeful movement. */
:root {
  --ink:#141418; --paper:#fff; --pink:#ff246a; --lime:#edff57; --blue:#293def;
  --accent:var(--pink); --accent-ink:var(--ink); --line:rgba(20,20,24,.23);
  --pad:clamp(1.25rem,4.8vw,5.5rem); --display:"Manrope",Arial,sans-serif;
}
html[data-mood="citrus"]{--accent:var(--lime)}
html[data-mood="blue"]{--accent:var(--blue);--accent-ink:#fff}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:9rem}
body>.nav{position:sticky;top:0;z-index:90;background:var(--ink);box-shadow:0 1px 0 #ffffff25}
@media(max-width:760px){html{scroll-padding-top:6rem}}
body{margin:0;color:var(--ink);background:var(--paper);font-family:"DM Sans",Arial,sans-serif;line-height:1.5;overflow-x:clip}
button,a{-webkit-tap-highlight-color:transparent}
button{font:inherit;cursor:pointer;color:inherit}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
h1,h2,h3,p,figure{margin:0}
h1,h2,h3{font-family:var(--display);font-weight:800}
em,i{font-style:normal}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid currentColor;outline-offset:6px}
::selection{background:var(--blue);color:#fff}
.js-only{display:none!important}.js .js-only{display:flex!important}
.skip-link{position:fixed;left:1rem;top:-5rem;background:var(--ink);color:#fff;padding:1rem;z-index:200}.skip-link:focus{top:1rem}
.scroll-progress{position:fixed;top:0;left:0;width:100%;height:4px;background:var(--blue);transform:scaleX(0);transform-origin:left;z-index:100;pointer-events:none}
.nav{min-height:112px;padding:1.5rem var(--pad);display:flex;align-items:center;gap:2.7rem;border-bottom:1px solid var(--line)}
.logo{font:800 clamp(1.85rem,2.8vw,2.7rem)/1 var(--display);letter-spacing:-.08em;white-space:nowrap}
.logo>span{display:inline-block;transform:rotate(-13deg);color:var(--blue)}
.logo sup{font-size:.45em;vertical-align:top;letter-spacing:0;margin-left:.3rem}
.logo-lockup{display:flex;align-items:center;gap:.85rem;letter-spacing:0}.logo-lockup>span{transform:none;color:inherit}.logo-orbit{position:relative;width:3rem;height:3rem;display:grid!important;place-items:center;border-radius:50%;background:var(--lime);color:var(--blue)!important;isolation:isolate}.logo-orbit:before,.logo-orbit:after{content:"";position:absolute;border:1px solid var(--ink);border-radius:50%;pointer-events:none}.logo-orbit:before{inset:-.32rem -.9rem;transform:rotate(-17deg)}.logo-orbit:after{inset:-.72rem -.38rem;transform:rotate(29deg);opacity:.5}.logo-orbit i{position:absolute;width:.38rem;height:.38rem;border-radius:50%;background:var(--pink);right:-.7rem;top:-.02rem}.logo-orbit b{font:800 1.55rem/1 var(--display);letter-spacing:-.1em}.logo-name{font:800 .78rem/1 var(--display);letter-spacing:.15em}
.nav-descriptor{font-size:.875rem;line-height:1.2}
.nav nav{margin-left:auto;display:flex;align-items:center;gap:2rem;font-size:.9375rem}
.nav nav>a:not(.pill){position:relative}
.nav nav>a:not(.pill):after{content:"";height:2px;background:currentColor;position:absolute;bottom:-4px;left:0;right:0;transform:scaleX(0);transform-origin:left;transition:transform .25s}
.nav nav>a:hover:after{transform:scaleX(1)}
.pill{display:inline-flex;align-items:center;justify-content:center;gap:2rem;min-height:56px;padding:.9rem 1.4rem;border:1px solid var(--ink);border-radius:0;font-weight:600;font-size:.9375rem;transition:background .2s,color .2s,transform .25s}
.pill-dark{background:var(--ink);color:#fff}.pill-dark:hover{background:var(--accent);color:var(--accent-ink);transform:translateY(-3px)}
.pill span{font-size:1.5rem;line-height:1;transition:transform .3s}.pill:hover span{transform:rotate(45deg)}
.hero{padding:1.6rem var(--pad) 2rem;position:relative;overflow:clip}
.hero-meta{display:flex;justify-content:space-between;font-size:.8125rem;text-transform:uppercase;letter-spacing:.07em}
.agency-masthead{display:flex;align-items:baseline;justify-content:space-between;gap:.08em;margin:1.5rem 0 .2rem;font:800 clamp(4.2rem,9.2vw,11rem)/1 var(--display);letter-spacing:-.07em;text-transform:uppercase;white-space:nowrap;border-bottom:8px solid var(--ink);padding-bottom:.14em}.agency-masthead span:nth-child(2){color:var(--blue)}.agency-masthead span:nth-child(3){color:var(--pink)}
.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,4vw,5rem);position:relative;margin-top:2.4rem;padding-bottom:2.8rem;align-items:center}
.hero-copy{position:relative;z-index:3}
.hero h1{line-height:.96;letter-spacing:-.075em;font-weight:800}
.hero-proposition{font-size:clamp(2.8rem,5.5vw,6.2rem);max-width:12ch;line-height:1!important;letter-spacing:-.065em!important}.hero-proposition>span:not(.full-stop){color:var(--blue)}.hero-proposition .full-stop{color:var(--pink)}
.hero-intro{display:block;font-size:clamp(2.1rem,4.5vw,4.8rem);letter-spacing:-.06em;margin-bottom:.13em}
.hero-another{display:table;font-size:clamp(4rem,10vw,10.3rem);background:var(--accent);color:var(--accent-ink);padding:0 .075em .13em .025em;transition:background .4s,color .4s;position:relative;z-index:2}
.hero-way{display:block;font-size:clamp(4rem,10vw,10.3rem);margin-top:.07em}
.full-stop{color:var(--blue)}
.hero-asterisk{display:inline-block;font-size:.72em;vertical-align:top;color:var(--blue);margin-left:.25em;animation:asterisk-turn 22s linear infinite}
.hero-copy>p{font-size:clamp(1.0625rem,1.4vw,1.3rem);max-width:25rem;margin:1.8rem 0 1.5rem;line-height:1.5}
.hero-cta{gap:3rem}
.hero-copy>.hero-belief{font-family:var(--display);font-weight:800;font-size:clamp(1.2rem,1.8vw,1.7rem);line-height:1.4;max-width:30rem}
.hero-visual{position:relative;min-width:0;min-height:430px;margin:0;isolation:isolate}
.paint-sheet{position:absolute;inset:-1.5rem -2rem 3rem -2rem;transform:rotate(-7deg);overflow:hidden;clip-path:polygon(0 5%,96% 0,100% 95%,5% 100%);z-index:-1}
.paint-sheet img{width:100%;height:100%;object-fit:cover;object-position:40% 48%;animation:paint-drift 17s ease-in-out infinite alternate}
.portrait-poster{position:absolute;inset:0;overflow:hidden;background:var(--pink)}
.portrait-poster>img{width:100%;height:100%;object-fit:cover;object-position:57% 45%;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.portrait-poster:hover>img{transform:scale(1.06)}
.poster-word{position:absolute;z-index:1;left:1.1rem;bottom:2.6rem;color:#fff;font:800 clamp(1.8rem,3.7vw,4rem)/.94 var(--display);letter-spacing:-.05em}
.poster-index{position:absolute;z-index:1;bottom:.9rem;left:1.1rem;color:#fff;font-size:.75rem;letter-spacing:.04em}
.sticker{position:absolute;right:-1rem;bottom:1.15rem;width:clamp(7.6rem,12vw,12rem);aspect-ratio:1;display:flex;flex-direction:column;justify-content:center;align-items:center;background:var(--lime);border:1px solid var(--ink);border-radius:50%;font:800 clamp(.875rem,1.45vw,1.4rem)/1.05 var(--display);letter-spacing:-.035em;text-align:center;z-index:3}
.sticker em{font-style:normal;color:var(--blue)}
.hero-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:1.5rem;gap:1rem;font-size:.875rem}
.hero-bottom>p{line-height:1.3}
.mood-switch{border:0;padding:0;margin:0;gap:.45rem;align-items:center}
.mood-switch legend{float:left;padding:0;margin-right:.6rem;font-size:.875rem}
.mood-switch button{width:44px;height:44px;background:transparent;border:1px solid transparent;border-radius:50%;padding:6px;transition:transform .2s}
.mood-switch button:hover{transform:scale(1.12)}
.mood-switch button[aria-pressed="true"]{border-color:var(--ink)}
.mood-switch button span{display:block;width:100%;height:100%;border-radius:50%;border:1px solid rgba(0,0,0,.3)}
.swatch-pink{background:var(--pink)}.swatch-citrus{background:var(--lime)}.swatch-blue{background:var(--blue)}
.scroll-link{display:flex;gap:1.2rem;align-items:center}.scroll-link span{font-size:1.8rem}
.ticker{overflow:hidden;background:var(--blue);color:#fff;transform:rotate(-1.5deg) scale(1.015);border-block:1px solid var(--ink);margin:1rem 0;position:relative;z-index:5}
.ticker-track{width:max-content;display:flex;animation:marquee 24s linear infinite}
.ticker-track>span{white-space:nowrap;font:800 clamp(1.2rem,2.5vw,2.5rem)/1 var(--display);letter-spacing:-.035em;padding:1.1rem 0}
.ticker b{display:inline-block;color:var(--lime);padding:0 1.2rem}
.section{padding:clamp(4rem,8vw,8rem) var(--pad)}
.section-label{display:flex;align-items:center;justify-content:space-between;gap:1rem;font-size:.8125rem;letter-spacing:.025em;border-top:1px solid currentColor;padding-top:1rem;margin-bottom:clamp(2.4rem,4.2vw,4.5rem)}
.section-label>span:last-child:not(:first-child){text-align:right}
.what-grid{display:block;max-width:62rem}.what-copy{max-width:48rem}
.what-copy h2{font-size:clamp(4.5rem,10.5vw,10rem);line-height:.98;letter-spacing:-.075em;margin-bottom:1.8rem}
.what-copy h2 em{font-family:var(--display);font-weight:800;color:var(--blue);letter-spacing:-.1em}
.what-copy h3{font-size:clamp(1.5rem,2.4vw,2.5rem);letter-spacing:-.04em;line-height:1.15;margin-bottom:1.5rem}
.what-copy p{max-width:30rem;font-size:1.0625rem}.what-copy p+p{margin-top:1rem}
.pattern-play{padding:1.4rem;background:var(--lime);border:1px solid var(--ink);min-width:0}
.play-label{display:flex;justify-content:space-between;gap:1rem;font-size:.8125rem}.play-label>span:last-child{font-size:1.5rem;line-height:1}
.pattern-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;width:100%;aspect-ratio:1.15;margin:1.3rem 0;position:relative;isolation:isolate}
.pattern-static{grid-column:1/-1;place-self:center;font-size:clamp(2rem,4.5vw,5rem);letter-spacing:.09em;line-height:1.1}.pattern-static i{font-style:normal;color:var(--blue)}
.pattern-cell{border:0;padding:10%;background:transparent;min-width:0;position:relative;transition:transform .65s cubic-bezier(.34,1.56,.64,1);transform:translate(var(--dx,0px),var(--dy,0px)) rotate(var(--rot,0deg));z-index:1}
.pattern-cell:focus-visible{z-index:3}.pattern-cell>span{display:grid;place-items:center;width:100%;height:100%;aspect-ratio:1;border-radius:50%;background:var(--ink);font-size:clamp(1.25rem,3vw,3.5rem);color:var(--lime);transition:background .35s,border-radius .35s,transform .35s}
.pattern-cell:hover>span{transform:scale(.86)}
.pattern-cell.is-rogue>span{border-radius:8%;background:var(--blue);color:#fff;transform:rotate(-15deg)}
.is-broken .pattern-cell>span{background:var(--cell-color);border-radius:var(--cell-radius);color:var(--ink)}
.is-broken .pattern-cell.is-rogue>span{background:var(--ink);color:var(--lime)}
.play-controls{display:flex;justify-content:space-between;gap:1rem;align-items:center;flex-wrap:wrap}.play-controls .pill{gap:1.5rem}
.text-button{border:0;border-bottom:1px solid currentColor;background:none;padding:.7rem .1rem;min-height:44px;font-size:.875rem}
.play-status{font-size:.8125rem;margin-top:1rem;min-height:2.9em;max-width:30rem}
.approach{background:var(--blue);color:var(--paper);padding-bottom:4rem}
.approach .approach-intro em{color:#fff}
.approach-overview summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;cursor:pointer;list-style:none;min-height:48px;padding:.8rem 0;border-bottom:1px solid #ffffff80;font-weight:600}
.approach-overview summary::-webkit-details-marker{display:none}
.approach-overview summary span{font-size:1.8rem;transition:transform .3s}
.approach-overview[open] summary span{transform:rotate(45deg)}
.approach-overview p{padding-top:1rem}
.approach-intro{display:grid;grid-template-columns:1.6fr 1fr;gap:3rem;align-items:end;margin-bottom:3.5rem}
.approach-intro h2{font-size:clamp(2.8rem,6vw,6rem);letter-spacing:-.065em;line-height:1.03}
.approach-intro em{font-family:var(--display);font-weight:800;color:var(--pink);letter-spacing:-.06em}
.approach-intro p{font-size:1.0625rem;line-height:1.7}
.approach-row{color:var(--ink);margin-top:.8rem;border:1px solid var(--ink);position:relative}
.think-row{background:var(--pink)}.create-row{background:var(--lime)}.test-row{background:var(--blue);color:#fff}
.approach-row summary{list-style:none;display:grid;grid-template-columns:3rem 1.4fr 1fr 3rem;gap:1rem;align-items:center;padding:1.5rem 2rem;cursor:pointer}
.approach-row summary::-webkit-details-marker{display:none}
.row-number{font-size:.875rem;align-self:start;padding-top:.5rem}
.approach-row h3{font-size:clamp(3rem,6vw,6rem);line-height:1.1;letter-spacing:-.065em}
.row-intro{font-size:clamp(1rem,1.5vw,1.4rem);line-height:1.3}
.row-toggle{font:400 2.5rem/1 var(--display);width:48px;height:48px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;transition:transform .3s}
.approach-row[open] .row-toggle{transform:rotate(45deg)}
.approach-row summary:hover h3{transform:translateX(.08em)}
.approach-detail{display:grid;grid-template-columns:1.4fr 1fr;gap:3rem;margin:0 6rem;padding:1.5rem 0 2rem;border-top:1px solid currentColor}
.approach-detail p{font-size:1rem;max-width:30rem}
.detail-label{display:block;text-transform:uppercase;font-size:.75rem;letter-spacing:.06em;margin-bottom:.65rem}
.proof{background:var(--pink);color:var(--ink)}
.dma-evidence{display:grid;grid-template-columns:1fr 1.2fr;gap:clamp(2rem,6vw,6rem);align-items:center}.dma-number{font:800 clamp(7rem,23vw,23rem)/.85 var(--display);letter-spacing:-.09em}.dma-copy h2{font-size:clamp(2.4rem,4.4vw,4.8rem);line-height:1.02;letter-spacing:-.06em;margin-bottom:1.5rem}.dma-copy>p{font-size:clamp(1.125rem,1.8vw,1.5rem);max-width:36rem}.dma-copy .dma-context{font-size:.875rem;line-height:1.6;margin-top:1.5rem}.dma-copy>a{display:inline-block;font-weight:700;margin-top:1.5rem;text-decoration:underline;text-underline-offset:.3em;padding-block:.5rem}
.dma-number{display:flex;align-items:center;gap:.025em}
.dma-spin{display:inline-grid;place-items:center;flex:none;font:inherit;letter-spacing:0;line-height:1;width:.72em;height:.72em;padding:0;border:0;background:transparent;color:inherit;cursor:pointer}
.dma-spin>span{display:block;line-height:1;transform-origin:center}
.dma-spin:focus-visible{outline:3px solid currentColor;outline-offset:8px;border-radius:50%}
@media(max-width:760px){.dma-evidence{grid-template-columns:1fr;gap:2rem}.dma-number{font-size:44vw}}
.proof-head{display:grid;grid-template-columns:1.6fr 1fr;gap:3rem;align-items:end}
.proof-head h2{font-size:clamp(2.5rem,5.4vw,5.5rem);line-height:1.04;letter-spacing:-.065em}
.proof-head h2 em{font-style:normal;color:var(--blue)}
.proof-head>p{max-width:24rem;font-size:1.0625rem}
.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;margin:4rem 0 2rem;align-items:stretch}
.stat{padding:1.5rem;border:1px solid var(--ink);display:flex;flex-direction:column;transition:transform .3s;min-width:0}

.stat:hover,.stat:focus-visible{transform:translateY(-8px);}
.stat-pink{background:var(--pink)}.stat-lime{background:var(--lime)}.stat-blue{background:var(--blue);color:#fff}
.stat-heading{display:flex;justify-content:space-between;font-size:.8125rem;gap:.4rem}.stat-heading>span{font-size:1.5rem;line-height:1}
.stat strong{font:800 clamp(3rem,7.7vw,8rem)/1 var(--display);letter-spacing:-.08em;margin:2.5rem 0 1.3rem}.stat strong>span{font-size:.57em;letter-spacing:-.075em}
.stat p{font-size:1rem;max-width:20rem;margin-bottom:2.5rem}
.stat-source{font-size:.75rem;border-top:1px solid currentColor;padding-top:1rem;margin-top:auto}
.source-note{font-size:.8125rem;line-height:1.5;max-width:50rem;padding-top:1rem;color:#59595c}
.process{background:#fff}.process-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(2rem,6vw,6rem)}
.process-grid h2{font-size:clamp(3rem,6.9vw,7rem);line-height:1.02;letter-spacing:-.075em;position:sticky;top:2rem;align-self:start}
.process-grid h2 em{display:inline-block;background:var(--accent);color:var(--accent-ink);font-style:normal;padding:0 .08em .12em;margin-top:.15em}
.process ol{list-style:none;margin:0;padding:0}
.process li{display:grid;grid-template-columns:2.5rem 1fr;gap:1rem;padding:1.5rem 0 2rem;border-bottom:1px solid var(--line)}
.process li:first-child{padding-top:0}.process li>span{font-size:.8125rem}
.process h3{font-size:clamp(1.5rem,2vw,2rem);letter-spacing:-.04em;line-height:1.2;margin-bottom:1rem}.process li p{font-size:1rem;max-width:27rem}
.manifesto{display:grid;grid-template-columns:1fr 1fr;background:var(--blue);color:#fff;position:relative}
.manifesto-photo{position:relative;min-width:0;overflow:hidden;min-height:700px}
.manifesto-photo>img{width:100%;height:100%;object-fit:cover;object-position:56% center;position:absolute;inset:0;transition:transform 1s cubic-bezier(.2,.8,.2,1)}.manifesto-photo:hover>img{transform:scale(1.08)}
.photo-sticker{position:absolute;left:var(--pad);bottom:3rem;background:var(--lime);color:var(--ink);font:800 clamp(2.5rem,5vw,5rem)/.95 var(--display);padding:.25em .35em;letter-spacing:-.065em;}
.manifesto-copy{padding:4rem var(--pad) 4rem 3rem;align-self:center}.manifesto-copy .section-label{margin-bottom:2.5rem}
.manifesto-copy h2{font-size:clamp(2.4rem,4.6vw,5.5rem);letter-spacing:-.065em;line-height:1.1}
.manifesto-copy h2 em{color:var(--lime);font-family:var(--display);font-weight:800}
.manifesto-last{display:inline-block;background:var(--pink);color:var(--ink);margin-top:.25em;padding:0 .15em .13em;}.manifesto-copy>p{font-size:1rem;margin-top:2.5rem}
.contact{background:var(--accent);color:var(--accent-ink);transition:background .4s,color .4s}
.contact-top{display:flex;gap:2rem;justify-content:space-between;align-items:center;margin-bottom:3rem}
.contact h2{font-size:clamp(3rem,7.7vw,8rem);letter-spacing:-.075em;line-height:1.02}
.contact h2 em{font-family:var(--display);font-weight:800;letter-spacing:-.075em}
.contact-circle{width:clamp(7rem,13vw,13rem);flex:none;aspect-ratio:1;border-radius:50%;background:var(--ink);color:var(--paper);display:flex;flex-direction:column;align-items:center;justify-content:center;transition:transform .4s,background .3s}
.contact-circle span{font-size:1rem}.contact-circle b{font-size:clamp(2.5rem,5vw,4.5rem);line-height:1}
.contact-circle:hover{transform:scale(1.06);background:var(--paper);color:var(--ink)}
.email{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.2rem 0;border-bottom:2px solid currentColor;font:600 clamp(1.125rem,3vw,3rem)/1.3 var(--display);letter-spacing:-.04em}
.email span{transition:transform .3s}.email:hover span{transform:translate(5px,-5px)}
.contact-note{display:flex;justify-content:space-between;gap:1rem;margin-top:1.5rem;font-size:.875rem}
footer{background:var(--ink);color:var(--paper);padding:2.4rem var(--pad) 1.4rem;overflow:hidden}
.footer-word{display:flex;justify-content:flex-start;column-gap:.04em;align-items:center;font:800 clamp(4rem,17vw,18rem)/1 var(--display);letter-spacing:-.085em;padding-bottom:1.5rem}
.footer-word>span:not(.footer-star){display:inline-block;color:var(--accent);transition:transform .4s}
.footer-word:hover>span:not(.footer-star){transform:translateY(-.08em)}.footer-word .footer-star{margin-left:auto;font-size:.66em;color:var(--lime);letter-spacing:-.05em}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;font-size:.75rem;border-top:1px solid #555;padding-top:1rem}
.footer-legal{text-decoration:underline;text-underline-offset:.25em}.footer-legal:hover{color:var(--lime)}
.privacy-page{background:var(--paper)}.privacy-nav{border-bottom:1px solid var(--line)}.privacy-main{max-width:1160px;margin:0 auto;padding:clamp(3rem,7vw,7rem) var(--pad) clamp(5rem,10vw,10rem)}.privacy-hero{border-bottom:8px solid var(--pink);padding-bottom:clamp(2.5rem,6vw,5rem);margin-bottom:clamp(3rem,6vw,6rem)}.privacy-kicker{text-transform:uppercase;font-size:.8rem;letter-spacing:.08em;margin-bottom:1.5rem}.privacy-hero h1{font:800 clamp(4rem,10vw,9rem)/1 var(--display);letter-spacing:-.08em}.privacy-hero h1 span{color:var(--blue)}.privacy-date{margin-top:1.5rem;font-size:.875rem}.privacy-layout{display:grid;grid-template-columns:minmax(12rem,.38fr) minmax(0,1fr);gap:clamp(2.5rem,8vw,8rem);align-items:start}.privacy-summary{position:sticky;top:2rem;font:600 clamp(1.4rem,2.4vw,2rem)/1.25 var(--display);letter-spacing:-.035em}.privacy-content{max-width:48rem}.privacy-content section+section{margin-top:3rem;padding-top:3rem;border-top:1px solid var(--line)}.privacy-content h2{font:700 clamp(1.7rem,3vw,2.6rem)/1.1 var(--display);letter-spacing:-.045em;margin-bottom:1.2rem}.privacy-content h3{font:700 1.15rem/1.2 var(--display);margin:1.5rem 0 .6rem}.privacy-content p+p{margin-top:1rem}.privacy-content ul{padding-left:1.25rem}.privacy-content li+li{margin-top:.45rem}.privacy-content a{text-decoration:underline;text-underline-offset:.2em}.privacy-back{display:inline-flex;margin-top:2rem;font-weight:700}.privacy-footer{padding-top:1.4rem}.privacy-footer .footer-bottom{border-top:0}
@media(max-width:760px){.privacy-layout{grid-template-columns:1fr}.privacy-summary{position:static}.privacy-nav .logo-name{display:block}.privacy-main{padding-top:2.5rem}.privacy-hero h1{font-size:18vw}}
.motion-toggle{border:1px solid #777;background:none;border-radius:0;min-height:44px;padding:.5rem .8rem;gap:.7rem;align-items:center;white-space:nowrap}.motion-toggle:hover{background:var(--lime);color:var(--ink)}
.motion-toggle{position:fixed;bottom:1rem;right:1rem;z-index:90;background:var(--paper);color:var(--ink);font-size:.75rem}.motion-toggle:disabled{cursor:default}.footer-bottom{padding-bottom:3rem}
.reveal{opacity:1}.reveal-pending{opacity:0;transform:translateY(25px);transition:opacity .65s ease,transform .65s cubic-bezier(.16,1,.3,1)}.reveal.in{opacity:1;transform:translateY(0)}
.pattern-play.reveal.in{}

.stat.reveal.in:hover,.stat.reveal.in:focus-visible{transform:translateY(-8px)}
@keyframes marquee{to{transform:translateX(-50%)}}
@keyframes asterisk-turn{to{transform:rotate(360deg)}}
@keyframes paint-drift{to{transform:scale(1.08) translateY(-2%)}}
html[data-motion="off"] *,html[data-motion="off"] *:before,html[data-motion="off"] *:after{animation-play-state:paused!important;scroll-behavior:auto!important;transition:none!important}
html[data-motion="off"]{scroll-behavior:auto}
html[data-motion="off"] .reveal{opacity:1}
@media(min-width:1700px){.hero-grid{max-width:1550px;margin-inline:auto}.hero-visual{min-height:630px}.hero-bottom{margin-top:1.5rem}}
@media(max-width:1050px){
 .nav-descriptor{display:none}.nav nav{gap:1.2rem}.agency-masthead{font-size:9.3vw}.hero-grid{grid-template-columns:.85fr 1.15fr;margin-top:2.2rem}.hero-visual{min-height:400px}.hero-copy>p{max-width:22rem}
 .portrait-poster{inset:1.5rem .5rem 4rem 0}.poster-word{font-size:3.8vw}.sticker{right:-.5rem}.hero-bottom{flex-wrap:wrap}.hero-bottom>p{display:none}
 .approach-row summary{grid-template-columns:2rem 1.2fr 1fr 3rem;padding:1.3rem}.approach-detail{margin-inline:4.3rem;gap:2rem}.manifesto-photo{min-height:600px}.manifesto-copy{padding:3rem 2rem}.stats{gap:1rem}.stat{padding:1.2rem}
}
@media(max-width:760px){
 .nav{min-height:86px;padding-block:1rem}.nav nav>a:not(.pill){display:none}.nav .pill{min-height:46px;padding:.6rem 1rem;gap:1rem}.logo-name{display:none}.logo-orbit{width:2.65rem;height:2.65rem}.logo-orbit b{font-size:1.35rem}
 .hero-meta{font-size:.75rem;gap:1rem}.hero-meta>span:last-child{display:none}.agency-masthead{display:grid;justify-content:start;gap:0;font-size:21vw;line-height:.7;white-space:normal;margin:1.6rem 0 2.1rem;border-bottom-width:6px;padding-bottom:.22em}.agency-masthead span:nth-child(2){margin-left:.48em}.agency-masthead span:nth-child(3){margin-left:.12em}.hero-grid{grid-template-columns:1fr;margin-top:0;gap:1rem;padding-bottom:1rem}
 .hero h1{max-width:100%}.hero-proposition{font-size:12.5vw;max-width:9ch}.hero-copy>p{max-width:32rem;margin:1.35rem 0}
 .hero-visual{min-height:0;height:78vw;max-height:470px;margin:2rem .45rem 1rem 0}.portrait-poster{inset:0}.poster-word{font-size:9vw}
 .sticker{width:29vw;font-size:3.5vw;right:-1.1rem;bottom:0}.hero-bottom{padding-top:1rem;gap:.5rem}.mood-switch{flex-wrap:wrap}.mood-switch legend{font-size:.75rem;margin-right:.2rem}.mood-switch button{width:44px;height:44px}
 .scroll-link{font-size:.75rem;gap:.5rem}.scroll-link span{font-size:1.3rem}.ticker-track>span{font-size:1.15rem}.ticker b{padding-inline:.7rem}
 .section-label{font-size:.75rem}.section-label>span:last-child:not(:first-child){max-width:40%}
 .what-grid{grid-template-columns:1fr;gap:2.8rem}.what-copy h2{font-size:23vw}.what-copy h3{font-size:1.9rem}.pattern-play{margin-right:.5rem}.pattern-cell>span{font-size:7vw}
 .approach-intro{grid-template-columns:1fr;gap:1.4rem}.approach-intro h2{font-size:10.8vw}.approach-intro p{font-size:1rem}
 .approach-row summary{grid-template-columns:1.3rem 1fr 2.8rem;gap:.6rem;padding:1.1rem}.approach-row h3{font-size:12vw}.row-intro{display:none}.row-toggle{width:40px;height:40px;font-size:2rem}.approach-detail{grid-template-columns:1fr;gap:1.4rem;margin-inline:1.1rem;padding-top:1.2rem}
 .proof-head{grid-template-columns:1fr;gap:1.5rem}.proof-head h2{font-size:10.5vw}.stats{grid-template-columns:1fr;gap:1.4rem;margin-top:3rem}.stat{padding:1.5rem}.stat strong{font-size:5.5rem;margin:1.5rem 0 1rem}.stat p{max-width:100%;margin-bottom:1.5rem}
 .process-grid{grid-template-columns:1fr;gap:2rem}.process-grid h2{position:static;font-size:16vw}.process li{padding-block:1.5rem}
 .manifesto{grid-template-columns:1fr}.manifesto-photo{min-height:0;height:105vw;max-height:600px}.manifesto-copy{padding:3rem var(--pad)}.manifesto-copy h2{font-size:13vw}.photo-sticker{font-size:12vw}
 .contact-top{align-items:flex-start;gap:1rem;flex-direction:column}.contact h2{font-size:13vw}.contact-circle{align-self:flex-end;width:6.5rem;margin-top:-.4rem}.contact-circle span{font-size:.875rem}
 .contact-note{flex-direction:column;gap:.25rem;font-size:.8125rem}.email{font-size:clamp(.9375rem,4.6vw,1.6rem)}
 .footer-bottom{flex-wrap:wrap;gap:.8rem 1rem}.footer-bottom>p:first-child{width:100%}.footer-bottom .motion-toggle{margin-left:auto}.footer-word{font-size:16.8vw;padding-bottom:1rem}
}
.agency-masthead span:nth-child(2),.agency-masthead span:nth-child(3){color:var(--ink)}
.agency-masthead{border-bottom:1px solid var(--line);padding-bottom:.24em;margin-top:1.1rem}
.hero-grid{padding-bottom:1.5rem}.portrait-poster{transform:none;border:0;}.portrait-poster:after{display:none}
.what-if{border-top:1px solid var(--line)}.what-copy{display:grid;grid-template-columns:.8fr 1.2fr;gap:1.2rem 3rem;max-width:none}.what-grid{max-width:none}.what-copy h2{grid-row:1/4;margin:0}.what-copy h3{margin:0}.what-copy p+p{margin:0}
@media(max-width:760px){.what-copy{display:block}.what-copy h2{margin-bottom:2rem}.what-copy h3{margin-bottom:1.3rem}.what-copy p+p{margin-top:1rem}}
/* Pink opening: one confident colour field, followed by quieter editorial space. */
body:not(.privacy-page)>.nav,.hero{background:var(--pink)}
.hero{padding-bottom:3.5rem}
.agency-masthead{border:0;line-height:.94;padding-bottom:0;margin-block:1.3rem 2.5rem;letter-spacing:-.075em}
.hero-grid{grid-template-columns:.85fr 1.15fr;gap:clamp(2rem,6vw,7rem);margin-top:0;align-items:center}
.hero-proposition{font-size:clamp(2.6rem,4.7vw,5.6rem);letter-spacing:-.055em!important;line-height:1.02!important}
.hero-proposition .full-stop{color:var(--ink)}
.hero-copy>p{max-width:23rem;margin-block:1.7rem 2rem;font-size:1.125rem}
.hero-visual{min-height:clamp(340px,34vw,560px)}
.portrait-poster{border-radius:48% 48% 0 0;overflow:hidden}
.portrait-poster>img{object-position:50% 48%}
.hero .hero-cta{background:var(--ink);color:#fff}.hero .hero-cta:hover{background:var(--lime);color:var(--ink)}
.what-if{background:#fff;border-top:0}.what-copy h2 em{color:var(--pink)}
.approach-intro h2 em{font-family:var(--display);font-style:normal;font-weight:700}
.create-row{background:var(--paper)}.test-row{background:var(--lime);color:var(--ink)}
.hero-meta{animation:hero-arrive .65s ease both}.agency-masthead{animation:hero-arrive .8s .08s ease both}.hero-copy{animation:hero-arrive .8s .18s ease both}.hero-visual{animation:hero-arrive 1s .28s ease both}
@keyframes hero-arrive{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@media(max-width:760px){.hero{padding-bottom:2rem}.hero-meta>span:last-child{display:block}.agency-masthead{display:block;font-size:18vw;line-height:.92;margin-block:1.5rem 2rem}.agency-masthead span{display:block}.agency-masthead span:nth-child(2),.agency-masthead span:nth-child(3){margin-left:0}.agency-masthead span:first-child{font-size:.5em;margin-bottom:.12em}.hero-grid{grid-template-columns:1fr;gap:1rem}.hero-proposition{font-size:10.5vw;max-width:100%}.hero-visual{min-height:0;height:90vw;margin:1.5rem 0 0}.hero-copy>p{font-size:1rem;margin-block:1.2rem 1.5rem}.portrait-poster{border-radius:45% 45% 0 0}}
/* The footer wordmark becomes the opening identity. */
body:not(.privacy-page)>.nav,.hero{background:var(--ink);color:#fff}
body:not(.privacy-page)>.nav{border-color:#444}
body:not(.privacy-page)>.nav .pill{background:#fff;color:var(--ink)}
.agency-masthead.rogue-opening{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:2rem 0 3rem;line-height:1;letter-spacing:0;border:0}
.rogue-opening .opening-the,.rogue-opening .opening-agency{font:600 .875rem/1 var(--display);letter-spacing:.22em;color:#fff;margin:0;display:block}
.opening-the{grid-column:1}.rogue-opening .opening-agency{grid-column:2;grid-row:3;text-align:right}
.opening-word{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;font:800 clamp(5rem,25vw,32rem)/.92 var(--display);letter-spacing:-.085em;padding:.045em .04em .085em 0}
.opening-word>span{color:#fff!important;display:block;margin:0!important}
.opening-word>.opening-g{color:var(--pink)!important;transform:rotate(-12deg);padding-inline:.025em}
.hero-proposition .full-stop{color:var(--pink)}.hero .hero-cta{background:var(--pink);color:var(--ink);border-color:var(--pink)}
.hero-grid{border-top:1px solid #454549;padding-top:2.6rem}.hero-copy>p{color:#ddd}
.hero-visual{min-height:clamp(280px,26vw,430px)}.portrait-poster{border-radius:0}
@media(max-width:760px){.agency-masthead.rogue-opening{margin:1.5rem 0 2rem}.rogue-opening .opening-the,.rogue-opening .opening-agency{font-size:.75rem}.opening-word{font-size:25vw;padding-block:.15em}.hero-grid{padding-top:2rem}.hero-visual{min-height:0;height:70vw}.hero .hero-meta{font-size:.7rem}}
.agency-masthead.rogue-opening>.opening-the,.agency-masthead.rogue-opening>.opening-agency{font:800 clamp(2rem,4.5vw,5rem)/1 var(--display);letter-spacing:.02em;color:#fff;opacity:1;visibility:visible;margin:0}
.opening-word>span:first-child{font-size:inherit;margin:0}
.opening-word>.opening-g{animation:rogue-g-rock 6s ease-in-out infinite;transform-origin:50% 58%}
@keyframes rogue-g-rock{0%,100%{transform:rotate(-12deg)}50%{transform:rotate(12deg)}}
.opening-word>.opening-g.g-driven{animation:none;transition:none;will-change:transform}
.logo-lockup>.logo-orbit{background:transparent;color:var(--pink)!important}
.logo-orbit:before,.logo-orbit:after{border:2px solid var(--blue);opacity:1}
.logo-orbit b{font-size:1.9rem;color:var(--pink)}.logo-orbit i{background:var(--blue)}
@media(max-width:760px){.agency-masthead.rogue-opening>.opening-the,.agency-masthead.rogue-opening>.opening-agency{font-size:2rem;letter-spacing:.02em}.opening-word>span:first-child{font-size:inherit}.logo-orbit b{font-size:1.7rem}}
.what-copy h2 em,.manifesto-copy h2 em{font-family:var(--display);font-weight:800;font-style:normal;letter-spacing:inherit}
.manifesto{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:clamp(2rem,5vw,5rem);padding:clamp(3rem,6vw,6rem) var(--pad);align-items:center}
.manifesto-photo{min-height:0;height:clamp(280px,32vw,440px);width:100%;max-width:440px;justify-self:center}
.manifesto-copy{padding:0}.manifesto-copy h2{font-size:clamp(2.4rem,4.6vw,5.5rem)}
.photo-sticker{left:1.25rem;bottom:1.25rem;font-size:clamp(1.5rem,2.7vw,2.5rem);}
@media(max-width:760px){.manifesto{grid-template-columns:1fr;gap:2.5rem}.manifesto-photo{height:65vw;max-height:300px;max-width:360px}.manifesto-copy{padding:0}.manifesto-copy h2{font-size:11vw}.photo-sticker{font-size:1.75rem}}
/* White-on-pink surfaces retain contrast for smaller copy. */
:root{--pink-surface:#c91450}
.proof,.think-row,.manifesto-last,.stat-pink{background:var(--pink-surface);color:#fff}
html[data-mood="pink"] .contact,html[data-mood="pink"] .process-grid h2 em{background:var(--pink-surface);color:#fff}
.hero .hero-cta{background:var(--pink-surface);border-color:var(--pink-surface);color:#fff}
html[data-mood="pink"] .pill-dark:hover{background:var(--pink-surface);color:#fff}
.proof a:focus-visible,.think-row summary:focus-visible,.contact a:focus-visible{outline-color:currentColor}
/* Movement stays within the image frame; the words remain still and readable. */
.question-art{position:relative;width:100%;aspect-ratio:440/490;max-width:480px;justify-self:center}
.question-art>.question-fill{position:absolute;inset:0;width:100%;height:100%;max-width:none;max-height:none;min-height:0;-webkit-mask:url("assets/question-mask.svg") center/100% 100% no-repeat;mask:url("assets/question-mask.svg") center/100% 100% no-repeat}
.question-art>.question-dot{position:absolute;left:50%;top:86.735%;transform:translate(-50%,-50%);width:17%;height:auto;aspect-ratio:1;background:transparent;}
.question-dot b{font-size:clamp(2rem,4vw,3.8rem);letter-spacing:-.08em;padding-right:.08em}
.question-dot:before,.question-dot:after{content:"";display:block;border:4px solid #fff;border-radius:50%;opacity:1;z-index:1}
.question-dot:before{inset:-10% -30%;transform:rotate(-17deg)}.question-dot:after{inset:-27% -11%;transform:rotate(29deg)}
.question-dot:before{animation:logo-ring-one 24s linear infinite}
.question-dot:after{animation:logo-ring-two 32s linear infinite}
.question-art>.question-fill{transform-origin:50% 78%;animation:question-rock 7s ease-in-out infinite}
@keyframes question-rock{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}
html[data-motion="off"] .question-art>.question-fill,html[data-motion="off"] .question-dot:before,html[data-motion="off"] .question-dot:after{animation-play-state:paused}
.question-dot i{width:8%;height:8%;right:-22%;top:0;background:#fff}
@media(max-width:760px){.question-art{width:82%;max-width:360px}.question-dot b{font-size:clamp(1.5rem,8vw,3rem)}}
.portrait-poster,.manifesto-photo{overflow:hidden}
html[data-motion="on"] .portrait-poster>img,html[data-motion="on"] .manifesto-photo>img{transform:translate3d(0,var(--parallax-y,0px),0) scale(1.14);transition:none}
.logo-orbit:before,.logo-orbit:after{transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.nav .logo-orbit:before,.footer-orbit-link .logo-orbit:before{animation:logo-ring-one 24s linear infinite}
.nav .logo-orbit:after,.footer-orbit-link .logo-orbit:after{animation:logo-ring-two 32s linear infinite}
.footer-orbit-link{display:flex;align-items:center;justify-content:center;gap:1.6rem;width:fit-content;margin:1rem auto 2.5rem;padding:1.5rem 1rem}
.footer-orbit-link .logo-orbit{width:6rem;height:6rem;background:transparent}
.footer-orbit-link .logo-orbit b{font:800 3.75rem/1 var(--display);letter-spacing:-.08em}
.footer-orbit-link .logo-orbit:before,.footer-orbit-link .logo-orbit:after{border-width:3px}
.footer-orbit-link .logo-orbit i{width:.65rem;height:.65rem}
.footer-orbit-link .logo-name{display:block;font:800 1.5rem/1 var(--display);letter-spacing:.15em;color:#fff}
@keyframes logo-ring-one{from{transform:rotate(-17deg)}to{transform:rotate(343deg)}}
@keyframes logo-ring-two{from{transform:rotate(29deg)}to{transform:rotate(-331deg)}}
html[data-motion="off"] .nav .logo-orbit:before,html[data-motion="off"] .nav .logo-orbit:after{animation-play-state:paused}
.logo-lockup:hover .logo-orbit:before,.logo-lockup:focus-visible .logo-orbit:before{transform:rotate(55deg)}
.logo-lockup:hover .logo-orbit:after,.logo-lockup:focus-visible .logo-orbit:after{transform:rotate(-55deg)}
.approach-row summary h3{transition:transform .35s ease}
.approach-row summary:hover h3,.approach-row summary:focus-visible h3{transform:translateX(.08em)}
html[data-motion="off"] .portrait-poster>img,html[data-motion="off"] .manifesto-photo>img{transform:none}
html[data-motion="off"] .logo-orbit:before,html[data-motion="off"] .logo-orbit:after,html[data-motion="off"] .approach-row summary h3{transition:none}
/* A single typographic voice; colour and scale provide the emphasis. */
.hero-proposition>span:not(.full-stop){color:inherit}
.what-copy h2,.approach-intro h2,.process-grid h2,.manifesto-copy h2,.contact h2{font-weight:800;letter-spacing:-.055em}
.what-copy h2 em,.approach-intro h2 em,.process-grid h2 em,.manifesto-copy h2 em,.contact h2 em{font-family:var(--display);font-style:normal;font-weight:800;letter-spacing:inherit}
.approach-row h3{font-weight:800;letter-spacing:-.055em}
@media(min-width:761px){
 .approach-rows{display:flex;align-items:stretch;gap:.75rem}
 .approach-rows .approach-row{flex:1 1 0;min-width:0;margin:0;border:0;transition:flex-grow .55s cubic-bezier(.2,.8,.2,1)}
 .approach-rows .approach-row[open]{flex-grow:1.35}
 .approach-rows .approach-row summary{display:flex;flex-direction:column;align-items:flex-start;gap:1.5rem;padding:clamp(1.25rem,2.5vw,3rem);min-height:23rem}
 .approach-rows .row-number{padding:0}
 .approach-rows .approach-row h3{font-size:clamp(2.6rem,4.5vw,5.5rem);white-space:nowrap}
 .approach-rows .row-intro{font-size:clamp(1rem,1.5vw,1.4rem)}
 .approach-rows .row-toggle{margin-top:auto;flex-shrink:0}
 .approach-rows .approach-detail{display:grid;grid-template-columns:1fr;gap:1.2rem;margin:0 clamp(1.25rem,2.5vw,3rem);padding:1.5rem 0 2rem}
 .approach-rows .approach-detail p{font-size:1rem;line-height:1.6}
}
/* Each stage has its own typographic response, without moving the reading copy. */
.approach-row summary{position:relative;overflow:hidden}
.approach-row summary:after{content:"";position:absolute;bottom:0;left:0;height:4px;width:100%;background:currentColor;transform:scaleX(0);transform-origin:left;opacity:.45;transition:transform .55s ease;pointer-events:none}
.approach-row summary:is(:hover,:focus-visible):after,.approach-row[open] summary:after{transform:scaleX(1)}
.approach-row summary:focus-visible{outline:3px solid currentColor;outline-offset:-7px}
.approach-row .row-toggle{transition:transform .45s cubic-bezier(.2,.8,.2,1),background .3s,color .3s}
.approach-row summary:is(:hover,:focus-visible) .row-toggle{background:var(--ink);color:#fff}
.think-row summary:is(:hover,:focus-visible) .row-toggle{background:#fff;color:var(--pink-surface)}
.approach-row h3>span{display:inline-block;transform-origin:50% 85%}
.think-row[open] h3>span{animation:thinking-dot 2.4s ease-in-out 2}
.create-row[open] h3>span{animation:creative-dot 1.2s cubic-bezier(.2,.8,.2,1) 2;color:var(--pink)}
.test-row[open] h3>span{animation:testing-dot 1.8s ease-in-out 2}
.approach-row[open] .approach-detail{animation:approach-enter .45s ease-out both}
@keyframes thinking-dot{0%,100%{transform:translateY(0)}50%{transform:translateY(-.18em)}}
@keyframes creative-dot{0%,100%{transform:scale(1)}45%{transform:scale(1.8) rotate(15deg)}70%{transform:scale(.85)}}
@keyframes testing-dot{0%,100%{transform:translateX(0)}35%{transform:translateX(.2em)}65%{transform:translateX(-.08em)}}
@keyframes approach-enter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){.approach-row .row-intro{display:block;grid-column:2;grid-row:2;font-size:.875rem;line-height:1.4}.approach-row .row-intro br{display:none}.approach-row .row-toggle{grid-column:3;grid-row:1/3}.approach-row .row-number{grid-row:1}.approach-row summary h3{grid-column:2;grid-row:1}}
.process-grid h2 em{padding:.04em .12em .12em;margin-top:.12em}
.manifesto-last{padding:.04em .15em .12em}
.contact-circle{border:1px solid currentColor}
.logo-lockup>.logo-orbit{border:0}
@media(max-width:760px){.contact h2{font-size:12vw;line-height:1.07}.process-grid h2{font-size:14vw;line-height:1.05}.what-copy h2{line-height:1.04}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1!important;transform:none!important}.portrait-poster>img,.manifesto-photo>img{transform:none!important}}
.opening-word>.opening-g.g-driven{animation:b-impatient-g 7s ease-in-out infinite}
.opening-tail{white-space:nowrap}
.opening-word>.opening-head,.opening-word>.opening-tail{display:flex;gap:.01em;letter-spacing:-.04em;white-space:nowrap}
.opening-head>span{display:inline-block!important;font-size:inherit!important;color:#fff!important;margin:0!important}
.opening-tail>span{display:inline-block!important;font-size:inherit!important;color:#fff!important;margin:0!important}
.opening-u{animation:b-nudged-u 7s ease-in-out infinite;transform-origin:50% 90%}
@keyframes b-impatient-g{
 0%,100%{transform:translateX(0) rotate(-8deg)}
 16%{transform:translateX(0) rotate(4deg)}
 23%{transform:translateX(-.008em) rotate(-5deg)}
 27%{transform:translateX(.008em) rotate(2deg)}
 31%{transform:translateX(-.012em) rotate(-6deg)}
 35%{transform:translateX(.008em) rotate(1deg)}
 40%{transform:translateX(-.035em) rotate(-12deg)}
 49%{transform:translateX(.15em) rotate(10deg)}
 56%{transform:translateX(.11em) rotate(6deg)}
 70%{transform:translateX(0) rotate(-5deg)}
 85%{transform:translateX(0) rotate(5deg)}
}
@keyframes b-nudged-u{
 0%,44%,78%,100%{transform:translateX(0) rotate(0)}
 51%{transform:translateX(.055em) rotate(3deg)}
 59%{transform:translateX(.025em) rotate(-1.5deg)}
 67%{transform:translateX(.008em) rotate(.7deg)}
}
:root .home-film{width:100%;padding:0;margin:0;background:#000}
.footer-bottom .company-disclosure{font-size:.75rem;line-height:1.5;max-width:40rem;font-weight:400}
.working-play .partnership-title{font-size:clamp(2rem,3.7vw,4rem);line-height:1.1;letter-spacing:-.05em;margin:0 0 2rem}.partnership-title em{font-style:normal;color:#fff}
.lean-intro{max-width:60rem;margin:0 0 2.5rem}
.lean-intro h3{font-size:clamp(1.8rem,3vw,3rem);line-height:1.1;color:var(--pink);margin-bottom:1.25rem}
.lean-intro p{font-size:1rem;line-height:1.7;max-width:46rem;margin-top:1rem}
.project-invite{font-size:1rem;line-height:1.6;margin-top:1.5rem;max-width:40rem}
.hero-copy .lean-promise{border-left:3px solid var(--pink);padding-left:1rem;font-size:1rem;line-height:1.6}
.partnership-manifesto{display:grid;grid-template-columns:1fr 1fr;column-gap:clamp(2rem,7vw,7rem);row-gap:2.5rem}
.partnership-line{display:flex;flex-direction:column;align-items:start;gap:1rem;border-top:1px solid #45454d;padding:1.5rem 0 0;position:relative}
.partnership-line:before{content:"";position:absolute;top:-2px;left:0;width:3rem;height:3px;background:var(--pink)}
.partnership-line:nth-child(even):before{background:var(--lime)}
.working-play .partnership-line h3{font-size:1.125rem;font-weight:500;letter-spacing:0;line-height:1.4;margin:0;max-width:none;min-height:7rem}
.partnership-line h3 em{font-family:var(--display);font-size:clamp(2rem,3.3vw,3.5rem);line-height:1.12;letter-spacing:-.04em;font-style:normal;font-weight:800;color:var(--pink);display:block;margin-top:.3rem;transition:transform .4s ease}
.partnership-line:nth-child(even) h3 em{color:var(--lime)}
.partnership-line:hover h3 em{transform:translateX(.04em)}
.partnership-manifesto .partnership-line{--card-accent:var(--pink);padding:1.5rem;isolation:isolate;transition:background .4s,border-color .4s;cursor:default}
.partnership-manifesto .partnership-line:nth-child(even){--card-accent:var(--lime)}
.partnership-manifesto .partnership-line:before{background:var(--card-accent);transition:width .6s cubic-bezier(.2,.8,.2,1)}
.partnership-line:is(:hover,:focus-within,.is-active){background:#202027;border-color:var(--card-accent)}
.partnership-line:is(:hover,:focus-within,.is-active):before{width:100%}
.partnership-line.is-active h3 em{transform:translateX(.08em) rotate(-2deg);transform-origin:left center}
.partnership-line:nth-child(even).is-active h3 em{transform:translateX(.08em) rotate(1deg)}
.partnership-pick{display:flex;align-items:center;justify-content:space-between;gap:1rem;width:100%;margin-top:auto;padding:.8rem 0 0;background:none;border:0;border-top:1px solid #45454d;color:#fff;font:600 .875rem/1.4 var(--display);text-align:left;cursor:pointer}
.partnership-pick span{display:grid;place-items:center;width:2rem;height:2rem;border:1px solid var(--card-accent);border-radius:50%;color:var(--card-accent);font-size:1.3rem;transition:transform .4s,background .4s}
.partnership-pick[aria-expanded="true"] span{background:var(--card-accent);color:var(--ink);transform:rotate(360deg)}
.partnership-manifesto{align-items:start}
.partnership-line>p[hidden]{display:none}
.partnership-line.is-active>p{animation:approach-enter .35s ease-out}
.partnership-pick:focus-visible{outline:2px solid var(--card-accent);outline-offset:5px}
.partnership-line>p{font-size:clamp(1rem,1.2vw,1.125rem);line-height:1.6;max-width:36rem;color:#efeff2}
html[data-motion="off"] .partnership-line h3 em{transition:none}
@media(max-width:760px){.partnership-manifesto{grid-template-columns:1fr;gap:2rem}.working-play .partnership-line h3{min-height:0;font-size:1.125rem}.partnership-line h3 em{font-size:clamp(2rem,7vw,3rem)}}
.dma-copy>p,.dma-copy .dma-context,.dma-copy .creative-belief{font-size:.875rem;font-weight:400;line-height:1.65;margin:0;max-width:36rem}
.dma-copy>p+p{margin-top:1rem}
.working-orbit-layout{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}
.working-orbit-copy h2{font-size:clamp(2.4rem,4.2vw,4.7rem);line-height:1.08;letter-spacing:-.055em}.working-orbit-copy h2 em{color:var(--pink);font-style:normal}
.orbit-explanation{margin-top:2rem;min-height:13rem;max-width:32rem}.orbit-explanation h3{font-size:1.5rem;color:var(--lime);margin-bottom:.8rem}.orbit-explanation p{font-size:1.125rem;line-height:1.6}.orbit-hint{font-size:.875rem;color:#c8c8ce}
.philosophy-wheel{position:relative;width:100%;max-width:480px;aspect-ratio:1;margin:auto;--travel:33%;--node:30%}
.philosophy-wheel:before{content:"";position:absolute;inset:17%;border:1px solid #777;border-radius:50%;transition:transform 1.2s ease,opacity 1.2s}
.wheel-centre{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:27%;aspect-ratio:1;border-radius:50%;display:grid;place-content:center;text-align:center;background:var(--pink);color:var(--ink);font:800 clamp(1rem,1.8vw,1.4rem)/1.2 var(--display)}
.wheel-node{position:absolute;left:50%;top:50%;width:var(--node);aspect-ratio:1;border-radius:50%;border:2px solid #fff;background:var(--blue);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:.5rem;font-size:clamp(.875rem,1.1vw,1rem);line-height:1.15;transition:transform 1.1s cubic-bezier(.2,.8,.2,1),background .25s,color .25s,opacity .8s}
.wheel-node strong{font:800 clamp(1rem,1.8vw,1.45rem)/1.1 var(--display);margin-top:.25rem}.wheel-node:nth-of-type(1){--x:0%;--y:-110%}.wheel-node:nth-of-type(2){--x:110%;--y:0%}.wheel-node:nth-of-type(3){--x:0%;--y:110%}.wheel-node:nth-of-type(4){--x:-110%;--y:0%}
.wheel-node{transform:translate(-50%,-50%) translate(var(--x),var(--y))}.wheel-node[aria-pressed="true"],.wheel-node:hover{background:var(--lime);color:var(--ink);border-color:var(--lime)}
.js .philosophy-wheel:not(.opened) .wheel-node{transform:translate(-50%,-50%) scale(.3);opacity:0}.js .philosophy-wheel:not(.opened):before{transform:scale(.1);opacity:0}
html[data-motion="off"] .philosophy-wheel *{transition:none}.creative-belief strong{display:block;margin-bottom:.6rem}
@media(max-width:900px){.working-orbit-layout{grid-template-columns:1fr;gap:1.5rem}.working-orbit-copy{display:contents}.working-orbit-copy h2{grid-row:1}.philosophy-wheel{grid-row:2;max-width:420px}.orbit-explanation{grid-row:3;min-height:0;margin:0}.orbit-hint{grid-row:4}.wheel-node strong{font-size:clamp(.95rem,4vw,1.4rem)}}
@media(prefers-reduced-motion:reduce){.js .philosophy-wheel:not(.opened) .wheel-node{transform:translate(-50%,-50%) translate(var(--x),var(--y));opacity:1}.js .philosophy-wheel:not(.opened):before{transform:none;opacity:1}}
.working-play{background:var(--ink);color:#fff}
.working-title{font-size:clamp(2.8rem,7.8vw,8rem);line-height:1.06;letter-spacing:-.06em;margin-bottom:3.5rem}
.working-title em{display:inline-block;color:var(--pink);font-style:normal}
.working-panels{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;align-items:start}
.working-play .working-panels{display:block}
.working-statement{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(2rem,5vw,6rem);padding:clamp(2rem,5vw,5rem);margin:0 0 1.3rem;background:var(--blue);color:#fff}
.working-statement:nth-child(even){background:#c91450}
.working-statement h3{font-size:clamp(1.4rem,2.4vw,2.5rem);line-height:1.2;letter-spacing:-.04em;margin:0}
.working-statement h3 em{display:inline-block;font-style:normal;font-size:clamp(2.4rem,5.5vw,6rem);line-height:1.08;letter-spacing:-.055em;background:var(--lime);color:var(--ink);padding:.04em .13em .12em;margin:.15em 0;transform:rotate(-2deg);transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.working-statement:nth-child(even) h3 em{transform:rotate(2deg)}
.working-statement:first-child h3 em{font-size:clamp(5rem,11vw,12rem)}
.working-statement:hover h3 em{transform:rotate(0) translateX(.04em)}
.working-statement>p{font-size:clamp(1.125rem,1.6vw,1.5rem);line-height:1.6;max-width:34rem}
html[data-motion="off"] .working-statement h3 em{transition:none}
@media(max-width:760px){.working-play .working-statement{grid-template-columns:1fr;gap:1.5rem;padding:1.5rem}.working-statement h3 em{font-size:clamp(2rem,8vw,4rem)}.working-statement:first-child h3 em{font-size:clamp(5rem,23vw,9rem)}}
.working-panel{--panel-color:var(--blue);background:#222228;border:1px solid #555;transition:background .35s,border-color .35s;overflow:hidden}
.working-panel:nth-child(2),.working-panel:nth-child(3){--panel-color:#c91450}
.working-panel[open],.working-panel:hover,.working-panel:focus-within{background:var(--panel-color);border-color:transparent}
.working-panel summary{position:relative;list-style:none;cursor:pointer;padding:2rem;min-height:19rem;display:flex;flex-direction:column;justify-content:space-between;gap:2rem}
.working-panel summary::-webkit-details-marker{display:none}
.working-panel .working-number{font:800 clamp(4rem,8vw,8rem)/1 var(--display);letter-spacing:-.08em;color:var(--pink);transition:transform .5s,color .3s;transform-origin:10% 80%}
.working-panel[open] .working-number,.working-panel:hover .working-number{color:#fff;transform:rotate(-8deg) translateX(.04em)}
.working-panel h3{font-size:clamp(1.8rem,3.4vw,3.7rem);line-height:1.08;margin:0;letter-spacing:-.05em}
.working-panel h3{font-size:clamp(1.5rem,2.4vw,2.6rem);line-height:1.25}
.working-panel h3 em{display:inline-block;font-style:normal;font-size:1.45em;line-height:1.08;letter-spacing:-.045em;color:var(--ink);background:var(--lime);padding:.04em .12em .12em;margin:.12em 0;transform:rotate(-2deg);transition:transform .45s cubic-bezier(.2,.8,.2,1)}
.working-panel:first-child h3 em{font-size:2.5em}
.working-panel:nth-child(even) h3 em{transform:rotate(2deg)}
.working-panel:hover h3 em,.working-panel:focus-within h3 em,.working-panel[open] h3 em{transform:rotate(0deg) translateX(.06em)}
.working-panel summary{min-height:23rem}
@media(max-width:760px){.working-panel h3{font-size:clamp(1.4rem,5vw,2.2rem)}.working-panel summary{min-height:20rem}}
.working-toggle{position:absolute;right:2rem;top:2rem;font:400 2.8rem/1 var(--display);transition:transform .35s}
.working-panel[open] .working-toggle{transform:rotate(45deg)}
.working-panel>p{font-size:1.125rem;line-height:1.6;padding:0 2rem 2.2rem;max-width:36rem}
html[data-motion="off"] .working-panel,html[data-motion="off"] .working-panel *{transition:none}
@media(max-width:760px){.working-panels{grid-template-columns:1fr}.working-title{font-size:clamp(2.8rem,9vw,5rem);margin-bottom:2rem}.working-panel summary{min-height:15rem;padding:1.5rem}.working-panel>p{padding:0 1.5rem 1.8rem}.working-toggle{top:1.5rem;right:1.5rem}}
.experience-eighty{background:var(--ink);color:#fff;padding:3rem var(--pad) 5rem;overflow:hidden}
.experience-kicker{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid #555;padding-bottom:1.2rem;font-size:.875rem}
.experience-layout{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:clamp(2rem,6vw,7rem);padding-top:3rem}
.experience-figure{min-width:0}
.experience-dot-number{display:block;width:100%;max-width:38rem;overflow:visible;margin-bottom:1.8rem}
.experience-dot-number circle{transform-box:fill-box;transform-origin:center;animation:cause-ripple 6s ease-in-out infinite;animation-delay:calc(var(--dot)*-.06s);transition:fill .3s}
.experience-dot-number:hover circle{fill:var(--lime)}
@keyframes cause-ripple{0%,65%,100%{transform:scale(1);opacity:1}80%{transform:scale(.65);opacity:.6}}
.experience-number{font:800 clamp(9rem,29vw,30rem)/.9 var(--display);letter-spacing:-.09em;white-space:nowrap}
.experience-number>span{display:inline-block;transform-origin:50% 90%}
.experience-number>.experience-eight{color:#fff;animation:eight-nudge 7s ease-in-out infinite}
.experience-number>.experience-zero{color:var(--pink);animation:zero-response 7s ease-in-out infinite}
@keyframes eight-nudge{0%,15%,100%{transform:translateX(0) rotate(-3deg)}22%{transform:translateX(-.009em) rotate(-4deg)}26%{transform:translateX(.009em) rotate(1deg)}30%{transform:translateX(-.012em) rotate(-3deg)}34%{transform:translateX(.009em) rotate(1deg)}40%{transform:translateX(-.035em) rotate(-9deg)}49%{transform:translateX(.09em) rotate(5deg)}56%{transform:translateX(.065em) rotate(3deg)}72%{transform:translateX(0) rotate(-3deg)}}
@keyframes zero-response{0%,44%,82%,100%{transform:translateX(0) rotate(0)}51%{transform:translateX(.12em) rotate(9deg)}60%{transform:translateX(.06em) rotate(-4deg)}70%{transform:translateX(.018em) rotate(2deg)}}
.experience-dots{display:grid;grid-template-columns:repeat(20,1fr);gap:clamp(5px,.7vw,10px);margin:2rem 0 1rem;max-width:33rem}
.experience-dots i{display:block;aspect-ratio:1;border-radius:50%;background:var(--pink);animation:eighty-pulse 8s ease-in-out infinite;animation-delay:calc(var(--dot)*-.09s)}
.experience-caption{font-size:.875rem;color:#c9c9ce}
.experience-story h2{font-size:clamp(1.8rem,3.2vw,3.5rem);line-height:1.16;letter-spacing:-.045em}
.experience-supported{color:var(--lime);font-size:clamp(1.1rem,1.6vw,1.5rem);margin:1.2rem 0 2rem}
.experience-story>p:not(.experience-supported){font-size:1.125rem;line-height:1.65;max-width:38rem}
.experience-story>.experience-footnote{font-size:.875rem!important;color:#bcbcc3;margin-top:1.6rem}
.experience-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
@keyframes eighty-sway{0%,100%{transform:rotate(-5deg)}50%{transform:rotate(5deg)}}
@keyframes eighty-pulse{0%,65%,100%{opacity:1;transform:scale(1)}80%{opacity:.45;transform:scale(.7)}}
html[data-motion="off"] .experience-eighty *{animation-play-state:paused!important}
@media(max-width:760px){.experience-layout{grid-template-columns:1fr;gap:2.5rem;padding-top:2rem}.experience-number{font-size:clamp(9rem,58vw,25rem)}.experience-dots{max-width:28rem}.experience-eighty{padding-block:2rem 3.5rem}.experience-kicker>span:last-child{display:none}.experience-story h2{font-size:clamp(1.8rem,6vw,2.8rem)}}
:root .home-film video{display:block;width:100%;height:auto;max-height:100svh;aspect-ratio:16/9;object-fit:contain;background:#000;border:0}
/* Extended R stays inside both rings at every rotational angle. */
.logo-orbit .rogue-r-mark{display:block;width:80%;height:75%;color:var(--pink);overflow:visible;transform:none;animation:none}
.logo-orbit:before,.logo-orbit:after{display:block!important;background:none;-webkit-mask:none;mask:none;border:2px solid var(--blue);border-radius:50%;opacity:1}
.logo-orbit:before,.nav .logo-orbit:before,.footer-orbit-link .logo-orbit:before{inset:-3% -24%;animation:logo-ring-one 14s linear infinite}
.logo-orbit:after,.nav .logo-orbit:after,.footer-orbit-link .logo-orbit:after{inset:-7% -29%;animation:logo-ring-two 18s linear infinite;background:radial-gradient(circle at 50% 3%,var(--blue) 0 3px,transparent 3.5px);overflow:visible}
.logo-orbit.question-dot:before,.logo-orbit.question-dot:after{border-color:#fff}
.logo-orbit.question-dot:after{background:radial-gradient(circle at 50% 3%,#fff 0 4px,transparent 4.5px)}
.footer-orbit-link .logo-orbit:after{background:radial-gradient(circle at 50% 3%,var(--blue) 0 5px,transparent 5.5px)}
.logo-lockup{gap:1.7rem}
.footer-orbit-link{gap:3rem;padding-block:2.5rem}
.logo-orbit i,.footer-orbit-link .logo-orbit i,.question-dot i{display:none}
@keyframes rogue-icon-rock{0%,100%{transform:rotate(-12deg)}50%{transform:rotate(-5deg)}}
@keyframes rogue-square-nudge{0%,100%{transform:translateX(0) rotate(-12deg)}50%{transform:translateX(15%) rotate(-5deg)}}
@media(prefers-reduced-motion:reduce){.logo-orbit b,.logo-orbit i{animation:none!important}}
