/* Mobile reading layout, scoped to the fifteen course detail pages. */
@media(max-width:680px){
 body.course-detail{background:#f4f6fa;color:#1e293b;font-size:16px;line-height:1.85;-webkit-text-size-adjust:100%;text-size-adjust:100%}
 .course-detail .cp-wrap{padding-inline:18px}
 .course-detail .cp-header{background:#fff;backdrop-filter:none}
 .course-detail .cp-head-inner{min-height:66px}
 .course-detail .cp-header nav .cp-button{background:#2257e8;border-color:#2257e8;color:#fff;border-radius:10px}
 .course-detail .cp-breadcrumb{padding:16px 0;font-size:13px;line-height:1.7}
 .course-detail .cp-hero{background:linear-gradient(150deg,#edf3ff 0%,#fff 90%);border-bottom:1px solid #e2e8f0}
 .course-detail .cp-hero-grid{padding:8px 0 26px;gap:20px}
 .course-detail h1{font-size:clamp(28px,7.4vw,34px);line-height:1.4;letter-spacing:-1.1px;margin-bottom:16px;word-break:keep-all;overflow-wrap:anywhere}
 .course-detail .cp-hero .cp-eyebrow{font-size:12px;line-height:1.6;margin-bottom:10px;letter-spacing:.04em}
 .course-detail .cp-intro{font-size:16px;line-height:1.9;color:#44536a;word-break:keep-all;overflow-wrap:anywhere}
 .course-detail .content-byline{font-size:13px;line-height:1.8;color:#617087;margin-top:14px}
 .course-detail .cp-actions{gap:9px;margin-top:20px}
 .course-detail .cp-actions .cp-button{font-size:14px;line-height:1.5;min-height:48px;padding:12px 9px;white-space:normal;word-break:keep-all;border-radius:12px}
 .course-detail .cp-highlights{display:flex;gap:8px;flex-wrap:wrap}
 .course-detail .cp-highlight{font-size:13px;line-height:1.6;padding:8px 11px;gap:7px;border-radius:9px;background:#ffffffd9;border-color:#d9e3f4;font-weight:650}
 .course-detail .cp-highlight span{font-size:11px}
 .course-detail .cp-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:18px 0}
 .course-detail .cp-tabs a{display:flex;justify-content:center;align-items:center;text-align:center;border-radius:11px;font-size:13px;font-weight:650;line-height:1.5;min-height:46px;padding:9px 5px;background:white;color:#40516a;word-break:keep-all}
 .course-detail .cp-tabs a[href="#calculator"]{color:#1f4fd0;background:#e8efff;border-color:#bbcefa}
 .course-detail .cp-layout{gap:0}
 .course-detail .cp-layout>div{min-width:0}
 .course-detail .cp-section{margin:0 0 16px;padding:24px 20px;background:#fff;border:1px solid #e1e7ef;border-radius:18px;scroll-margin-top:82px;min-width:0}
 .course-detail .cp-section>.cp-eyebrow{font-size:11px;letter-spacing:.08em;line-height:1.6;margin:0 0 9px;color:#2257e8;font-weight:800}
 .course-detail .cp-section h2{font-size:23px;line-height:1.5;letter-spacing:-.7px;word-break:keep-all;overflow-wrap:anywhere;margin:0 0 19px}
 .course-detail .cp-section h3{font-size:18px;line-height:1.6;margin:25px 0 10px;color:#24354c;word-break:keep-all}
 .course-detail .cp-section p,.course-detail .cp-section li{color:#45546a;word-break:keep-all;overflow-wrap:anywhere}
 .course-detail .cp-section>p{margin:14px 0;line-height:1.9}
 .course-detail #conditions>ul{list-style:none;counter-reset:requirements;padding:0;margin:0}
 .course-detail #conditions>ul>li{counter-increment:requirements;position:relative;margin:0;padding:17px 0 17px 34px;border-bottom:1px solid #edf0f5;font-size:16px;line-height:1.9}
 .course-detail #conditions>ul>li:first-child{padding-top:0}
 .course-detail #conditions>ul>li::before{content:counter(requirements,decimal-leading-zero);position:absolute;left:0;top:18px;color:#2257e8;background:#edf3ff;border-radius:7px;width:25px;height:25px;display:grid;place-items:center;font-size:11px;font-weight:800;line-height:1}
 .course-detail #conditions>ul>li:first-child::before{top:2px}
 .course-detail #conditions>ul>li:last-child{border-bottom:0}
 .course-detail .cp-note{font-size:15px;line-height:1.85;padding:15px 16px;border-radius:12px;background:#f3f6fc;border:0;border-left:3px solid #c0d2fa;margin:18px 0}
 .course-detail .cp-cards{gap:10px}
 .course-detail .cp-card{padding:17px 16px;border-radius:12px;background:#f6f8fc;border:1px solid #edf0f5}
 .course-detail .cp-card p{font-size:15px;line-height:1.9}
 .course-detail .cp-card h3{font-size:17px;margin:0 0 8px}
 .course-detail .cp-updated{font-size:14px!important;line-height:1.85;color:#617087!important}
 /* Each table row becomes a complete education-level card on a phone. */
 .course-detail .cp-table-scroll{overflow:visible}
 .course-detail .cp-table{display:block;font-size:15px;line-height:1.85}
 .course-detail .cp-table thead{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 .course-detail .cp-table tbody{display:grid;gap:12px}
 .course-detail .cp-table tbody tr{display:block;border:1px solid #dfe7f2;border-radius:13px;overflow:hidden;background:#fff}
 .course-detail .cp-table td{display:block;padding:12px 16px;border:0;min-width:0;word-break:keep-all;overflow-wrap:anywhere}
 .course-detail .cp-table td:first-child{background:#edf3ff;color:#214da1;font-size:16px;font-weight:750;padding-block:11px}
 .course-detail .cp-table td:not(:first-child)::before{content:attr(data-label);display:block;color:#69788e;font-size:12px;line-height:1.6;font-weight:650;margin-bottom:4px}
 .course-detail .cp-table td+td+td{padding-top:0}
 .course-detail .example-label{font-size:12px;line-height:1.6;padding:7px 10px}
 .course-detail .example-result{border-radius:12px;margin:18px 0;grid-template-columns:1fr 1fr}
 .course-detail .example-result>div{padding:16px 12px}
 .course-detail .example-result span{font-size:12px;line-height:1.7;color:#53647c}
 .course-detail .example-result strong{font-size:29px;line-height:1.5;margin-top:5px}
 .course-detail .example-plan{font-size:15px!important;line-height:1.9}
 .course-detail .course-example>.cp-button{width:100%;font-size:14px;line-height:1.6;padding:12px 10px;word-break:keep-all}
 .course-detail .example-status{font-size:14px!important}
 .course-detail .cp-calculator{background:#f5f7fb;padding:18px 14px;border:0;border-radius:13px;margin-inline:-6px}
 .course-detail .cp-calculator form>.cp-field-grid:first-child{grid-template-columns:1fr;gap:0}
 .course-detail .cp-calculator fieldset{padding-top:18px;margin-top:20px;border-top:1px solid #dce4ef}
 .course-detail .cp-calculator legend{float:left;width:100%;font-size:16px;line-height:1.7;margin:0 0 12px;color:#24354c}
 .course-detail .cp-calculator legend+*{clear:both}
 .course-detail .cp-calculator fieldset>.cp-field-grid:has(#calc-yearUsed){grid-template-columns:1fr;gap:0}
 .course-detail .cp-field{gap:7px;margin-bottom:16px}
 .course-detail .cp-field label{font-size:14px;line-height:1.65;word-break:keep-all}
 .course-detail .cp-field input,.course-detail .cp-field select{font-size:16px;min-height:50px;padding:11px 12px;border-color:#ccd7e6;border-radius:10px}
 .course-detail .cp-field small{font-size:14px;line-height:1.8;color:#5d6c81}
 .course-detail .cp-route-note,.course-detail .calc-note{font-size:14px!important;line-height:1.85}
 .course-detail .cp-calculator button[type="submit"]{width:100%;font-size:15px;padding-inline:8px;line-height:1.6;margin-top:5px}
 .course-detail .cp-calc-result{padding:19px 15px;border-radius:12px;margin-top:18px}
 .course-detail .calc-big{font-size:38px;line-height:1.45}
 .course-detail .calc-breakdown{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:17px 0}
 .course-detail .calc-breakdown span{font-size:12px;line-height:1.7;padding:9px 8px;border-radius:8px}
 .course-detail .calc-term{font-size:17px;line-height:1.7}
 .course-detail .calc-plan{font-size:14px;line-height:1.85;padding-left:20px}
 .course-detail .cp-calc-consult{font-size:14px;line-height:1.7;padding:13px 9px;word-break:keep-all}
 .course-detail .cp-faq details{padding:0;border-color:#e0e7f1;border-radius:12px;margin:10px 0;background:white;overflow:hidden}
 .course-detail .cp-faq summary{position:relative;list-style:none;font-size:16px;line-height:1.75;padding:16px 37px 16px 15px;font-weight:700;word-break:keep-all;overflow-wrap:anywhere}
 .course-detail .cp-faq summary::-webkit-details-marker{display:none}
 .course-detail .cp-faq summary::after{content:'+';position:absolute;right:15px;top:17px;color:#2257e8;font-size:20px;line-height:1.3}
 .course-detail .cp-faq details[open]{background:#f6f8fd;border-color:#c5d5f6}
 .course-detail .cp-faq details[open] summary::after{content:'−'}
 .course-detail .cp-faq details p{font-size:15px;line-height:1.9;padding:0 15px 17px;margin:0}
 .course-detail .course-related a{font-size:15px;line-height:1.8;display:block;padding-block:3px;overflow-wrap:anywhere}
 .course-detail .cp-sources{font-size:14px;line-height:1.9}
 .course-detail .cp-sources ul{padding-left:19px}
 .course-detail .cp-sources a{overflow-wrap:anywhere}
 .course-detail .content-policy-note{font-size:14px!important;line-height:1.9}
 .course-detail .cp-bottom{padding:9px 14px calc(9px + env(safe-area-inset-bottom));background:#fff;box-shadow:0 -3px 16px #20365c09}
 .course-detail .cp-bottom a{min-height:47px;font-size:14px;line-height:1.5;padding:12px 8px;border-radius:11px}
 .course-detail .cp-bottom a:first-child{background:#f1f5fd;border-color:#e2e9f6;color:#31527c}
 .course-detail .cp-footer{margin-top:16px;padding-top:24px;padding-bottom:110px;line-height:1.9;font-size:13px;background:#f4f6fa}
 .course-detail .cp-footer a{display:inline-block;margin-top:6px}
}
@media(max-width:360px){
 .course-detail .cp-wrap{padding-inline:14px}
 .course-detail .cp-section{padding:22px 16px}
 .course-detail .cp-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
 .course-detail .cp-tabs a{font-size:13px;min-height:43px}
 .course-detail .cp-section h2{font-size:22px}
 .course-detail .cp-highlight{font-size:12px;padding:7px 9px}
 .course-detail .cp-calculator{margin-inline:-4px;padding:16px 12px}
 .course-detail .calc-breakdown{grid-template-columns:1fr}
 .course-detail .example-result>div{padding:14px 10px}
 .course-detail .example-result strong{font-size:27px}
}
