.program-page{min-height:calc(100vh - 80px);padding:42px 0 80px;background:radial-gradient(circle at 8% 7%,rgba(23,104,169,.08),transparent 26%),radial-gradient(circle at 92% 13%,rgba(47,143,104,.07),transparent 25%),#f4f8fc;color:#334155}
.program-hero{position:relative;overflow:hidden;padding:clamp(32px,5vw,58px);border:1px solid #dce7f1;border-radius:26px;background:#fff;box-shadow:0 20px 60px rgba(32,65,103,.09);text-align:center}
.program-hero:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#1768a9,#46a7df,#2f8f68)}
.program-kicker{display:inline-block;margin-bottom:8px;color:#1768a9;font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.program-hero h1{margin:0;color:#22324a;font-size:clamp(34px,5vw,54px);line-height:1.1;letter-spacing:-.035em}
.program-hero p{max-width:670px;margin:14px auto 0;color:#718096;font-size:16px;line-height:1.7}
.program-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:24px}
.program-card{position:relative;min-height:245px;display:flex;flex-direction:column;padding:24px;border:1px solid #dce7f1;border-radius:20px;background:#fff;color:inherit;text-decoration:none;box-shadow:0 10px 32px rgba(32,65,103,.06);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.program-card:hover{transform:translateY(-4px);box-shadow:0 18px 42px rgba(32,65,103,.12);border-color:rgba(23,104,169,.25)}
.program-card-number{width:44px;height:44px;display:grid;place-items:center;border-radius:13px;background:#eef6fc;color:#1768a9;font-weight:900}
.program-card h2{margin:22px 0 8px;color:#22324a;font-size:25px}.program-card p{margin:0;color:#718096;line-height:1.6}
.program-card-action{margin-top:auto;padding-top:22px;color:#1768a9;font-size:13px;font-weight:900}
.program-card.theme-green .program-card-number{background:#edf8f2;color:#2f8f68}.program-card.theme-pink .program-card-number{background:#fff0f5;color:#b64e79}.program-card.theme-orange .program-card-number{background:#fff5e8;color:#b96c22}
.program-back{display:inline-flex;align-items:center;gap:7px;margin-bottom:16px;padding:8px 12px;border:1px solid #dce7f1;border-radius:999px;background:#fff;color:#1768a9;text-decoration:none;font-size:13px;font-weight:850}
.program-hero-selected{text-align:left}.program-hero-selected.theme-green:before{background:#2f8f68}.program-hero-selected.theme-pink:before{background:#b64e79}.program-hero-selected.theme-orange:before{background:#c97727}
.program-cycles{margin-top:24px;padding:clamp(22px,4vw,34px);border:1px solid #dce7f1;border-radius:24px;background:#fff;box-shadow:0 14px 42px rgba(32,65,103,.06)}
.program-cycles header h2{margin:0;color:#22324a;font-size:30px}
.program-cycle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:20px}
.program-cycle-card{display:grid;grid-template-columns:48px minmax(0,1fr) 36px;gap:14px;align-items:center;min-height:106px;padding:16px;border:1px solid #dce7f1;border-radius:16px;background:#fbfdff;color:inherit;text-decoration:none;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.program-cycle-card:hover{transform:translateY(-2px);border-color:rgba(23,104,169,.25);box-shadow:0 10px 26px rgba(32,65,103,.08)}
.program-cycle-index{width:43px;height:43px;display:grid;place-items:center;border-radius:13px;background:#e9f4fc;color:#1768a9;font-size:13px;font-weight:900}
.program-cycle-card h3{margin:0;color:#22324a;font-size:18px}.program-cycle-card p{margin:5px 0 0;color:#718096;font-size:12px;line-height:1.45}
.program-cycle-arrow{justify-self:end;color:#1768a9;font-size:20px;font-weight:900}
.program-empty{grid-column:1/-1;padding:24px;border:1px dashed #d5e2ec;border-radius:15px;background:#f8fbfd;color:#718096;text-align:center;font-weight:700}
.edu-program-switch{display:inline-flex;align-items:center;min-height:34px;margin-inline-start:auto;margin-inline-end:12px;padding:0 12px;border:1px solid rgba(23,104,169,.13);border-radius:999px;background:#fff;color:#1768a9;text-decoration:none;font-size:12px;font-weight:900;white-space:nowrap}
.edu-program-switch+.edu-langs{margin-inline-start:0!important}
@media(max-width:850px){.program-grid{grid-template-columns:1fr}.program-cycle-grid{grid-template-columns:1fr}.program-card{min-height:190px}}
@media(max-width:600px){.program-page{padding:26px 0 55px}.program-hero{padding:30px 20px;border-radius:20px}.program-cycles{padding:20px 13px;border-radius:20px}.program-cycle-card{grid-template-columns:44px minmax(0,1fr) 28px}.edu-program-switch{padding:0 9px;font-size:11px}}
html[dir=rtl] .program-hero-selected{text-align:right}
