/* Shared motion, contact, privacy and brand specimens. */
.insight-art.art-3{background:#e4dcf6;color:#30223f}.insight-art.art-4{background:#30223f;color:var(--color-action)}.insight-art.art-5{background:#d5fff0;color:#29483b}.insight-graphic{position:absolute;inset:0 0 0 auto;width:82%;height:100%;transition:transform 500ms var(--motion-ease)}.insight-art.art-3>span,.insight-art.art-4>span,.insight-art.art-5>span{font-size:32px;top:20px}.insight-art:hover .insight-graphic{transform:translateY(-6px) rotate(3deg)}
@media(prefers-reduced-motion:reduce){.insight-art:hover .insight-graphic{transform:none;transition:none}}
.agency-direction .project-image img{transform:translate3d(0,var(--project-y,0px),0) scale(var(--project-scale,1));transition:none}
.brand:focus-within .b2b-mark>span:nth-child(2){transform:translateY(-5px) rotate(-8deg)}
:where(button:not(.project-image),.button,.text-link,summary){transition:transform 240ms var(--motion-ease),background-color 240ms,color 240ms,border-color 240ms,box-shadow 240ms}
:where(button,.button,.text-link,summary) svg{transition:transform 240ms var(--motion-ease)}
@media(hover:hover){:where(button:not(.project-image):not(:disabled),.button,.text-link):hover{transform:translateY(-2px)}:where(button,.button,.text-link):hover>svg{transform:translate(3px,-3px)}summary:hover .plus{transform:rotate(90deg)}.project-image:hover .round-button{transform:rotate(5deg) scale(1.06)}}
:where(button:not(.project-image),.button,.text-link):active{transform:translateY(1px) scale(.98)}
:where(button,.button,.text-link,summary):focus-visible{outline:2px solid var(--color-wordmark);outline-offset:5px}
.contact-details{font-style:normal;display:grid;gap:26px;margin-top:36px;line-height:1.6;overflow-wrap:anywhere}
.contact-details>div>span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.1em;margin-bottom:8px;opacity:.75}
.contact-details a:not(.text-link){display:block;width:fit-content;text-decoration:underline;text-underline-offset:5px;font-size:22px}
.contact-details .contact-whatsapp{font-size:14px!important;margin-top:12px}.contact-address p{max-width:34ch;margin:0 0 12px}.contact-address .text-link{font-size:14px}
.contact-details.is-compact{font-size:14px;gap:20px;grid-template-columns:1fr 1fr;max-width:570px}.is-compact .contact-address{grid-column:1/-1}.is-compact a:not(.text-link){font-size:16px}
.legal-links{display:flex;flex-wrap:wrap;gap:14px 24px}.privacy-trigger{border:0;background:none;padding:0;text-decoration:underline;text-underline-offset:5px;font:inherit;min-height:44px}
.legal-content{max-width:1000px;padding-bottom:80px}.legal-content>section{padding:30px 0;border-top:1px solid var(--color-border)}.legal-content h2{font-size:28px;margin-bottom:18px}.legal-content p{max-width:75ch;margin-bottom:12px;overflow-wrap:anywhere}.legal-content .legal-links{padding-block:28px;border-block:1px solid var(--color-border)}
.cookie-banner{position:fixed;bottom:20px;left:20px;right:20px;z-index:110;background:var(--color-hero);color:var(--color-inverse);border:1px solid #ffffff40;border-radius:12px;padding:24px 28px;display:flex;align-items:center;gap:32px;box-shadow:0 12px 40px #0003;animation:cookie-enter 400ms var(--motion-ease)}
.cookie-banner[hidden]{display:none}.cookie-banner>div:first-child{flex:1}.cookie-banner h2{font-size:21px;letter-spacing:-.03em;margin-bottom:8px}.cookie-banner p{font-size:13px;line-height:1.6;max-width:85ch;color:var(--color-on-dark)}.cookie-banner p a{color:var(--color-action);text-decoration:underline}
.cookie-actions{display:flex;flex-wrap:wrap;gap:12px}.cookie-actions .cookie-control{flex:1;white-space:normal;min-width:150px;text-align:center;justify-content:center;padding:13px 18px;font-size:13px;background:var(--color-action);color:var(--color-control-text);border:1px solid var(--color-action);font-weight:400}.cookie-actions .cookie-control:hover{background:var(--color-action-hover)}
.cookie-dialog{max-width:620px;animation:cookie-enter 300ms var(--motion-ease)}.cookie-dialog h2{font-size:36px;line-height:1.15}.cookie-dialog>p,.cookie-dialog section p{font-size:14px;margin-top:16px}.cookie-dialog section{margin-top:24px;padding-top:24px;border-top:1px solid var(--color-border)}.cookie-dialog h3{font-size:20px}.cookie-dialog .cookie-actions{margin-block:28px}.cookie-dialog>.text-link{font-size:14px}.cookie-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@keyframes cookie-enter{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
.brand-lab .hero-statement{padding-top:150px}.brand-lab .hero-statement h1{font-size:clamp(52px,7.5vw,120px)}.brand-lab .hero-orb{width:28vw;max-width:420px}.brand-lab .statement-bottom{grid-template-columns:1fr auto}
.brand-index{position:relative;display:flex;flex-wrap:wrap;gap:12px 28px;padding-block:32px;border-bottom:1px solid var(--color-border);font-size:14px}.brand-index a{padding:10px 0;text-decoration:underline;text-underline-offset:5px}
.brand-lab .brand-sample{scroll-margin-top:130px}.brand-section-head{display:grid;grid-template-columns:80px 1fr;gap:20px;margin-bottom:32px}.brand-section-head>span{color:var(--color-text-muted);font-size:13px}.brand-section-head h2{font-weight:300;font-size:clamp(32px,4vw,56px);margin:0}.brand-section-head p{max-width:60ch;color:var(--color-text-muted);margin-top:16px}
.brand-logo-stage{display:flex;align-items:center;gap:24px;padding:48px;background:var(--color-hero);border-radius:4px;min-height:220px}.brand-logo-stage .brand-logo{width:116px;height:116px}.brand-logo-stage .b2b-mark{font-size:64px!important}.brand-logo-original{background:var(--color-surface);color:var(--color-text);flex-wrap:wrap}.brand-logo-original>img{width:90px;height:90px}.brand-logo-original p{font-size:14px;max-width:26ch}
.brand-lab .logo-samples{gap:24px}.brand-lab .swatch-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.brand-lab .swatch-color{height:160px}.swatch-action{background:var(--color-action)}.swatch-wordmark{background:var(--color-wordmark)}.swatch-mint{background:var(--color-mint)}.swatch-night{background:var(--color-hero)}
.specimen-type{font-weight:300;font-size:clamp(42px,6.7vw,100px);line-height:1.03;letter-spacing:-.06em;margin-bottom:36px}.specimen-columns{display:grid;grid-template-columns:1fr 1fr;gap:48px}.specimen-columns h3{font-size:26px;margin-bottom:16px}.specimen-columns p{max-width:55ch}.specimen-caption{font-size:12px;color:var(--color-text-muted);margin-top:16px}.specimen-status{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.specimen-status span{padding:8px 14px;border-radius:5px;font-size:13px;background:var(--color-mint);color:var(--color-control-text)}.specimen-status .is-error{background:var(--color-error-surface);color:var(--color-error)}.specimen-status .is-review{background:var(--color-brand-accent);color:#4b1680}.mascot-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;background:var(--color-mint);padding:32px}.mascot-gallery img{width:100%;max-width:240px;aspect-ratio:1;object-fit:contain;margin:auto}.mascot-gallery figcaption{text-align:center}.space-scale{display:flex;flex-wrap:wrap;gap:24px;align-items:end}.space-scale span{display:flex;flex-direction:column;gap:12px;font-size:12px}.space-scale i{display:block;background:var(--color-action);height:var(--sample-space);width:60px}.space-8{--sample-space:8px}.space-16{--sample-space:16px}.space-24{--sample-space:24px}.space-32{--sample-space:32px}.space-48{--sample-space:48px}.space-64{--sample-space:64px}.space-96{--sample-space:96px}
@media(max-width:1049px){.cookie-banner{align-items:stretch;gap:20px}.cookie-actions{max-width:330px}.brand-lab .swatch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.cookie-banner{left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));padding:20px;display:block;max-height:75svh;overflow:auto}.cookie-banner h2{font-size:20px}.cookie-banner .cookie-actions{margin-top:16px;max-width:none;gap:8px}.cookie-actions .cookie-control{min-width:0;font-size:12px;padding:12px}.contact-details.is-compact{grid-template-columns:1fr}.contact-details a:not(.text-link){font-size:20px}.legal-content h2{font-size:24px}.legal-content p{font-size:15px}.brand-section-head{grid-template-columns:32px 1fr;gap:12px}.brand-lab .hero-statement{padding-top:136px}.brand-lab .hero-statement h1{font-size:clamp(42px,10vw,65px)}.brand-logo-stage{min-height:180px;padding:28px}.brand-logo-stage .brand-logo{width:84px;height:84px}.brand-logo-stage .b2b-mark{font-size:52px!important}.specimen-columns{grid-template-columns:1fr;gap:32px}.brand-lab .swatch-grid{gap:20px}.brand-lab .swatch-color{height:110px}.mascot-gallery{padding:20px 10px;gap:0}.mascot-gallery figure{margin:0}.mascot-gallery figcaption{font-size:13px}}
@media(prefers-reduced-motion:reduce){:where(button,.button,.text-link,summary),.b2b-mark>span{transition:none!important;transform:none!important}.cookie-banner,.cookie-dialog{animation:none}.agency-direction .project-image img{transform:none!important}}
.refined-footer{padding-top:72px;padding-bottom:22px}.footer-grid{display:grid;grid-template-columns:1.05fr 1fr 1.2fr;gap:clamp(28px,4vw,70px);padding-bottom:56px}.footer-identity>p{font-weight:300;font-size:clamp(23px,2vw,32px);line-height:1.3;letter-spacing:-.03em;margin-top:24px;max-width:19ch}.footer-identity>.text-link{font-size:14px;color:var(--color-action);margin-top:24px}.footer-grid .eyebrow{font-size:10px;color:var(--color-on-dark);margin-bottom:22px}.refined-footer .footer-navigation{display:block;background:none;color:var(--color-inverse);padding:0;border:0;position:static;border-radius:0}.footer-navigation>div{display:grid;grid-template-columns:1fr 1fr;gap:8px 22px}.footer-navigation>div>a{font-size:14px;min-height:40px;display:flex;align-items:center}.footer-navigation>div>a:hover{color:var(--color-action)}.footer-contact .contact-details{margin-top:0;grid-template-columns:1fr;gap:16px;font-size:14px}.footer-contact .contact-details>div>span{display:none}.footer-contact .contact-whatsapp{display:inline-block;margin-left:18px;margin-top:0}.footer-contact .contact-details a[href^='tel:']{display:inline-block}.footer-contact .contact-details .contact-address p{font-size:14px;color:var(--color-on-dark)}.footer-contact .contact-details .text-link{color:var(--color-action);font-size:12px}.footer-legal{display:grid;grid-template-columns:1fr 2fr;gap:32px;padding-top:24px;border-top:1px solid #ffffff30;align-items:start;font-size:11px;color:var(--color-on-dark)}.footer-legal .legal-links{justify-content:flex-end;gap:12px 22px;align-items:center}.footer-legal .legal-links>a{min-height:44px;display:flex;align-items:center}.footer-legal>span{padding-top:12px}.footer-preview{padding-top:20px;font-size:10px;color:var(--color-on-dark)}
.brand-lab .sample-project{margin-top:48px;max-width:none;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);background:#eeeef0;gap:40px;padding:32px}.brand-lab .sample-project img{width:100%;height:auto;max-height:420px;object-fit:contain}.brand-lab .sample-project>div{min-width:0}.brand-lab .sample-project h3{font-weight:300;font-size:36px}.brand-lab .sample-project p{font-size:15px}.brand-lab .sample-project .text-link{font-size:14px;margin-top:24px}
.blog-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}.blog-list>article{min-width:0}.blog-list>article>a:first-child{display:block;overflow:hidden}.blog-list img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:#19161f}.blog-list h2{font-size:28px;margin:16px 0}.blog-list p:not(.eyebrow){font-size:15px;color:var(--color-text-muted);margin-bottom:20px}.blog-list .eyebrow{margin-top:20px}.blog-article{max-width:1000px;padding-bottom:80px}.blog-article figure{margin:0 0 40px}.blog-article figure img{display:block;width:100%;height:auto;object-fit:contain}.blog-prose{max-width:72ch;overflow-wrap:anywhere}.blog-prose p,.blog-prose h2,.blog-prose h3,.blog-prose ul{margin-bottom:24px}.blog-prose h2{font-size:32px}.blog-prose h3{font-size:26px}.blog-prose a{text-decoration:underline;color:var(--color-focus)}
@media(max-width:1049px){.footer-grid{grid-template-columns:1fr 1fr}.footer-identity{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.footer-identity>p{margin:0;max-width:28ch}.footer-identity>.text-link{margin:0}.footer-legal{grid-template-columns:1fr}.footer-legal .legal-links{justify-content:flex-start}.blog-list{grid-template-columns:1fr 1fr}}
@media(max-width:767px){.refined-footer{padding-top:48px}.footer-grid{grid-template-columns:1fr;gap:36px;padding-bottom:36px}.footer-identity{display:block}.footer-identity>p{margin-top:20px;max-width:20ch;font-size:28px}.footer-identity>.text-link{margin-top:20px}.footer-grid .eyebrow{margin-bottom:16px}.footer-legal{gap:14px;padding-top:20px}.footer-legal .legal-links{gap:0 20px}.footer-legal .legal-links>a{font-size:11px}.footer-contact .contact-details a{font-size:17px}.brand-lab .sample-project{grid-template-columns:1fr;padding:20px;gap:24px}.brand-lab .sample-project img{max-height:none}.brand-lab .sample-project h3{font-size:30px}.blog-list{grid-template-columns:1fr}.blog-article figure{margin-bottom:28px}}

/* A native-scroll scene keeps the opening visible while the layers separate. */
.hero-scroll-scene{position:relative;background:var(--color-hero)}
.scroll-shaping .hero-shape{animation:none;transform:rotate(var(--shape-turn,0deg));transition:clip-path 220ms,border-radius 220ms}
.scroll-shaping[data-scroll-shape="circle"] .hero-shape{border-radius:50%}
.scroll-shaping[data-scroll-shape="triangle"] .hero-shape{border-radius:0;clip-path:polygon(50% 0,50% 0,66.66% 33.33%,83.33% 66.66%,100% 100%,50% 100%,0 100%,25% 50%)}
.scroll-shaping[data-scroll-shape="square"] .hero-shape{border-radius:8%;clip-path:polygon(0 0,50% 0,100% 0,100% 50%,100% 100%,50% 100%,0 100%,0 50%)}
@media(min-width:768px) and (min-height:600px) and (prefers-reduced-motion:no-preference){
  .hero-scroll-scene{height:calc(var(--scene-height,100svh) + clamp(360px,70svh,780px))}
  .hero-scroll-scene .hero-statement{position:sticky;top:var(--scene-top,0px);min-height:100svh;padding-top:140px}
  .hero-scroll-scene .hero-statement h1{font-size:clamp(56px,min(8.5vw,13svh),150px)}
  .hero-scroll-scene .hero-line.line-two,.hero-scroll-scene .hero-line.line-three,.hero-scroll-scene .hero-line.line-four{margin-top:8px}
  .hero-scroll-scene .statement-bottom{margin-top:32px}
  .locale-en .hero-scroll-scene .hero-statement h1,.locale-fr .hero-scroll-scene .hero-statement h1,.locale-de .hero-scroll-scene .hero-statement h1{font-size:clamp(50px,min(7.3vw,12svh),144px)}
}
@media(prefers-reduced-motion:reduce){.hero-scroll-scene{height:auto}.hero-shape{animation:none!important;transform:none!important}}

.article-evidence{margin-top:48px;border-top:1px solid var(--color-border);padding-top:32px}.article-evidence section{margin-bottom:36px}.article-evidence details{border-bottom:1px solid var(--color-border);padding:18px 0}.article-evidence summary{cursor:pointer;font-weight:600}.article-evidence details p{margin-top:18px}

.form-trap{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
