:root{--bg: #f7f7f6;--surface: #ffffff;--surface-muted: #ecece8;--ink: #1f1f1f;--muted: #5c5c5c;--line: #cfcfc8;--primary: #1e3a5f;--primary-strong: #142a45;--accent: #3d5a80;--accent-muted: #e8ecf2;--radius: 3px;--content: 960px;--section: clamp(3.25rem, 5vw, 5rem);--font-heading: "Source Serif 4", Georgia, "Times New Roman", serif;--font-body: "DM Sans", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;font-family:var(--font-body);color:var(--ink);background:var(--bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;background:var(--bg)}body,button,input{font:inherit}a{color:inherit}a,button,strong,h1,h2,h3,h4,p,li{overflow-wrap:anywhere}img{display:block;max-width:100%}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}::selection{background:var(--accent-muted);color:var(--primary-strong)}.page-shell{width:min(var(--content),calc(100% - 40px));margin-inline:auto}.skip-link{position:fixed;left:1rem;top:1rem;z-index:100;transform:translateY(-140%);border-radius:var(--radius);background:var(--primary-strong);color:#fff;padding:.75rem 1rem;text-decoration:none;transition:transform .16s ease}.skip-link:focus{transform:translateY(0)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.site-header{position:sticky;top:0;z-index:50;border-bottom:1px solid var(--line);background:var(--surface);box-shadow:0 8px 24px #142a450a}.header-inner{width:min(var(--content),calc(100% - 32px));min-height:64px;margin-inline:auto;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1.25rem}.brand{display:inline-flex;align-items:center;gap:.75rem;min-width:0;text-decoration:none}.brand-logo{flex:0 0 auto;max-height:52px;max-width:min(140px,32vw);width:auto;height:auto;object-fit:contain;object-position:left center}.brand-text{min-width:0}.brand strong,.brand small{display:block;line-height:1.2}.brand strong{font-size:.98rem;font-family:var(--font-heading);font-weight:600;color:var(--primary-strong)}.brand small{margin-top:.15rem;color:var(--muted);font-size:.82rem}.nav{justify-self:center;display:flex;align-items:center;gap:.15rem}.nav a,.nav-link,.header-action{border-radius:var(--radius);padding:.5rem .65rem;color:var(--ink);font-size:.88rem;font-weight:600;text-decoration:none}.nav a:hover,.nav-link:hover{color:var(--primary);text-decoration:underline;text-underline-offset:3px}.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;min-width:0}.header-action{border:1px solid var(--primary);background:var(--surface);color:var(--primary-strong);font-weight:600;white-space:nowrap}.header-action:hover{background:var(--primary-strong);border-color:var(--primary-strong);color:#fff;text-decoration:none}.hero--institutional{padding:clamp(2.5rem,5vw,3.75rem) 0 0;border-bottom:1px solid var(--line);background:var(--surface)}.hero-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,380px);gap:clamp(1.5rem,4vw,2.75rem);align-items:start;padding-bottom:clamp(1.5rem,3vw,2.25rem);border-bottom:1px solid var(--line)}.hero-masthead{max-width:68ch;padding-bottom:0;border-bottom:none}.hero-figure{margin:0;position:relative}.hero-figure__img{display:block;width:100%;height:clamp(200px,32vw,340px);object-fit:cover;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-muted)}.hero-figure__caption{margin:.5rem 0 0;font-size:.72rem;line-height:1.4;color:var(--muted)}.masthead-kicker{margin:0 0 1rem;font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.masthead-subtitle{margin:.35rem 0 0;font-family:var(--font-heading);font-size:1.15rem;font-weight:500;color:var(--muted);font-style:italic}.eyebrow,.section-kicker{margin:0 0 .75rem;color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.hero h1,.section h2{margin:0;font-family:var(--font-heading);color:var(--primary-strong);font-weight:600;line-height:1.15}.hero h1{max-width:none;font-size:clamp(1.85rem,3.5vw,2.45rem);letter-spacing:-.01em}.hero-lead{max-width:62ch;margin:1.25rem 0 0;color:var(--muted);font-size:1rem;line-height:1.75;font-weight:400}.hero-lead strong{color:var(--ink);font-weight:600}.hero-actions{display:flex;flex-wrap:wrap;gap:.65rem 1.25rem;align-items:center;margin-top:1.75rem}.button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius);padding:.65rem 1rem;font-weight:600;font-size:.9rem;text-decoration:none;text-align:center}.button-primary{border:1px solid var(--primary-strong);background:var(--primary-strong);color:#fff}.button-primary:hover{background:var(--primary);border-color:var(--primary)}.button-secondary{border:1px solid var(--line);background:var(--surface);color:var(--primary-strong)}.button-secondary:hover{border-color:var(--primary);background:var(--surface-muted)}.button-quiet{border:0;background:transparent;color:var(--primary);padding:.5rem 0;min-height:auto;text-decoration:underline;text-underline-offset:3px;font-weight:600}.button-quiet:hover{color:var(--primary-strong)}.facts--institutional{margin-top:0;border:0;border-radius:0;background:transparent}.facts{display:grid;grid-template-columns:repeat(4,1fr);margin-top:0;padding:clamp(1.25rem,3vw,1.75rem) 0 clamp(2rem,4vw,2.75rem);border:0;border-radius:0;background:transparent}.facts article{padding:.85rem 1rem .85rem 0}.facts article+article{border-left:1px solid var(--line);padding-left:1rem}.facts strong,.facts span{display:block}.facts strong{color:var(--primary-strong);font-family:var(--font-heading);font-size:clamp(1.2rem,2.5vw,1.45rem);font-weight:600;line-height:1.2}.facts span{margin-top:.35rem;color:var(--muted);font-size:.8rem;font-weight:500;line-height:1.35}.section{padding:var(--section) 0}.split-intro,.graduate-grid,.contact-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(2rem,6vw,5rem);align-items:start}.section h2{max-width:28ch;font-size:clamp(1.65rem,3.2vw,2.15rem);font-family:var(--font-heading);font-weight:600}.section p{color:var(--muted);line-height:1.75}.split-intro>p,.contact-layout>div>p{margin:2.1rem 0 0;max-width:66ch;font-size:1.08rem}.highlight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2.5rem}.careers-section{background:var(--bg);border-block:1px solid var(--line)}.careers-intro{max-width:72ch}.careers-lead{margin:1.25rem 0 0;color:var(--muted);font-size:.98rem;line-height:1.75}.career-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;margin-top:2.25rem}a.career-card{text-decoration:none;color:inherit}.career-card{display:grid;gap:.55rem;padding:1.25rem 1.15rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);text-align:left;cursor:pointer;transition:border-color .12s ease,background .12s ease}.career-card:hover{border-color:var(--primary);background:var(--surface-muted)}.career-card:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.career-card__label{font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.career-card__title{font-size:1.05rem;font-weight:600;font-family:var(--font-heading);color:var(--primary-strong);line-height:1.3}.career-card__degree{font-size:.95rem;color:var(--muted);line-height:1.45}.career-card__meta{font-size:.88rem;color:var(--muted)}.career-card__cta{margin-top:.35rem;font-size:.82rem;font-weight:600;color:var(--primary)}.career-detail{margin-top:2rem;padding:clamp(1.35rem,3vw,1.85rem);border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);scroll-margin-top:5.5rem}.career-detail:focus{outline:none}.career-detail__empty{padding:1rem .25rem;color:var(--muted);line-height:1.65}.career-detail__empty-title{margin:0 0 .5rem;font-size:1rem;font-weight:600;font-family:var(--font-heading);color:var(--primary-strong)}.career-detail__head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1.25rem;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:1.5rem}.career-detail__head h3{margin:.35rem 0 0;font-size:clamp(1.2rem,2.5vw,1.5rem);font-family:var(--font-heading);font-weight:600;color:var(--primary-strong);line-height:1.2;max-width:none}.career-detail__degree{margin:.5rem 0 0;color:var(--muted);font-weight:600}.career-detail__summary{margin:.85rem 0 0;max-width:62ch;color:var(--muted);line-height:1.7;font-size:.95rem}.career-detail__actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.career-detail__body{display:grid;gap:1.75rem;margin-top:1.5rem}@media(min-width:900px){.career-detail__body{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:start}}.career-detail__block h4{margin:0 0 .75rem;font-size:.95rem;font-family:var(--font-heading);font-weight:600;color:var(--primary-strong)}.career-detail__block p{margin:0 0 1rem;color:var(--muted);line-height:1.7}.career-detail__block ul{margin:0;padding-left:1.15rem;color:var(--muted);line-height:1.65}.career-detail__block li+li{margin-top:.45rem}.curriculum-accordions{display:grid;gap:.65rem}.curriculum-details{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:.25rem .85rem}.curriculum-details summary{cursor:pointer;font-weight:600;font-size:.9rem;color:var(--primary-strong);padding:.55rem 0}.curriculum-details[open] summary{border-bottom:1px solid var(--line);margin-bottom:.5rem}.subject-list{margin:0 0 .65rem;padding:0 0 0 1.1rem;list-style:disc;font-size:.88rem;color:var(--muted);line-height:1.55}.subject-list li{margin:.2rem 0;padding-left:.15rem}.contact-quick-links{margin:1.5rem 0 0;padding:0;list-style:none}.contact-quick-links li{margin:.35rem 0;padding-left:.65rem;border-left:2px solid var(--line)}.contact-quick-links a{font-size:.9rem;font-weight:600;color:var(--primary);text-decoration:none}.contact-quick-links a:hover{text-decoration:underline;text-underline-offset:3px}.footer-links{display:flex;flex-wrap:wrap;gap:.85rem 1.1rem;justify-content:flex-end}.info-card{min-height:0;padding:1.2rem 1.1rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.card-number{color:var(--muted);font-weight:700;font-size:.85rem;font-variant-numeric:tabular-nums}.info-card h3,.timeline-item h3,.study-panel h3,.contact-card strong{margin:1rem 0 .65rem;color:var(--primary-strong);font-size:1.05rem;font-family:var(--font-heading);font-weight:600;line-height:1.25}.info-card p,.timeline-item p{margin:0;color:var(--muted);line-height:1.65}.curriculum-section{border-block:1px solid var(--line);background:#fff}.section-heading{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(2rem,6vw,5rem);margin-bottom:2.5rem}.section-heading h2{grid-column:2;max-width:15ch}.section-heading .section-kicker{grid-column:1;align-self:start}.curriculum-layout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:clamp(2rem,5vw,4rem);align-items:start}.timeline{display:grid;gap:1rem}.timeline-item{position:relative;padding:1.35rem 1.35rem 1.35rem 2.1rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg)}.timeline-item:before{content:"";position:absolute;left:1rem;top:1.55rem;width:7px;height:calc(100% - 3.1rem);border-radius:999px;background:var(--accent)}.timeline-item h3{margin-top:0}.study-panel,.contact-card{border-radius:var(--radius);background:var(--primary-strong);color:#fff}.study-panel{position:sticky;top:96px;padding:1.25rem}.study-panel h3{margin-top:0;color:#fff}.subject-group{padding:1rem 0;border-top:1px solid rgba(255,255,255,.14)}.subject-group h4{margin:0 0 .75rem;color:#ffffffd9;font-size:.9rem;text-transform:uppercase}.subject-group ul{display:flex;flex-wrap:wrap;gap:.45rem;margin:0;padding:0;list-style:none}.subject-group li{border:1px solid rgba(255,255,255,.14);border-radius:999px;padding:.35rem .6rem;color:#dce7e5;font-size:.86rem}.study-panel a{display:inline-flex;margin-top:.75rem;color:#e2e8f0;font-weight:600;text-decoration-thickness:1px;text-underline-offset:4px}.graduate-section{background:var(--bg)}.outcome-list{display:grid;gap:.85rem}.outcome-list article{display:grid;grid-template-columns:34px 1fr;gap:1rem;align-items:start;padding:1.1rem;border:1px solid var(--line);border-radius:var(--radius);background:#ffffffb8}.outcome-list span{width:34px;height:34px;display:grid;place-items:center;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);color:var(--primary-strong);font-weight:700}.outcome-list p{margin:0}.contact-section{background:var(--surface);border-top:1px solid var(--line);color:var(--ink)}.contact-section .section-kicker,.contact-section h2{color:var(--primary-strong)}.contact-section p{color:var(--muted)}.contact-card{padding:.5rem;background:#fff;color:var(--ink)}.contact-card a{display:block;padding:1.15rem;border-radius:calc(var(--radius) - 2px);text-decoration:none}.contact-card a+a{border-top:1px solid var(--line)}.contact-card a:hover{background:var(--surface-muted)}.contact-card span,.contact-card small{display:block;color:var(--muted)}.contact-card span{font-size:.78rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.contact-card strong{display:block;margin:.35rem 0 0}.contact-card small{margin-top:.2rem}.contact-map{padding:.5rem;border-top:1px solid var(--line)}.contact-map iframe{display:block;width:100%;height:clamp(220px,34vw,320px);border:1px solid var(--line);border-radius:calc(var(--radius) - 1px);background:var(--surface-muted)}.site-footer{padding:1.75rem 0;background:var(--surface);border-top:1px solid var(--line);color:var(--muted)}.footer-inner{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;font-size:.92rem}.footer-inner p{margin:0}.footer-inner strong{color:var(--primary-strong);font-family:var(--font-heading);font-weight:600}.footer-inner div{display:flex;flex-wrap:wrap;gap:1rem}.footer-brand{flex:1 1 18rem}.footer-copy{flex-basis:100%;display:flex;flex-wrap:wrap;justify-content:space-between;gap:.35rem 1rem;margin-top:.25rem;opacity:.85}.footer-inner a{color:var(--primary);font-weight:600;text-decoration:none}.footer-inner a:hover{text-decoration:underline;text-underline-offset:3px}.breadcrumb-wrap{background:var(--surface-muted);border-bottom:1px solid var(--line)}.breadcrumb{padding:.55rem 0}.breadcrumb__list{display:flex;flex-wrap:wrap;align-items:center;gap:.2rem .15rem;margin:0;padding:0;list-style:none}.breadcrumb__item{display:inline-flex;align-items:center;font-size:.8rem}.breadcrumb__sep{margin:0 .35rem 0 0;color:#6b7280;-webkit-user-select:none;user-select:none}.breadcrumb__link{color:var(--primary);font-weight:600;text-decoration:none}.breadcrumb__link:hover{text-decoration:underline;text-underline-offset:2px}.breadcrumb__current{color:var(--primary-strong);font-weight:600}.career-page{background:var(--surface);padding-bottom:clamp(2.5rem,5vw,4rem)}.academic-article{padding-top:clamp(1.5rem,3vw,2.5rem);padding-bottom:1rem}.academic-article__header{padding-bottom:1.5rem;border-bottom:3px solid var(--primary-strong)}.academic-article__kicker{margin:0 0 .65rem;font-size:.72rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.academic-article__header h1{margin:0;font-family:var(--font-heading);font-size:clamp(1.55rem,3.2vw,2rem);font-weight:600;line-height:1.2;color:var(--primary-strong);letter-spacing:-.015em}.academic-article__degree{margin:.65rem 0 0;font-size:1rem;font-weight:500;color:var(--muted);line-height:1.45}.academic-meta{display:grid;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:.85rem 1.25rem;margin:1.35rem 0 0;padding:1.1rem 0 0;border-top:1px solid var(--line)}.academic-meta dt{margin:0;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.academic-meta dd{margin:.25rem 0 0;font-size:.88rem;font-weight:600;color:var(--ink);line-height:1.35}.academic-article__summary{margin:1.35rem 0 0;max-width:65ch;font-size:.98rem;line-height:1.75;color:var(--muted)}.academic-article__actions{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.5rem}.academic-article__grid{display:grid;gap:2rem;margin-top:2rem;padding-top:2rem}@media(min-width:880px){.academic-article__grid{grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);align-items:start}}.academic-block__title{margin:0 0 .85rem;padding-bottom:.45rem;border-bottom:1px solid var(--line);font-family:var(--font-heading);font-size:1.15rem;font-weight:600;color:var(--primary-strong)}.academic-block__intro{margin:0 0 1rem;font-size:.95rem;line-height:1.7;color:var(--muted)}.academic-block__note{margin:0 0 1rem;font-size:.88rem;line-height:1.65;color:var(--muted);font-style:italic}.academic-block__list{margin:0;padding-left:1.2rem;color:var(--muted);line-height:1.65;font-size:.92rem}.academic-block__list li+li{margin-top:.45rem}.academic-article__footer{margin-top:2.5rem;padding-top:1.25rem;border-top:1px solid var(--line)}.academic-back-link{font-size:.92rem;font-weight:600;color:var(--primary);text-decoration:none}.academic-back-link:hover{text-decoration:underline;text-underline-offset:3px}@media(max-width:960px){.header-inner{grid-template-columns:minmax(0,1fr) auto;gap:.75rem 1rem;padding-block:.45rem}.nav{grid-column:1 / -1;justify-self:start;width:100%;overflow-x:auto;padding-bottom:.35rem;scrollbar-width:thin}.hero-layout{grid-template-columns:1fr}.hero-figure{order:-1;max-width:none;width:100%}.hero-figure__img{height:clamp(180px,42vw,260px)}.hero-grid,.split-intro,.graduate-grid,.contact-layout,.section-heading,.curriculum-layout{grid-template-columns:1fr}.section-heading h2,.section-heading .section-kicker{grid-column:auto}.hero h1,.section h2{max-width:none}.highlight-grid,.facts,.career-cards{grid-template-columns:repeat(2,1fr)}.facts article:nth-child(3){border-left:0;border-top:1px solid var(--line)}.facts article:nth-child(4){border-top:1px solid var(--line)}.study-panel{position:static}.contact-layout{gap:2rem}.contact-card{max-width:100%}}@media(max-width:640px){:root{--section: 2.75rem}.page-shell{width:min(var(--content),calc(100% - 28px))}.header-inner{width:min(var(--content),calc(100% - 24px));grid-template-columns:1fr;justify-items:stretch;min-height:0;gap:.55rem}.site-header{position:static}.brand{justify-self:start;max-width:100%}.brand-logo{max-height:42px;max-width:86px}.brand strong{font-size:.94rem}.brand small{display:block;font-size:.76rem}.header-actions{grid-column:auto;width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.header-action{display:inline-flex;align-items:center;justify-content:center;padding-inline:.75rem;font-size:.82rem}.hero--institutional{padding-top:1.35rem}.hero-layout{gap:1.25rem;padding-bottom:1.25rem}.hero-figure__img{height:190px}.hero h1{font-size:clamp(1.75rem,8vw,2.05rem)}.masthead-kicker{font-size:.68rem;line-height:1.45}.masthead-subtitle{font-size:1rem}.hero-lead,.careers-lead,.split-intro>p,.contact-layout>div>p{font-size:.96rem;line-height:1.65}.hero-actions{align-items:stretch;flex-direction:column}.highlight-grid,.facts,.career-cards{grid-template-columns:1fr}.facts{padding-bottom:1.5rem}.facts article{padding:.85rem 0}.section h2{font-size:clamp(1.45rem,7vw,1.8rem)}.career-card,.info-card,.timeline-item,.outcome-list article{padding:1rem}.timeline-item{padding-left:1.65rem}.timeline-item:before{left:.75rem}.career-detail__actions{width:100%}.career-detail__actions .button{flex:1 1 auto;justify-content:center}.academic-meta{grid-template-columns:1fr 1fr}.academic-article__actions{flex-direction:column;align-items:stretch}.academic-article__actions .button{width:100%}.contact-map iframe{height:240px}.footer-links,.footer-copy{justify-content:flex-start}.facts article+article,.facts article:nth-child(3),.facts article:nth-child(4){border-left:0;border-top:1px solid var(--line)}.info-card{min-height:auto}}@media(max-width:430px){.page-shell{width:min(var(--content),calc(100% - 22px))}.header-inner{width:min(var(--content),calc(100% - 18px))}.brand{gap:.55rem}.brand-logo{max-width:72px}.nav{gap:.05rem}.nav a,.nav-link{padding:.42rem .5rem;font-size:.82rem}.header-action{min-height:42px}.hero-figure__img{height:168px}.button{width:100%}.academic-meta{grid-template-columns:1fr}.contact-card a{padding:1rem}.footer-inner{gap:.85rem}}@media(max-width:360px){.header-actions{grid-template-columns:1fr}.brand small{display:none}}
