.btn-md,.btn-tall-md{height:3rem;padding:0 1.5rem;font-size:.875rem}.btn-tall-md{background:#fff;color:var(--primary);border:1px solid #fff;display:inline-flex;align-items:center;gap:.5rem;font-weight:700;flex-shrink:0}.btn-tall-md:hover{background:rgba(255,255,255,.9)}.btn-tall-md [data-lucide]{width:1rem;height:1rem}.prog-hero{position:relative;background:var(--primary);color:#fff;overflow:hidden}.prog-hero .eyebrow.primary{color:rgba(255,255,255,.95)}.prog-hero .primary-em{color:#fff}.prog-hero .btn-primary{background:#fff;color:var(--primary)}.prog-hero .btn-primary:hover{background:rgba(255,255,255,.92)}.prog-hero .btn-shadow{box-shadow:0 10px 24px -8px rgb(0 0 0/.35)}.prog-hero-bg{pointer-events:none;z-index:0}.hero-anim,.prog-hero-bg{position:absolute;inset:0}.hero-anim{width:100%;height:100%}.anim-line-solid{stroke:rgba(255,255,255,.3);stroke-width:2.5;stroke-dasharray:2600;stroke-dashoffset:2600;animation:heroDraw 3.5s ease-out .3s forwards}.anim-line-dash{stroke:rgba(255,255,255,.22);stroke-width:2;stroke-dasharray:7 12;animation:heroFlow 22s linear infinite}.anim-node{fill:#fff;opacity:.55;transform-box:fill-box;transform-origin:center;animation:heroPulse 3.2s ease-in-out infinite}.anim-node.d2{animation-delay:.8s}.anim-node.d3{animation-delay:1.6s}.anim-node.d4{animation-delay:2.4s}.anim-ring{stroke:rgba(255,255,255,.18);stroke-width:1.5;stroke-dasharray:4 12;transform-box:fill-box;transform-origin:center;animation:heroSpin 50s linear infinite}.anim-ring.r2{stroke-dasharray:2 9;animation-duration:34s;animation-direction:reverse}.anim-bar{fill:rgba(255,255,255,.12);transform-box:fill-box;transform-origin:bottom;animation:heroGrow 4.2s ease-in-out infinite alternate}.anim-bar.b2{animation-delay:.6s}.anim-bar.b3{animation-delay:1.2s}.anim-bar.b4{animation-delay:1.8s}@keyframes heroDraw{to{stroke-dashoffset:0}}@keyframes heroFlow{to{stroke-dashoffset:-380}}@keyframes heroPulse{0%,to{opacity:.25;transform:scale(.8)}50%{opacity:.8;transform:scale(1.25)}}@keyframes heroSpin{to{transform:rotate(1turn)}}@keyframes heroGrow{0%{transform:scaleY(.45)}to{transform:scaleY(1)}}@media (prefers-reduced-motion:reduce){.anim-line-solid{animation:none;stroke-dashoffset:0}.anim-bar,.anim-line-dash,.anim-node,.anim-ring,.float-shape,.orb{animation:none}}.orb{position:absolute;border-radius:50%;filter:blur(64px)}.orb-1{top:-8rem;left:-8rem;width:28rem;height:28rem;background:rgb(120 0 31/.45);animation:orb1Drift 14.4s ease-in-out infinite}.orb-2{bottom:-10rem;right:-5rem;width:32rem;height:32rem;background:rgb(255 255 255/.14);animation:orb2Drift 17.6s ease-in-out infinite}@keyframes orb1Drift{0%,to{transform:translate(0) scale(1)}50%{transform:translate(60px,30px) scale(1.15)}}@keyframes orb2Drift{0%,to{transform:translate(0) scale(1)}50%{transform:translate(-50px,-40px) scale(1.2)}}.float-shape{position:absolute}.sq-fill{top:25%;right:8%;width:12px;height:12px;background:#fff;animation:drift1 7.2s ease-in-out infinite}.line-1{top:60%;right:22%;width:64px;height:1px;background:rgba(255,255,255,.6);animation:drift2 5.6s ease-in-out infinite}.sq-outline{top:35%;left:12%;width:8px;height:8px;border:1px solid rgba(255,255,255,.8);animation:drift3 8.8s ease-in-out infinite}.line-2{bottom:35%;left:6%;width:40px;height:1px;background:rgba(255,255,255,.5);animation:drift4 6.4s ease-in-out 1s infinite}@keyframes drift1{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-30px) rotate(90deg)}}@keyframes drift2{0%,to{transform:translateX(0);opacity:.3}50%{transform:translateX(30px);opacity:1}}@keyframes drift3{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(25px) rotate(45deg)}}@keyframes drift4{0%,to{transform:translateX(0);opacity:.4}50%{transform:translateX(-20px);opacity:1}}.grid-pattern{position:absolute;inset:0;opacity:.06;background-image:linear-gradient(90deg,#fff 1px,transparent 0),linear-gradient(180deg,#fff 1px,transparent 0);background-size:64px 64px}.prog-hero-inner{position:relative;z-index:1;padding-top:5rem;padding-bottom:5rem}@media (min-width:768px){.prog-hero-inner{padding-top:7rem;padding-bottom:6rem}}.prog-hero-grid{display:grid;grid-template-columns:1.3fr 1fr;grid-gap:4rem;gap:4rem;align-items:center}@media (max-width:1023px){.prog-hero-grid{grid-template-columns:1fr;gap:3rem}}.tracking-extra{letter-spacing:.3em!important;margin-bottom:1.5rem}.prog-h1{font-size:clamp(3rem,7vw,4.5rem);font-weight:900;line-height:.95;letter-spacing:-.025em;margin-bottom:2rem}.prog-hero-sub{font-size:clamp(1.0625rem,1.3vw,1.1875rem);max-width:36rem;color:rgba(255,255,255,.96);font-weight:500;line-height:1.65;margin-bottom:2.5rem}.prog-hero-ctas{display:flex;flex-wrap:wrap;gap:.75rem}.prog-hero-ctas .btn [data-lucide]{width:1rem;height:1rem;margin-left:.25rem}.ataglance{background:var(--bg);color:var(--fg);border:1px solid var(--border);box-shadow:0 25px 50px -12px rgb(0 0 0/.25)}.ataglance-head{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem .75rem;border-bottom:1px solid var(--border)}.ataglance-head-right{display:flex;align-items:center;gap:.625rem}.ataglance-head .lang-tag{display:inline-flex;align-items:center;gap:.3rem;font-size:11px;background:var(--primary);border-color:var(--primary);color:var(--primary-fg);padding:.25rem .6rem}.ataglance-head .lang-tag [data-lucide]{width:.8125rem;height:.8125rem}.ataglance-sub{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.2em;color:var(--muted-fg)}@media (max-width:639px){.ataglance-sub{display:none}}.ataglance-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:1px;gap:1px;background:var(--border)}@media (max-width:639px){.ataglance-grid{grid-template-columns:1fr}}.fact{background:var(--bg);padding:1.25rem;transition:background-color .2s}.fact.tint{background:var(--tint)}.fact:hover{background:var(--primary-05)}.fact-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}.fact-top span{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.2em;color:var(--muted-fg)}.fact-top [data-lucide]{width:1rem;height:1rem;color:var(--primary);stroke-width:1.6}.fact-val{font-size:1rem;font-weight:900;line-height:1.1;margin-bottom:.375rem}.fact-note{font-size:12px;color:var(--muted-fg);line-height:1.45}.fact-label{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.2em;color:var(--muted-fg);margin-bottom:.5rem}.discount-banner{background:#fff;color:var(--fg);border-bottom:1px solid var(--border)}.discount-row{padding:1.5rem 1rem;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:1.5rem}@media (max-width:767px){.discount-row{flex-direction:column;align-items:flex-start}}.discount-left{display:flex;align-items:flex-start;gap:1.25rem}.discount-badge{width:3.5rem;height:3.5rem;border:2px solid var(--primary);color:var(--primary);display:inline-flex;align-items:center;justify-content:center;font-weight:900;font-size:1.25rem;flex-shrink:0}@media (max-width:767px){.discount-badge{display:none}}.discount-eyebrow{margin-bottom:.25rem!important;color:var(--primary)!important}.discount-title{font-size:1.125rem;font-weight:700;line-height:1.4}@media (min-width:768px){.discount-title{font-size:1.25rem}}.discount-banner .btn-tall-md{background:var(--primary);color:#fff;border-color:var(--primary)}.discount-banner .btn-tall-md:hover{background:var(--primary-90)}html{scroll-behavior:smooth}.prog-section{padding:6rem 0;scroll-margin-top:5.5rem}.prog-section.bg-light{background:var(--bg);color:var(--fg)}.prog-section.bg-tint{background:var(--muted);color:var(--fg)}.prog-section.bg-dark{background:var(--dark);color:#fff}.two-col-head{display:grid;grid-template-columns:1fr 1.4fr;grid-gap:3rem;gap:3rem;margin-bottom:4rem;align-items:end}.two-col-head>div:first-child,.two-col-head>p:first-child{align-self:start}@media (max-width:1023px){.two-col-head{grid-template-columns:1fr;gap:2rem}}.prog-h2{font-size:clamp(2rem,3.5vw,3rem);font-weight:900;line-height:1.05;letter-spacing:-.025em}.prog-h2.on-dark{color:#fff}.prog-lead{font-size:1.125rem;color:var(--muted-fg);line-height:1.65;max-width:36rem;align-self:end}.prog-lead.on-dark{color:rgba(255,255,255,.9)}.lead-stack{display:flex;flex-direction:column;gap:1.5rem;align-self:start}.lead-stack p{font-size:1.125rem;color:var(--muted-fg);line-height:1.7}.lead-strong{color:var(--fg);font-weight:900}.lead-em{color:var(--primary);font-weight:700}.adv-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1px;gap:1px;background:var(--border)}@media (max-width:1023px){.adv-grid{grid-template-columns:1fr 1fr}}@media (max-width:639px){.adv-grid{grid-template-columns:1fr}}.adv-card{background:var(--bg);padding:2rem;transition:background-color .2s}.adv-card:hover{background:var(--tint)}.adv-icon{width:2.25rem;height:2.25rem;color:var(--primary);stroke-width:1.4;display:block;margin-bottom:1.5rem}.adv-card h3{font-size:1.25rem;font-weight:900;line-height:1.2;margin-bottom:.75rem}.adv-card p{font-size:.9375rem;color:var(--muted-fg);line-height:1.65}.curriculum-list{border-top:2px solid var(--fg);border-bottom:2px solid var(--fg)}.curr-item{border-bottom:1px solid hsl(0 0% 84%);transition:background-color .2s}.curr-item:last-child{border-bottom:0}.curr-item.open{background:#fff}.curr-row{width:100%;display:grid;grid-template-columns:4rem 1fr auto 2rem;align-items:center;grid-gap:1.5rem;gap:1.5rem;padding:1.625rem .75rem;text-align:left;cursor:pointer}.curr-num{font-size:1.125rem;font-weight:700;color:var(--primary)}.curr-num,.curr-title{font-family:var(--font-display)}.curr-title{font-size:clamp(1.25rem,2.2vw,1.625rem);font-weight:800;line-height:1.2;color:var(--fg);transition:color .2s}.curr-row:hover .curr-title{color:var(--primary)}.curr-ects{font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--muted-fg);white-space:nowrap}.curr-plus{width:1.5rem;height:1.5rem;stroke-width:1.6;color:var(--fg);justify-self:end;transition:transform .25s,color .2s}.curr-item.open .curr-plus{transform:rotate(45deg);color:var(--primary)}.curr-panel{max-height:0;overflow:hidden;transition:max-height .3s ease}.curr-item.open .curr-panel{max-height:640px}@media (max-width:767px){.curr-item.open .curr-panel{max-height:1200px}}.curr-desc{padding:.25rem .75rem 1.75rem;margin-left:5.5rem;max-width:44rem;font-size:1rem;font-weight:500;line-height:1.7;color:hsl(0 0% 25%)}.curr-desc+.curr-modules{padding-top:0}.curr-modules{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:.875rem 2rem;gap:.875rem 2rem;padding:.25rem .75rem 1.75rem;margin-left:5.5rem}.curr-modules li{display:flex;align-items:flex-start;gap:.625rem;font-size:.9375rem;font-weight:500;color:hsl(0 0% 25%);line-height:1.5}.curr-modules li [data-lucide]{width:1rem;height:1rem;color:var(--primary);flex-shrink:0;margin-top:3px}.curr-links{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:.875rem 2rem;gap:.875rem 2rem;padding:.25rem .75rem 1.75rem;margin-left:5.5rem}.curr-desc+.curr-links{padding-top:0}.curr-links a{display:flex;align-items:flex-start;gap:.625rem;font-size:.9375rem;font-weight:600;color:hsl(0 0% 25%);line-height:1.5;transition:color .2s}.curr-links a:hover{color:var(--primary);text-decoration:underline}.curr-links [data-lucide]{width:1rem;height:1rem;color:var(--primary);flex-shrink:0;margin-top:3px}@media (max-width:767px){.curr-row{grid-template-columns:2.5rem 1fr 2rem;gap:1rem}.curr-ects{display:none}.curr-desc,.curr-links,.curr-modules{margin-left:3.5rem}.curr-links,.curr-modules{grid-template-columns:1fr}}.prog-section.study-content{background:hsl(0 0% 36%)}.study-content .eyebrow.primary{color:rgba(255,255,255,.8)}.modules-path{border-bottom:1px solid rgba(255,255,255,.24)}.mod-phase{display:grid;grid-template-columns:1.75rem minmax(0,19rem) minmax(0,1fr);grid-gap:0 2.5rem;gap:0 2.5rem;align-items:start;padding:2.75rem 0;border-top:1px solid rgba(255,255,255,.24)}.mod-rail{position:relative;align-self:stretch}.mod-rail:before{content:"";position:absolute;left:0;top:.45rem;width:11px;height:11px;background:var(--primary-bright)}.mod-semester{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.2em;color:rgba(255,255,255,.8);margin-bottom:.625rem}.mod-title{font-family:var(--font-display);font-size:1.375rem;font-weight:800;line-height:1.25;color:#fff}.mod-list{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem 2rem;gap:1rem 2rem;padding-top:.25rem}.mod-list li{border-left:2px solid var(--primary-bright);padding-left:.875rem;font-size:.9375rem;font-weight:500;line-height:1.55;color:rgba(255,255,255,.95)}@media (max-width:1023px){.mod-phase{grid-template-columns:1.75rem minmax(0,1fr);gap:1.5rem 1.25rem}.mod-list{grid-column:2}}@media (max-width:639px){.mod-list{grid-template-columns:1fr;gap:.875rem}}.career-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:1px;gap:1px;background:var(--border)}@media (max-width:767px){.career-grid{grid-template-columns:1fr 1fr}}.career-cell{background:var(--bg);padding:1.5rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem;color:var(--fg);transition:background-color .2s,color .2s}.career-cell:hover{background:var(--primary);color:var(--primary-fg)}.career-cell span{font-size:1rem;font-weight:700;line-height:1.2}.career-cell [data-lucide]{width:1rem;height:1rem;opacity:.3;transition:opacity .2s;flex-shrink:0}.career-cell:hover [data-lucide]{opacity:1}.alumni-link{display:inline-flex;align-items:center;gap:.5rem;margin-top:3rem;font-size:.875rem;font-weight:900;text-transform:uppercase;letter-spacing:.2em;color:var(--primary);transition:gap .2s}.alumni-link:hover{gap:.75rem}.alumni-link [data-lucide]{width:1rem;height:1rem}.faq-list{width:100%}.faq-item{border-bottom:1px solid hsl(0 0% 86%)}.faq-q{width:100%;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.5rem 0;text-align:left;font-size:1.125rem;font-weight:800;font-family:var(--font-display);color:var(--fg);cursor:pointer;transition:color .2s}.faq-q:hover{color:var(--primary)}.faq-q [data-lucide]{width:1rem;height:1rem;transition:transform .2s;flex-shrink:0}.faq-item.open .faq-q [data-lucide]{transform:rotate(180deg)}.faq-a{overflow:hidden;max-height:0;transition:max-height .3s ease}.faq-item.open .faq-a{max-height:500px}@media (max-width:767px){.faq-item.open .faq-a{max-height:900px}}.faq-a p{font-size:1rem;color:var(--muted-fg);line-height:1.7;padding-bottom:1.5rem}.faq-a a{color:var(--primary);font-weight:600;text-decoration:underline;text-underline-offset:2px}.faq-a a:hover{text-decoration-thickness:2px}.financing-h2{margin-bottom:3.5rem;max-width:48rem}.financing-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:1px;gap:1px;background:var(--border);border:1px solid var(--border)}@media (max-width:1023px){.financing-grid{grid-template-columns:1fr}}.fin-card{background:var(--bg);padding:2rem}@media (min-width:768px){.fin-card{padding:2.5rem}}.fin-card.tint{background:var(--tint)}.fin-card-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;gap:1rem}.fin-card-head h3{font-size:1.5rem;font-weight:900;line-height:1.2}@media (min-width:768px){.fin-card-head h3{font-size:1.875rem}}.fin-card-icon{width:1.5rem;height:1.5rem;color:var(--primary);stroke-width:1.6;margin-top:.25rem;flex-shrink:0}.fee-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:1px;gap:1px;background:var(--border);border:1px solid var(--border);margin-bottom:1.5rem}.fee{background:var(--bg);padding:1.25rem}.fee.tint{background:var(--tint)}.fee-amt{font-size:1.875rem;font-weight:900;line-height:1;margin-bottom:.25rem}.fee-note{font-size:.8125rem;color:var(--muted-fg)}.fin-callout{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;background:var(--primary-05);border-left:2px solid var(--primary);margin-bottom:1.5rem}.fin-callout [data-lucide]{width:1rem;height:1rem;color:var(--primary);margin-top:2px;flex-shrink:0}.fin-callout p{font-size:.875rem;font-weight:500;line-height:1.55}.fin-callout p span{font-weight:900}.fin-foot{font-size:.9375rem;color:var(--muted-fg);line-height:1.55}.fin-link{display:inline-flex;align-items:center;gap:.25rem;margin-top:.75rem;font-size:.875rem;font-weight:900;color:var(--primary)}.fin-link:hover{text-decoration:underline}.fin-link [data-lucide]{width:1rem;height:1rem}.req-list{display:flex;flex-direction:column;gap:1.25rem}.req-list li{display:flex;gap:1rem;align-items:flex-start}.req-list li>[data-lucide]{width:1.25rem;height:1.25rem;color:var(--primary);margin-top:2px;flex-shrink:0}.req-title{font-size:.875rem;font-weight:900;margin-bottom:.25rem}.req-body{font-size:.9375rem;color:var(--muted-fg);line-height:1.65}.req-ctas{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}.req-ctas .btn{height:2.75rem;padding:0 1.25rem}