/* IM MEDIA — one connected visual canvas. */
:root{--paper:#f4f3ee;--ink:#17191a;--violet:#7550e8;--mint:#7ccfbd}
html{scroll-behavior:auto}
body{background:var(--paper);overflow-anchor:none}
.stage.light{background:var(--paper);color:var(--ink)}
.header{top:30px;left:5.5%;right:5.5%;color:var(--ink)}
.brand{width:auto;height:48px;gap:12px;padding:0;background:none;border-radius:0;box-shadow:none;color:var(--ink)}
.brand-monogram{font-family:Arial,sans-serif;font-size:40px;font-weight:900;letter-spacing:-5px;background:linear-gradient(135deg,#3ec5d0 15%,#8354e6 55%,#536df3);background-clip:text;-webkit-background-clip:text;color:transparent;line-height:1;padding-right:4px}
.brand-wordmark{font-size:16px;letter-spacing:2px;font-weight:700;line-height:1.15}
.brand-wordmark small{display:block;font-size:8px;font-weight:400;letter-spacing:5px;margin-top:4px}
.header select,.header-pill,.menu-open{background:#f4f3ee9c;color:var(--ink);border:1px solid #17191a28;backdrop-filter:blur(15px);box-shadow:none}
.header select{font-size:10px;padding:12px 10px}
.header-pill{padding:15px 21px;font-size:10px}
.header-pill.start-presentation{color:var(--paper);background:var(--ink);border-color:var(--ink)}
.header-pill.start-presentation:hover{background:#6550bb;border-color:#6550bb;transform:translateY(-2px);color:white}
body[data-theme=dark] .brand{color:var(--paper)}
body[data-theme=dark] .header select,body[data-theme=dark] .menu-open{background:#17191a77;color:var(--paper);border-color:#f4f3ee35}
body[data-theme=dark] .start-presentation.header-pill{background:var(--paper);color:var(--ink)}
.scene-kicker{font-size:9px;letter-spacing:1.7px}
.question-sculpture>.question-front,.question-sculpture>.question-depth{opacity:.09;filter:none;pointer-events:none}
.question-sculpture>.motion-caption{inset:auto auto 0 8%;transform:none;text-align:left;line-height:1.5;font-weight:400;letter-spacing:.04em;font-family:inherit}
#intelligence .analysis-diagram-label{fill:#4c5550}
#intelligence .analysis-diagram-footer{fill:#4d887c}
#intelligence .analysis-signal-graph .signal-0{stroke:#458b7d}
#intelligence .analysis-signal-graph .signal-1{stroke:#7550e8}
#intelligence .analysis-signal-graph .signal-2{stroke:#777e79}
#intelligence .signal-scan-rule{stroke:#17191a55}
#intelligence .analysis-intent-tree .motion-trace-base,#intelligence .analysis-audience-network .motion-trace-base,#intelligence .analysis-strategy-loop .motion-trace-base{stroke:#17191a;opacity:.22}
#intelligence .intent-search-mark{stroke:#4d887c}
#intelligence .intent-search-ring{stroke:#4d887c77}
#intelligence .audience-source-node{fill:#7550e8;fill-opacity:.6;stroke:#7550e8}
#intelligence .audience-core{fill:#f4f3ee;stroke:#4d887c}
#intelligence .audience-person{stroke:#4d887c}
#intelligence .strategy-art>span{color:#17191a}
#intelligence .strategy-node{stroke:#f4f3ee;fill:#7550e8}
#evidence .case-body{grid-template-columns:.92fr 1.08fr;gap:6%;align-items:start}
#evidence .case-numbers{align-self:start;padding-right:12px}
#evidence .case-numbers h3{font-size:25px;margin-top:9px}
#evidence .case-numbers>span{font-size:9px;color:#737971}
#evidence .case-source-meta{gap:15px;padding-bottom:12px}
#evidence .case-source-meta span{font-size:10px;color:#7b827b}
#evidence .case-source-meta strong{font-size:12px;color:#46514a}
#evidence .case-original-post{font-size:10px;color:#65518f}
#evidence .case-data-table th,#evidence .case-data-table td{font-size:16px;padding:12px 7px 15px;color:#404b44}
#evidence .case-data-table thead th,#evidence .case-data-table thead th:first-child{font-size:10px;color:#737c73;padding-top:8px}
#evidence .case-data-table th:first-child{font-size:11px;color:#667166}
#evidence .case-data-table td:last-child{color:#296c5a;font-weight:600}
#evidence .case-table-legend{font-size:9px!important;color:#81897f!important;line-height:1.65!important;margin-top:8px!important}
#evidence .case-contribution-grid{margin:15px 0 13px;gap:20px}
#evidence .case-contribution>span{font-size:10px;color:#717a70}
#evidence .case-contribution>strong{font-size:22px;color:#6e54a2}
#evidence .case-contribution>small{font-size:9px;color:#778174;line-height:1.65}
#evidence .case-report-observation{padding-top:10px}
#evidence .case-report-observation summary{font-size:10px;color:#58634f}
#evidence .case-observation-text p{font-size:10px;line-height:1.8;color:#71796d}
#evidence .case-phones{max-height:53svh;gap:18px}
.light .scene-kicker{color:#727575}
.light .scene-copy>p{color:#676b6a}
.light h2 em{color:#7561b9}
.hero-scene .hero-stage{background:var(--paper) url('assets/hero-ribbon-v3.webp') center/cover no-repeat;color:var(--ink);min-height:660px}
#hero-canvas{z-index:-3}
.hero-shade{z-index:-1;background:linear-gradient(90deg,#f4f3ee5c,transparent 48%);pointer-events:none}
.hero-scene .scene-kicker{top:133px;left:6%;color:#6d6c6c}
.hero-copy{top:28%;bottom:auto;left:6%;max-width:70%}
.hero-copy h1{font-family:IMDisplay,Arial,sans-serif;font-size:clamp(68px,8.25vw,144px);font-weight:700;line-height:1.01;letter-spacing:-.045em;text-shadow:none}
.hero-copy h1 em{font-style:normal;color:var(--ink)}
.hero-copy p{font-size:14px;line-height:1.8;letter-spacing:.4px;margin-top:25px;color:#5f6361;max-width:365px}
.hero-action{left:6%;right:auto;bottom:15%;gap:17px;color:var(--ink)}
.round-play{height:56px;width:56px;background:var(--ink);color:var(--paper);border:0;backdrop-filter:none;font-size:11px}
.round-play:hover{background:var(--violet);transform:scale(1.07)}
.hero-action>div{font-size:11px;line-height:1.7}
.hero-action small{color:#727571;font-size:9px}
.hero-signal{position:absolute;right:6%;bottom:13%;z-index:3;display:flex;align-items:center;gap:15px;color:#484749;font-size:8px;letter-spacing:1.2px}
.hero-signal i{position:relative;width:45px;height:1px;background:#17191a22;overflow:hidden}
.hero-signal i:after{content:'';position:absolute;left:0;top:0;height:1px;width:16px;background:#7550e8;animation:heroSignal 2.5s linear infinite;transform:translateX(-20px)}
.hero-signal i:nth-of-type(2):after{animation-delay:1.25s}
@keyframes heroSignal{to{transform:translateX(55px)}}
.hero-footer{color:#747774;font-size:8px;bottom:28px;gap:25px;letter-spacing:1.2px}
.hero-footer>span:first-child,.hero-footer>span:last-child{color:#5f6964;font-weight:300}
.hero-footer .pointer-note{color:#6e726f;font-size:9px}
.promotion-scene .stage{background:var(--paper)}
.promotion-art{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;isolation:isolate}
.promotion-art>img{height:100%;width:100%;max-width:none;object-fit:cover;object-position:center;mask-image:linear-gradient(90deg,transparent 0%,#0000 17%,#0008 41%,#000 57%);transform:scale(1.025) translateY(calc((var(--local) - .5)*-16px));will-change:transform;mix-blend-mode:multiply}
.promotion-copy{top:25%;max-width:46%;z-index:8}
.promotion-copy h2{font-size:clamp(44px,4.8vw,78px);line-height:1.2;letter-spacing:-2.5px}
.promotion-copy h2 em{color:#7162a2}
.promotion-copy>p{color:#626865;font-size:13px;line-height:1.9;margin-top:27px}
.promotion-platforms{gap:22px;margin-top:25px}
.promotion-platforms img{width:30px;height:30px}
.channel-switch{margin-top:30px;gap:25px}
.channel-switch button{font-size:11px;color:#848883}
.channel-switch button.active{border-color:#5e4c9a;color:#302749}
.promotion-copy .channel-description{color:#626865;font-size:11px;line-height:1.9;max-width:345px;min-height:62px;margin-top:13px}
.promotion-poster,.promotion-poster:hover{position:absolute;left:6%;right:auto;top:auto;bottom:35px;height:auto;max-height:none;width:auto;max-width:none;aspect-ratio:auto;background:none;padding:0;border:0;border-radius:0;box-shadow:none;transform:none;z-index:8;color:#4d455e;cursor:pointer;font-size:10px;line-height:1.7;border-bottom:1px solid #776d8555}
.promotion-reference{z-index:8;bottom:35px;right:6%;color:#7d817b;font-size:8px;max-width:36%;text-align:right;line-height:1.7}
.promotion-art .promotion-motion-network{inset:0;width:100%;height:100%;opacity:.65}
.promotion-art>.motion-caption{left:auto;right:6%;bottom:60px;z-index:8;color:#5b685f}
.promotion-art .network-destination>circle{fill:#f4f3ee;fill-opacity:.8}
.cursor{display:none!important}
.work-filmstrip{position:absolute;left:24%;right:24%;bottom:103px;z-index:12;display:flex;align-items:center;justify-content:center;gap:7px;padding-bottom:12px;overflow-x:auto;scrollbar-width:none}
.work-filmstrip:before{content:'';position:absolute;left:0;bottom:0;height:1px;width:100%;background:#f4f3ee25}
.work-filmstrip:after{content:'';position:absolute;left:0;bottom:0;height:1px;width:100%;background:#b8a0ec;transform:scaleX(var(--work-progress,.0769));transform-origin:left;transition:transform .7s}
.work-thumb{flex:0 0 30px;height:35px;padding:0;position:relative;opacity:.35;transition:opacity .4s,transform .4s}
.work-thumb img{width:100%;height:100%;object-fit:cover}
.work-thumb>span{position:absolute;inset:0;display:grid;place-items:center;background:#10101466;font-size:8px;color:#fff;opacity:0}
.work-thumb:hover,.work-thumb.active{opacity:1;transform:translateY(-3px)}
.work-thumb.active{outline:1px solid #c5afea;outline-offset:2px}
.work-thumb:hover>span{opacity:1}
#work .work-carousel{top:245px;bottom:175px}
#work .work-carousel.direct-change .work-card{transition:opacity .55s ease}
#work .work-card{max-height:calc(100svh - 410px);width:min(85vw,calc((100svh - 410px)*var(--ratio,1)))}
.presenting .work-filmstrip{bottom:165px}
.presenting #work .work-carousel{bottom:235px}
.presenting #work .work-card{max-height:calc(100svh - 470px);width:min(85vw,calc((100svh - 470px)*var(--ratio,1)))}
.presenting .promotion-poster{bottom:100px}
.presenting .promotion-reference{bottom:100px}
.presenting #evidence .case-body{bottom:110px}
.presenting .promotion-art>.motion-caption{bottom:122px}
.scene-rail a{color:#7a777d}
body[data-theme=light] .scene-rail a.active{color:#303735}
body[data-theme=light] .scene-rail a.active i{background:#6c57b7}
body[data-deck-state=paused] .scene .motion-svg *,body[data-deck-state=paused] .hero-signal i:after,body[data-deck-state=paused] .scene .analysis-motion-scan{animation-play-state:paused!important}
@media(max-height:760px) and (min-width:761px){
 #evidence .case-data-table th,#evidence .case-data-table td{font-size:14px;padding-block:8px 12px}#evidence .case-data-table thead th{font-size:9px}#evidence .case-source-meta strong{font-size:11px}#evidence .case-source-meta span{font-size:9px}#evidence .case-contribution-grid{margin:11px 0}#evidence .case-contribution>strong{font-size:19px}#evidence .case-observation-text p{font-size:10px}#evidence .case-numbers h3{font-size:22px}
 .header{top:24px}.hero-scene .scene-kicker{top:111px}.hero-copy{top:28%}.hero-copy h1{font-size:clamp(74px,7.8vw,112px)}.hero-copy p{font-size:12px;margin-top:20px}.hero-action{bottom:15%}.hero-signal{bottom:13%;font-size:7px}
 .promotion-copy{top:25%}.promotion-copy h2{font-size:clamp(42px,4.7vw,67px)}.promotion-copy>p{margin-top:20px;font-size:12px}.promotion-platforms{margin-top:18px}.promotion-platforms img{width:26px;height:26px}.channel-switch{margin-top:19px}.promotion-copy .channel-description{font-size:10px;max-width:330px}.promotion-poster{bottom:29px}.promotion-reference{bottom:29px}
 #work .work-top{top:128px}#work .work-carousel{top:200px;bottom:155px}#work .work-card{max-height:calc(100svh - 345px);width:min(85vw,calc((100svh - 345px)*var(--ratio,1)))}.work-filmstrip{bottom:94px}.work-thumb{flex-basis:25px;height:28px}
 .presenting #work .work-carousel{bottom:222px}.presenting #work .work-card{max-height:calc(100svh - 412px);width:min(85vw,calc((100svh - 412px)*var(--ratio,1)))}.presenting .work-filmstrip{bottom:157px}
}
@media(max-width:1050px) and (min-width:761px){.hero-copy h1{font-size:9vw}.hero-signal{font-size:6px;gap:10px}.hero-signal i{width:25px}.promotion-copy h2{font-size:4.8vw}.promotion-copy{max-width:49%}.promotion-copy>p{font-size:11px}.work-filmstrip{left:18%;right:18%}}
@media(max-width:760px){
 #evidence .case-body{display:flex;gap:35px}#evidence .case-numbers{padding:0;align-self:stretch}#evidence .case-numbers h3{font-size:23px}#evidence .case-data-table th,#evidence .case-data-table td{font-size:14px;padding-block:12px 16px}#evidence .case-data-table thead th{font-size:10px}#evidence .case-observation-text p{font-size:11px}#evidence .case-phones{max-height:none;gap:14px}#evidence .case-contribution>strong{font-size:21px}
 .header{top:20px;left:6%;right:6%;gap:8px}.brand{height:35px;gap:8px}.brand-monogram{font-size:29px;letter-spacing:-4px}.brand-wordmark{font-size:10px;letter-spacing:1.4px}.brand-wordmark small{font-size:5px;letter-spacing:3.3px;margin-top:3px}.header-right{gap:5px}.header select{padding:10px 6px;font-size:8px}.header-pill{padding:11px 12px;font-size:8px;gap:8px}.menu-open{padding:11px 10px}.menu-open i{display:none}
 .hero-scene .hero-stage{height:100svh;min-height:730px;padding-top:118px;background-position:63% center}
 .hero-scene .scene-kicker{position:relative;left:auto;top:auto;font-size:6px;letter-spacing:1.1px}
 .hero-copy{top:23%;left:6%;bottom:auto;max-width:95%}.hero-copy h1{font-size:clamp(53px,12.5vw,88px);line-height:1.04;letter-spacing:-.04em}.hero-copy p{font-size:11px;line-height:1.8;max-width:245px;letter-spacing:.1px;margin-top:19px}
 .hero-shade{background:linear-gradient(180deg,#f4f3ee 0%,#f4f3eeaa 34%,transparent 69%),linear-gradient(0deg,#f4f3eec9,transparent 27%)}
 .hero-action{left:6%;bottom:11%;gap:13px}.round-play{height:46px;width:46px;font-size:9px}.hero-action>div{font-size:9px}.hero-action small{font-size:7px}.hero-signal{display:none}.hero-footer{left:6%;right:6%;bottom:23px;gap:20px;font-size:6px}.hero-footer>span:first-child,.hero-footer>span:last-child{font-size:18px}
 .promotion-scene .stage{padding-bottom:30px;min-height:1050px}.promotion-copy{margin-top:38px;max-width:none}.promotion-copy h2{font-size:42px;line-height:1.18;letter-spacing:-1.8px}.promotion-copy>p{font-size:11px;margin-top:20px}.promotion-platforms{margin-top:22px;gap:20px}.promotion-platforms img{width:25px;height:25px}.channel-switch{margin-top:25px;gap:25px}.channel-switch button{font-size:10px}.promotion-copy .channel-description{font-size:11px;line-height:1.8;min-height:58px;max-width:320px}
 .promotion-art{position:relative;inset:auto;left:-6.82%;width:113.64%;height:390px;margin-top:-5px;z-index:0;overflow:hidden}.promotion-art>img{object-position:68% center;mask-image:linear-gradient(180deg,transparent,#000 15%,#000 93%,transparent);mix-blend-mode:multiply;transform:scale(1.04)}
 .promotion-poster,.promotion-poster:hover,.presenting .promotion-poster{position:relative;left:auto;right:auto;top:auto;bottom:auto;display:block;font-size:10px;margin-top:4px}
 .promotion-reference,.presenting .promotion-reference{position:relative;right:auto;bottom:auto;max-width:none;text-align:left;font-size:7px;margin-top:13px;line-height:1.7}
 .promotion-art>.motion-caption,.presenting .promotion-art>.motion-caption{bottom:18px;right:6%;left:auto;font-size:7px}
 .promotion-art .promotion-motion-network{opacity:.6}
 #work .work-scene{min-height:920px}#work .work-carousel{top:282px;bottom:195px}#work .work-card{max-height:54svh;width:min(88vw,calc(54svh*var(--ratio,1)))}
 .work-filmstrip{left:6%;right:6%;justify-content:start;bottom:123px;gap:7px;padding:5px 3px 11px}.work-thumb{flex-basis:25px;height:31px}.work-thumb.active{transform:translateY(-1px)}
 .presenting #work .work-carousel{bottom:266px}.presenting #work .work-card{max-height:54svh;width:min(88vw,calc(54svh*var(--ratio,1)))}.presenting .work-filmstrip{bottom:193px}
 .work-caption h3{font-size:13px}.work-disclaimer{font-size:7px}
}
@media(prefers-reduced-motion:reduce){.hero-signal i:after{animation:none}.promotion-art>img{transform:none}}
