:root{--flight-ease:cubic-bezier(.22,1,.36,1);--control-ink:var(--ink);--control-paper:var(--paper);--control-line:var(--dark-line)}.work{--control-ink:var(--paper);--control-paper:var(--ink);--control-line:var(--line)}.icon-defs{position:absolute;overflow:hidden;pointer-events:none}.ui-icon{display:block;width:20px;height:20px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.action-link{display:inline-flex;align-items:center;gap:16px;min-height:44px;white-space:nowrap;font-size:12px;line-height:1.5}.action-label{position:relative}.action-label:before,.action-label:after{content:"";position:absolute;left:0;right:0;bottom:-5px;height:1px;background:currentColor;pointer-events:none}.action-label:before{opacity:.2}.action-label:after{transform:scaleX(0);transform-origin:left;transition:transform .4s var(--flight-ease)}.action-disc,.control-disc{--arrow-x:3px;--arrow-y:-3px;display:grid;place-items:center;flex-shrink:0;width:38px;height:38px;border:1px solid var(--control-line);border-radius:50%;transition:background-color .25s,color .25s,border-color .25s}.action-disc .ui-icon,.control-disc .ui-icon{transition:transform .4s var(--flight-ease)}.disc-down{--arrow-x:0px;--arrow-y:3px}.disc-up{--arrow-x:0px;--arrow-y:-3px}.action-link:focus-visible .action-label:after{transform:scaleX(1)}.action-link:focus-visible .action-disc,.action-link:focus-visible .control-disc,.motion-toggle:focus-visible .control-disc{background:var(--control-ink);border-color:var(--control-ink);color:var(--control-paper)}.action-link:focus-visible .ui-icon{transform:translate(var(--arrow-x),var(--arrow-y))}.skip-link{gap:20px;padding:12px 20px;border:1px solid var(--dark-line);border-radius:999px;box-shadow:var(--button-shadow)}.wordmark{display:inline-block;min-height:44px}.wordmark span{display:inline-block;transition:transform .4s var(--flight-ease)}.wordmark:focus-visible span{transform:translateY(-4px)}.site-header nav a{min-height:48px;font-size:inherit}.nav-work{gap:8px}.nav-count{font-size:8px;letter-spacing:.03em;align-self:center;transform:translateY(-5px);color:var(--muted)}.nav-short{display:none}.contact-link{gap:14px}.contact-link .action-disc{width:36px;height:36px}.text-link{padding-block:3px}.scroll-invite{gap:12px;padding-block:4px;font-size:9px}.control-disc{width:34px;height:34px}.control-disc .ui-icon{width:16px;height:16px;stroke-width:1.6}.motion-toggle{display:flex;align-items:center;gap:10px;min-height:44px;padding:4px 0;border:0;background:transparent;font-size:9px;letter-spacing:.03em}.motion-toggle[hidden],.icon-play{display:none}.motion-toggle[aria-pressed=true] .icon-play{display:block}.motion-toggle[aria-pressed=true] .icon-pause{display:none}.motion-toggle[aria-pressed=true] .control-disc{background:var(--control-ink);border-color:var(--control-ink);color:var(--control-paper)}.project-figure:after{content:"";position:absolute;inset:10px;border:1px solid var(--paper);border-radius:2px;opacity:0;pointer-events:none;transition:opacity .4s var(--flight-ease);z-index:1}.project-open{position:absolute;right:24px;bottom:24px;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:32px;padding:8px 8px 8px 24px;min-width:240px;border:1px solid var(--dark-line);border-radius:999px;background:var(--paper);color:var(--ink);box-shadow:var(--button-shadow);opacity:0;transform:translateY(12px);transition:opacity .3s,transform .5s var(--flight-ease);pointer-events:none}.invitation-copy{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-width:0}.invitation-kicker{font-size:7px;line-height:1.3;font-weight:500;letter-spacing:.15em;white-space:nowrap}.invitation-title{font:400 25px/1.1 var(--display);letter-spacing:-.035em;white-space:nowrap}.project-open .action-disc{width:56px;height:56px;border-color:var(--ink);background:var(--ink);color:var(--paper)}.project-open .ui-icon{width:24px;height:24px;stroke-width:1.25}.project-figure:focus-visible .project-open{opacity:1;transform:none}.project-figure:focus-visible:after{opacity:.45}.project-figure:focus-visible .ui-icon{transform:translate(3px,-3px)}.contact-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;max-width:100%;min-height:88px;padding:9px 9px 9px 32px;border:1px solid var(--ink);border-radius:999px;background:var(--ink);color:var(--paper);box-shadow:var(--button-shadow);text-align:left;transition:background-color .3s,color .3s}.contact-cta .invitation-kicker{font-size:8px;letter-spacing:.14em}.contact-cta .invitation-title{font-size:27px}.contact-cta .action-disc{width:66px;height:66px;background:var(--paper);border-color:var(--paper);color:var(--ink)}.contact-cta .ui-icon{width:28px;height:28px;stroke-width:1.2}.contact-cta:focus-visible{background:var(--paper);color:var(--ink)}.contact-cta:focus-visible .action-disc{background:var(--ink);border-color:var(--ink);color:var(--paper)}.contact-cta:focus-visible .ui-icon{transform:translate(3px,-3px)}.back-top{margin-left:auto;gap:16px;font-size:11px}@media(hover:hover)and (pointer:fine){.action-link:hover .action-label:after{transform:scaleX(1)}.action-link:hover .action-disc,.action-link:hover .control-disc,.motion-toggle:hover .control-disc{background:var(--control-ink);border-color:var(--control-ink);color:var(--control-paper)}.action-link:hover .ui-icon{transform:translate(var(--arrow-x),var(--arrow-y))}.wordmark:hover span{transform:translateY(-4px)}.project-figure:hover .project-open{opacity:1;transform:none}.project-figure:hover:after{opacity:.45}.project-figure:hover .ui-icon{transform:translate(3px,-3px)}.contact-cta:hover{background:var(--paper);color:var(--ink)}.contact-cta:hover .action-disc{background:var(--ink);border-color:var(--ink);color:var(--paper)}.contact-cta:hover .ui-icon{transform:translate(3px,-3px)}}@media(max-width:700px),(hover:none){.project-open{position:relative;right:auto;bottom:auto;min-width:0;width:100%;padding:14px 18px;border:0;border-top:1px solid var(--line);border-radius:0;background:var(--night-deep);color:var(--paper);box-shadow:none;opacity:1;transform:none}.project-open .action-disc{width:42px;height:42px;border-color:var(--line);background:transparent;color:var(--paper)}.project-open .invitation-title{font-size:23px}.project-open .ui-icon{width:22px;height:22px}.project-figure:after{display:none}}@media(max-width:700px){.contact-link{gap:8px}.contact-link .action-disc{width:32px;height:32px}.contact-link .ui-icon{width:18px;height:18px}.scroll-invite,.motion-toggle{gap:8px;font-size:8px}.control-disc{width:30px;height:30px}.control-disc .ui-icon{width:15px;height:15px}.contact-cta{min-height:78px;padding:8px 8px 8px 24px;gap:20px}.contact-cta .invitation-title{font-size:clamp(20px,5.3vw,26px)}.contact-cta .invitation-kicker{font-size:7px;letter-spacing:.12em}.contact-cta .action-disc{width:56px;height:56px}.contact-cta .ui-icon{width:24px;height:24px}}@media(max-width:450px){.nav-full{display:none}.nav-short{display:inline}.site-header nav{gap:20px}}.easter-link{display:inline-block;min-height:44px;line-height:44px;font-weight:500;text-decoration:underline;text-decoration-color:var(--dark-line);text-decoration-thickness:1px;text-underline-offset:5px;transition:text-decoration-color .2s}.easter-link:hover,.easter-link:focus-visible{text-decoration-color:currentColor}.easter-link:focus-visible{outline-offset:3px}html[data-flock=pigs] .sky-poster{background-image:url(/portfolio-release-20261004-v24/assets/pig-sky-poster.webp)}@media(prefers-reduced-motion:reduce){.action-disc .ui-icon,.control-disc .ui-icon,.wordmark span,.project-open{transform:none!important}}.intro-footnote{max-width:42em}.scroll-invite{gap:10px;min-height:46px;padding:6px 16px 6px 8px;border:1px solid var(--dark-line);border-radius:999px;background:var(--paper);font-size:11px;letter-spacing:.01em}.scroll-invite .control-disc{width:30px;height:30px;background:var(--ink);border-color:var(--ink);color:var(--paper)}.scroll-invite:hover{border-color:var(--ink)}.case-study{margin-top:64px;padding-top:44px;border-top:1px solid var(--line)}.case-proof{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:center;gap:56px}.proof-figure{margin:0;min-width:0}.proof-image-link{display:block;position:relative;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--night-deep)}.proof-image-link img{display:block;width:100%;height:auto}.proof-enlarge{position:absolute;right:12px;bottom:12px;display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--dark-line);border-radius:50%;background:var(--paper);color:var(--ink)}.proof-enlarge .ui-icon{width:18px;height:18px;transition:transform .35s var(--flight-ease)}.proof-image-link:focus-visible .ui-icon{transform:translate(2px,-2px)}.proof-figure figcaption{font-size:10px;line-height:1.7;color:var(--light-muted);margin-top:12px;max-width:66ch}.proof-copy{min-width:0}.proof-copy>.eyebrow,.build-copy>.eyebrow{color:var(--light-muted);margin-bottom:20px;font-size:8px}.proof-copy h4,.build-copy h4{font:400 clamp(30px,3.1vw,44px)/1.09 var(--display);letter-spacing:-.035em;margin:0 0 22px;overflow-wrap:anywhere}.proof-copy>p:not(.eyebrow),.build-copy>p{font-size:13px;line-height:1.85;color:var(--light-muted);max-width:48ch}.proof-copy .case-scope{font-size:10px;line-height:1.9;margin-top:24px;padding-top:18px;border-top:1px solid var(--line);color:var(--light)}.build-notes{margin-top:36px;border-block:1px solid var(--line)}.build-notes summary{display:flex;align-items:center;gap:20px;min-height:72px;padding:14px 0;list-style:none;cursor:pointer}.build-notes summary::-webkit-details-marker{display:none}.build-notes summary>span:first-child{font:400 24px/1.2 var(--display);letter-spacing:-.025em}.details-hint{margin-left:auto;font-size:10px;color:var(--light-muted)}.detail-icon{flex-shrink:0;width:12px;height:12px;margin-right:4px;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;transition:transform .25s var(--flight-ease)}.build-notes[open] .detail-icon{transform:rotate(45deg)}.build-notes summary:focus-visible{outline:2px solid var(--light);outline-offset:6px}.build-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:56px;align-items:start;padding:28px 0 36px}.build-copy{min-width:0}.build-copy h4{font-size:32px}.build-copy ul{padding-left:18px;margin:22px 0 0;font-size:12px;line-height:1.8;color:var(--light)}.build-copy li+li{margin-top:10px}.build-copy .evidence-note{font-size:10px;line-height:1.8;margin-top:22px;color:var(--light-muted)}.text-build{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.text-build .build-copy ul{margin-top:0}.automation-flow{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:0;margin:28px 0 0}.automation-flow li{border-top:1px solid var(--line);padding-top:14px}.automation-flow span{display:block;font-size:8px;color:var(--light-muted);margin-bottom:10px}.automation-flow strong{font-size:12px;font-weight:500}.automation-flow p{font-size:10px;line-height:1.7;color:var(--light-muted);margin-top:6px}.product-proof{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:80px}.product-proof .proof-figure{width:min(100%,220px);justify-self:center}.product-proof .proof-enlarge{top:10px;bottom:auto;right:10px}.enquiry-example{margin-top:28px;padding:22px 0 0;border-top:1px solid var(--line)}.enquiry-example>.eyebrow{display:block;font-size:7px;color:var(--light-muted);letter-spacing:.14em}.enquiry-example blockquote{margin:16px 0;font:400 26px/1.4 var(--display);letter-spacing:-.015em;max-width:30ch}.enquiry-example>p{font-size:9px;line-height:1.7;color:var(--light-muted)}.working-with{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:96px;padding:112px 8vw;background:var(--night-deep);color:var(--light)}.working-with .eyebrow{color:var(--light-muted);margin-bottom:32px}.working-with h2{font:400 clamp(48px,5.8vw,84px)/1.04 var(--display);letter-spacing:-.045em}.working-intro{font-size:13px;line-height:1.85;color:var(--light-muted);margin-top:28px}.working-steps{list-style:none;margin:0;padding:0}.working-steps li{display:grid;grid-template-columns:20px minmax(0,1fr);gap:20px;padding:24px 0;border-top:1px solid var(--line)}.working-steps li>span{font-size:9px;color:var(--light-muted);padding-top:8px}.working-steps h3{font:400 29px/1.2 var(--display);letter-spacing:-.025em}.working-steps p{font-size:12px;line-height:1.8;max-width:44ch;margin-top:10px;color:var(--light-muted)}.contact-postscript{max-width:460px;margin:48px auto 0;padding-top:24px;border-top:1px solid var(--dark-line);color:var(--muted)}.postscript-label{display:block;font-size:7px;line-height:1.7;letter-spacing:.13em;margin-bottom:8px}.contact-postscript .easter-copy{font-size:11px;line-height:1.7;margin:0}@media(hover:hover)and (pointer:fine){.proof-image-link:hover .ui-icon{transform:translate(2px,-2px)}.build-notes summary:hover{color:var(--white)}}@media(max-width:1000px){.case-proof,.build-body{gap:32px}.case-proof{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}.product-proof{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)}.working-with{gap:48px}.details-hint{font-size:9px}}@media(max-width:700px){.intro-footnote{max-width:32em}.scroll-invite{gap:8px;padding:5px 12px 5px 7px;min-height:44px;font-size:9px}.scroll-invite .control-disc{width:28px;height:28px}.case-study{margin-top:36px;padding-top:30px}.case-proof,.build-body,.product-proof{grid-template-columns:minmax(0,1fr);gap:28px}.proof-copy h4{font-size:34px;margin-bottom:18px}.proof-copy>.eyebrow{margin-bottom:16px}.proof-copy>p:not(.eyebrow),.build-copy>p{font-size:12px}.proof-figure figcaption{font-size:9px}.details-hint{display:none}.detail-icon{margin-left:auto}.build-notes{margin-top:28px}.build-notes summary{min-height:68px}.build-notes summary>span:first-child{font-size:23px}.build-body{padding:20px 0 28px}.build-copy h4{font-size:30px}.build-copy ul{font-size:11px}.build-copy .evidence-note{font-size:9px}.product-proof .proof-figure{width:min(60%,190px)}.enquiry-example blockquote{font-size:25px}.working-with{grid-template-columns:minmax(0,1fr);padding:72px var(--gutter);gap:40px}.working-with h2{font-size:clamp(47px,11vw,66px)}.working-with .eyebrow{margin-bottom:24px}.working-intro{font-size:12px;margin-top:24px}.working-steps{max-width:100%}.working-steps h3{font-size:27px}.working-steps p{font-size:11px}.contact-postscript{margin-top:36px;padding-top:20px}.contact-postscript .easter-copy{font-size:10px}.postscript-label{font-size:6.5px;letter-spacing:.1em}}@media(prefers-reduced-motion:reduce){.proof-enlarge .ui-icon{transform:none!important}}html:is([data-montage=water],[data-montage=ducks]) .story{--water-paper: #e5ebe4;--water-veil: rgba(235, 240, 230, .76);--water-clear: rgba(235, 240, 230, 0);background:var(--water-paper)}html:is([data-montage=water],[data-montage=ducks]) .sky-stage{background:var(--water-paper)}html:is([data-montage=water],[data-montage=ducks]) .sky-poster{background-image:url(/portfolio-release-20261004-v24/assets/water-poster.webp)}html:is([data-montage=water],[data-montage=ducks]) .sky-shade{background:linear-gradient(180deg,var(--water-veil),var(--water-clear) 18%),linear-gradient(90deg,var(--water-veil),var(--water-clear) 72%)}html:is([data-montage=water],[data-montage=ducks]) #sky-canvas{opacity:0;transition:opacity 1.2s ease-out}html:is([data-montage=water],[data-montage=ducks]) #sky-canvas[data-ready]{opacity:1}@media(max-width:700px){html:is([data-montage=water],[data-montage=ducks]) .sky-shade{background:linear-gradient(180deg,var(--water-veil),var(--water-clear) 18%),linear-gradient(0deg,var(--water-veil) 12%,var(--water-clear) 84%)}}@media(prefers-reduced-motion:reduce){html:is([data-montage=water],[data-montage=ducks]) .sky-poster{opacity:.7}html:is([data-montage=water],[data-montage=ducks]) #sky-canvas{transition:none}}html:is([data-montage=fireflies],[data-montage=frogs]){--clearing-ink: #eeeeda;--clearing-muted: #c0cdbf;--clearing-gold: #ded19a;--clearing-night: #09151c;--clearing-line: rgba(238,238,218,.38);--clearing-veil: rgba(5,14,20,.64);--clearing-clear: rgba(5,14,20,0)}html:is([data-montage=fireflies],[data-montage=frogs]) :is(.story,.site-header){color:var(--clearing-ink);--control-ink: var(--clearing-ink);--control-paper: var(--clearing-night);--control-line: var(--clearing-line)}html:is([data-montage=fireflies],[data-montage=frogs]) :is(.story,.sky-stage){background:var(--clearing-night)}html:is([data-montage=fireflies],[data-montage=frogs]) .sky-poster{background-color:var(--clearing-night);background-image:url(/portfolio-release-20261004-v24/assets/night-poster.webp);background-position:68% center;opacity:1}html:is([data-montage=fireflies],[data-montage=frogs]) :is(.intro-footnote,.nav-count){color:var(--clearing-muted)}html:is([data-montage=fireflies],[data-montage=frogs]) :is(.beat-intro h1 span,.wordmark span){color:var(--clearing-gold)}html:is([data-montage=fireflies],[data-montage=frogs]) .sky-shade{background:linear-gradient(90deg,var(--clearing-veil),var(--clearing-clear) 65%),linear-gradient(0deg,var(--clearing-veil),var(--clearing-clear) 30%)}html:is([data-montage=fireflies],[data-montage=frogs]) .site-header{background:linear-gradient(180deg,var(--clearing-veil),var(--clearing-clear))}html:is([data-montage=fireflies],[data-montage=frogs]) .scroll-invite{color:var(--ink);--control-ink:var(--ink);--control-paper:var(--paper)}html:is([data-montage=fireflies],[data-montage=frogs]) .story-progress{background:var(--clearing-line)}html:is([data-montage=fireflies],[data-montage=frogs]) .story-progress span{background:var(--clearing-gold)}html:is([data-montage=fireflies],[data-montage=frogs]) #sky-canvas{opacity:0;transition:opacity 1.2s ease-out}html:is([data-montage=fireflies],[data-montage=frogs]) #sky-canvas[data-ready]{opacity:1}@media(max-width:700px){html:is([data-montage=fireflies],[data-montage=frogs]) .sky-shade{background:linear-gradient(0deg,var(--clearing-veil) 16%,var(--clearing-clear) 72%),linear-gradient(180deg,var(--clearing-veil),var(--clearing-clear) 22%)}}@media(prefers-reduced-motion:reduce){html:is([data-montage=fireflies],[data-montage=frogs]) #sky-canvas{transition:none}}
