/* Compact homepage portfolio. Its selectors do not affect the demo pages. */
.program-glance{padding:46px 0 48px;background:linear-gradient(115deg,#f5f9ff 0%,#fff 64%,#fffaf0 100%);border-bottom:1px solid #dde7f2;scroll-margin-top:110px}
.program-glance-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:22px}
.program-glance .eyebrow{margin:0 0 8px;font-size:11px;color:#0758b5;letter-spacing:.13em}
.program-glance h2{margin:0;font-size:clamp(26px,2.5vw,34px);line-height:1.15;letter-spacing:-.035em;color:#09233c}
.program-glance-all{color:#0758b5;font-size:13px;font-weight:700;text-decoration:none;padding:10px 0;white-space:nowrap}
.program-glance-all span{display:inline-block;margin-left:9px;transition:transform .2s}
.program-glance-all:hover{color:#021a32;text-decoration:underline;text-underline-offset:5px}
.program-glance-all:hover span{transform:translateX(4px)}
.program-glance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.program-mini{--program-accent:#b94e39;--program-soft:rgba(185,78,57,.14);--program-line:rgba(185,78,57,.18);--program-glow:rgba(185,78,57,.22);position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;gap:0;min-width:0;padding:20px 23px 17px;border:1px solid #d6e3ee;border-top:3px solid var(--program-accent);border-radius:14px;background:linear-gradient(180deg,#fff 0%,#fbfdff 52%,#f9fcff 100%);box-shadow:0 5px 18px #12344b07;transition:transform .2s,box-shadow .2s,border-color .2s}
.program-mini::before{content:"";position:absolute;inset:auto -16% 38% 24%;height:140px;border:2px solid color-mix(in srgb,var(--program-accent) 72%, white 28%);border-left:none;border-bottom:none;border-radius:999px;opacity:.34;pointer-events:none;transform:rotate(-6deg);z-index:0}
.program-mini::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;opacity:.95;background:
  radial-gradient(circle at 11% 20%,var(--program-accent) 0 2px,transparent 2.8px),
  radial-gradient(circle at 29% 34%,var(--program-accent) 0 2px,transparent 2.8px),
  radial-gradient(circle at 42% 16%,var(--program-accent) 0 2px,transparent 2.8px),
  radial-gradient(circle at 58% 28%,var(--program-accent) 0 2px,transparent 2.8px),
  radial-gradient(circle at 79% 21%,var(--program-accent) 0 2px,transparent 2.8px),
  radial-gradient(circle at 88% 37%,var(--program-accent) 0 2px,transparent 2.8px),
  linear-gradient(120deg,transparent 11%,var(--program-line) 11.4%,var(--program-line) 11.9%,transparent 12.4%),
  linear-gradient(167deg,transparent 27%,var(--program-line) 27.4%,var(--program-line) 27.9%,transparent 28.4%),
  linear-gradient(148deg,transparent 41%,var(--program-line) 41.4%,var(--program-line) 41.9%,transparent 42.4%),
  linear-gradient(20deg,transparent 58%,var(--program-line) 58.4%,var(--program-line) 58.9%,transparent 59.4%),
  radial-gradient(160px 80px at 86% 7%,var(--program-soft),transparent 63%),
  radial-gradient(220px 110px at 100% 0%,var(--program-glow),transparent 57%);
  mix-blend-mode:normal}
.program-mini>*{position:relative;z-index:1}
.program-mini--magnitude{--program-accent:#006f9f;--program-soft:rgba(0,111,159,.14);--program-line:rgba(0,111,159,.18);--program-glow:rgba(12,163,228,.18)}
.program-mini--fortress{--program-accent:#ae7600;--program-soft:rgba(174,118,0,.14);--program-line:rgba(174,118,0,.2);--program-glow:rgba(246,194,67,.22)}
.program-mini:hover,.program-mini:focus-within{transform:translateY(-3px);border-color:var(--program-accent);box-shadow:0 12px 28px #12344b12}
.program-mini-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
.program-mini-type{font-size:10px;letter-spacing:.07em;text-transform:uppercase;font-weight:700;color:#52677c}
.program-mini-number{font-size:11px;color:var(--program-accent);font-weight:700;font-variant-numeric:tabular-nums}
.program-mini h3{margin:0 0 10px;color:#09233c;font-size:23px;line-height:1.1;letter-spacing:.03em}
.program-mini p{font-size:13px;line-height:1.65;color:#42576c;margin:0 0 15px;max-width:42ch}
.program-mini p strong{font-weight:600;color:#28445d}
.program-mini a{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:42px;border-top:1px solid #e5ecf3;padding-top:9px;color:#0658b1;font-size:11px;letter-spacing:.035em;font-weight:700;text-decoration:none}
.program-mini a span{color:var(--program-accent);font-size:19px;transition:transform .2s}
.program-mini a:hover{color:#001d35;text-decoration:underline;text-underline-offset:4px}
.program-mini a:hover span{transform:translate(2px,-2px)}
.program-glance a:focus-visible{outline:3px solid #bd8500;outline-offset:4px;border-radius:2px}
@media(max-width:800px){.program-glance-grid{gap:12px}.program-mini{padding:18px 16px 14px}.program-mini h3{font-size:20px}.program-mini-type{font-size:9px}.program-mini::before{inset:auto -12% 46% 26%;height:118px}}
@media(max-width:650px){.program-glance{padding:32px 0}.program-glance-heading{align-items:flex-start;flex-direction:column;gap:8px;margin-bottom:16px}.program-glance-grid{grid-template-columns:1fr;gap:13px}.program-mini{padding:17px 20px 12px}.program-mini p{max-width:65ch;margin-bottom:10px}.program-mini h3{font-size:22px;margin-bottom:8px}.program-mini-top{margin-bottom:10px}.program-mini a{min-height:44px}.program-mini::before{inset:auto -20% 48% 30%;height:110px}.program-mini::after{background:
  radial-gradient(circle at 12% 20%,var(--program-accent) 0 2px,transparent 2.8px),
  radial-gradient(circle at 28% 36%,var(--program-accent) 0 2px,transparent 2.8px),
  radial-gradient(circle at 44% 19%,var(--program-accent) 0 2px,transparent 2.8px),
  radial-gradient(circle at 59% 30%,var(--program-accent) 0 2px,transparent 2.8px),
  radial-gradient(circle at 78% 23%,var(--program-accent) 0 2px,transparent 2.8px),
  linear-gradient(120deg,transparent 12%,var(--program-line) 12.4%,var(--program-line) 12.9%,transparent 13.4%),
  linear-gradient(160deg,transparent 29%,var(--program-line) 29.4%,var(--program-line) 29.9%,transparent 30.4%),
  linear-gradient(20deg,transparent 58%,var(--program-line) 58.4%,var(--program-line) 58.9%,transparent 59.4%),
  radial-gradient(160px 82px at 88% 8%,var(--program-soft),transparent 63%),
  radial-gradient(220px 110px at 100% 0%,var(--program-glow),transparent 57%)}}
@media(prefers-reduced-motion:reduce){.program-mini,.program-mini a span,.program-glance-all span{transition:none!important}.program-mini:hover,.program-mini:focus-within,.program-mini a:hover span,.program-glance-all:hover span{transform:none!important}}
