.strategy-page {
  --s33-ink: #10100f;
  --s33-paper: #f6f6f3;
  --s33-soft: #ecece7;
  --s33-muted: #545550;
  --s33-accent: #465ed8;
  --s33-pad: clamp(22px, 5.2vw, 80px);
  background: var(--s33-paper);
  color: var(--s33-ink);
}

.strategy-page main { overflow: clip; background: #fff; }
.strategy-page main > section { position: relative; margin: 0; border: 0 !important; }
.strategy-page main :is(h1, h2, h3, p) { margin: 0; }
.strategy-page main :is(a) { color: inherit; text-decoration: none; }
body.strategy-page main em { color: var(--s33-accent) !important; font-style: normal; }
.strategy-page .reveal { opacity: 1 !important; transform: none !important; }
body.strategy-page main > section.s33-hero,
body.strategy-page main > section.s33-scale,
body.strategy-page main > section.s33-model,
body.strategy-page main > section.s33-final { background: #fff !important; }
body.strategy-page main > section.s33-today,
body.strategy-page main > section.s33-northstar { background: #10100f !important; }
body.strategy-page main > section.s33-story { background: #efefe9 !important; }
body.strategy-page main > section.s33-company,
body.strategy-page main > section.s33-qualification { background: #e9e9e4 !important; }

.s33-eyebrow,
.s33-today > span,
.s33-scale > span,
.s33-story-intro > span,
.s33-stage-copy > span,
.s33-media figcaption,
.s33-northstar > span,
.s33-model > span,
.s33-model-grid article > span,
.s33-company > span,
.s33-company-grid article > span,
.s33-final > span {
  font-size: 10px;
  font-weight: 660;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.s33-hero {
  min-height: 100svh;
  padding: 92px var(--s33-pad) 0;
  background: #fff !important;
}

.s33-hero-copy {
  min-height: calc(100svh - 92px);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 42px 0 46px;
}

.s33-eyebrow { display: flex; justify-content: space-between; gap: 28px; color: #5e5f5a; }
.s33-eyebrow span:last-child { color: #777872; }

.s33-hero h1 {
  max-width: 1420px;
  padding: 4vh 0;
  font-size: clamp(88px, 11vw, 176px);
  font-weight: 430;
  letter-spacing: -.083em;
  line-height: .8;
}

.s33-hero-bottom {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(330px, 1.1fr);
  gap: clamp(56px, 10vw, 160px);
  align-items: end;
}
.s33-hero-deck {
  width: min(100%, 620px);
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 38px;
  align-items: end;
}

.s33-hero-deck p { color: #40413d; font-size: 17px; line-height: 1.66; }
.s33-hero-deck a {
  min-width: 145px;
  display: flex;
  justify-content: space-between;
  gap: 22px;
  padding: 15px 18px;
  border-radius: 999px;
  background: var(--s33-ink);
  color: #fff !important;
  font-size: 12px;
  font-weight: 620;
  transition: background-color .25s ease;
}
.s33-hero-deck a:hover { background: var(--s33-accent); }
.s33-hero-principle { display: grid; grid-template-columns: auto 1fr auto; gap: 18px; align-items: center; color: #454642; }
.s33-hero-principle span,
.s33-hero-principle strong { font-size: 10px; font-weight: 650; letter-spacing: .13em; white-space: nowrap; }
.s33-hero-principle strong { color: var(--s33-accent); }
.s33-hero-principle i { height: 1px; background: #c4c5bf; }

.s33-today {
  min-height: 1180px;
  padding: clamp(120px, 12vw, 190px) var(--s33-pad);
  background: var(--s33-ink) !important;
  color: #f4f4ef;
  scroll-margin-top: 74px;
}

.s33-today > span { color: #969790; }
.s33-today h2 {
  margin-top: 58px !important;
  color: #f4f4ef;
  font-size: clamp(84px, 12.8vw, 202px);
  font-weight: 420;
  letter-spacing: -.09em;
  line-height: .76;
}

.s33-fragments {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 26px;
  margin-top: clamp(90px, 12vw, 190px);
}

.s33-fragments p {
  color: #a4a49e;
  font-size: clamp(34px, 5.2vw, 82px);
  font-weight: 430;
  letter-spacing: -.06em;
  line-height: 1;
  transition: color .3s ease;
}
.s33-fragments p::after { color: #4e4f4b; content: " /"; }
.s33-fragments p:hover { color: #fff; }

.s33-today-thesis {
  width: min(100%, 1020px);
  display: grid;
  grid-template-columns: .7fr 1.3fr;
  gap: clamp(44px, 8vw, 130px);
  align-items: start;
  margin: clamp(110px, 13vw, 210px) 0 0 auto;
}
.s33-today-thesis p { color: #989993; font-size: 16px; line-height: 1.7; }
.s33-today-thesis strong { color: #fff; font-size: clamp(34px, 4.7vw, 73px); font-weight: 430; letter-spacing: -.065em; line-height: .98; }

.s33-scale { padding: clamp(120px, 11vw, 180px) var(--s33-pad); background: #fff !important; }
.s33-scale > span { color: #656660; }
.s33-scale h2 {
  max-width: 1320px;
  margin-top: 48px !important;
  font-size: clamp(58px, 7.4vw, 116px);
  font-weight: 425;
  letter-spacing: -.073em;
  line-height: .9;
}
.s33-scale-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(44px, 7vw, 110px); margin-top: clamp(110px, 13vw, 200px); }
.s33-scale-grid article { min-width: 0; }
.s33-scale-grid strong { display: block; color: var(--s33-ink); font-size: clamp(70px, 8.8vw, 138px); font-weight: 430; letter-spacing: -.085em; line-height: .78; }
.s33-scale-grid p { min-height: 90px; margin-top: 34px !important; color: #3f403c; font-size: 17px; line-height: 1.55; }
.s33-scale-grid a { display: inline-block; margin-top: 25px; color: #555651; font-size: 10px; font-weight: 650; letter-spacing: .08em; text-transform: uppercase; }
.s33-scale-grid a:hover { color: var(--s33-accent); }
.s33-source-note { max-width: 760px; margin: 100px 0 0 auto !important; color: #676862; font-size: 11px; line-height: 1.68; }

.s33-story { padding: clamp(120px, 11vw, 180px) var(--s33-pad) 0; background: #efefe9 !important; }
.s33-story-intro { max-width: 1350px; padding-bottom: clamp(90px, 9vw, 145px); }
.s33-story-intro > span { color: #565752; }
.s33-story-intro h2 {
  max-width: 1260px;
  margin-top: 50px !important;
  font-size: clamp(64px, 8.3vw, 130px);
  font-weight: 425;
  letter-spacing: -.078em;
  line-height: .87;
}
.s33-story-intro > p { width: min(100%, 590px); margin: 50px 0 0 auto; color: #454642; font-size: 16px; line-height: 1.72; }

.s33-story-layout { display: grid; grid-template-columns: 190px minmax(0, 1fr); gap: clamp(44px, 6vw, 96px); }
.s33-story-rail {
  position: sticky;
  z-index: 3;
  top: 106px;
  height: calc(100svh - 132px);
  align-self: start;
  display: grid;
  grid-template-columns: 54px 2px 1fr;
  gap: 18px;
  padding: 22px 0 26px;
}
.s33-rail-status { display: flex; flex-direction: column; color: #5d5e59; }
.s33-rail-status span { font-size: 9px; font-weight: 650; letter-spacing: .13em; }
.s33-rail-status b { margin-top: 14px; color: var(--s33-ink); font-size: 34px; font-weight: 480; letter-spacing: -.06em; line-height: .9; }
.s33-rail-status small { margin-top: 4px; font-size: 9px; }
.s33-rail-track { position: relative; overflow: hidden; background: #c4c5bf; }
.s33-rail-track i { position: absolute; inset: 0; display: block; transform: scaleY(var(--story-progress, 0)); transform-origin: top; background: var(--s33-accent); will-change: transform; }
.s33-story-rail ol { display: flex; flex-direction: column; justify-content: space-between; margin: 0; padding: 0; list-style: none; }
.s33-story-rail a { display: flex; gap: 9px; align-items: baseline; color: #60615c; font-size: 9px; font-weight: 630; letter-spacing: .11em; transition: color .3s ease, transform .3s ease; }
.s33-story-rail a b { font-weight: 520; }
.s33-story-rail a[aria-current="step"] { color: var(--s33-accent); transform: translateX(3px); }

.s33-story-stages { min-width: 0; }
.s33-stage {
  min-height: 100svh;
  display: grid;
  grid-template-columns: minmax(270px, .72fr) minmax(0, 1.28fr);
  gap: clamp(44px, 6vw, 96px);
  align-items: center;
  padding: 70px 0 130px;
  opacity: 1;
  transform: none;
  scroll-margin-top: 110px;
  transition: transform .7s cubic-bezier(.2,.7,.2,1);
}
.s33-story.is-interactive .s33-stage { opacity: 1; transform: none; }
.s33-stage.is-active { opacity: 1; transform: none; }
.s33-stage-copy { position: relative; z-index: 2; min-width: 0; }
.s33-stage-copy > span { color: #5e5f5a; transition: color .3s ease; }
.s33-stage.is-active .s33-stage-copy > span { color: var(--s33-accent); }
.s33-stage-copy h3 {
  margin-top: 32px !important;
  font-size: clamp(50px, 5.7vw, 88px);
  font-weight: 430;
  letter-spacing: -.07em;
  line-height: .9;
}
.s33-stage-copy p { max-width: 550px; margin-top: 32px !important; color: #42433f; font-size: 16px; line-height: 1.68; }
.s33-stage-copy ul { display: flex; flex-wrap: wrap; gap: 8px 19px; margin: 30px 0 0; padding: 0; list-style: none; }
.s33-stage-copy li { color: #2f302d; font-size: 11px; font-weight: 630; letter-spacing: .05em; }
.s33-stage-copy li::before { margin-right: 8px; color: var(--s33-accent); content: "•"; }

.s33-media {
  position: relative;
  height: min(72svh, 780px);
  min-height: 560px;
  overflow: hidden;
  margin: 0;
  border-radius: 30px;
  background: #ddd;
  box-shadow: 0 30px 90px rgba(18,18,16,.08);
}
.s33-media > img { width: 100%; height: 100%; display: block; object-fit: cover; transition: transform 1.2s cubic-bezier(.2,.7,.2,1); }
.s33-stage.is-active .s33-media > img { transform: scale(1.015); }
.s33-media::after { position: absolute; inset: 60% 0 0; background: linear-gradient(transparent, rgba(10,10,9,.42)); content: ""; pointer-events: none; }
.s33-media figcaption { position: absolute; z-index: 4; right: 24px; bottom: 22px; left: 24px; color: rgba(255,255,255,.9); }
.s33-media--person img { object-position: 50% center; }
.s33-media--access { display: grid; grid-template-columns: 1fr 1fr; gap: 2px; background: #fff; }
.s33-media--access > img { min-width: 0; object-position: 56% center; }
.s33-media--access > img:last-of-type { object-position: 45% center; }
.s33-stage.is-active .s33-media--access > img:first-of-type { transform: scale(1.015) translateX(2px); }
.s33-stage.is-active .s33-media--access > img:last-of-type { transform: scale(1.015) translateX(-2px); }

.s33-media--login {
  background:
    radial-gradient(circle at 89% 9%, rgba(202,214,242,.72), transparent 35%),
    radial-gradient(circle at 8% 91%, rgba(229,215,222,.64), transparent 36%),
    linear-gradient(145deg, #f3f3ef, #e5e8e6);
}
.s33-media--login::after {
  inset: auto 0 0;
  height: 20%;
  background: linear-gradient(transparent, rgba(24,25,23,.11));
}
.s33-media--login figcaption { color: rgba(255,255,255,.94); }
.s33-login-demo {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  padding: clamp(32px, 3.7vw, 58px);
  box-sizing: border-box;
}
.s33-login-demo-head {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  color: #555651;
  font-size: 8px;
  font-weight: 670;
  letter-spacing: .13em;
}
.s33-login-demo-head small { color: var(--s33-accent); font: inherit; text-align: right; }
.s33-login-demo-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 12px clamp(17px, 2.5vw, 34px);
  margin-top: clamp(30px, 4vh, 45px);
}
.s33-login-demo-nav button {
  position: relative;
  padding: 0 0 10px;
  border: 0;
  background: transparent;
  color: #747570;
  font: inherit;
  font-size: 9px;
  font-weight: 670;
  letter-spacing: .12em;
  cursor: pointer;
  transition: color .25s ease;
}
.s33-login-demo-nav button::after {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 2px;
  transform: scaleX(0);
  transform-origin: left;
  background: var(--s33-accent);
  content: "";
  transition: transform .35s cubic-bezier(.2,.7,.2,1);
}
.s33-login-demo-nav button:hover,
.s33-login-demo-nav button:focus-visible,
.s33-login-demo-nav button[aria-pressed="true"] { color: #171715; }
.s33-login-demo-nav button:focus-visible { outline: 0; }
.s33-login-demo-nav button[aria-pressed="true"]::after { transform: scaleX(1); }
.s33-login-demo-scene {
  min-height: 0;
  flex: 1;
  display: flex;
  flex-direction: column;
}
.s33-login-request { margin-top: clamp(48px, 7vh, 78px); }
.s33-login-request small {
  color: #666762;
  font-size: 8px;
  font-weight: 670;
  letter-spacing: .13em;
}
.s33-login-request strong {
  max-width: 100%;
  display: block;
  margin-top: 13px;
  color: #141412;
  font-size: clamp(52px, 6.7vw, 103px);
  font-weight: 435;
  letter-spacing: -.073em;
  line-height: .82;
  text-wrap: balance;
}
.s33-login-request p {
  max-width: 390px;
  margin-top: 24px !important;
  color: #4b4c47;
  font-size: 14px;
  line-height: 1.55;
}
.s33-login-flow {
  display: grid;
  grid-template-columns: auto minmax(18px, 1fr) auto minmax(18px, 1fr) auto;
  gap: clamp(8px, 1.3vw, 17px);
  align-items: center;
  margin-top: auto;
  padding-top: 40px;
}
.s33-login-flow span {
  color: #555651;
  font-size: 7px;
  font-weight: 680;
  letter-spacing: .11em;
  white-space: nowrap;
}
.s33-login-flow span b {
  display: block;
  margin-bottom: 7px;
  color: #8b8c86;
  font: inherit;
}
.s33-login-flow .s33-login-boundary { color: var(--s33-accent); text-align: center; }
.s33-login-flow i {
  position: relative;
  height: 1px;
  overflow: hidden;
  background: rgba(38,39,36,.22);
}
.s33-login-flow i::after {
  position: absolute;
  top: -3px;
  left: -7px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--s33-accent);
  box-shadow: 0 0 0 5px rgba(70,94,216,.1);
  content: "";
}
.s33-login-demo.is-running .s33-login-flow i::after { animation: s33-login-travel .65s cubic-bezier(.2,.7,.2,1) forwards; }
.s33-login-demo.is-running .s33-login-flow i:nth-of-type(2)::after { animation-delay: .23s; }
.s33-login-outcome {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  align-items: baseline;
  margin-top: 30px !important;
  padding-bottom: 46px;
  color: #292a27;
}
.s33-login-outcome span { font-size: clamp(16px, 1.4vw, 20px); font-weight: 500; letter-spacing: -.035em; white-space: nowrap; }
.s33-login-outcome strong { max-width: 180px; color: #696a65; font-size: 7px; font-weight: 680; letter-spacing: .11em; line-height: 1.45; text-align: right; }
.s33-login-demo.is-running .s33-login-outcome,
.s33-login-demo.is-running .s33-login-demo-head small { opacity: .48; }
.s33-login-outcome,
.s33-login-demo-head small { transition: opacity .25s ease; }

@keyframes s33-login-travel {
  from { left: -7px; }
  to { left: calc(100% - 7px); }
}

.s33-media--value {
  background:
    radial-gradient(circle at 20% 20%, rgba(255,230,186,.9), transparent 42%),
    linear-gradient(135deg, #b9c6e8 0%, #e8d8c6 47%, #6e789c 100%);
}
.s33-media--value > img { opacity: .72; mix-blend-mode: soft-light; object-position: 50% center; }
.s33-media--value > div { position: absolute; z-index: 2; inset: 0; display: grid; place-content: center; gap: 0; text-align: center; }
.s33-media--value > div span { color: rgba(255,255,255,.88); font-size: clamp(78px, 9vw, 150px); font-weight: 430; letter-spacing: -.09em; line-height: .68; text-shadow: 0 8px 40px rgba(37,32,30,.12); }

.s33-media--identity { background: linear-gradient(145deg, #dfe2dc, #f5eee3); }
.s33-media--identity > img { filter: saturate(.78) contrast(.94); object-position: 42% center; }
.s33-proof-sheet {
  position: absolute;
  z-index: 3;
  top: 7%;
  right: 6%;
  width: min(42%, 315px);
  min-height: 142px;
  display: flex;
  flex-direction: column;
  padding: clamp(18px, 2vw, 28px);
  border-radius: 22px;
  box-sizing: border-box;
  background: rgba(249,249,245,.84);
  box-shadow: 0 20px 70px rgba(35,35,31,.14);
  backdrop-filter: blur(16px);
}
.s33-proof-sheet span,
.s33-proof-sheet small { color: #6f706b; font-size: 8px; font-weight: 650; letter-spacing: .13em; }
.s33-proof-sheet b { margin-top: 28px; color: #151514; font-size: clamp(17px, 1.8vw, 28px); font-weight: 500; letter-spacing: -.045em; line-height: .92; }
.s33-proof-sheet i { height: 1px; margin: 14px 0; background: #bdbeb8; }

.s33-stage--network {
  min-height: 1240px;
  grid-template-columns: 1fr;
  align-content: center;
  padding-top: 110px;
}
.s33-stage--network .s33-stage-copy { width: min(100%, 1080px); }
.s33-stage--network .s33-stage-copy h3 { font-size: clamp(70px, 9.2vw, 144px); }
.s33-stage--network .s33-stage-copy p { width: min(100%, 650px); margin-left: auto !important; }

.s33-cloud {
  position: relative;
  min-height: min(76vw, 890px);
  overflow: hidden;
  border-radius: 34px;
  background:
    radial-gradient(circle at 50% 48%, rgba(255,255,255,.98) 0 12%, rgba(230,233,241,.84) 22%, transparent 43%),
    radial-gradient(circle at 14% 20%, rgba(211,224,244,.9), transparent 31%),
    radial-gradient(circle at 84% 22%, rgba(242,218,199,.95), transparent 33%),
    radial-gradient(circle at 78% 82%, rgba(206,229,218,.9), transparent 34%),
    radial-gradient(circle at 18% 83%, rgba(220,211,239,.9), transparent 36%),
    #e8e8e3;
  box-shadow: inset 0 0 120px rgba(255,255,255,.42);
}
.s33-cloud ul { position: absolute; inset: 0; margin: 0; padding: 0; list-style: none; }
.s33-cloud li {
  position: absolute;
  color: #2f302d;
  font-size: clamp(9px, 1vw, 13px);
  font-weight: 670;
  letter-spacing: .12em;
  opacity: .72;
  transform: none;
  transition: opacity .65s ease, transform .75s cubic-bezier(.2,.7,.2,1);
}
.s33-stage.is-active .s33-cloud li { opacity: 1; transform: translateY(-2px); }
.s33-cloud li:nth-child(1) { top: 15%; left: 10%; transition-delay: .05s; }
.s33-cloud li:nth-child(2) { top: 35%; left: 4%; transition-delay: .1s; }
.s33-cloud li:nth-child(3) { top: 69%; left: 9%; transition-delay: .15s; }
.s33-cloud li:nth-child(4) { top: 84%; left: 25%; transition-delay: .2s; }
.s33-cloud li:nth-child(5) { top: 8%; left: 42%; transition-delay: .25s; }
.s33-cloud li:nth-child(6) { top: 20%; right: 18%; transition-delay: .3s; }
.s33-cloud li:nth-child(7) { top: 43%; right: 5%; transition-delay: .35s; }
.s33-cloud li:nth-child(8) { top: 69%; right: 9%; transition-delay: .4s; }
.s33-cloud li:nth-child(9) { top: 87%; right: 24%; transition-delay: .45s; }
.s33-cloud li:nth-child(10) { bottom: 9%; left: 44%; transition-delay: .5s; }
.s33-cloud li:nth-child(11) { top: 46%; left: 14%; transition-delay: .55s; }
.s33-cloud li:nth-child(12) { top: 12%; right: 39%; transition-delay: .6s; }
.s33-cloud-core {
  position: absolute;
  top: 50%;
  left: 50%;
  width: clamp(210px, 26vw, 390px);
  aspect-ratio: 1;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: clamp(24px, 3vw, 42px);
  border-radius: 50%;
  transform: translate(-50%, -50%);
  background: #fff;
  box-shadow: 0 35px 100px rgba(39,39,35,.16);
}
.s33-cloud-core::after { position: absolute; inset: 45% 0 0; background: linear-gradient(transparent, rgba(10,10,9,.45)); content: ""; }
.s33-cloud-core img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transform: scale(1.16); }
.s33-cloud-core span,
.s33-cloud-core strong { position: relative; z-index: 2; color: #fff; }
.s33-cloud-core span { font-size: 8px; font-weight: 660; letter-spacing: .14em; }
.s33-cloud-core strong { margin-top: 4px; font-size: clamp(29px, 3.5vw, 52px); font-weight: 470; letter-spacing: -.06em; line-height: .9; }
.s33-cloud-principle { max-width: 940px; margin: 10px 0 0 auto !important; padding: 65px 0 80px; color: #4e4f4a; font-size: clamp(28px, 4vw, 58px); font-weight: 430; letter-spacing: -.05em; line-height: 1.04; }
.s33-cloud-principle strong { color: var(--s33-ink); font-weight: inherit; }

.s33-stage--authority {
  min-height: 1240px;
  grid-template-columns: 1fr;
  align-content: center;
  margin-right: calc(var(--s33-pad) * -1);
  padding: 140px var(--s33-pad) 160px clamp(32px, 6vw, 92px);
  background:
    radial-gradient(circle at 77% 18%, rgba(192,210,238,.78), transparent 35%),
    radial-gradient(circle at 13% 84%, rgba(226,208,226,.74), transparent 38%),
    linear-gradient(145deg, #f0f1ed 0%, #e1e7e8 54%, #eee8e3 100%);
  color: var(--s33-ink);
}
.s33-stage--authority .s33-stage-copy > span { color: #5e5f5a; }
.s33-stage--authority .s33-stage-copy h3 { max-width: 1320px; color: var(--s33-ink); font-size: clamp(61px, 7.3vw, 114px); line-height: .88; }
.s33-stage--authority .s33-stage-copy h3 em { color: var(--s33-accent) !important; }
.s33-stage--authority .s33-stage-copy p { width: min(100%, 720px); margin-left: 0 !important; color: #41423e; }
.s33-authority-field {
  min-height: 430px;
  display: grid;
  grid-template-columns: minmax(380px, 1.05fr) minmax(300px, .95fr);
  gap: clamp(50px, 8vw, 130px);
  align-items: end;
  margin-top: 120px;
}
.s33-capability-chart {
  position: relative;
  min-height: 390px;
  overflow: hidden;
  border-radius: 30px;
  background:
    linear-gradient(rgba(46,48,45,.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(46,48,45,.055) 1px, transparent 1px),
    rgba(255,255,252,.56);
  background-size: 54px 54px;
  box-shadow: 0 28px 80px rgba(43,45,42,.09);
}
.s33-capability-chart::before {
  position: absolute;
  z-index: 1;
  top: 49%;
  right: 0;
  left: 0;
  border-top: 1px dashed rgba(30,31,29,.32);
  content: "";
}
.s33-capability-chart > span,
.s33-capability-chart > b,
.s33-capability-chart > small,
.s33-authority-principle > span,
.s33-authority-principle > small {
  font-size: 8px;
  font-weight: 670;
  letter-spacing: .13em;
}
.s33-capability-chart > span { position: absolute; z-index: 3; top: 24px; left: 25px; color: #62635e; }
.s33-capability-chart > b { position: absolute; z-index: 3; top: calc(49% - 22px); left: 85%; color: #343532; font-weight: 670; transform: translateX(-50%); white-space: nowrap; }
.s33-capability-chart > small { position: absolute; z-index: 3; right: 24px; bottom: 21px; color: #62635e; }
.s33-capability-curve {
  position: absolute;
  z-index: 2;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  pointer-events: none;
}
.s33-authority-principle { padding-bottom: 22px; }
.s33-authority-principle > span { color: var(--s33-accent); }
.s33-authority-principle > strong {
  display: block;
  margin-top: 28px;
  color: #171715;
  font-size: clamp(40px, 4.7vw, 70px);
  font-weight: 440;
  letter-spacing: -.065em;
  line-height: .95;
}
.s33-authority-principle > small { display: block; max-width: 430px; margin-top: 38px; color: #62635e; line-height: 1.7; }

.s33-northstar { padding: clamp(130px, 12vw, 190px) var(--s33-pad); background: #10100f !important; color: #f5f5ef; }
.s33-northstar > span { color: #aaa9a3; }
.s33-northstar h2 {
  margin-top: 52px !important;
  color: #f5f5ef;
  font-size: clamp(85px, 13vw, 204px);
  font-weight: 420;
  letter-spacing: -.09em;
  line-height: .76;
}
body.strategy-page .s33-northstar h2 em { color: #c8d0ff !important; }
.s33-northstar-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: clamp(32px, 5vw, 78px); margin-top: clamp(120px, 14vw, 220px); }
.s33-northstar-grid strong { display: block; color: #fff; font-size: clamp(88px, 10vw, 158px); font-weight: 430; letter-spacing: -.09em; line-height: .72; }
.s33-northstar-grid p { margin-top: 34px !important; color: #c2c3bd; font-size: 15px; line-height: 1.62; }
.s33-northstar-note { max-width: 730px; margin: 100px 0 0 auto !important; color: #92938d; font-size: 11px; line-height: 1.68; }

.s33-model { padding: clamp(130px, 12vw, 190px) var(--s33-pad); background: #fff !important; scroll-margin-top: 74px; }
.s33-model > span { color: #5f605b; }
.s33-model > h2 {
  max-width: 1300px;
  margin-top: 50px !important;
  font-size: clamp(64px, 8.3vw, 130px);
  font-weight: 425;
  letter-spacing: -.078em;
  line-height: .87;
}
.s33-model-intro { width: min(100%, 610px); margin: 52px 0 0 auto !important; color: #4e4f4a; font-size: 16px; line-height: 1.72; }
.s33-model-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(40px, 7vw, 110px); margin-top: clamp(95px, 10vw, 155px); }
.s33-model-grid article > span { color: var(--s33-accent); }
.s33-model-grid h3 { margin-top: 34px !important; font-size: clamp(31px, 3.2vw, 48px); font-weight: 450; letter-spacing: -.055em; line-height: .98; }
.s33-model-grid p { margin-top: 22px !important; color: #4e4f4a; font-size: 14px; line-height: 1.68; }
.s33-model-statement { max-width: 1080px; margin: clamp(125px, 13vw, 205px) 0 0 auto !important; color: #777872; font-size: clamp(34px, 5vw, 75px); font-weight: 430; letter-spacing: -.06em; line-height: .98; }
.s33-model-statement strong { color: var(--s33-ink); font-weight: inherit; }

.s33-company { padding: clamp(130px, 12vw, 190px) var(--s33-pad); background: #e9e9e4 !important; }
.s33-company > span { color: #5f605b; }
.s33-company > h2 {
  max-width: 1370px;
  margin-top: 50px !important;
  font-size: clamp(59px, 7.7vw, 121px);
  font-weight: 425;
  letter-spacing: -.075em;
  line-height: .89;
}
.s33-company-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(45px, 7vw, 110px); margin-top: clamp(120px, 13vw, 210px); }
.s33-company-grid article > b { display: block; color: #a0a19b; font-size: 58px; font-weight: 430; letter-spacing: -.075em; line-height: .8; }
.s33-company-grid article > span { display: block; margin-top: 34px; color: var(--s33-accent); }
.s33-company-grid h3 { margin-top: 30px !important; font-size: clamp(29px, 3vw, 45px); font-weight: 450; letter-spacing: -.055em; line-height: 1; }
.s33-company-grid p { margin-top: 22px !important; color: #484945; font-size: 14px; line-height: 1.68; }
.s33-company-statement { max-width: 1020px; margin: clamp(130px, 14vw, 220px) 0 0 auto !important; color: #777872; font-size: clamp(34px, 5vw, 75px); font-weight: 430; letter-spacing: -.06em; line-height: .98; }
.s33-company-statement strong { color: var(--s33-ink); font-weight: inherit; }

.s33-qualification { padding: 38px var(--s33-pad); background: #e9e9e4 !important; scroll-margin-top: 74px; }
.s33-qualification p { max-width: 980px; margin-left: 0 !important; color: #5f605a; font-size: 11px; line-height: 1.72; }
.s33-qualification strong { color: #2f302d; font-weight: 650; }

.s33-final {
  min-height: 920px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 130px var(--s33-pad);
  background: #fff !important;
  text-align: center;
}
.s33-final > span { color: #777872; }
.s33-final h2 {
  max-width: 1200px;
  margin-top: 45px !important;
  font-size: clamp(72px, 9.8vw, 154px);
  font-weight: 425;
  letter-spacing: -.085em;
  line-height: .79;
}
.s33-final > p { max-width: 650px; margin-top: 42px !important; color: #656660; font-size: 17px; line-height: 1.65; }
.s33-actions { display: flex; gap: 26px; align-items: center; justify-content: center; margin-top: 48px; }
.s33-button { min-width: 245px; display: flex; justify-content: space-between; gap: 28px; padding: 16px 19px; border-radius: 999px; background: var(--s33-ink); color: #fff !important; font-size: 12px; font-weight: 620; transition: background-color .25s ease; }
.s33-button:hover { background: var(--s33-accent); }
.s33-link { color: #3f403c !important; font-size: 12px; font-weight: 620; }
.s33-link span { margin-left: 10px; color: var(--s33-accent); }

@media (max-width: 1120px) {
  .s33-hero-deck { grid-template-columns: 1fr; margin-left: 0; }
  .s33-hero-deck a { width: min(100%, 210px); box-sizing: border-box; }
  .s33-scale-grid { grid-template-columns: 1fr 1fr; }
  .s33-scale-grid article:last-child { grid-column: 2; }
  .s33-story-layout { grid-template-columns: 150px minmax(0, 1fr); }
  .s33-stage { grid-template-columns: 1fr; align-content: center; }
  .s33-stage-copy { width: min(100%, 760px); }
  .s33-media { height: 62svh; }
  .s33-stage--network,
  .s33-stage--authority { grid-template-columns: 1fr; }
  .s33-northstar-grid { grid-template-columns: 1fr 1fr; }
}

@media (min-width: 801px) and (max-width: 1120px) {
  .s33-stage--authority {
    width: calc(100% + var(--s33-pad));
    box-sizing: border-box;
    grid-template-columns: minmax(0, 1fr);
  }
  .s33-stage--authority .s33-stage-copy { width: auto; max-width: 100%; }
}

@media (min-width: 801px) and (max-width: 960px) {
  body.strategy-page .site-header,
  body.strategy-page .site-header.scrolled {
    height: 66px !important;
    padding: 0 26px !important;
    grid-template-columns: 1fr auto;
  }
  .strategy-page .desktop-nav,
  .strategy-page .header-actions { display: none !important; }
  .strategy-page .menu-button {
    width: 35px;
    height: 35px;
    display: block;
    padding: 8px;
    border: 0;
    border-radius: 0;
    background: transparent;
  }
  .strategy-page .menu-button i {
    height: 1px;
    display: block;
    margin: 7px 0;
    background: var(--s33-ink) !important;
  }
  .strategy-page .mobile-menu {
    position: absolute;
    top: 66px !important;
    right: 0;
    left: 0;
    display: none;
    gap: 21px;
    padding: 26px 26px 32px !important;
    border-top: 1px solid #d6d6d1;
    background: rgba(247,247,245,.99) !important;
    color: var(--s33-ink) !important;
  }
  .strategy-page .mobile-menu.open { display: grid; }
  .strategy-page .mobile-menu a { color: var(--s33-ink) !important; font-size: 19px !important; }
}

@media (max-width: 800px) {
  .strategy-page { --s33-pad: 26px; }
  .s33-hero { min-height: auto; padding: 112px var(--s33-pad) 0; }
  .s33-hero-copy { min-height: 770px; padding: 24px 0 54px; }
  .s33-eyebrow span:last-child { display: none; }
  .s33-hero h1 { padding: 82px 0; font-size: clamp(70px, 21.5vw, 100px); }
  .s33-hero-bottom { display: block; }
  .s33-hero-deck { display: block; width: 100%; }
  .s33-hero-deck a { width: 100%; margin-top: 30px; }
  .s33-hero-principle { margin-top: 56px; }
  .s33-hero-principle { grid-template-columns: auto 1fr; }
  .s33-hero-principle strong { grid-column: 1 / -1; white-space: normal; }
  .s33-hero-principle span,
  .s33-hero-principle strong { font-size: 8px; letter-spacing: .09em; }

  .s33-today { min-height: 1050px; padding: 105px var(--s33-pad); }
  .s33-today h2 { margin-top: 45px !important; font-size: clamp(79px, 25vw, 111px); }
  .s33-fragments { gap: 4px 14px; margin-top: 90px; }
  .s33-fragments p { font-size: clamp(32px, 10vw, 48px); }
  .s33-today-thesis { grid-template-columns: 1fr; gap: 38px; margin-top: 110px; }
  .s33-today-thesis strong { font-size: 39px; }

  .s33-scale { padding: 105px var(--s33-pad); }
  .s33-scale h2 { margin-top: 42px !important; font-size: clamp(49px, 14.5vw, 67px); }
  .s33-scale-grid { grid-template-columns: 1fr; gap: 82px; margin-top: 105px; }
  .s33-scale-grid article:last-child { grid-column: auto; }
  .s33-scale-grid strong { font-size: 92px; }
  .s33-scale-grid p { min-height: 0; margin-top: 28px !important; }
  .s33-source-note { margin-top: 88px !important; }

  .s33-story { padding: 100px var(--s33-pad) 0; }
  .s33-story-intro { padding-bottom: 100px; }
  .s33-story-intro h2 { margin-top: 42px !important; font-size: clamp(55px, 15.5vw, 76px); }
  .s33-story-intro > p { margin-top: 40px; }
  .s33-story-layout { display: block; }
  .s33-story-rail {
    top: 80px;
    width: calc(100% + var(--s33-pad) + var(--s33-pad));
    height: 60px;
    grid-template-columns: auto 1fr;
    gap: 18px;
    margin: 0 calc(0px - var(--s33-pad));
    padding: 11px var(--s33-pad);
    box-sizing: border-box;
    background: rgba(239,239,233,.94);
    backdrop-filter: blur(18px);
  }
  .s33-rail-status { flex-direction: row; gap: 5px; align-items: baseline; }
  .s33-rail-status span { display: none; }
  .s33-rail-status b { margin: 0; font-size: 24px; }
  .s33-rail-track { position: absolute; right: var(--s33-pad); bottom: 0; left: var(--s33-pad); width: auto; height: 2px; }
  .s33-rail-track i { transform: scaleX(var(--story-progress, 0)); transform-origin: left; }
  .s33-story-rail ol { flex-direction: row; align-items: center; }
  .s33-story-rail a b { display: none; }
  .s33-story-rail a span { font-size: 7px; letter-spacing: .07em; }

  .s33-stage,
  .s33-story.is-interactive .s33-stage { min-height: auto; display: block; padding: 105px 0 80px; opacity: 1; transform: none; }
  .s33-stage-copy h3 { font-size: clamp(52px, 15vw, 70px); }
  .s33-stage-copy p { font-size: 15px; }
  .s33-stage-copy ul { gap: 8px 13px; }
  .s33-media { height: 570px; min-height: 0; margin-top: 52px; border-radius: 24px; }
  .s33-media--access { grid-template-columns: 1fr; grid-template-rows: 1fr 1fr; }
  .s33-login-demo { padding: 28px 22px 54px; }
  .s33-login-demo-head { display: block; }
  .s33-login-demo-head small { display: block; margin-top: 7px; text-align: left; }
  .s33-login-demo-nav { gap: 11px 19px; margin-top: 25px; }
  .s33-login-demo-nav button { font-size: 8px; }
  .s33-login-request { margin-top: 37px; }
  .s33-login-request strong { font-size: clamp(49px, 14vw, 65px); }
  .s33-login-request p { max-width: 315px; margin-top: 18px !important; font-size: 13px; }
  .s33-login-flow { gap: 7px; padding-top: 29px; }
  .s33-login-flow span { font-size: 6px; letter-spacing: .07em; }
  .s33-login-flow span b { margin-bottom: 5px; }
  .s33-login-outcome { display: block; margin-top: 23px !important; padding-bottom: 17px; }
  .s33-login-outcome span { font-size: 18px; white-space: normal; }
  .s33-login-outcome strong { display: block; margin-top: 8px; text-align: left; }
  .s33-media--value > div span { font-size: 82px; }
  .s33-media--identity > img { object-position: 39% center; }
  .s33-proof-sheet { width: 55%; min-height: 124px; }

  .s33-stage--network { min-height: auto; padding-top: 110px; }
  .s33-stage--network .s33-stage-copy h3 { font-size: clamp(65px, 18vw, 88px); }
  .s33-stage--network .s33-stage-copy p { margin-left: 0 !important; }
  .s33-cloud { min-height: 700px; margin-top: 62px; border-radius: 24px; }
  .s33-cloud li { font-size: 8px; }
  .s33-cloud li:nth-child(1) { left: 6%; }
  .s33-cloud li:nth-child(2) { left: 3%; }
  .s33-cloud li:nth-child(3) { left: 4%; }
  .s33-cloud li:nth-child(6) { right: 8%; }
  .s33-cloud li:nth-child(7) { right: 3%; }
  .s33-cloud li:nth-child(8) { right: 3%; }
  .s33-cloud-core { width: 210px; }
  .s33-cloud-principle { padding: 48px 0 30px; font-size: 34px; }

  .s33-stage--authority,
  .s33-story.is-interactive .s33-stage--authority {
    min-height: auto;
    margin: 50px calc(0px - var(--s33-pad)) 0;
    padding: 115px var(--s33-pad);
  }
  .s33-stage--authority .s33-stage-copy h3 { font-size: clamp(47px, 13.2vw, 64px); }
  .s33-stage--authority .s33-stage-copy p { margin-left: 0 !important; }
  .s33-authority-field { min-height: 0; grid-template-columns: 1fr; gap: 65px; margin-top: 90px; }
  .s33-capability-chart { min-height: 310px; border-radius: 24px; background-size: 42px 42px; }
  .s33-authority-principle { padding-bottom: 0; }
  .s33-authority-principle > strong { font-size: 43px; }

  .s33-northstar { padding: 110px var(--s33-pad); }
  .s33-northstar h2 { font-size: clamp(86px, 26vw, 120px); }
  .s33-northstar-grid { grid-template-columns: 1fr; gap: 82px; margin-top: 120px; }
  .s33-northstar-grid strong { font-size: 110px; }
  .s33-northstar-grid p { margin-top: 25px !important; }
  .s33-northstar-note { margin-top: 90px !important; }

  .s33-model { padding: 105px var(--s33-pad); }
  .s33-model > h2 { margin-top: 42px !important; font-size: clamp(55px, 15.5vw, 76px); }
  .s33-model-intro { margin: 38px 0 0 !important; font-size: 15px; }
  .s33-model-grid { grid-template-columns: 1fr; gap: 72px; margin-top: 92px; }
  .s33-model-grid h3 { font-size: 41px; }
  .s33-model-statement { margin-top: 105px !important; font-size: 39px; }
  .s33-company { padding: 105px var(--s33-pad); }
  .s33-company > h2 { margin-top: 42px !important; font-size: clamp(49px, 14.5vw, 67px); }
  .s33-company-grid { grid-template-columns: 1fr; gap: 82px; margin-top: 110px; }
  .s33-company-grid article > b { font-size: 50px; }
  .s33-company-grid h3 { font-size: 39px; }
  .s33-company-statement { margin-top: 120px !important; font-size: 39px; }
  .s33-qualification { padding: 36px var(--s33-pad) 50px; }
  .s33-qualification p { font-size: 12px; line-height: 1.66; }
  .s33-final { min-height: 760px; padding: 110px var(--s33-pad); }
  .s33-final h2 { font-size: clamp(64px, 18vw, 86px); }
  .s33-final > p { font-size: 16px; }
  .s33-actions { width: 100%; align-items: stretch; flex-direction: column; }
  .s33-button { width: 100%; box-sizing: border-box; }
}

@media (max-width: 470px) {
  .s33-story-rail a span { font-size: 0; }
  .s33-story-rail a span::before { font-size: 8px; content: "•"; }
  .s33-story-rail a[aria-current="step"] span::before { color: var(--s33-accent); content: "●"; }
  .s33-media { height: 500px; }
  .s33-cloud { min-height: 620px; }
  .s33-cloud li:nth-child(4),
  .s33-cloud li:nth-child(9),
  .s33-cloud li:nth-child(12) { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  .strategy-page *,
  .strategy-page *::before,
  .strategy-page *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
  .s33-stage { opacity: 1; transform: none; }
  .s33-cloud li { opacity: 1; transform: none; }
}
