@font-face{font-family:BlitzProgramDisplay;src:url('/assets/programs/display.ttf') format('truetype');font-display:swap}
.program-showcase{width:100%;max-width:1920px;margin:auto;padding:54px 64px 40px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 100% 0%,#292022 0,transparent 40%),#0b0d0e;color:#fff;font-family:Arial,Helvetica,sans-serif}
.program-showcase *{box-sizing:border-box}
.program-showcase .pp-topline{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:18px;padding-bottom:26px;border-bottom:1px solid #333638}
.program-showcase .pp-eyebrow{font-size:15px;font-weight:800;letter-spacing:3px;color:#fb2634}
.program-showcase .pp-path{display:flex;align-items:center;gap:16px;color:#c1c4c6;font-size:13px;letter-spacing:2px}
.program-showcase .pp-path i{color:#ed1622;font-style:normal;font-size:24px}
.program-showcase .pp-intro{display:flex;justify-content:space-between;align-items:center;gap:40px;padding:32px 0 36px}
.program-showcase .pp-intro h2{font-family:BlitzProgramDisplay,Impact,sans-serif;font-size:clamp(64px,5.5vw,94px);line-height:.95;margin:0;letter-spacing:.4px;font-weight:700}
.program-showcase .pp-intro h2 span{color:#ed1622}
.program-showcase .pp-lead{max-width:390px;color:#bdc2c5;font-size:21px;line-height:1.5;margin:0}
.program-showcase .pp-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.program-showcase .pp-card{background:#141719;border:1px solid #323639;overflow:hidden;border-top:3px solid #ed1622;transition:border-color .2s;min-width:0;display:flex;flex-direction:column}
.program-showcase .pp-card:hover{border-color:#ed1622}
.program-showcase .pp-photo{aspect-ratio:3/2;position:relative;overflow:hidden}
.program-showcase .pp-photo>img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:50% 48%}
.program-showcase .pp-photo:after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.72))}
.program-showcase .pp-photo-label{position:absolute;z-index:1;bottom:22px;left:25px;display:flex;align-items:center;gap:17px}
.program-showcase .pp-photo-label span{font-family:BlitzProgramDisplay,Impact,sans-serif;font-size:48px;color:#ff3b47}
.program-showcase .pp-photo-label b{font-size:14px;letter-spacing:2px}
.program-showcase .pp-details{padding:24px;display:flex;flex-direction:column;align-items:flex-start;gap:0}
.program-showcase .pp-brand{height:64px;width:100%;display:flex;align-items:center;margin-bottom:18px;flex-shrink:0}
.program-showcase .pp-brand img{display:block;width:100%;height:100%;max-width:445px;object-fit:contain;object-position:left center}
.program-showcase .pp-details h3{font-family:Arial,Helvetica,sans-serif;font-size:24px;line-height:1.25;margin:0 0 12px;letter-spacing:-.4px;font-weight:700}
.program-showcase .pp-description{color:#aeb6ba;line-height:1.5;font-size:16px;margin:0;min-height:0}
.program-showcase .pp-program-link{display:inline-flex;align-items:center;gap:22px;color:#fff;font-size:14px;font-weight:700;margin-top:20px;padding:8px 0 9px;border-bottom:1px solid #676b6d}
.program-showcase .pp-program-link:hover{color:#ff3b47}.program-showcase a:focus-visible{outline:2px solid #ff3b47;outline-offset:6px}
.program-showcase .pp-footer{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-top:28px}
.program-showcase .pp-footer p{color:#aeb6ba;margin:0;font-size:15px;line-height:1.4}
.program-showcase .pp-footer-label{color:#fff;font-weight:800;font-size:12px;letter-spacing:2px;white-space:nowrap}
.program-showcase .pp-footer-label:before{content:"";display:inline-block;width:24px;height:3px;background:#ed1622;vertical-align:middle;margin-right:10px}
@media(max-width:1100px){.program-showcase{padding:30px}.program-showcase .pp-intro{display:block}.program-showcase .pp-lead{max-width:640px;margin-top:20px}.program-showcase .pp-cards{grid-template-columns:1fr}.program-showcase .pp-photo{aspect-ratio:3/2}.program-showcase .pp-description{min-height:0}.program-showcase .pp-details{padding:24px}.program-showcase .pp-brand{height:64px;max-width:360px}}
@media(max-width:700px){.program-showcase{padding:24px 18px}.program-showcase .pp-path{display:none}.program-showcase .pp-eyebrow{font-size:11px;letter-spacing:2px}.program-showcase .pp-intro{padding:26px 0}.program-showcase .pp-intro h2{font-size:clamp(46px,10vw,66px)}.program-showcase .pp-lead{margin-top:18px;max-width:100%;font-size:17px}.program-showcase .pp-cards{gap:26px}.program-showcase .pp-details h3{font-size:25px}.program-showcase .pp-photo-label{left:18px;gap:10px}.program-showcase .pp-photo-label b{font-size:11px;letter-spacing:1px}.program-showcase .pp-footer{display:block}.program-showcase .pp-footer-label{display:block;margin-top:15px}}
@media(prefers-reduced-motion:reduce){.program-showcase .pp-card{transition:none}.program-showcase .pp-card:hover{transform:none}}

/* Align each content row without stretching flex gaps. */
@media(min-width:1101px){
 .program-showcase .pp-cards{grid-template-rows:auto auto auto auto auto;row-gap:0;align-items:stretch}
 .program-showcase .pp-card{display:grid;grid-row:span 5;grid-template-rows:subgrid;align-content:start}
 .program-showcase .pp-details{display:contents}
 .program-showcase .pp-brand{width:auto;height:64px;max-width:none;margin:22px 24px 18px}
 .program-showcase .pp-brand img{max-width:100%}
 .program-showcase .pp-details h3{margin:0 24px 12px;align-self:start}
 .program-showcase .pp-description{margin:0 24px;align-self:start}
 .program-showcase .pp-program-link{margin:18px 24px 24px;justify-self:start;align-self:start}
}
