.ps-section {
  --ps-ink: #0b102c;
  --ps-muted: #59688b;
  --ps-line: #e8edf5;
  --ps-card: #fff;
  --ps-soft: color-mix(in srgb, var(--mark-blue) 3%, #fff);
  --ps-blue: var(--mark-blue);
  --ps-ease: var(--ease-out, cubic-bezier(.23, 1, .32, 1));
  margin-top: 72px;
  padding: 24px 36px 44px;
  color: var(--ps-ink);
  background: radial-gradient(ellipse at 12% 14%, color-mix(in srgb, var(--mark-violet) 2.8%, transparent), transparent 60%), #fdfdff;
  font-family: 'Instrument Sans', system-ui, sans-serif;
}
.ps-wrap { max-width: 1448px; margin-inline: auto; }
.ps-heading { padding-inline: 44px; margin-bottom: 20px; }
.ps-kicker { display: block; color: var(--accent-ink); font-size: 12px; line-height: 1.4; font-weight: 600; letter-spacing: 1.8px; }
.ps-heading h2 { max-width: 710px; margin: 8px 0 10px; color: var(--ps-ink); font-size: 42px; line-height: 1.05; letter-spacing: -1.55px; font-weight: 700; }
.ps-heading p { max-width: 760px; margin: 0; color: var(--ps-muted); font-size: 17px; line-height: 1.4; }
.ps-cards { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.ps-card { position: relative; isolation: isolate; min-width: 0; min-height: 208px; padding: 20px 22px; border: 1px solid color-mix(in srgb, var(--ps-card-accent) 14%, var(--ps-line)); border-radius: 16px; background: var(--ps-card); box-shadow: 0 3px 8px rgb(32 45 92 / .015), 0 12px 28px -20px rgb(32 45 92 / .12); }
.ps-card-pf { --ps-card-accent: var(--mark-blue); }
.ps-card-esi { --ps-card-accent: var(--mark-leaf); }
.ps-card-pt { --ps-card-accent: var(--mark-orange); }
.ps-card-lwf { --ps-card-accent: var(--mark-violet); }
.ps-card-copy { position: relative; z-index: 2; pointer-events: none; }
.ps-card h3 { font-size: 18px; font-weight: 700; line-height: 1.2; letter-spacing: -.45px; color: var(--ps-ink); margin: 0 0 9px; }
.ps-card-copy p { max-width: 54%; font-size: 12.5px; line-height: 1.36; color: var(--ps-muted); margin: 0; }
.ps-card-lwf .ps-card-copy p { max-width: 52%; }
.ps-card .ps-art { position: absolute; right: 6px; bottom: 8px; width: 49%; max-width: 178px; z-index: 1; pointer-events: none; }
.ps-section :is(a, button):focus-visible { outline: 3px solid var(--mark-violet); outline-offset: 4px; }
.ps-charts { display: grid; grid-template-columns: minmax(0, 1.09fr) minmax(0, 1fr); gap: 16px; margin-top: 18px; align-items: stretch; }
.ps-heading .ps-entered { animation: ps-heading-in 500ms var(--ps-ease) var(--ps-delay, 0ms) backwards; }
.ps-card.ps-entered { animation: ps-card-in 500ms var(--ps-ease) var(--ps-delay, 0ms) backwards; }
.ps-chart.ps-entered { animation: ps-chart-in 550ms var(--ps-ease) backwards; }
@keyframes ps-heading-in { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } }
@keyframes ps-card-in { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
@keyframes ps-chart-in { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
@media (hover: hover) and (pointer: fine) {
  .ps-card { transition: transform 180ms var(--ps-ease), box-shadow 180ms ease; }
  .ps-card:hover { transform: translateY(-3px); box-shadow: 0 5px 12px rgb(32 45 92 / .025), 0 16px 30px -16px rgb(32 45 92 / .16); }
}
:root[data-theme='dark'] .ps-section { --ps-ink: #f0f3ff; --ps-muted: #acb6d0; --ps-line: #2c3651; --ps-card: #151b2b; --ps-soft: #1c2438; background: #0d111e; }
:root[data-theme='dark'] .ps-kicker { color: #8caaff; }
@media (prefers-color-scheme: dark) {
  :root:not([data-theme]) .ps-section { --ps-ink: #f0f3ff; --ps-muted: #acb6d0; --ps-line: #2c3651; --ps-card: #151b2b; --ps-soft: #1c2438; background: #0d111e; }
  :root:not([data-theme]) .ps-kicker { color: #8caaff; }
}
@media (max-width: 1350px) {
  .ps-section { padding-inline: 28px; }
  .ps-card { padding: 18px; min-height: 224px; }
  .ps-card h3 { font-size: 16px; letter-spacing: -.35px; }
  .ps-card-copy p { font-size: 12px; max-width: 55%; }
}
@media (max-width: 1100px) {
  .ps-wrap { max-width: 880px; }
  .ps-heading { padding-inline: 0; }
  .ps-heading h2 { font-size: 38px; }
  .ps-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ps-card { min-height: 216px; padding: 22px; }
  .ps-card h3 { font-size: 18px; }
  .ps-card-copy p { font-size: 14px; }
  .ps-charts { grid-template-columns: minmax(0, 1fr); gap: 18px; }
}
@media (max-width: 600px) {
  .ps-section { padding: 24px 20px 36px; }
  .ps-heading { margin-bottom: 22px; }
  .ps-kicker { font-size: 11px; }
  .ps-heading h2 { font-size: 32px; line-height: 1.1; letter-spacing: -1px; }
  .ps-heading h2 br, .ps-desktop-break { display: none; }
  .ps-heading p { font-size: 15px; line-height: 1.45; }
  .ps-cards { grid-template-columns: minmax(0, 1fr); gap: 14px; }
  .ps-card { padding: 20px; min-height: 222px; }
  .ps-card-copy p { max-width: 54%; font-size: 13px; }
  .ps-card h3 { font-size: 18px; }
  .ps-charts { margin-top: 16px; }
}
@media (max-width: 360px) { .ps-section { padding-inline: 14px; } .ps-card { min-height: 252px; } .ps-card-copy p { max-width: 51%; } }
@media (prefers-reduced-motion: reduce) {
  .ps-heading .ps-entered, .ps-card.ps-entered, .ps-chart.ps-entered { animation: none; }
  .ps-card { transition: none; }
  .ps-card:hover { transform: none; }
}
