/* Shared visual system. This layer intentionally supersedes legacy page-specific overrides. */
:root{--hero-ink:#082a76;--hero-paper:#eff8ff;--hero-rule:#9bbbe7;--hero-ease:cubic-bezier(.22,1,.36,1)}
html{scroll-padding-top:110px}
.subpage{background:var(--paper)}
.subpage main{overflow:hidden}
.eyebrow{display:none!important}

@keyframes hero-field-drift{0%{transform:translate3d(-1.5%,-.8%,0) scale(1)}50%{transform:translate3d(1.5%,1.2%,0) scale(1.035)}100%{transform:translate3d(-.5%,1.9%,0) scale(1.01)}}

/* OCI-inspired content sequence: sparse, ruled, and one motion direction. */
#approach{padding-top:clamp(94px,11vw,156px)!important;padding-bottom:clamp(100px,10vw,150px)!important}
.approach-principles{display:grid!important;grid-template-columns:minmax(250px,.78fr) minmax(0,1.22fr)!important;gap:clamp(48px,8vw,140px)!important;align-items:start!important;padding:0!important;margin:0!important;border:0!important}
.problem-heading{position:sticky;top:132px!important}
.problem-heading .how-heading{font-size:clamp(54px,5.4vw,88px)!important;line-height:.96!important;letter-spacing:-.055em!important}
.problem-heading>p{max-width:28rem!important;font-size:clamp(18px,1.5vw,23px)!important;line-height:1.36!important;color:var(--mid)!important;margin-top:24px!important}
.process-cards{display:grid!important;gap:0!important;padding:0!important;border-top:1px solid var(--rule)!important}
.approach-card{position:relative!important;display:grid!important;grid-template-columns:74px minmax(0,1fr)!important;gap:18px!important;min-height:164px!important;margin:0!important;padding:31px 0 30px!important;border:0!important;border-bottom:1px solid var(--rule)!important;background:transparent!important;box-shadow:none!important;transform:none!important}
.approach-card:before{content:counter(approach,decimal-leading-zero);counter-increment:approach;font-size:12px;letter-spacing:.16em;color:var(--mid);padding-top:8px}.process-cards{counter-reset:approach}
.approach-card h3{grid-column:2!important;max-width:100%!important;margin:0 0 10px!important;padding:0!important;border:0!important;font-size:clamp(28px,3.1vw,46px)!important;line-height:1.02!important;letter-spacing:-.045em!important}
.approach-card p{grid-column:2!important;max-width:37rem!important;margin:0!important;padding:0!important;border:0!important;font-size:clamp(17px,1.38vw,21px)!important;line-height:1.4!important;color:var(--mid)!important}
.js-motion .approach-card.reveal{opacity:1;transform:none!important}


/* People are clear editorial cards, not portraits with a dot mask. */
.advisor-roster{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:28px!important}
.advisor-row.advisor-row--portrait{display:grid!important;grid-template-columns:1fr!important;gap:0!important;min-height:0!important;padding:0!important;border:1px solid var(--rule)!important;background:#f8fcff!important}
.advisor-row--portrait>div:not(.advisor-photo){padding:28px 30px 0!important}.advisor-row--portrait .advisor-bio{padding-bottom:28px!important}.advisor-photo{order:-1!important;position:relative!important;height:360px!important;overflow:hidden!important;background:#dcecff!important}.advisor-photo img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center 25%!important;filter:none!important;mix-blend-mode:multiply!important}.advisor-photo span{display:none!important}
.advisor-row h3{font-size:clamp(34px,3vw,48px)!important;line-height:1!important}.advisor-bio p{font-size:18px!important;line-height:1.4!important}.advisor-logos{border-top:1px solid var(--rule)!important;padding-top:16px!important}

/* Give the decision layer a named place in the Company narrative. */
.operating-layer{position:relative;display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:clamp(42px,9vw,150px);padding-top:clamp(96px,12vw,170px);padding-bottom:clamp(96px,12vw,170px);border-top:1px solid var(--rule)}
.operating-layer h2{font-size:clamp(48px,5.4vw,86px);line-height:.97;letter-spacing:-.052em}.operating-layer p{font-size:clamp(22px,2.2vw,34px);line-height:1.22;letter-spacing:-.035em;max-width:730px}.operating-layer small{display:block;margin-top:30px;max-width:560px;font-size:18px;line-height:1.42;color:var(--mid)}
.operating-layer:after{content:"Creator intelligence\A Agentic consumer intelligence\A Commerce mix modeling\A\A Your GTM plan + competitor moves\A\A GTM Decision Engine";white-space:pre-line;grid-column:2;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:20px 0;font-size:15px;line-height:1.55;color:#315caa}

@media(max-width:900px){
 .approach-principles{gap:44px!important}.problem-heading .how-heading{font-size:clamp(48px,6.2vw,67px)!important}.approach-card{grid-template-columns:56px minmax(0,1fr)!important}
 .advisor-photo{height:300px!important}.advisor-row--portrait>div:not(.advisor-photo){padding-left:24px!important;padding-right:24px!important}
 .operating-layer{grid-template-columns:.86fr 1.14fr;gap:42px}.operating-layer:after{grid-column:2}
}
@media(max-width:680px){
 html{scroll-padding-top:82px}.subpage .nav-motto{display:none!important}
 #approach{padding-top:82px!important;padding-bottom:86px!important}.approach-principles{grid-template-columns:1fr!important;gap:40px!important}.problem-heading{position:static!important}.problem-heading .how-heading{font-size:clamp(51px,13vw,64px)!important}.problem-heading>p{font-size:19px!important}.approach-card{grid-template-columns:42px minmax(0,1fr)!important;min-height:0!important;padding:24px 0!important;gap:10px!important}.approach-card h3{font-size:31px!important}.approach-card p{font-size:17px!important}
 .advisor-roster{grid-template-columns:1fr!important}.advisor-photo{height:360px!important}.operating-layer{display:block;padding-top:80px;padding-bottom:80px}.operating-layer h2{font-size:52px}.operating-layer p{font-size:25px;margin-top:25px}.operating-layer:after{display:block;margin-top:42px;font-size:15px}
}
@media(prefers-reduced-motion:reduce){.js-motion .approach-card.reveal{opacity:1;transform:none!important;transition:none!important}}

/* Let the hero statements occupy the field instead of leaving a column of unused paper. */


/* The Company page should explain the decision brain without creating a dead, separate visual field. */
.operating-layer{display:none!important}
.company-brain{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(40px,8vw,130px);padding-top:clamp(78px,9vw,128px);padding-bottom:clamp(72px,8vw,112px);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.company-brain h2{font-size:clamp(48px,5.5vw,88px);line-height:.96;letter-spacing:-.052em}.company-brain>div>p{margin-top:25px;max-width:540px;font-size:clamp(20px,1.75vw,27px);line-height:1.35;color:var(--mid)}
.company-brain-flow{display:grid;grid-template-columns:1fr;align-content:start;border-top:1px solid var(--rule)}
.company-brain-flow>div{display:grid;grid-template-columns:150px 1fr;gap:20px;padding:20px 0;border-bottom:1px solid var(--rule);font-size:17px;line-height:1.35}.company-brain-flow strong{font-size:18px;font-weight:500}.company-brain-flow .brain-output{margin-top:18px;padding:27px 0;color:var(--ink)}.company-brain-flow .brain-output strong{font-size:clamp(26px,2.5vw,39px);letter-spacing:-.035em}.company-brain-flow small{display:block;color:var(--mid);font-size:15px}
.subpage-company #advisors{padding-top:clamp(76px,8vw,110px)!important;padding-bottom:clamp(78px,8vw,112px)!important}.subpage-company #advisors .section-intro{margin-bottom:42px!important}.advisor-roster{gap:16px!important}.advisor-photo{height:300px!important}.advisor-row--portrait>div:not(.advisor-photo){padding:24px 26px 0!important}.advisor-row--portrait .advisor-bio{padding-bottom:24px!important}

/* Trade-offs stays an actual chart: readable chart first, explanatory copy second. */
.tradeoffs{display:grid!important;grid-template-columns:minmax(0,1.18fr) minmax(300px,.72fr)!important;gap:clamp(40px,7vw,110px)!important;align-items:center!important;padding-top:clamp(92px,10vw,142px)!important;padding-bottom:clamp(92px,10vw,142px)!important}
.tradeoffs>.graphic{grid-column:1!important;grid-row:1!important;width:100%!important;margin:0!important}.tradeoffs-copy{grid-column:2!important;grid-row:1!important;max-width:470px!important;margin:0!important;text-align:left!important;border:0!important;padding:0!important}.tradeoffs-copy h2{font-size:clamp(52px,5.4vw,84px)!important;line-height:.95!important}.tradeoffs-copy p{font-size:clamp(20px,1.6vw,25px)!important;color:var(--mid)!important}.tradeoffs .response-chart{min-width:0!important}.tradeoffs .response-chart path{stroke:#0a3fa7!important;stroke-width:2.5!important}.tradeoffs .response-chart .b,.tradeoffs .response-chart .key-b{stroke:#4c81ee!important;stroke-dasharray:5 5}.tradeoffs .response-chart .axes{stroke:#2352a9!important;stroke-width:1.25!important}.tradeoffs .response-chart text{fill:#163d89!important;font-size:17px!important}

@media(max-width:680px){
 .company-brain{display:block;padding-top:76px;padding-bottom:70px}.company-brain>div>p{font-size:22px}.company-brain-flow{margin-top:42px}.company-brain-flow>div{grid-template-columns:1fr;gap:5px}.company-brain-flow .brain-output{margin-top:10px}.subpage-company #advisors{padding-top:72px!important}.advisor-photo{height:290px!important}
 .tradeoffs{grid-template-columns:1fr!important;gap:42px!important}.tradeoffs>.graphic{grid-column:1!important;grid-row:1!important}.tradeoffs-copy{grid-column:1!important;grid-row:2!important;max-width:none!important;border-top:1px solid var(--rule)!important;padding-top:34px!important}.tradeoffs-copy h2{font-size:clamp(48px,12vw,66px)!important}.tradeoffs .response-chart text{font-size:15px!important}
}

/* A compact editorial nav: it should never become a second page header. */


/* Keep anchor links clear of the fixed masthead and preserve enough room for the chart. */
#tradeoffs-title{scroll-margin-top:150px}

/* The film is a compact proof point in the working-model hero, not a second full section. */


/* State the named decision brain before the flow diagram, rather than asking the diagram to carry the message alone. */
.command-brain{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(34px,7vw,110px);align-items:end;margin:clamp(38px,5vw,64px) 0 0;padding:30px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.command-brain__label{margin:0 0 10px!important;font-size:12px!important;letter-spacing:.15em;text-transform:uppercase;color:var(--mid)!important}.command-brain h3{font-size:clamp(38px,4.3vw,66px)!important;line-height:.95!important;letter-spacing:-.052em!important;font-weight:300!important}.command-brain>p{max-width:630px!important;margin:0!important;font-size:clamp(19px,1.65vw,25px)!important;line-height:1.36!important;color:var(--mid)!important}
@media(max-width:680px){.command-brain{grid-template-columns:1fr;gap:22px;margin-top:34px;padding:25px 0}.command-brain h3{font-size:clamp(39px,10.5vw,54px)!important}.command-brain>p{font-size:20px!important}}


