/* Interior pages: readable documents and useful, consistent service surfaces. */
.service_routes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px 0}
.service_routes>:is(a,button){display:flex;flex-direction:column;align-items:flex-start;position:relative;min-width:0;padding:28px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);color:var(--black);text-decoration:none;text-align:left;font:inherit;transition:border-color .18s ease,background .18s ease}
.service_routes>:is(a,button):hover{background:var(--primary-soft);border-color:var(--primary-dark)}
.service_routes small{color:var(--primary-dark);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em}
.service_routes strong{margin:22px 0 12px;padding-right:12px;font-size:clamp(20px,2vw,26px);font-weight:600;line-height:1.25;letter-spacing:-.025em}
.service_routes span{color:var(--secondary);font-size:14px;line-height:1.6}
.service_routes b{margin-top:24px;color:var(--primary-dark);font-size:24px;font-weight:400}
.section_empty{display:grid;grid-template-columns:84px minmax(0,1fr);gap:28px;padding:32px;background:var(--surface-subtle);border-radius:var(--radius-md)}
.section_empty_index{color:var(--primary-dark);font-size:13px;letter-spacing:.08em;padding-top:6px;font-weight:600}
.section_empty h3{margin:0 0 16px;font-size:clamp(24px,2.6vw,34px);line-height:1.2;letter-spacing:-.025em}
.section_empty p{max-width:66ch;margin:0 0 24px;color:var(--secondary);line-height:1.75}
.next_step_panel{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:clamp(24px,4vw,48px);border:1px solid var(--border);background:var(--primary-soft);border-radius:var(--radius-md)}
.next_step_panel h2{margin:0 0 16px;font-size:clamp(26px,3vw,38px);letter-spacing:-.03em}
.next_step_panel p:not(.section_eyebrow){max-width:64ch;color:var(--secondary);line-height:1.7}
.next_step_panel .editorial_actions{flex-shrink:0;flex-direction:column;align-items:stretch}
.library_search{margin:24px 0}.library_search>label{display:block;font-size:14px;font-weight:600;margin-bottom:10px}.library_search>div{display:flex;align-items:center;gap:8px}
.library_search input{flex:1;min-width:0;min-height:52px;padding:13px 16px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--white);color:var(--black);font:inherit}
.library_search button,.copy_address{min-height:44px;padding:10px 14px;background:var(--white);color:var(--primary-dark);border:1px solid var(--border);border-radius:var(--radius-sm);font:inherit;font-size:13px;font-weight:600}
.library_search p{font-size:13px;line-height:1.6;color:var(--secondary);margin:10px 0 0}
.documents_section .documents_library_grid,.order_library{display:grid;grid-template-columns:1fr;gap:0;border-top:1px solid var(--border)}
.documents_section .document_library_card,.order_library .document_library_card{display:grid;grid-template-columns:100px minmax(0,1fr) auto;column-gap:22px;row-gap:12px;min-height:0;padding:24px 0;border:0;border-bottom:1px solid var(--border);border-radius:0;box-shadow:none;background:transparent}
.documents_section .document_library_card:hover,.order_library .document_library_card:hover{transform:none;box-shadow:none;background:transparent}
.documents_section .document_library_topline,.order_library .document_library_topline{grid-column:1;grid-row:1/3;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:10px;padding-top:4px}
.documents_section .document_row,.order_library .document_row{grid-column:2;margin:0;align-items:flex-start}
.documents_section .document_name,.order_library .document_name{font-size:16px;font-weight:600;line-height:1.5;margin:0;overflow-wrap:anywhere}
.documents_section .document_tags{grid-column:2;margin:0}
.documents_section .document_actions,.order_library .document_actions{grid-column:3;grid-row:1/3;align-self:center;margin:0;display:flex;flex-direction:column;gap:8px}
.documents_section .document_action,.order_library .document_action{min-height:40px;justify-content:center}.documents_filter{min-height:40px}
.section_nav_toggle{display:flex;width:100%;align-items:center;justify-content:space-between;gap:20px;min-height:52px;padding:16px;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--primary-dark);background:var(--white);text-align:left;font:inherit;font-weight:600}
.section_nav_toggle[hidden]{display:none}.general_section_nav{overflow:hidden}.general_nav_link{min-height:44px;line-height:1.5}.general_content{min-width:0}
.general_content :is(.general_rich_content,.official_disclosure_value){line-height:1.75;overflow-wrap:anywhere}.general_content .general_panel_header h2{text-wrap:pretty}
.page_chapters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:0}.page_chapters>span{font-size:12px;color:var(--secondary);margin-right:8px}
.page_chapters a{display:inline-flex;min-height:40px;align-items:center;border:1px solid var(--border);padding:8px 12px;background:var(--white);color:var(--primary-dark);border-radius:var(--radius-sm);font-size:12px;text-decoration:none;line-height:1.5}.page_chapters a:hover{background:var(--primary-soft)}
.general_panel :is(h2,h3)[id]{scroll-margin-top:130px}.official_disclosures_list{gap:0}.official_disclosure{padding:22px 18px}.official_disclosure dt{font-size:13px;line-height:1.5}.official_disclosure dd{font-size:15px;line-height:1.7}.official_disclosure_links a{min-height:40px;display:inline-flex;align-items:center}
.legal_content{min-width:0}.legal_content>section>:is(p,ul,ol){max-width:78ch;line-height:1.8}.legal_content h2{line-height:1.3;text-wrap:pretty}.legal_toc a{min-height:40px;display:flex;align-items:center}
.student_faq details{border-bottom:1px solid var(--border)}.student_faq summary{position:relative;padding:22px 40px 22px 0;cursor:pointer;list-style:none;font-size:17px;font-weight:600;line-height:1.5}.student_faq summary::-webkit-details-marker{display:none}.student_faq summary::after{content:'+';position:absolute;right:8px;top:20px;color:var(--primary-dark);font-size:24px}.student_faq details[open] summary::after{content:'−'}.student_faq details p{max-width:72ch;margin:0;padding:0 24px 24px 0;color:var(--secondary);line-height:1.8}.student_faq a{color:var(--primary-dark);text-decoration:underline;text-underline-offset:3px}
.hero_context .certificate_types{gap:16px}.hero_context .certificate_types li{position:relative;padding:0;border:0}.certificate_types li::before{display:none}.certificate_types a{display:flex;height:100%;min-height:150px;flex-direction:column;justify-content:space-between;gap:24px;padding:24px;color:var(--black);background:var(--white);border:1px solid var(--border);border-radius:var(--radius-md);text-decoration:none;font-size:14px;line-height:1.6}.certificate_types a:hover,.certificate_types a[aria-current]{border-color:var(--primary-dark);background:var(--primary-soft)}.certificate_types b{color:var(--primary-dark);font-size:13px;display:flex;justify-content:space-between}.choice_status:empty{display:none}.choice_status{color:var(--primary-dark);font-size:14px;line-height:1.6}
.program_overview_title{font-size:30px;letter-spacing:-.03em;margin:0 0 28px}.editorial_detail_main{padding:clamp(24px,3.3vw,48px)}.program_adviser{padding:0 0 30px;border-bottom:1px solid var(--border);margin-bottom:28px}.program_adviser h2{font-size:26px;line-height:1.25;letter-spacing:-.03em}.program_adviser p:not(.section_eyebrow){color:var(--secondary);font-size:14px;line-height:1.7;margin:14px 0 22px}.program_adviser_phone{display:block;margin-top:18px;color:var(--black);font-size:16px;font-weight:600;text-decoration:none}.editorial_detail_meta{margin-top:0}.news_main{min-width:0}.news_main .news_text{font-size:17px;line-height:1.8;max-width:76ch}.news_sidebar .news_card{box-shadow:none}.copy_status{font-size:13px;color:var(--primary-dark)}
/* Compact week cards and a progressively enhanced single-day view. */
.schedule_view_tools{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px;margin-bottom:20px}.schedule_view_tools p{font-size:13px;color:var(--secondary);margin:0}
.schedule_print,.mpti_schedule_day_nav button{min-height:44px;padding:10px 16px;background:var(--white);color:var(--primary-dark);border:1px solid var(--border);border-radius:var(--radius-sm);font:inherit;font-size:13px;font-weight:600;white-space:nowrap}
.mpti_schedule_day_nav{margin-bottom:24px;gap:8px}.mpti_schedule_day_nav a{display:inline-flex;align-items:center;min-height:44px;border-radius:var(--radius-sm);font-size:13px}.mpti_schedule_day_nav [aria-pressed='true']{background:var(--primary-dark);color:var(--white);border-color:var(--primary-dark)}
.mpti_schedule_days{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start;border-top:0}.mpti_schedule_day{display:block;padding:26px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white)}.mpti_schedule_day[hidden]{display:none}.mpti_schedule_days.is-single-day{grid-template-columns:1fr}
.mpti_schedule_day>header{display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:12px;margin-bottom:22px}.mpti_schedule_day>header h2{margin:0;font-size:25px;line-height:1.25}.mpti_schedule_day>header small{font-size:12px}
.mpti_schedule_lessons article{min-height:94px;padding:18px 0;gap:16px;grid-template-columns:78px minmax(0,1fr) 48px}.mpti_schedule_lesson_time{grid-template-columns:1fr;grid-column:auto;gap:5px}.mpti_schedule_lesson_time strong{font-size:12px;white-space:normal}.mpti_schedule_lesson_subject p{font-size:15px;line-height:1.55;font-weight:500}.mpti_schedule_lesson_subject small{font-size:9px;letter-spacing:.04em;margin-bottom:6px}.mpti_schedule_lesson_room small{font-size:9px;letter-spacing:0}.mpti_schedule_lesson_room strong{font-size:18px}.mpti_schedule_lessons article:last-child,.mpti_schedule_day_empty{border-bottom:0}.mpti_schedule_source{padding-block:40px}.mpti_schedule_source h2{font-size:clamp(26px,3vw,38px)}
@media(max-width:1100px){
.documents_section .document_library_card,.order_library .document_library_card{grid-template-columns:minmax(0,1fr) auto}.documents_section .document_library_topline,.order_library .document_library_topline{grid-column:1;grid-row:1;flex-direction:row;flex-wrap:wrap}.documents_section .document_row,.order_library .document_row{grid-column:1;grid-row:2}.documents_section .document_tags{grid-column:1;grid-row:3}.documents_section .document_actions,.order_library .document_actions{grid-column:2;grid-row:1/4}.service_routes>:is(a,button){padding:22px}.mpti_schedule_days{grid-template-columns:1fr}.next_step_panel{flex-direction:column;align-items:flex-start}.next_step_panel .editorial_actions{flex-direction:row}}
@media(max-width:900px){.general_sidebar{position:static}.general_section_nav{display:block;max-height:none;margin-top:10px}.general_section_nav[hidden]{display:none}.general_nav_link{display:flex;width:100%;min-height:44px;white-space:normal;border-bottom:1px solid var(--border);border-radius:0}.general_nav_heading{padding:16px}.general_nav_link img{display:block}.page_chapters{padding-bottom:8px}}
@media(max-width:700px){
.service_routes{grid-template-columns:1fr;gap:12px}.service_routes>:is(a,button){padding:22px}.service_routes strong{margin:14px 0 8px;font-size:22px}.service_routes b{position:absolute;right:20px;top:16px;margin:0}.section_empty{grid-template-columns:1fr;padding:24px;gap:16px}.library_search>div{align-items:stretch}.library_search input{font-size:16px}.library_search button{font-size:12px;padding-inline:10px}.documents_section .document_library_card,.order_library .document_library_card{grid-template-columns:minmax(0,1fr);padding-block:22px}.documents_section .document_actions,.order_library .document_actions{grid-column:1;grid-row:4;flex-direction:row;justify-content:flex-start}.documents_section .document_action,.order_library .document_action{min-height:44px}.documents_section .document_name{font-size:16px}.official_disclosure{padding:18px 0}.hero_context .certificate_types{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.certificate_types a{min-height:160px;padding:16px;font-size:13px;gap:16px}.next_step_panel .editorial_actions{flex-direction:column}.student_faq summary{font-size:16px}.mpti_schedule_day{padding:20px 16px}.mpti_schedule_day>header{grid-template-columns:22px minmax(0,1fr);gap:8px;margin-bottom:18px}.mpti_schedule_day>header h2{font-size:23px}.mpti_schedule_day>header small{grid-column:2}.mpti_schedule_lessons article{grid-template-columns:62px minmax(0,1fr) 38px;gap:10px}.mpti_schedule_lesson_subject p{font-size:14px}.mpti_schedule_lesson_room small{font-size:8px}.mpti_schedule_lesson_room strong{font-size:16px}.mpti_schedule_lesson_time strong{font-size:11px}.news_main .news_text{font-size:16px}}
@media(prefers-reduced-motion:reduce){.service_routes>:is(a,button){transition:none}}
@media print{body.schedule_body{background:white}.schedule_body :is(header.header,.site_header,.mpti_header,.mobile_header,footer,.breadcrumbs,.mpti_schedule_quicklinks,.mpti_schedule_controls,.mpti_schedule_day_nav,.schedule_view_tools,.mpti_schedule_source,.mpti_schedule_bells,#mptiApp,[data-cookie-banner],#backToTop){display:none!important}.schedule_body .mpti_schedule_days{display:block}.schedule_body .mpti_schedule_day,.schedule_body .mpti_schedule_day[hidden]{display:block!important;break-inside:avoid;margin-bottom:16px}.schedule_body .mpti_schedule_shell{width:100%;padding:0}.schedule_body .page_hero{padding:0 0 20px}.schedule_body .page_hero_aside{display:none}}

.document_library_card[hidden], .schedule_print[hidden], .mpti_schedule_day_nav button[hidden], .library_search button[hidden], .copy_address[hidden] { display: none !important; }

.documents_section .document_library_card,.order_library .document_library_card{height:auto;width:100%}
.documents_section .document_library_card .document_date{margin:0}
.documents_section .document_library_card:hover .document_name,.order_library .document_library_card:hover .document_name{color:var(--black)}
.documents_section .document_library_card:hover .document_date,.documents_section .document_library_card:hover .document_download,.documents_section .document_library_card:hover .document_download span,.order_library .document_library_card:hover .document_download{color:var(--primary-dark)}
.documents_section .document_library_card:hover img,.order_library .document_library_card:hover img{filter:none}
.documents_more{margin-top:24px}.documents_more[hidden]{display:none!important}
.management_card.management_card--initials{grid-template-columns:64px minmax(0,1fr);gap:22px;padding:28px;align-items:start}
.management_card--initials .management_photo_wrap{width:64px;height:64px;min-height:0;aspect-ratio:1;border-radius:50%;background:var(--primary-soft);display:grid;place-items:center}
.management_initial{font-size:28px;font-weight:600;color:var(--primary-dark)}
.management_card--initials .management_card_body{padding:0}
.management_card--initials .management_identity h3{font-size:24px;line-height:1.25}
.management_card--primary.management_card--initials{grid-template-columns:80px minmax(0,1fr)}
.management_card--primary.management_card--initials .management_photo_wrap{width:80px;height:80px}
.management_card--primary.management_card--initials .management_identity h3{font-size:32px}
.teaching_summary:not(:has(.teaching_summary_stats)){grid-template-columns:1fr}
.editorial_detail_shell:not(:has(>.editorial_detail_aside)){grid-template-columns:minmax(0,1fr)}
.editorial_detail_intro:not(:has(.editorial_detail_media)){grid-template-columns:1fr;margin-top:0}
.editorial_detail_intro>div:empty{display:none}
.news_detail_layout:not(:has(.news_sidebar)){grid-template-columns:1fr;max-width:1000px;margin-inline:auto}
.ann_main .ann_text{font-size:17px;line-height:1.8;max-width:76ch}
.support_list:has(>li:only-child){grid-template-columns:1fr}.support_list:has(>li:only-child) p{max-width:78ch;font-size:16px;line-height:1.75}
@media(max-width:700px){.management_card.management_card--initials,.management_card--primary.management_card--initials{grid-template-columns:48px minmax(0,1fr);gap:16px;padding:20px}.management_card--initials .management_photo_wrap,.management_card--primary.management_card--initials .management_photo_wrap{width:48px;height:48px}.management_card--initials .management_identity h3,.management_card--primary.management_card--initials .management_identity h3{font-size:21px}.management_initial{font-size:24px}.ann_main .ann_text{font-size:16px}}
.management_card.management_card--initials{min-height:0;box-shadow:none}
.management_card.management_card--initials:hover{transform:none;box-shadow:none}

@media(max-width:360px){.hero_context .certificate_types{grid-template-columns:1fr}.certificate_types a{min-height:0;gap:12px}}
