/* 12B — screen-print texture, cut planes and quiet cinematic depth. */
.visual-v12b{--film-ink:#0c1727;--film-paper:#eee3d4;--film-ice:#c8d9da}
.film-host{position:relative;isolation:isolate;overflow:hidden}
.film-field{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden;user-select:none;contain:strict}
.film-layer{position:absolute;inset:-4%;width:108%;height:108%;max-width:none;object-fit:cover;pointer-events:none;animation:film-base-drift 20s ease-in-out infinite alternate;animation-play-state:paused;transform-origin:65% 45%}
.film-cut{animation-name:film-cut-drift;animation-duration:16s;opacity:.88}
.film-register{animation-name:film-register-drift;animation-duration:23s;opacity:.96}
.film-field::after{content:"";position:absolute;inset:0;pointer-events:none;background:url('assets/12b/grain.webp') center/700px auto;mix-blend-mode:soft-light;opacity:.32}
:root[data-ambient-motion=running] .film-field.object-visible .film-layer{animation-play-state:running}
@keyframes film-base-drift{from{transform:translate3d(-.6%,-.4%,0) scale(1.015)}to{transform:translate3d(.6%,.4%,0) scale(1.035)}}
@keyframes film-cut-drift{from{transform:translate3d(-1.4%,.9%,0) rotate(-.7deg) scale(1.04)}to{transform:translate3d(1.5%,-.9%,0) rotate(.7deg) scale(1.04)}}
@keyframes film-register-drift{from{transform:translate3d(1.2%,0,0)}to{transform:translate3d(-1.2%,.4%,0)}}
/* Main objects are separate from the paper planes. All text is above both. */
.visual-v12b .chapter-visual{position:absolute}
.visual-v12b :is(.chapter-visual,.product-visual,.detail-object-visual)>.film-field{z-index:0}
.visual-v12b :is(.chapter-visual,.product-visual,.detail-object-visual)>.object-turn{z-index:1}
.visual-v12b .chapter-visual>.ambient-field,.visual-v12b .product-visual>.ambient-field{z-index:2}
.visual-v12b .chapter-brand .chapter-visual>.ambient-field{opacity:1}
.visual-v12b .chapter-brand .metal-arrow-poster{z-index:1}
.visual-v12b .chapter-brand::after{background:linear-gradient(90deg,#07111eef 0%,#091522a3 29%,#0b172633 53%,transparent 78%),linear-gradient(0deg,#09111bf5,transparent 32%)}
.visual-v12b :is(.chapter-about,.chapter-insights,.chapter-solutions)::after{background:linear-gradient(90deg,#091522fa,#091522da 28%,#09152270 59%,transparent 90%),linear-gradient(0deg,#09111bf5,transparent 36%)}
.visual-v12b .chapter-slide{background:#0c1727}
.visual-v12b .chapter-title .hero-line-frame{background:#d4e0de}
.visual-v12b .chapter-cta{background:#f2e7d8;border-color:#f2e7d8;color:#111b2a}
.visual-v12b .chapter-cta:hover{background:#d0e0df;border-color:#d0e0df}
.visual-v12b .object-body{filter:none}
.visual-v12b .object-sheen{opacity:.74;mix-blend-mode:screen;background-image:linear-gradient(110deg,transparent 28%,#d9edff22 36%,#fff0cf88 43%,transparent 49%,#d9edff1f 63%,transparent 71%)}
.visual-v12b .product-visual::before{content:"";position:absolute;inset:0;z-index:3;pointer-events:none;background:url('assets/12b/grain.webp') center/700px auto;mix-blend-mode:soft-light;opacity:.38}
.visual-v12b .chapter-people{z-index:1;background:transparent}
.visual-v12b .chapter-careers::after{background:linear-gradient(90deg,#091522dd,transparent 86%),linear-gradient(0deg,#09111b 3%,transparent 90%)}
.visual-v12b .career-portrait-wall{z-index:1}
/* Product reading blocks are quiet; their illustrations carry the stronger montage. */
.visual-v12b :is(.spatial-product,.spatial-product:nth-child(n)){--product-ground:#101d30;--product-veil:#101d30c9;position:relative;isolation:isolate;overflow:hidden;background:var(--product-ground);color:#f4e9dc;box-shadow:0 18px 50px #0a172c18}
.visual-v12b .spatial-commerce:nth-child(n){--product-ground:#36202a;--product-veil:#36202ac9}
.visual-v12b .spatial-customer:nth-child(n){--product-ground:#dce5e2;--product-veil:#dce5e2c9;color:#12243a}
.visual-v12b .spatial-data:nth-child(n){--product-ground:#141d39;--product-veil:#141d39c9}
.visual-v12b .spatial-product .product-visual{aspect-ratio:1.58;margin-bottom:-110px;z-index:0;overflow:visible;background:none}
.visual-v12b .spatial-product .product-visual>.film-field{bottom:-20px;mask-image:linear-gradient(0deg,transparent,#000 42%);-webkit-mask-image:linear-gradient(0deg,transparent,#000 42%)}
.visual-v12b .spatial-product .product-visual>.object-turn{inset:-2% -3% -23%}
.visual-v12b .spatial-product .product-visual::before{bottom:-20px;mask-image:linear-gradient(0deg,transparent,#000 55%);-webkit-mask-image:linear-gradient(0deg,transparent,#000 55%)}
.visual-v12b .spatial-product .product-copy{position:relative;z-index:2;padding-top:32px;background:linear-gradient(0deg,var(--product-ground) 0%,var(--product-ground) calc(100% - 190px),var(--product-veil) calc(100% - 105px),transparent 100%)}
.visual-v12b .product-copy :is(h3,.product-meta){text-shadow:0 2px 16px var(--product-ground),0 1px 3px var(--product-ground)}
.visual-v12b .product-visual .ambient-field{opacity:.12}
.visual-v12b .data-stream-scene>.ambient-field{opacity:1}
.visual-v12b .solar-scene>.ambient-field{opacity:1;inset:0;mask-image:none;-webkit-mask-image:none}
.visual-v12b .solar-scene>.film-field{filter:brightness(.66) saturate(.8)}
.visual-v12b .chapter-solutions .chapter-visual>.ambient-field{z-index:3;opacity:1}
.visual-v12b .spatial-product .solar-scene>.ambient-field{bottom:-20%;mask-image:linear-gradient(0deg,transparent,#000 29%);-webkit-mask-image:linear-gradient(0deg,transparent,#000 29%)}
.visual-v12b .detail-object-visual{position:absolute}
.visual-v12b .spatial-detail::before{z-index:-1;background:linear-gradient(90deg,#091522fa,#091522e0 40%,#09152270 78%,#09152220)}
.visual-v12b .spatial-detail>.film-field{z-index:-2}
.visual-v12b .spatial-detail>.ambient-field{z-index:0;opacity:.82}
.visual-v12b .spatial-detail.solar-scene>.ambient-field{opacity:1;mask-image:none;-webkit-mask-image:none}
.visual-v12b .spatial-detail>*:not(.film-field):not(.ambient-field):not(.detail-object-visual){position:relative;z-index:1}
/* On reading surfaces the collage occupies an edge, never the whole text column. */
.visual-v12b :is(.composed-surface,.challenge-entry,.challenge-details){background:#ece5da}
.visual-v12b .film-paper>.film-field{left:42%;opacity:.28;mask-image:linear-gradient(90deg,transparent,#000 65%);-webkit-mask-image:linear-gradient(90deg,transparent,#000 65%)}
.visual-v12b .film-paper>.ambient-field{opacity:.12}
.visual-v12b .film-edge>.film-field{opacity:.74;mask-image:linear-gradient(90deg,transparent 20%,#000 78%);-webkit-mask-image:linear-gradient(90deg,transparent 20%,#000 78%)}
.visual-v12b .film-edge>.ambient-field{opacity:.13}
.visual-v12b .page-hero:not(.knowledge-hero){background:#0c1727}
.visual-v12b .knowledge-hero{background:#eee5d8}
.visual-v12b .challenge-question,.visual-v12b .challenge-grid>a{background:#132137;color:#f4e9dc}
.visual-v12b :is(.challenge-panel-2,.challenge-panel-4) .challenge-question,.visual-v12b .challenge-grid>a:nth-child(2n){background:#dce5df;color:#132337}
.visual-v12b .challenge-panel-3 .challenge-question,.visual-v12b .challenge-grid>a:nth-child(3){background:#3b2531;color:#f4e9dc}
.visual-v12b .film-question>.film-field{left:20%;opacity:.24;mask-image:linear-gradient(90deg,transparent,#000 95%);-webkit-mask-image:linear-gradient(90deg,transparent,#000 95%)}
.visual-v12b .film-question>.ambient-field{opacity:.1}
.visual-v12b .challenge-answer{background:linear-gradient(130deg,#f5eee4,#e1e6e0)}
.visual-v12b .challenge-measures>span{background:#cdd9d780}
.visual-v12b .related-products>a:hover{background:#cededb}
.visual-v12b .question-frame{background:#172940;color:#f1e4d4}
.visual-v12b .kinetic-digital>.film-field{z-index:0}
.visual-v12b .kinetic-digital>.ambient-field{opacity:.16;z-index:1}
.visual-v12b .editorial-growth{background:#bc663e}
.visual-v12b .editorial-value{background:#e7e4d8}
.visual-v12b .editorial-strategy{background:#101e34}
.visual-v12b .film-editorial>.film-field{opacity:.3;mask-image:linear-gradient(135deg,transparent 12%,#000 90%);-webkit-mask-image:linear-gradient(135deg,transparent 12%,#000 90%)}
.visual-v12b .film-editorial>.ambient-field{opacity:.1}
.visual-v12b .editorial-title .band-violet{background:#2e466a}
.visual-v12b .footer-bottom>span a{display:inline;text-decoration:underline;text-underline-offset:3px;font:inherit}
.visual-v12b .rs-mini{background:#fa4900!important;opacity:.98;-webkit-mask-image:url('assets/12b/rs-arrow-outline.svg');mask-image:url('assets/12b/rs-arrow-outline.svg')}
.visual-v12b :is(.button,.chapter-cta){background:#f2e7d8;color:#111b2a;border-color:#f2e7d8}
.visual-v12b :is(.button,.chapter-cta):hover{background:#d0e0df;color:#111b2a;border-color:#d0e0df}
.visual-v12b .text-link{border-bottom-color:#fa4900}
.v12b-handoff h2{margin-top:26px}.v12b-handoff p{max-width:960px}
@media(max-width:760px){
 .visual-v12b .chapter-visual>.film-field .film-layer{object-position:64% center}
 .visual-v12b .chapter-brand::after{background:linear-gradient(0deg,#09111b 0%,#091522f0 31%,#0915228f 58%,#09152229 77%,transparent)}
 .visual-v12b :is(.chapter-about,.chapter-insights,.chapter-solutions)::after{background:linear-gradient(0deg,#09111b 0%,#091522f0 38%,#09152270 67%,transparent)}
 .visual-v12b .film-paper>.film-field{left:10%;opacity:.18}
 .visual-v12b .film-question>.film-field{opacity:.21}
 .visual-v12b .spatial-product .product-visual{margin-bottom:-90px}
 .visual-v12b .spatial-product .product-copy{padding-top:27px}
 .visual-v12b .spatial-detail::before{background:linear-gradient(0deg,#091522f2,#091522b8 70%,#09152265)}
}
@media(prefers-reduced-motion:reduce){.film-layer{animation:none!important;transform:none!important}}
@media print{.film-layer{animation:none!important;transform:none!important}.film-field{opacity:.14!important}}
