/* Shared legacy editorial modules, moved out of the navigation stylesheet. */
:root{--paper:#ffffff;--paper-2:#f5f5f5}

.quote{background:none;border:none;box-shadow:none;border-radius:0;padding:6px 0;text-align:center;position:relative;max-width:860px;margin:0 auto}
.quote::before{content:'';display:block;width:32px;height:2px;border-radius:2px;background:var(--accent);margin:0 auto 30px}
.quote .q{font-family:'Satoshi',system-ui,sans-serif;font-style:normal;font-weight:400;font-size:clamp(24px,2.8vw,34px);line-height:1.32;letter-spacing:-.02em;color:var(--ink);max-width:760px;margin:0 auto 26px}
.quote .q::before{content:'\201C';color:var(--accent);font-weight:600}
.quote .q::after{content:'\201D';color:var(--accent);font-weight:600}
.quote .who{font-family:'Satoshi',system-ui,sans-serif;text-transform:uppercase;letter-spacing:.18em;font-size:11px;color:var(--ink-faint)}

.handoff{background:none;color:var(--ink);border:none;border-radius:0;padding:0}
.handoff .eyebrow{color:var(--ink-faint)}
.handoff h2{color:var(--ink)}
.handoff p{color:var(--ink-soft);max-width:680px}
.handoff .accent{color:var(--accent)}

.cards .card:nth-child(1),.themes .theme:nth-child(1),.voices .voice:nth-child(1){background:var(--surface,#fff) radial-gradient(125% 95% at 100% 0%,rgba(126,185,217,.30),rgba(243,208,159,.15) 46%,transparent 72%) no-repeat}
.cards .card:nth-child(2),.themes .theme:nth-child(2),.voices .voice:nth-child(2){background:var(--surface,#fff) radial-gradient(125% 95% at 100% 0%,rgba(90,147,207,.28),rgba(185,220,244,.18) 46%,transparent 72%) no-repeat}
.cards .card:nth-child(3),.themes .theme:nth-child(3),.voices .voice:nth-child(3){background:var(--surface,#fff) radial-gradient(125% 95% at 100% 0%,rgba(168,158,203,.30),rgba(247,220,194,.16) 46%,transparent 72%) no-repeat}
.cards .card:nth-child(4),.themes .theme:nth-child(4){background:var(--surface,#fff) radial-gradient(125% 95% at 100% 0%,rgba(61,79,107,.22),rgba(154,161,168,.13) 46%,transparent 72%) no-repeat}
.cards .card:nth-child(1):hover,.themes .theme:nth-child(1):hover,.voices .voice:nth-child(1):hover{background:var(--surface,#fff) radial-gradient(130% 100% at 100% 0%,rgba(126,185,217,.50),rgba(243,208,159,.26) 46%,transparent 76%) no-repeat}
.cards .card:nth-child(2):hover,.themes .theme:nth-child(2):hover,.voices .voice:nth-child(2):hover{background:var(--surface,#fff) radial-gradient(130% 100% at 100% 0%,rgba(90,147,207,.46),rgba(185,220,244,.30) 46%,transparent 76%) no-repeat}
.cards .card:nth-child(3):hover,.themes .theme:nth-child(3):hover,.voices .voice:nth-child(3):hover{background:var(--surface,#fff) radial-gradient(130% 100% at 100% 0%,rgba(168,158,203,.50),rgba(247,220,194,.28) 46%,transparent 76%) no-repeat}
.cards .card:nth-child(4):hover,.themes .theme:nth-child(4):hover{background:var(--surface,#fff) radial-gradient(130% 100% at 100% 0%,rgba(61,79,107,.40),rgba(154,161,168,.24) 46%,transparent 76%) no-repeat}

.findings{margin-top:4px}
.frow{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(24px,4vw,56px);padding:24px 0;border-top:1px solid var(--line,rgba(20,32,52,.12));align-items:start}
.frow:last-child{border-bottom:1px solid var(--line,rgba(20,32,52,.12))}
.frow .fr-n{font-family:'Satoshi',system-ui,sans-serif;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#2f6cb8}
.frow .fr-find{font-size:clamp(17px,1.7vw,21px);font-weight:500;line-height:1.22;letter-spacing:-.01em;margin-top:8px;color:var(--ink,#22271e)}
.frow .fr-q{font-size:15px;color:var(--ink-soft,#4a4a40);line-height:1.55}
.frow .fr-attr{font-family:'Satoshi',system-ui,sans-serif;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint,#8b95a3);margin-top:10px}
@media(max-width:760px){.frow{grid-template-columns:1fr;gap:10px}}

.impact-sky{border-radius:26px;padding:clamp(30px,4.4vw,52px);background:radial-gradient(46% 64% at 13% 14%,rgba(255,255,255,.9),transparent 56%),radial-gradient(42% 54% at 87% 8%,rgba(255,255,255,.72),transparent 52%),radial-gradient(54% 60% at 66% 100%,rgba(255,255,255,.6),transparent 56%),linear-gradient(180deg,#cfe3f6 0%,#dceafb 50%,#e9f2fc 100%)}
.impact-sky .imp{border:none;border-radius:18px;padding:30px 28px;background:#fff;box-shadow:0 22px 54px -32px rgba(20,32,52,.32)}
.impact-sky .imp .eyebrow{display:flex;align-items:center;gap:7px;margin-bottom:18px}
.impact-sky .imp .eyebrow::before{content:'';width:7px;height:7px;border-radius:50%;background:var(--green,#0083E7)}
.impact-sky .imp .ibig{font-family:'Satoshi',system-ui,sans-serif;font-weight:500;font-size:clamp(24px,2.2vw,32px);letter-spacing:-.02em;line-height:1.12;margin-bottom:14px;color:var(--ink,#22271e)}
.impact-sky .imp .ibig .arrow{color:var(--green,#0083E7);font-weight:500;font-size:.82em;display:inline-block;opacity:1;transform:none}
.impact-sky .imp p{font-size:14.5px;color:var(--ink-soft,#4a4a40);margin:0;line-height:1.5}
@media(max-width:820px){.impact-sky{padding:24px}.impact-sky .impact{grid-template-columns:1fr}}

.words{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:4px 0 28px}
.wcard{display:flex;flex-direction:column;justify-content:space-between;gap:30px;background:#fff;border:1px solid rgba(20,32,52,.07);border-radius:18px;padding:30px 28px;box-shadow:0 20px 52px -34px rgba(20,32,52,.30)}
.wcard .wq{font-family:'Satoshi',system-ui,sans-serif;font-weight:500;font-size:clamp(14px,1.3vw,16px);line-height:1.4;letter-spacing:-.01em;color:var(--ink,#22271e);margin:0}
.wcard .wpersona{display:flex;align-items:center;gap:13px}
.wcard .wav{width:46px;height:46px;border-radius:50%;flex:0 0 auto;background:#eef2f6;border:1px solid var(--line,rgba(20,32,52,.12));object-fit:cover}
.wcard .wname{display:block;font-weight:600;font-size:15px;color:var(--ink,#22271e);letter-spacing:-.01em}
.wcard .wctx{display:block;font-family:'Satoshi',system-ui,sans-serif;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint,#8b95a3);margin-top:3px}
@media(max-width:820px){.words{grid-template-columns:1fr}}
.words .wcard{opacity:1;transform:none;transition:opacity .9s var(--ease,cubic-bezier(.22,1,.36,1)),transform .9s var(--ease,cubic-bezier(.22,1,.36,1))}
.words.in .wcard{opacity:1;transform:none}
.words.in .wcard:nth-child(1){transition-delay:.05s}
.words.in .wcard:nth-child(2){transition-delay:.16s}
.words.in .wcard:nth-child(3){transition-delay:.27s}
@media(prefers-reduced-motion:reduce){.words .wcard{opacity:1!important;transform:none!important;transition:none!important}}
.impact-sky .imp{transition:transform .35s cubic-bezier(.22,1,.36,1),box-shadow .35s ease,background .35s ease}
.impact-sky .imp:hover{transform:translateY(-4px);background:var(--surface,#fff) radial-gradient(130% 100% at 100% 0%,rgba(126,185,217,.5),rgba(243,208,159,.26) 46%,transparent 76%) no-repeat;box-shadow:0 30px 60px -34px rgba(20,32,52,.36)}
@media(prefers-reduced-motion:reduce){.impact-sky .imp{transition:none}.impact-sky .imp:hover{transform:none}}

.reframe{max-width:860px;margin:2px 0 6px}
.reframe .re-eyebrow{font-family:'Satoshi',system-ui,sans-serif;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--green,#0083E7);display:block;margin-bottom:14px}
.reframe .re-line{font-family:'Satoshi',system-ui,sans-serif;font-weight:400;font-size:clamp(20px,2.4vw,30px);letter-spacing:-.02em;line-height:1.32;margin:0;color:var(--ink-soft,#4a4a40)}
.reframe .re-line em{font-style:normal;color:var(--ink,#22271e);font-weight:500}
.reframe .re-line strong{font-weight:500;color:var(--green,#0083E7)}

.shiftblk{max-width:760px}
.shiftblk .seyebrow{font-family:'Satoshi',system-ui,sans-serif;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--green,#0083E7);display:block;margin-bottom:16px}
.shiftblk .old{font-family:'Satoshi',system-ui,sans-serif;font-weight:400;font-size:clamp(19px,2.5vw,29px);letter-spacing:-.01em;color:#aab1bb;background-image:linear-gradient(currentColor,currentColor);background-repeat:no-repeat;background-position:0 56%;background-size:0% 1.5px}
.shiftblk.go .old{animation:strikeIn .55s cubic-bezier(.22,1,.36,1) .15s forwards}
@keyframes strikeIn{to{background-size:100% 1.5px}}
.shiftblk .arw{color:var(--green,#0083E7);margin:0 10px;font-weight:400;font-size:.82em;opacity:1;transition:opacity .4s ease .5s}
.shiftblk.go .arw{opacity:1}
.shiftblk .new{display:block;margin-top:12px;font-family:'Satoshi',system-ui,sans-serif;font-weight:500;font-size:clamp(28px,4.4vw,52px);letter-spacing:-.03em;line-height:1.05;color:var(--ink,#22271e);opacity:1;transform:none;transition:opacity .7s cubic-bezier(.22,1,.36,1) .45s,transform .7s cubic-bezier(.22,1,.36,1) .45s}
.shiftblk.go .new{opacity:1;transform:none}
.shiftblk .new em{font-style:normal;color:var(--green,#0083E7)}
.shiftblk .ssub{font-size:16px;color:var(--ink-soft,#4a4a40);margin:22px 0 0;max-width:56ch;line-height:1.6;opacity:1;transition:opacity .6s ease .8s}
.shiftblk.go .ssub{opacity:1}
@media(prefers-reduced-motion:reduce){.shiftblk .old{background-size:100% 1.5px}.shiftblk .new,.shiftblk .arw,.shiftblk .ssub{opacity:1;transform:none}}

.stepper{border:none!important;background:none!important;box-shadow:none!important;border-radius:0!important;overflow:visible!important;margin-top:26px!important;counter-reset:stp}
.stepper .step-tabs{display:none!important}
.stepper .step-ind{display:none!important}
.stepper .step-panels{padding:0!important;min-height:0!important}
.stepper .step-panel{display:block!important;opacity:1!important;animation:none!important;border-top:1px solid var(--line,rgba(20,32,52,.12));padding:24px 0!important}
.stepper .step-panel:first-child{border-top:none!important}
.stepper .step-panel h3::before{counter-increment:stp;content:"0" counter(stp) "\00a0\00a0\00a0";font-family:'Satoshi',system-ui,sans-serif;color:var(--accent,#16202b);font-size:.6em;letter-spacing:.14em;vertical-align:2px}
.mk{background-image:linear-gradient(rgba(0,131,231,.16),rgba(0,131,231,.16));background-repeat:no-repeat;background-position:0 92%;background-size:100% .8em;padding:0 .05em;-webkit-box-decoration-break:clone;box-decoration-break:clone}
#stepper{position:relative;padding-left:34px}
#stepper::before{content:'';position:absolute;left:5px;top:20px;bottom:20px;width:2px;background:var(--line)}
#stepper .step-panel{position:relative}
#stepper .step-panel::before{content:'';position:absolute;left:-35px;top:27px;width:16px;height:16px;border-radius:50%;background:linear-gradient(150deg,rgba(120,195,255,.65),rgba(0,131,231,.4));border:1px solid rgba(255,255,255,.6);box-shadow:inset 0 1px 1.5px rgba(255,255,255,.85),inset 0 -2px 3px rgba(0,70,140,.3),0 5px 12px -3px rgba(0,131,231,.38),0 0 0 5px #fff;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:1;transition:transform .45s ease,box-shadow .45s ease,background .45s ease}
#stepper.lit .step-panel::before{transform:scale(1.16);background:linear-gradient(150deg,rgba(125,198,255,.92),rgba(0,131,231,.72));box-shadow:inset 0 1px 1.5px rgba(255,255,255,.95),inset 0 -2px 4px rgba(0,70,140,.45),0 6px 16px -3px rgba(0,131,231,.55),0 0 0 5px #fff}
#stepper.lit .step-panel:nth-child(1)::before{transition-delay:.05s}
#stepper.lit .step-panel:nth-child(2)::before{transition-delay:.22s}
#stepper.lit .step-panel:nth-child(3)::before{transition-delay:.39s}
#stepper.lit .step-panel:nth-child(4)::before{transition-delay:.56s}
@media(max-width:680px){#stepper{padding-left:28px}#stepper .step-panel::before{left:-28px}}

.refl-split{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start}
.refl-split .rs-big{font-family:'Satoshi',system-ui,sans-serif;font-weight:400;font-size:clamp(30px,4.2vw,54px);line-height:1.06;letter-spacing:-.02em;margin:0;color:var(--ink);position:sticky;top:96px}
.refl-split .rs-big em{font-style:italic;color:#0083E7}
.refl-split .rs-body p{font-size:16.5px;line-height:1.68;color:var(--ink-soft);margin:0 0 20px}
.refl-split .rs-body p:last-child{color:var(--ink);margin-bottom:0}
@media(max-width:820px){.refl-split{grid-template-columns:1fr;gap:26px}.refl-split .rs-big{position:static}}

.case-study{
  --case-canvas:#ffffff;
  --case-sidebar:#ffffff;
  --case-accent:var(--accent);
  --case-ink:#25282d;
  --case-soft:#4e5f74;
  --case-faint:#32404f;
  --case-rule:rgba(37,40,45,.12);
  --case-prose:720px;
  --case-media:1040px;
  --case-rail:236px;
  background:var(--case-canvas)!important;
  color:var(--case-ink);
  font-family:var(--font-text);
  padding-left:0;
}
.case-study .wrap{width:min(var(--case-media),calc(100% - 80px));margin-inline:auto}
.case-study header.hero{padding-block:clamp(72px,8vw,104px) clamp(52px,6vw,72px)}
.case-study header.hero h1{
  max-width:820px;margin:16px 0 20px;font-size:clamp(42px,4.4vw,56px);
  line-height:1.08;letter-spacing:-.034em;font-weight:400;text-transform:none;
}
.case-study .sec-head{max-width:var(--case-prose);margin-bottom:32px}
.case-study .sec-head h2{
  margin-top:16px;font-size:clamp(28px,2.5vw,32px);line-height:1.18;
  letter-spacing:-.031em;font-weight:500;text-transform:none;
}
.case-study .eyebrow,
.case-study .trust-label,
.case-study .voices-label,
.case-study .snap-kicker{
  font-family:'Satoshi',system-ui,sans-serif;
  color:#32404f;font-size:12px;font-weight:600;
  letter-spacing:.1em;line-height:1.5;text-transform:uppercase;
}
.case-study[data-case-accent] header.hero .eyebrow{color:#32404f}
.case-study section{padding-block:56px;border-top:0!important;border-bottom:0!important}
.case-study p{max-width:68ch;color:var(--case-soft);font-size:15px;line-height:1.5}
.case-study figure,.case-study .visual{margin-block:clamp(28px,3.5vw,48px)}
.case-study figcaption{margin-top:12px;color:var(--case-faint);font-size:12px;line-height:1.5}
.case-study .snap-card,.case-study .meta-grid{
  border:0;border-radius:0;background:transparent;box-shadow:none;
}
.case-study .card,.case-study .voice,.case-study .imp{
  border:1px solid var(--case-rule);background:#fff;box-shadow:none;
}
@media(min-width:1180px){
  .case-study{padding-left:var(--case-rail)}
}
@media(max-width:1179px){
  .case-study .wrap{width:min(100% - 40px,var(--case-media))}
}
@media(max-width:680px){
  .case-study .wrap{width:min(100% - 32px,var(--case-media))}
  .case-study header.hero{padding-block:64px 48px}
  .case-study header.hero h1{font-size:clamp(38px,11vw,48px)}
  .case-study section{padding-block:48px}
}
.case-study .section-lede{margin-top:16px;font-size:15px;line-height:1.5;color:var(--case-soft)}
.case-study :is(header.hero h1,.sec-head h2,.refl-split .rs-big,.handoff h2,.nextcase .t){
  text-wrap:balance;
}
.case-study :is(header.hero .lede,.section-lede,.refl-split .rs-body p,.handoff p){
  text-wrap:pretty;
}
.case-study :is(header.hero h1,.sec-head h2,.refl-split .rs-big,.handoff h2) :is(.accent,.mk,em){
  color:inherit!important;background:none!important;background-image:none!important;
  padding:0!important;border-radius:0!important;
}
.case-study p :is(b,strong,em,.mk){
  color:inherit!important;font-weight:inherit!important;font-style:normal!important;
  background:none!important;background-image:none!important;padding:0!important;border-radius:0!important;
}
.case-study .reframe{max-width:760px}
.case-study .reframe .re-eyebrow{color:#32404f}
.case-study .reframe .re-line{
  color:var(--case-soft);font-size:clamp(18px,1.6vw,22px);line-height:1.4;
  letter-spacing:-.01em;
}
.case-study .trust-sec{padding-block:48px 32px}
.case-study .trust-sec .wrap{display:flex;flex-direction:column;align-items:flex-start}
.case-study .trust-label,.case-study .trust-note{text-align:left;margin-inline:0}
.case-study .trust-row{justify-content:flex-start;width:100%}
.case-study .snapshot-sec{padding-block:48px}
.case-study .snapshot{border-top:0!important}
.case-study .snap-fact p,.case-study .snap-cell p{font-size:15px;line-height:1.5}
.case-study .quote{max-width:780px;margin-inline:auto;padding:0;background:transparent;border:0;box-shadow:none}
.case-study .quote .q{font-size:clamp(28px,3.2vw,42px);line-height:1.25;font-weight:400;color:var(--case-ink)}
.case-study .impact-sky{padding:0;background:transparent;border-radius:0}
.case-study .impact{gap:20px}
.case-study .handoff{padding-block:0;background:transparent;color:var(--case-ink)}
.case-study footer,.case-study .nextcase{border-top:0!important;border-bottom:0!important}
.case-study .nextcase .t{font-size:clamp(30px,4vw,54px);font-weight:500;text-transform:none}
.case-study[data-case-accent] :is(.cards .card,.themes .theme,.voices .voice){background:#fff;box-shadow:none}
.case-study[data-case-accent] :is(.cards .card,.themes .theme,.voices .voice):hover{background:#fff;box-shadow:none;transform:none}
.case-study[data-case-accent] .impact-sky .imp{background:#fff;box-shadow:none}
.case-study[data-case-accent] .impact-sky .imp:hover{background:#fff;box-shadow:none;transform:none}

/* Shared narrative content never depends on JavaScript for visibility. */
.case-study .rv,.case-study .reveal,
.case-study .words .wcard,
.case-study .shiftblk .new,.case-study .shiftblk .arw,.case-study .shiftblk .ssub{
  opacity:1;transform:none;
  transition:opacity 600ms var(--ease-expressive),transform 600ms var(--ease-expressive);
}
.case-study .rv.in,.case-study .reveal.in{opacity:1;transform:none}
.case-study section[id]{scroll-margin-top:96px}
.case-study :focus-visible{
  outline:2px solid var(--focus-inner);outline-offset:2px;
  box-shadow:0 0 0 5px var(--focus-ring);
}
@media(prefers-reduced-motion:reduce){
  .case-study *{scroll-behavior:auto!important}
  .case-study .rv,.case-study .reveal,.case-study .words .wcard,
  .case-study .shiftblk .new,.case-study .shiftblk .arw,.case-study .shiftblk .ssub{
    opacity:1!important;transform:none!important;animation:none!important;transition:none!important;
  }
}
