/* The introduction and interactive explanation share the original identity. */
.neutron-art{position:relative;isolation:isolate;background:none;min-height:330px}.neutron-art svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.neutron-art .core{pointer-events:none;font-size:112px}.neutron-art .coordinate{font-size:12px;z-index:2;background:#181817e8}.neutron-art .c1{top:16%;left:5%}.neutron-art .c2{top:20%;right:5%}.neutron-art .c3{top:auto;bottom:14%;left:10%}.neutron-art .c4{bottom:13%;right:5%}.neutron-art .electron{filter:drop-shadow(0 0 5px #ffb8a880)}.vision-top{font-size:10px;letter-spacing:.5px}#neutron-pause{background:transparent;color:var(--ink);border:1px solid #88887d;min-height:40px;border-radius:22px;padding:8px 12px;font-size:12px;cursor:pointer}#neutron-pause:hover{color:var(--bg);background:var(--ink)}#neutron-pause[hidden]{display:none}
.perspective-section{padding:35px 0 65px}.perspective-card{display:grid;grid-template-columns:1fr 1.05fr;grid-template-areas:'copy scene' 'tabs scene' 'panel scene';gap:0 35px;padding:38px;border:1px solid var(--line);border-radius:20px;background:#1a181b;overflow:hidden}.perspective-copy{grid-area:copy}.perspective-copy .eyebrow{margin-bottom:18px;color:var(--muted)}.perspective-copy h2{font-size:clamp(34px,3.5vw,48px);letter-spacing:-1.7px}.perspective-copy .intro{font-size:16px;margin:20px 0 25px;max-width:460px}.perspective-section .tabs{grid-area:tabs;display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #776c7d;border-radius:9px;overflow:hidden;align-self:start}.perspective-section .tabs[hidden],.perspective-section [hidden]{display:none!important}.perspective-section .tabs button{font:15px Arial;display:flex;align-items:center;gap:8px;min-height:50px;padding:12px;background:transparent;border:0;border-right:1px solid #776c7d;color:var(--ink);cursor:pointer}.perspective-section .tabs button:last-child{border-right:0}.perspective-section .tabs span{font:10px monospace}.perspective-section .tabs b{display:none}.perspective-section .tabs button[aria-selected=true]{background:var(--ink);color:var(--bg)}.perspective-section .tabs button:focus-visible{outline-offset:-4px}.perspective-section .tabs button:hover:not([aria-selected=true]){background:#ffffff10}.perspective-section .panels{grid-area:panel}.perspective-section .panels>section{padding:24px 0 0;min-height:207px}.perspective-section .panels .eyebrow{display:none}.perspective-section h3{font-size:25px;margin-bottom:12px;letter-spacing:-.5px}.perspective-section .panels p{font-size:16px;line-height:1.7;color:var(--muted);margin-bottom:8px}.perspective-section .panels a{font-size:14px;display:inline-block;padding-block:10px;min-height:44px;border-bottom:1px solid var(--line)}.perspective-section .scene-wrap{grid-area:scene;position:relative;min-height:400px;overflow:hidden;border-radius:12px;background:radial-gradient(ellipse,#79657520,transparent 68%)}.perspective-section #scene{position:absolute;inset:0;width:100%;height:100%;touch-action:pan-y}.perspective-section #scene canvas{position:absolute;inset:0;display:block;width:100%;height:100%}.perspective-section .fallback{width:100%;height:100%;opacity:.8}.perspective-section .scene-ready .fallback{display:none}.perspective-section #motion-toggle{position:absolute;bottom:0;right:0;z-index:2;border:1px solid #888080;border-radius:24px;padding:8px 12px;min-height:40px;background:#19161dcc;color:var(--ink);font-size:12px;cursor:pointer}.perspective-section .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1000px){.perspective-card{gap:0 22px;padding:28px}.perspective-section .tabs button{font-size:14px;padding:12px 8px}.perspective-section .tabs span{display:none}}
@media(max-width:760px){.neutron-art{min-height:300px}.perspective-section{padding-top:15px;padding-bottom:45px}.perspective-card{grid-template-columns:1fr;grid-template-areas:'copy' 'tabs' 'scene' 'panel';gap:0;padding:24px 20px}.perspective-copy h2{font-size:34px}.perspective-section .scene-wrap{height:285px;min-height:0;margin-top:12px}.perspective-section .panels>section{min-height:0;padding-top:16px}.perspective-section .tabs button{font-size:15px}.neutron-art .coordinate{font-size:11px}}
/* Editorial pass: shared neutrals, red reserved for identity and emphasis. */
:root{--bg:#111110;--panel:#1b1b19;--ink:#f2f0e9;--muted:#c4c3ba;--red:#ff4c3d;--line:#55554d}
.hero{padding-top:42px}.hero-bottom{padding:30px 0 18px}.vision{box-shadow:8px 10px 0 #090909}.vision-bottom{padding-block:12px}.neutron-art{min-height:300px}
.credibility{padding:16px 0 12px;margin:0 auto}.ticker-heading{margin-bottom:10px}.credibility .eyebrow{font-size:11px}.ticker{overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:#65655b transparent;padding-bottom:6px}.ticker-track{width:max-content;animation:none!important}.ticker .clients{flex-wrap:nowrap;gap:32px;padding:0;font-size:18px;line-height:1.6}.ticker .clients li{white-space:nowrap}.ticker:focus-visible{outline:2px solid var(--red);outline-offset:4px}
.perspective-section{padding:40px 0 0}.perspective-card{padding:30px;background:var(--panel);border-color:var(--line);border-radius:14px;grid-template-columns:1.1fr 1fr}.perspective-copy h2{font-size:38px;margin-bottom:25px}.perspective-copy .eyebrow{margin-bottom:12px}.perspective-section .tabs{border-color:var(--line)}.perspective-section .tabs button{border-color:var(--line)}.perspective-section .panels>section{min-height:160px;padding-top:20px}.perspective-section .scene-wrap{min-height:310px;background:radial-gradient(ellipse,#ffffff07,transparent 68%)}.perspective-section .panels p{max-width:410px}
.section{padding-top:65px}.section-heading{margin-bottom:28px}.section-heading .eyebrow{margin-bottom:14px}.project{margin-top:22px}.project-copy{padding:30px}.project-copy .eyebrow{margin-bottom:22px}.project-art{min-height:360px}.tags{margin-block:20px}.creative{margin-top:48px}.creative-heading h3{margin-bottom:12px}.creative figure{margin-top:15px}.labs{margin-top:60px;padding-block:55px}.lab-art{height:160px;margin-bottom:22px}.lab-grid p:not(.eyebrow){min-height:0}.about{padding-bottom:15px}.about-copy{padding-top:25px}.about-monogram{font-size:145px;margin-top:20px}.about-monogram small{display:none}.experience{padding-top:45px;padding-bottom:55px}.timeline li{padding-block:20px}.contact{padding-top:45px}.contact h2{font-size:clamp(46px,6vw,76px)}footer{margin-top:35px}
/* Client concepts may differ in content; their frames use the same brand neutrals. */
.sanofi-art{background-color:#242423}.lotic-art{background:#202623}.wellbeing-ring{border-color:#aeb7ae55;box-shadow:0 0 50px #d3d8cc12,inset 0 0 45px #d3d8cc12}.art-label{color:var(--muted)}.capability{background:#e6e5de;color:#343431}.mock-bottom{border-color:#bdbdb3}.map div{background:#494943}.map i{background:#acaca1}.lab-one{background:#deded3;color:#242421}.lab-two{background:#292927;color:#e3e2d8}.lab-two span{color:#a4a49a}.lab-three{background:#352421;color:#ffa18e}
@media(max-width:760px){.hero{padding-top:30px}.hero-bottom{padding-top:25px}.neutron-art{min-height:280px}.perspective-section{padding-top:30px}.perspective-card{padding:23px 20px;grid-template-columns:1fr}.perspective-copy h2{font-size:32px;margin-bottom:22px}.perspective-section .scene-wrap{min-height:0;height:250px}.perspective-section .panels>section{min-height:0}.section{padding-top:48px}.project-copy{padding:24px}.project-art{min-height:320px}.project-art.project-video{margin-right:0}.labs{margin-top:40px;padding-block:40px}.lab-art{height:155px}.lab-grid{gap:30px}.about-copy{padding-top:20px}.experience{padding-bottom:40px}.contact{padding-top:35px}.ticker .clients{font-size:17px;gap:26px}}
/* Broadcast interlude: cropped footage and a short, low-contrast static cut. */
.vision-reel{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:4;opacity:0;pointer-events:none;background:#181817}.neutron-art.show-reel .vision-reel{opacity:1}.neutron-art.show-reel .coordinate,.neutron-art.show-reel .core{visibility:hidden}.neutron-art{overflow:hidden}.vision-static{position:absolute;inset:0;z-index:5;pointer-events:none;opacity:0;background:#292927 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23888888' filter='url(%23noise)' opacity='.45' d='M0 0h180v180H0z'/%3E%3C/svg%3E") repeat}.static-cut .vision-static{opacity:1;animation:static-shift 90ms steps(2) 2}@keyframes static-shift{to{background-position:35px -24px}}
@media(prefers-reduced-motion:reduce){.vision-reel,.vision-static{display:none!important}.neutron-art.show-reel .coordinate,.neutron-art.show-reel .core{visibility:visible}}
/* The film owns the entire display during playback. */
.neutron-art.show-reel > svg,.neutron-art.show-reel > .core,.neutron-art.show-reel > .coordinate{visibility:hidden!important;opacity:0!important}.neutron-art .vision-reel{z-index:8}.neutron-art .vision-static{z-index:9}
.ticker.continuous{overflow:hidden}.ticker.continuous .ticker-track{display:flex;width:max-content;animation:client-scroll 110s linear infinite!important}.ticker.continuous .clients{flex-shrink:0;gap:32px;padding-right:32px}.ticker.continuous:focus-within{overflow-x:auto}.ticker.continuous:focus-within .ticker-track{animation-play-state:paused!important}
@media(prefers-reduced-motion:reduce){.ticker.continuous .ticker-track{animation:none!important}}
/* Actual per-frame static replaces the old flat SVG overlay. */
.neutron-art .vision-static{background:none;animation:none!important;opacity:0}.neutron-art.static-cut .vision-static{opacity:1}.vision-static canvas{display:block;width:100%;height:100%;image-rendering:pixelated}
/* Project reels retain their full frame so product interfaces remain readable. */
.project-art.project-video{display:flex;justify-content:center;align-items:center;padding:0;gap:0;background:#111110;min-width:0;overflow:hidden}.project-video video{display:block;width:100%;height:auto;max-height:560px;object-fit:contain;background:#111110}.project-video video:focus-visible{outline:2px solid var(--red);outline-offset:-3px}
@media(max-width:760px){.project-art.project-video{min-height:0}.project-video video{max-height:520px}}
/* Matched silent, looping reels with a consistent square crop. */
.project-art.project-video{aspect-ratio:1/1;min-height:0;align-self:center;width:100%}.project-video video{width:100%;height:100%;max-height:none;aspect-ratio:1/1;object-fit:cover;object-position:center}
@media(max-width:760px){.project-video video{max-height:none}}

/* Desktop project cards give the editorial copy more presence and keep reels compact. */
@media(min-width:761px){
  .project{grid-template-columns:minmax(0,1.18fr) minmax(300px,.72fr);align-items:center}
  .project-copy{align-self:stretch;display:flex;flex-direction:column;justify-content:center;padding:42px 52px}
  .project-art.project-video{width:min(100%,500px);justify-self:end;margin-right:26px;background:#282824;border:1px solid #55554d}
}

/* Labs is intentionally paused while the case studies are being developed. */
.labs{display:none!important}
