


.dgm .inkfill { fill: #0E1F38; }
.cinematic .dgm .inkfill { fill: #F3EEE8; }


.pour .dgm { border-radius: var(--r-2); }


.split .split-grid { display: grid; gap: var(--s-7); align-items: center; }

.split--figleft .split-grid {
  grid-template-columns: minmax(0, 460px) minmax(0, 1fr); }
.split--figleft .split-copy { justify-self: start; }
.split--figleft .split-copy .prose-col p,
.split--figleft .split-copy .section-head { max-width: 65ch; }
.split--figright .split-grid {
  grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); align-items: stretch; }
.split .split-copy .section-head { margin-bottom: var(--s-5); }
.split .split-copy .sec-ctas { margin-top: var(--s-6); }
.split .split-copy .prose-col p { max-width: 60ch; }

.split .split-fig .dgm, .band-col .dgm { margin-left: 0; margin-right: 0; }
.split .split-fig .dgm { margin-top: 0; }

.split--figright .split-fig { display: flex; }
.split--figright .split-fig .dgm { flex: 1; display: flex; flex-direction: column;
  justify-content: center; }
.split--figright .split-fig .dgm svg { flex: 0 0 auto; }
.split--figright .split-copy { align-self: center; }



.doors--open, .tiers--open, .owns--open {
  border: 0; margin-left: calc(-1 * var(--s-4)); margin-right: calc(-1 * var(--s-4));
  column-gap: 0; row-gap: var(--s-5); }
.doors--open .door, .tiers--open .tier, .owns--open .own {
  border: 0; padding: var(--s-4); position: relative;
  transition: transform .35s var(--ease), box-shadow .35s var(--ease); }
.doors--open .door:hover { background: none; }
.doors--open .door::after { display: none !important; }
.doors--open .door:hover, .tiers--open .tier:hover, .owns--open .own:hover {
  transform: translateY(-2px); box-shadow: 0 10px 30px rgba(14, 31, 56, .05); }


.doors--open .door .mark, .tiers--open .tier .mark, .owns--open .own .mark {
  transition: transform .35s cubic-bezier(.2, .7, .2, 1); }
.doors--open .door:hover .mark, .tiers--open .tier:hover .mark,
.owns--open .own:hover .mark { transform: scale(1.08); }


.doors--open .door h3, .tiers--open .tier h3, .owns--open .own h4 {
  position: relative; padding-bottom: 10px; opacity: .9; }
.doors--open .door h3::after, .tiers--open .tier h3::after,
.owns--open .own h4::after {
  content: ""; position: absolute; left: 0; bottom: 0; height: 1px; width: 0;
  background: var(--rule-strong);
  transition: width .5s cubic-bezier(.3, .5, .2, 1); }
.doors--open .door:hover h3::after, .tiers--open .tier:hover h3::after,
.owns--open .own:hover h4::after { width: 100%; }


.doors--open .door p, .tiers--open .tier p, .owns--open .own p {
  opacity: .84; transition: opacity var(--t-fast) var(--ease); }
.doors--open .door:hover p, .tiers--open .tier:hover p,
.owns--open .own:hover p { opacity: 1; }


.tiers .tier .tier-cta .go { font-family: var(--mono); font-size: var(--fs-micro);
  letter-spacing: .14em; text-transform: uppercase; color: var(--teal);
  border: 0; text-decoration: none; }
.doors--open .door .go, .tiers--open .tier .go {
  opacity: .78; transition: opacity var(--t-fast) var(--ease); }
.doors--open .door:hover .go, .tiers--open .tier:hover .go { opacity: 1; }
.doors--open .door .go::after, .tiers--open .tier .go::after {
  content: "\2192"; display: inline-block; margin-left: 8px;
  font-family: var(--serif); font-style: italic;
  transition: transform var(--t-fast) var(--ease); }
.doors--open .door:hover .go::after,
.tiers--open .tier:hover .go::after { transform: translateX(5px); }


.tight-group .section-head { margin-bottom: var(--s-6); }
.tight-group .doors, .tight-group .tiers, .tight-group .owns { margin-top: 0; }
.tight-group .sec-ctas { margin-top: var(--s-6); }
.tight-group .fnote { border-top: 0; padding-top: 0; margin-top: var(--s-5); }


#evidence::before, #read::before, #platform-plans::before,
#responsibilities::before, #advisors::before { display: none !important; }


.doors--3 { grid-template-columns: repeat(3, 1fr); }
.doors--2 { grid-template-columns: repeat(2, 1fr); }
.doors .door h4 { font-family: var(--serif); font-size: 1.02rem; font-weight: 400;
  line-height: 1.4; margin: 0; opacity: .82; }
.doors .door:hover h4 { opacity: 1; }


.tiers { display: grid; grid-template-columns: repeat(3, 1fr);
  margin-top: var(--s-6); }
.tiers .tier { display: flex; flex-direction: column; gap: var(--s-3); }
.tiers .tier h3 { font-family: var(--serif); font-size: var(--fs-subhead);
  font-weight: 500; margin: 0; }
.tiers .tier h4 { font-family: var(--serif); font-size: 1.02rem; font-weight: 400;
  line-height: 1.4; margin: 0; opacity: .82; }
.tiers .tier p { font-family: var(--sans); font-size: var(--fs-body);
  line-height: 1.65; margin: 0; }
.tiers .tier .tier-cta { margin-top: auto; padding-top: var(--s-3); }


.owns--plain .own h4 { font-family: var(--serif); font-size: var(--fs-subhead);
  font-weight: 500; text-transform: none; letter-spacing: 0; opacity: .9;
  line-height: 1.35; margin: 0 0 var(--s-3); }
.owns--plain .own:hover h4 { opacity: 1; }


.band-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: var(--s-8); row-gap: var(--s-8); align-items: start; }
.band-col .section-head { margin-bottom: var(--s-5); }
.band-col .dgm { margin-top: var(--s-6); }
.band-col .sec-ctas { margin-top: var(--s-6); }


.sectors { list-style: none; margin: 0; padding: 0;
  display: grid; grid-template-rows: repeat(4, auto); grid-auto-flow: column;
  grid-auto-columns: minmax(min-content, max-content); column-gap: var(--s-6); row-gap: 11px;
  justify-content: start; align-content: start; }


.sectors li { font-family: var(--serif); font-size: var(--fs-body);
  line-height: 1.45; margin: 0; }


.dgm .hhit { fill: transparent !important; stroke: none !important;
  pointer-events: all; }
.stairfig .stair-step { opacity: .88; transition: opacity .3s ease; }
.stairfig .stair-step:hover { opacity: 1; }
.stairfig .stair-add { opacity: 0 !important; transition: opacity .3s ease; }
.stairfig .stair-step:hover .stair-add { opacity: .92 !important; }


.sec-ctas { margin-top: var(--s-6); }


.contact-line { font-family: var(--sans); font-size: var(--fs-body);
  margin: var(--s-4) 0 0; }



.split--figleftwide .split-grid {
  grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); align-items: stretch; }
.split--figleftwide .split-fig { display: flex; }
.split--figleftwide .split-fig .dgm { flex: 1; display: flex; flex-direction: column;
  justify-content: center; }
.split--figleftwide .split-fig .dgm svg { flex: 0 0 auto; }
.split--figleftwide .split-copy { align-self: center; }


.handoff { position: relative; margin-top: 0; }
.ho-rail { position: absolute; left: 27px; top: 11px; bottom: 11px; width: 1px;
  background: var(--rule-strong); transform: scaleY(0); transform-origin: top;
  transition: transform 1.15s cubic-bezier(.3, .5, .2, 1); }
.handoff.drawn .ho-rail { transform: scaleY(1); }
.ho-row { display: grid; grid-template-columns: 54px minmax(0, 1fr) minmax(0, 2fr);
  column-gap: var(--s-5); align-items: start; padding: 0 0 var(--s-6); }
.ho-row:last-child { padding-bottom: 0; }
.ho-row .mark { margin: 0; position: relative; z-index: 1;
  transition: opacity var(--t-fast) var(--ease); opacity: .78; }
.ho-row h4 { font-family: var(--serif); font-size: var(--fs-subhead); font-weight: 500;
  text-transform: none; letter-spacing: 0; line-height: 1.35; margin: 0; opacity: .88;
  transition: opacity var(--t-fast) var(--ease); }
.ho-row p { font-family: var(--sans); font-size: var(--fs-body); line-height: 1.7;
  margin: 0; opacity: .86; }
.ho-row:hover .mark, .ho-row:hover h4 { opacity: 1; }


.band-grid { grid-template-rows: auto auto 1fr auto; row-gap: var(--s-5);
  align-items: stretch; }
.band-col { display: grid; grid-template-columns: minmax(0, 1fr); grid-template-rows: subgrid; grid-row: 1 / span 4;
  row-gap: 0; align-content: stretch; }
.band-col .section-head { margin-bottom: 0; }
.band-col .prose-col { margin: 0; }

.band-col .dgm { margin-top: var(--s-3); align-self: start; }
.band-col .sectors { margin-top: var(--s-3); }

.band-col .sec-ctas { margin-top: var(--s-3); align-self: end; }

.band-col .sec-ctas { display: flex; flex-wrap: wrap; gap: var(--s-3); }
#advisors-desk .sec-ctas .btn { padding-left: 14px; padding-right: 14px;
  letter-spacing: .15em; white-space: nowrap; }
@supports not (grid-template-rows: subgrid) {
  .band-col { display: flex; flex-direction: column; }
  .band-col .sec-ctas { margin-top: auto; padding-top: var(--s-6); }
}

#briefing::before { display: none !important; }



.cflow[data-draw] svg line, .cflow[data-draw] svg path, .cflow[data-draw] svg rect,
.cflow[data-draw] svg polyline, .cflow[data-draw] svg circle {
  transition: stroke-dashoffset .5s cubic-bezier(.16, .84, .34, 1) !important; }


.cflow[data-draw] svg .cf-fade {
  stroke-dasharray: none !important; stroke-dashoffset: 0 !important;
  opacity: 0; transition: opacity .45s ease-out !important; }
.cflow[data-draw].drawn svg .cf-fade { opacity: 1; }


.cflow[data-draw] svg .cf-a * { transition-delay: 0s !important; }
.cflow[data-draw] svg .cf-b * { transition-delay: .40s !important; }
.cflow[data-draw] svg .cf-c * { transition-delay: .80s !important; }
.cflow[data-draw] svg .cf-d * { transition-delay: 1.15s !important; }
.cflow[data-draw] svg .cf-e * { transition-delay: 1.60s !important; }


.stairfig[data-draw] svg .stair-step {
  opacity: 0; transform: translateY(6px);
  transition: opacity .3s ease-out, transform .3s ease-out; }
.stairfig[data-draw].drawn svg .stair-step { opacity: .88; transform: none; }
.stairfig[data-draw].drawn svg .stair-step:hover { opacity: 1; }
.stairfig[data-draw] svg .stair-step[data-step="1"] { transition-delay: .25s; }
.stairfig[data-draw] svg .stair-step[data-step="2"] { transition-delay: .50s; }

.stairfig[data-draw] svg .stair-step * {
  transition: none !important; transition-delay: 0s !important; }

.stairfig svg .stair-add { transition: opacity .3s ease !important;
  transition-delay: 0s !important; }


.stairfig svg .stair-name { font-weight: 500; }


.dgm .dgm-cap.quiet { text-align: right; font-size: 9.5px; letter-spacing: .14em;
  text-transform: none; opacity: .45; }
.vh { position: absolute !important; width: 1px; height: 1px; margin: -1px;
  padding: 0; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%);
  white-space: nowrap; border: 0; }


#read .split-grid { align-items: center !important; }
#read .split-fig { display: flex; align-items: center; justify-content: center; }
#read .split-fig .dgm.quadfig { flex: 0 1 auto; min-width: 0; max-width: 100%; display: inline-block;
  width: auto; margin: 0; padding: 0; border: 0; background: none;
  border-radius: 0; }
#read .split-fig .dgm.quadfig svg { width: 620px; max-width: 100%;
  min-width: 0; display: block; margin: 0 auto; }

#read .split-fig .dgm.quadfig--stack { display: none; }
@media (max-width: 640px) {
  #read .split-fig .dgm.quadfig { display: none; }
  #read .split-fig .dgm.quadfig--stack { display: inline-block; }
  #read .split-fig .dgm.quadfig--stack svg { width: 320px; }
}


.quadfig[data-draw] svg text,
.quadfig[data-draw].drawn svg text { opacity: 1; transition: none; }
.quadfig[data-draw] svg text.t-mini,
.quadfig[data-draw].drawn svg text.t-mini { opacity: .62; }
.quadfig[data-draw] svg text.qd-desc,
.quadfig[data-draw].drawn svg text.qd-desc { opacity: .72;
  transition: opacity .3s var(--ease); }



.quadfig svg { overflow: visible; }
.quadfig .qd-glyph { transform-box: fill-box; transform-origin: center;
  transition: transform .35s cubic-bezier(.2, .7, .2, 1); }
.quadfig .qd-tile:hover .qd-glyph { transform: scale(1.1); }
.quadfig[data-draw].drawn svg .qd-tile:hover text.qd-desc { opacity: 1; }


.quadfig[data-draw] svg .qd-tile {
  opacity: 0; transform: translateY(6px);
  transition: opacity .3s ease-out, transform .3s ease-out; }
.quadfig[data-draw].drawn svg .qd-tile { opacity: 1; transform: none; }
.quadfig[data-draw] svg .qd-tile[data-tile="1"] { transition-delay: .15s; }
.quadfig[data-draw] svg .qd-tile[data-tile="2"] { transition-delay: .30s; }
.quadfig[data-draw] svg .qd-tile[data-tile="3"] { transition-delay: .45s; }

.quadfig[data-draw] svg .qd-tile *:not(.qd-glyph):not(.qd-desc) {
  transition: none; transition-delay: 0s; }

@media (max-width: 1000px) {
  .split .split-grid { grid-template-columns: minmax(0, 1fr) !important;
    gap: var(--s-6); }
  .split .split-fig { margin: 0; }
}

@media (max-width: 820px) {
  #questionnaire .split-fig .dgm { overflow-x: visible; }
  #questionnaire .split-fig .dgm svg { min-width: 0; }
}
@media (max-width: 900px) {
  .doors--3, .tiers { grid-template-columns: repeat(2, 1fr); }
  
  .band-grid { grid-template-columns: 1fr; grid-template-rows: none;
    row-gap: var(--s-8); }
  
  .band-col { display: block; grid-row: auto; grid-column: auto;
    min-width: 0; }
  .band-col .section-head { margin-bottom: var(--s-5); }
  .band-col .dgm, .band-col .sectors { margin-top: var(--s-6); }
  .band-col .sec-ctas { margin-top: var(--s-6); flex-wrap: wrap; }
  .band-col .sec-ctas .btn { flex: 1 1 100%; justify-content: center; }
  #advisors-desk .sec-ctas .btn { padding-left: 22px; padding-right: 22px;
    white-space: normal; }
  
  .ho-row { grid-template-columns: 1fr; row-gap: var(--s-3); }
  .ho-rail { display: none; }
}
@media (max-width: 860px) {
  .owns--open .own { border-right: 0; border-bottom: 0; padding-right: 0; }
}
@media (max-width: 640px) {
  .doors--3, .doors--2, .tiers { grid-template-columns: 1fr; }
  
  .sectors { grid-template-rows: none; grid-auto-flow: row;
    grid-template-columns: minmax(0, 1fr); }
}
@media (prefers-reduced-motion: reduce) {
  .doors--open .door, .tiers--open .tier, .owns--open .own,
  .doors--open .door .mark, .tiers--open .tier .mark, .owns--open .own .mark,
  .doors--open .door h3::after, .tiers--open .tier h3::after,
  .owns--open .own h4::after, .doors--open .door .go::after,
  .tiers--open .tier .go::after, .stairfig .stair-step,
  .stairfig .stair-add { transition: none !important; }
  .doors--open .door:hover, .tiers--open .tier:hover, .owns--open .own:hover {
    transform: none !important; box-shadow: none !important; }
  .doors--open .door:hover .mark, .tiers--open .tier:hover .mark,
  .owns--open .own:hover .mark { transform: none !important; }
  .doors--open .door:hover .go::after,
  .tiers--open .tier:hover .go::after { transform: none !important; }
  
  .stairfig .stair-add { opacity: .92 !important; }
  
  .ho-rail { transition: none !important; transform: scaleY(1) !important; }
  .ho-row .mark, .ho-row h4 { transition: none !important; }
  
  .cflow[data-draw] svg *, .stairfig[data-draw] svg * {
    transition: none !important; transition-delay: 0s !important;
    opacity: 1 !important; transform: none !important; }
  .stairfig[data-draw] svg .stair-step { opacity: .88 !important; }
  
  .quadfig[data-draw] svg .qd-tile, .quadfig .qd-glyph {
    transition: none !important; transition-delay: 0s !important;
    opacity: 1 !important; transform: none !important; }
  .quadfig .qd-tile:hover .qd-glyph { transform: none !important; }
  .quadfig[data-draw] svg text.qd-desc,
  .quadfig[data-draw].drawn svg text.qd-desc {
    transition: none !important; opacity: .72 !important; }
  .quadfig[data-draw].drawn svg .qd-tile:hover text.qd-desc {
    opacity: 1 !important; }
}



@media (hover: none) {
  .stairfig .stair-add { opacity: .92 !important; }
}
