.ob-centre-cash {
  --ob-cash-flow: #69b9c6;
  --ob-cash-reserve: #d2a45f;
  --ob-cash-goals: #9f93cf;
}

.ob-centre-cash .ob2-explorer-territory.ob2-territory--cash-monthly-available {
  border-top-color: var(--ob-cash-flow);
}

.ob-centre-cash .ob2-explorer-territory.ob2-territory--cash-reserves-interruptions {
  border-top-color: var(--ob-cash-reserve);
}

.ob-centre-cash .ob2-explorer-territory.ob2-territory--cash-goals-saving {
  border-top-color: var(--ob-cash-goals);
}

.ob-centre-cash .ob2-territory--cash-monthly-available .ob2-territory-mark {
  background: var(--ob-cash-flow);
}

.ob-centre-cash .ob2-territory--cash-reserves-interruptions .ob2-territory-mark {
  background: var(--ob-cash-reserve);
}

.ob-centre-cash .ob2-territory--cash-goals-saving .ob2-territory-mark {
  background: var(--ob-cash-goals);
}

.ob-centre-cash .ob2-territory--cash-monthly-available .ob2-explorer-question {
  border-left-color: rgba(105, 185, 198, 0.84);
}

.ob-centre-cash .ob2-territory--cash-reserves-interruptions .ob2-explorer-question {
  border-left-color: rgba(210, 164, 95, 0.84);
}

.ob-centre-cash .ob2-territory--cash-goals-saving .ob2-explorer-question {
  border-left-color: rgba(159, 147, 207, 0.84);
}

.ob-centre-cash :is(.ob2-question__dock-copy, .ob2-dock-summary) strong[data-ob2-key-term] {
  color: inherit;
  font-weight: var(--ob2-type-reader-emphasis-weight);
}

.ob-centre-cash :is(.ob2-driver-list, .ob2-relationship-contract)[hidden] {
  display: none !important;
}

.ob-centre-cash .ob2-question__resources .ob2-resource-type {
  display: none;
}

.ob-centre-cash .ob2-planning-context {
  background: var(--ob2-ink);
  border-top: 1px solid var(--ob2-stage-rule);
  color: var(--ob2-resource);
  isolation: isolate;
  overflow: hidden;
  padding: clamp(38px, 5vw, 64px) var(--ob2-page-gutter);
  position: relative;
}

.ob-centre-cash .ob2-planning-context__inner {
  max-width: 980px;
  position: relative;
  z-index: 1;
}

.ob-centre-cash .ob2-planning-context h2 {
  color: inherit;
  font-size: clamp(1.25rem, 2vw, 1.6rem);
  line-height: 1.2;
  margin: 0 0 20px;
}

.ob-centre-cash .ob2-planning-context p {
  color: rgba(244, 240, 230, 0.84);
  line-height: 1.68;
  margin: 0;
}

.ob-centre-cash .ob2-planning-context p + p {
  margin-top: 14px;
}

.ob-centre-cash .ob2-index-state {
  margin-bottom: 28px;
}

.ob-centre-cash .ob2-index-groups {
  margin-top: 28px;
}

.ob-centre-cash .ob2-resource-index,
.ob-centre-cash .ob2-educational-boundary {
  padding-bottom: clamp(28px, 3vw, 40px);
  padding-top: clamp(28px, 3vw, 40px);
}

.ob-centre-cash:has(.ob2-explorer-question[data-ob2-resource-total="1"].is-selected) .ob2-context-dock .ob2-dock-actions,
.ob-centre-cash:has(.ob2-explorer-question[data-ob2-resource-total="2"].is-selected) .ob2-context-dock .ob2-dock-actions,
.ob-centre-cash:has(.ob2-explorer-question[data-ob2-resource-total="3"].is-selected) .ob2-context-dock .ob2-dock-actions {
  display: none;
}

@media (min-width: 980px) {
  .ob-centre-cash .ob2-map-heading {
    max-width: calc(100% - 56px);
  }

  .ob-centre-cash .ob2-dock-territories {
    gap: 6px;
  }

  .ob-centre-cash .ob2-dock-territories li {
    align-items: start;
    border-top: 0;
    grid-template-columns: minmax(0, 1fr);
    isolation: isolate;
    overflow: hidden;
    padding: 11px 16px;
    position: relative;
  }

  .ob-centre-cash .ob2-dock-territories li::before {
    content: "";
    inset: 0;
    position: absolute;
    z-index: -1;
  }

  .ob-centre-cash .ob2-dock-territories li[data-ob2-territory="cash-monthly-available"]::before {
    background: linear-gradient(90deg, rgba(105, 185, 198, 0.2), rgba(105, 185, 198, 0.035));
    clip-path: polygon(0 0, 91% 0, 100% 100%, 5% 100%);
  }

  .ob-centre-cash .ob2-dock-territories li[data-ob2-territory="cash-reserves-interruptions"]::before {
    background: linear-gradient(90deg, rgba(210, 164, 95, 0.2), rgba(210, 164, 95, 0.035));
    clip-path: polygon(7% 0, 100% 0, 94% 100%, 0 100%);
  }

  .ob-centre-cash .ob2-dock-territories li[data-ob2-territory="cash-goals-saving"]::before {
    background: linear-gradient(90deg, rgba(159, 147, 207, 0.2), rgba(159, 147, 207, 0.035));
    clip-path: polygon(0 0, 94% 0, 100% 100%, 8% 100%);
  }

  .ob-centre-cash .ob2-dock-territories small {
    grid-column: 1;
  }

  .ob-centre-cash .ob2-context-dock .ob2-lead-resource-list {
    display: grid;
    gap: 2px;
  }

  .ob-centre-cash .ob2-context-dock .ob2-lead-resource-list li {
    border-bottom: 0;
    padding: 3px 0;
  }

  .ob-centre-cash .ob2-context-dock .ob2-dock-actions {
    margin-top: 12px;
  }

  .ob-centre-cash .ob2-map-field {
    height: 820px;
    min-height: 820px;
  }

  .ob-centre-cash .ob2-map-territory {
    height: 210px;
  }

  .ob-centre-cash .ob2-map-territory--cash-monthly-available {
    background: linear-gradient(90deg, rgba(105, 185, 198, 0.15), rgba(105, 185, 198, 0.025) 62%, transparent);
    border-color: rgba(105, 185, 198, 0.36);
    border-left-color: var(--ob-cash-flow);
    clip-path: polygon(0 0, 90% 0, 100% 100%, 5% 100%);
    left: 24px;
    right: 150px;
    top: 100px;
  }

  .ob-centre-cash .ob2-map-territory--cash-reserves-interruptions {
    background: linear-gradient(90deg, rgba(210, 164, 95, 0.15), rgba(210, 164, 95, 0.025) 62%, transparent);
    border-color: rgba(210, 164, 95, 0.36);
    border-left-color: var(--ob-cash-reserve);
    clip-path: polygon(7% 0, 100% 0, 94% 100%, 0 100%);
    left: 120px;
    right: 24px;
    top: 335px;
  }

  .ob-centre-cash .ob2-map-territory--cash-reserves-interruptions > span {
    left: calc(7% + 12px);
  }

  .ob-centre-cash .ob2-map-territory--cash-goals-saving {
    background: linear-gradient(90deg, rgba(159, 147, 207, 0.15), rgba(159, 147, 207, 0.025) 62%, transparent);
    border-color: rgba(159, 147, 207, 0.38);
    border-left-color: var(--ob-cash-goals);
    clip-path: polygon(0 0, 94% 0, 100% 100%, 8% 100%);
    left: 48px;
    right: 100px;
    top: 570px;
  }

  .ob-centre-cash .ob2-map-node[data-ob2-territory="cash-monthly-available"] .ob2-question-code {
    color: var(--ob-cash-flow);
  }

  .ob-centre-cash .ob2-map-node[data-ob2-territory="cash-reserves-interruptions"] .ob2-question-code {
    color: var(--ob-cash-reserve);
  }

  .ob-centre-cash .ob2-map-node[data-ob2-territory="cash-goals-saving"] .ob2-question-code {
    color: var(--ob-cash-goals);
  }

  .ob-centre-cash .ob2-map-node[data-ob3-geometry="cash-income"] {
    left: 24%;
    top: 220px;
  }

  .ob-centre-cash .ob2-map-node[data-ob3-geometry="cash-flow"] {
    left: 62%;
    top: 230px;
  }

  .ob-centre-cash .ob2-map-node[data-ob3-geometry="cash-reserve"] {
    left: 42%;
    top: 455px;
  }

  .ob-centre-cash .ob2-map-node[data-ob3-geometry="cash-runway"] {
    left: 78%;
    top: 465px;
  }

  .ob-centre-cash .ob2-map-node[data-ob3-geometry="cash-goals"] {
    left: 48%;
    top: 690px;
  }

  .ob-centre-cash .ob2-map-node {
    min-height: 116px;
    width: min(32%, 310px);
  }
}

@media (min-width: 1090px) {
  .ob-centre-cash.ob2-is-enhanced .ob2-stage {
    grid-template-columns: minmax(0, 1.63fr) minmax(350px, 1fr);
  }

  .ob-centre-cash .ob2-context-dock {
    height: 820px;
    min-height: 820px;
  }

  .ob-centre-cash .ob2-planning-context::before,
  .ob-centre-cash .ob2-planning-context::after {
    content: "";
    inset: 0 0 0 52%;
    pointer-events: none;
    position: absolute;
    z-index: 0;
  }

  .ob-centre-cash .ob2-planning-context::before {
    background:
      linear-gradient(158deg, rgba(105, 185, 198, 0.11) 0 31%, transparent 31%),
      linear-gradient(158deg, transparent 34%, rgba(210, 164, 95, 0.1) 34% 64%, transparent 64%),
      linear-gradient(158deg, transparent 67%, rgba(159, 147, 207, 0.11) 67% 92%, transparent 92%);
    clip-path: polygon(12% 0, 100% 0, 100% 100%, 0 100%, 8% 70%, 2% 39%);
  }

  .ob-centre-cash .ob2-planning-context::after {
    background: repeating-radial-gradient(
      ellipse at 100% 48%,
      transparent 0 52px,
      rgba(220, 235, 232, 0.065) 53px 54px,
      transparent 55px 102px
    );
    opacity: 0.72;
  }
}

@media (min-width: 980px) and (max-width: 1089px) {
  .ob-centre-cash .ob2-context-dock {
    height: auto;
    min-height: 0;
  }
}

@media (max-width: 979px) {
  .ob-centre-cash .ob2-territory--cash-monthly-available .ob2-question-code {
    border-color: rgba(105, 185, 198, 0.78);
    color: #9bd8e1;
  }

  .ob-centre-cash .ob2-territory--cash-reserves-interruptions .ob2-question-code {
    border-color: rgba(210, 164, 95, 0.78);
    color: #ecc981;
  }

  .ob-centre-cash .ob2-territory--cash-goals-saving .ob2-question-code {
    border-color: rgba(159, 147, 207, 0.78);
    color: #c9bdf0;
  }

  .ob-centre-cash.ob2-is-enhanced .ob2-territory--cash-monthly-available .ob2-explorer-question.is-selected {
    box-shadow: 0 0 0 2px rgba(105, 185, 198, 0.5), 0 16px 30px rgba(0, 0, 0, 0.24);
  }

  .ob-centre-cash.ob2-is-enhanced .ob2-territory--cash-reserves-interruptions .ob2-explorer-question.is-selected {
    box-shadow: 0 0 0 2px rgba(210, 164, 95, 0.5), 0 16px 30px rgba(0, 0, 0, 0.24);
  }

  .ob-centre-cash.ob2-is-enhanced .ob2-territory--cash-goals-saving .ob2-explorer-question.is-selected {
    box-shadow: 0 0 0 2px rgba(159, 147, 207, 0.5), 0 16px 30px rgba(0, 0, 0, 0.24);
  }
}

@media print {
  .ob-centre-cash .ob2-planning-context {
    background: #fff !important;
    color: #000 !important;
    padding: 20pt 0 !important;
  }

  .ob-centre-cash .ob2-planning-context p {
    color: #000 !important;
  }

  .ob-centre-cash .ob2-planning-context::before,
  .ob-centre-cash .ob2-planning-context::after {
    display: none !important;
  }

  .ob-centre-cash .ob2-territory--cash-monthly-available {
    border-top-color: #326f7a;
  }

  .ob-centre-cash .ob2-territory--cash-reserves-interruptions {
    border-top-color: #8a650e;
  }

  .ob-centre-cash .ob2-territory--cash-goals-saving {
    border-top-color: #675a93;
  }
}
