@font-face{font-family:SCDAHeading;src:local('FZYouSongJS 509R'),local('方正悠宋+ 简 509R');font-weight:700;font-display:swap}
:root{--red:#8e1c22;--ink:#1c1b19;--paper:#fffcf7;--field:#f3ece4;--line:#d8cbbb;--muted:#625b54;--body:16px;--small:13.5px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#e7e2db;color:var(--ink);font:var(--body)/1.72 'PingFang SC','Microsoft YaHei',sans-serif}p,h1,h2,h3,figure,blockquote,ol{margin:0}a{color:inherit}h1,h2,h3{font-family:SCDAHeading,'Songti SC',serif;font-weight:700}p{orphans:2;widows:2}em{font-style:normal}button,select{font:inherit}.red{color:var(--red)}.display{font-size:41px;line-height:1.24;letter-spacing:-.025em}.eyebrow{font:var(--small)/1.4 'Times New Roman','PingFang SC',serif;letter-spacing:1.1px;color:var(--red)}
.toolbar{position:sticky;top:0;z-index:30;display:flex;gap:22px;align-items:center;min-height:72px;padding:12px 28px;background:var(--paper);border-bottom:1px solid var(--line)}.toolbar img{width:154px;display:block}.toolbar>span{font-size:14px;color:var(--muted)}.toolbar select{margin-left:auto;font-size:14px;background:transparent;border:1px solid var(--line);padding:10px;width:220px;min-height:44px}.toolbar button,.download{display:block;padding:10px 16px;border:1px solid var(--red);font-size:14px;color:var(--red);background:transparent;min-height:44px;cursor:pointer;text-decoration:none}.download{color:var(--paper);background:var(--red)}.reader-note{width:210mm;margin:24px auto 16px;display:flex;justify-content:space-between;color:var(--muted);font-size:13px}.skip{position:absolute;top:-100px;left:20px}.skip:focus{top:86px;background:white;z-index:50}a:focus-visible,select:focus-visible,button:focus-visible{outline:3px solid #c89545;outline-offset:4px}main{padding-bottom:36px}
.page{position:relative;width:210mm;height:297mm;background:var(--paper);padding:15mm;margin:0 auto 28px;box-shadow:0 8px 28px #1c1b1910;overflow:hidden;scroll-margin-top:88px}.running{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;height:10mm;border-bottom:1px solid var(--line)}.running img{width:104px;height:20px}.running>span{font-size:var(--small);color:var(--muted);line-height:1.4}.page-content{padding-top:7mm}.page footer{position:absolute;bottom:9mm;left:15mm;right:15mm;display:flex;align-items:center;justify-content:space-between;padding-top:9px;border-top:1px solid var(--line);font-size:var(--small);color:var(--muted)}footer b{font:22.5px/1 'Times New Roman',serif;color:var(--red)}footer i{font:13.5px/1 'Times New Roman',serif;font-style:normal;color:var(--muted)}.kicker{display:flex;gap:14px;align-items:center;margin-bottom:17px;font-size:14px;font-weight:500;color:var(--red)}.kicker span{font:20px/1 'Times New Roman',serif}.standfirst{font-size:18px;line-height:1.7;margin-top:18px;color:var(--muted)}.section-label{font:600 15px/1.5 'PingFang SC',sans-serif;color:var(--red);margin-bottom:10px}.note,.notice{font-size:var(--small);line-height:1.75;color:var(--muted)}
.photo{position:relative}.photo img{display:block;width:100%;height:100%;object-fit:cover}.photo figcaption{display:flex;justify-content:space-between;gap:14px;font-size:var(--small);line-height:1.5;padding-top:8px;color:var(--muted)}.photo figcaption span{white-space:nowrap}.photo figcaption:before{content:'';width:10px;height:1px;background:var(--red);margin-top:10px;margin-right:-6px;flex:none}.photo figcaption span{margin-left:auto}
/* Cover: a compact title, a shared left edge, and one large photographic field. */
.cover .running,.cover footer{display:none}.cover .page-content{padding:0}.cover-brand{display:flex;align-items:center;justify-content:space-between;gap:16px}.cover-brand img{width:128mm;display:block}.cover-brand>span{font-size:13.5px;line-height:1.7;color:var(--muted);text-align:right;white-space:nowrap}.cover-title{margin-top:28px}.cover-title .eyebrow{font-size:15px;letter-spacing:2.2px}.cover-title h1{font-size:108px;letter-spacing:-.055em;line-height:1.15;margin-top:7px;color:var(--red);white-space:nowrap}.title-stop{display:inline-block;width:15px;height:15px;margin-left:22px;background:var(--red);vertical-align:baseline}.cover-subtitle{font-size:20px;letter-spacing:.06em;margin-top:12px}.cover-intro{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:30px;margin:24px 0 25px;padding-top:20px;border-top:1px solid var(--red)}.cover-intro h2{font-size:30.5px;line-height:1.3;letter-spacing:-.02em}.cover-intro p{font-size:16px;line-height:1.8;padding-left:30px;border-left:1px solid var(--line)}.cover-photo{height:121mm}.cover-photo img{object-position:50% 50%}.cover-photo figcaption{display:none}.cover-bottom{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:17px;border-top:3px solid var(--red);padding-top:13px}.cover-bottom b{font-size:16px;color:var(--red)}.cover-bottom span{font-size:13.5px}
/* Intro and route index establish alternating quiet and saturated pages. */
.vision-photo{height:66mm;margin-top:25px;margin-bottom:43px}.vision-copy{display:grid;grid-template-columns:1fr 1fr;gap:30px}.vision-copy p:not(.section-label){font-size:16px;line-height:1.8}.vision-statement{font:700 27px/1.45 SCDAHeading,'Songti SC',serif;margin-top:28px;border-left:4px solid var(--red);padding-left:24px}.vision-statement em{color:var(--red)}.route-intro{display:grid;grid-template-columns:1fr 1fr;gap:25px;align-items:end}.route-intro h2{font-size:48.5px}.route-intro>p{font-size:17px;line-height:1.8;padding-bottom:3px;padding-left:38px}.route-index{background:var(--red);color:var(--paper);margin-top:28px;padding:0 26px}.route-row{display:grid;grid-template-columns:79px 1fr 24px;gap:17px;align-items:center;padding:23px 0;text-decoration:none;border-bottom:1px solid #fffcf750}.route-row:last-child{border:0}.route-num{font:65px/.95 'Times New Roman',serif;letter-spacing:-.07em}.route-row h3{font-size:26px;line-height:1.3}.route-row p{font-size:16px;margin-top:6px}.route-row small{display:block;font-size:14px;margin-top:7px;color:#fffcf7d9}.route-row .arrow{font-size:26px;align-self:start;line-height:1.2;margin-top:4px}.route-note{font-size:15px;margin-top:22px;color:var(--muted);line-height:1.8}
/* Theme pages share a disciplined reading order and full-size activity copy. */
.course .page-content{padding-top:6mm}.course-heading{display:flex;justify-content:space-between;align-items:center;gap:25px}.course-heading .eyebrow{margin-bottom:10px;font-family:'PingFang SC',sans-serif;letter-spacing:.03em}.course-heading h2{font-size:40px;line-height:1.1;letter-spacing:-.025em}.course-number{font:123px/.85 'Times New Roman',serif;color:var(--red);letter-spacing:-.075em;padding-right:6px}.course-photo{height:72mm;margin-top:20px;margin-bottom:35px}.course-01 .course-photo{height:72mm}.course-thesis{font:700 22.5px/1.4 SCDAHeading,'Songti SC',serif;color:var(--red);margin:8px 0 18px}.course-tasks{display:grid;grid-template-columns:1fr 1fr;gap:30px}.course-tasks h3{font:600 17px/1.5 'PingFang SC',sans-serif;margin-bottom:8px}.course-tasks h3 span{font:20.5px/1.2 'Times New Roman',serif;color:var(--red);margin-right:12px}.course-tasks p{font-size:17px;line-height:1.75}.course-result{display:grid;grid-template-columns:1.1fr 1fr;gap:26px;margin-top:22px;padding-top:15px;border-top:1px solid var(--red)}.course-result .section-label{font-size:14px;margin-bottom:5px}.course-result h3{font-size:20px;line-height:1.5;margin-bottom:3px}.course-result p:not(.section-label){font-size:15px;line-height:1.7}.course-result .roles{display:flex;flex-wrap:wrap;gap:2px 12px;color:var(--muted);margin-top:7px;font-size:14px!important}.course-notes{margin-top:14px;padding-top:10px;border-top:1px solid var(--line);font-size:14px;line-height:1.7;color:var(--muted)}.course-notes b{color:var(--red);font-weight:500}.course-notes b+*{margin-left:6px}.course-notes b:not(:first-child){margin-left:14px}.course-02 .course-heading,.course-04 .course-heading{flex-direction:row-reverse}.course-02 .course-number,.course-04 .course-number{padding-right:28px;border-right:1px solid var(--line)}.course-02 .course-heading>div,.course-04 .course-heading>div{flex:1;padding-left:4px}
.roles span{white-space:nowrap}
/* The exploration card is a typographic counterpoint to the mentor photograph. */
.outcome-spread{display:grid;grid-template-columns:1.04fr 1fr;gap:28px;margin-top:28px}.work-photo{height:90mm;margin-bottom:39px}.outcome-left h3{font-size:22.5px;margin-top:21px;margin-bottom:8px}.outcome-left p{font-size:16px;line-height:1.8}.exploration-sheet{background:var(--red);color:var(--paper);padding:26px 26px 24px}.exploration-sheet .eyebrow{color:var(--paper);font-size:13.5px;letter-spacing:1px}.exploration-sheet>h3{font-size:30px;line-height:1.3;margin-top:12px;margin-bottom:14px}.exploration-sheet>p:not(.eyebrow){font-size:15px;line-height:1.75}.exploration-sheet ol{counter-reset:explore;list-style:none;padding:0;margin-top:12px}.exploration-sheet li{position:relative;counter-increment:explore;font-size:17px;line-height:1.6;padding:18px 0 20px 28px;border-bottom:1px solid #fffcf765}.exploration-sheet li:before{content:counter(explore,decimal-leading-zero);position:absolute;left:0;top:22px;font:15px/1 'Times New Roman',serif}.exploration-sheet .sheet-note{font-size:14px!important;margin-top:22px;color:#fffcf7de}
/* A legible agenda and explicit parent handover sequence. */
.day-layout{display:grid;grid-template-columns:1fr 1fr;gap:36px;margin-top:25px}.agenda>.section-label,.pickup>.section-label{border-bottom:2px solid var(--red);padding-bottom:12px;margin-bottom:0}.agenda ol{list-style:none;padding:0}.agenda li{display:grid;grid-template-columns:72px 1fr;gap:13px;padding:7px 0;border-bottom:1px solid var(--line)}.agenda time{font:22.5px/1.4 'Times New Roman',serif;color:var(--red)}.agenda li b{display:block;font-weight:600;font-size:16px;line-height:1.45}.agenda li p{font-size:14px;color:var(--muted);margin-top:0;line-height:1.7}.agenda>.note{margin-top:13px}.pickup>div{position:relative;padding:18px 0;border-bottom:1px solid var(--line)}.pickup>div>span{position:absolute;left:0;top:23px;font:21.5px/1 'Times New Roman',serif;color:var(--red)}.pickup h3:not(.section-label){font-size:23px;line-height:1.4;margin-bottom:9px;padding-left:39px}.pickup p{font-size:16px;line-height:1.75}.day-note{border-top:1px solid var(--red);padding-top:16px;margin-top:20px}.day-note h3{font-size:21.5px;color:var(--red);margin-bottom:8px}.day-note p{font-size:15px;line-height:1.8}
/* Fees and frequently asked questions use open columns instead of small boxes. */
.fee-intro{display:grid;grid-template-columns:1.35fr 1fr;gap:24px;align-items:end;margin-top:26px;padding:22px 0;border-top:3px solid var(--red);border-bottom:1px solid var(--line)}.fee-intro h3{font-size:26px;line-height:1.5;color:var(--red)}.fee-intro p{font-size:15px;line-height:1.8}.fee-cols{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:24px}.fee-cols>div+div{border-left:1px solid var(--line);padding-left:30px}.fee-cols h3{font-size:23px;line-height:1.4;margin-bottom:10px}.fee-cols p{font-size:16px;line-height:1.85}.fee-cols p.note{font-size:13.5px;margin-top:13px}.faq{display:grid;grid-template-columns:1fr 1fr;column-gap:32px;row-gap:22px;border-top:1px solid var(--red);padding-top:22px;margin-top:25px}.faq h3{font:600 17px/1.6 'PingFang SC',sans-serif;margin-bottom:8px}.faq p{font-size:15px;line-height:1.8}.notice{padding-top:18px;border-top:1px solid var(--line);margin-top:25px}
/* School partners: image first, then clear responsibilities and three steps. */
.school-photo{height:72mm;margin-top:24px;margin-bottom:41px}.school-roles{display:grid;grid-template-columns:1fr 1fr;gap:30px}.school-roles .section-label{margin-bottom:4px}.school-roles h3{font-size:22.5px;margin-bottom:8px}.school-roles p:not(.section-label){font-size:16px;line-height:1.75}.cooperation-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;list-style:none;padding:18px 0 0;margin-top:22px;border-top:1px solid var(--red)}.cooperation-steps span{font:28px/1 'Times New Roman',serif;color:var(--red)}.cooperation-steps h3{font-size:20.5px;line-height:1.5;margin-top:8px}.cooperation-steps p{font-size:14px;line-height:1.75;margin-top:6px}.enquiry{font-size:14px;line-height:1.7;margin-top:20px;padding-top:15px;border-top:1px solid var(--line)}.enquiry b{color:var(--red);font-weight:500;margin-right:18px}
/* Back cover: a large, useful contact destination. */
.back-cover .running{display:none}.back-cover .page-content{padding-top:0}.back-brand img{width:128mm;display:block}.back-brand{margin-bottom:40px}.back-cover .eyebrow{margin-bottom:15px}.back-cover .display{font-size:44.5px}.about{margin-top:28px}.about h3{font-size:24px;color:var(--red);margin-bottom:12px}.about p{font-size:16px;line-height:1.85;margin-top:11px}.contact-panel{background:var(--red);color:var(--paper);padding:28px 32px;margin-top:30px}.contact-panel .section-label{color:var(--paper);font-weight:500}.email{display:flex;align-items:center;justify-content:space-between;font:48.5px/1.3 'Times New Roman',serif;letter-spacing:-.025em;text-decoration:none;border-bottom:1px solid #fffcf770;padding-bottom:18px}.email span{font:31.5px/1 'PingFang SC',sans-serif}.contact-detail{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-top:23px}.contact-detail>p{font-size:16px;line-height:1.9}.contact-detail a{text-underline-offset:5px}.qr{text-align:center}.qr img{display:block;width:102px;height:102px;background:white;padding:4px;image-rendering:pixelated}.qr p{font-size:13.5px;margin-top:5px}.credits{font-size:13.5px;line-height:1.8;color:var(--muted);margin-top:24px}.credits p+p{margin-top:9px}
@page{size:A4;margin:0}@media print{html,body{background:white;margin:0;padding:0;scroll-behavior:auto}body{-webkit-print-color-adjust:exact;print-color-adjust:exact}.toolbar,.reader-note,.skip{display:none!important}main{padding:0}.page{margin:0;box-shadow:none;break-after:page;page-break-after:always}.page:last-child{break-after:auto;page-break-after:auto}a{text-decoration:none}}
@media screen and (max-width:850px){
:root{--body:16px;--small:14px}.toolbar{padding:10px 16px;gap:12px;min-height:64px;flex-wrap:wrap}.toolbar img{width:127px}.toolbar>span,.toolbar button{display:none}.toolbar .download{margin-left:auto;font-size:14px;padding:9px 12px}.toolbar select{order:4;flex:1 0 100%;width:100%;margin:0;font-size:15px;min-height:42px;padding:8px}.reader-note{width:auto;margin:20px 18px 14px;font-size:12px;gap:15px}.reader-note span{text-align:right}main{padding-bottom:16px}.page{width:calc(100% - 24px);height:auto;min-height:0;margin:0 12px 18px;padding:26px 24px 74px;overflow:visible;scroll-margin-top:126px}.running{height:auto;min-height:38px;gap:14px;padding-bottom:13px;align-items:center}.running img{width:96px;height:auto}.running>span{font-size:12px;line-height:1.5;max-width:50%;text-align:right}.page-content{padding-top:28px}.page footer{left:24px;right:24px;bottom:22px;font-size:11px;padding-top:10px}.page footer b{font-size:21.5px}footer i{font-size:13px}.display{font-size:31.5px;line-height:1.35;letter-spacing:-.03em}.kicker{font-size:14px;margin-bottom:17px;gap:10px}.kicker span{font-size:20px}.standfirst{font-size:17px;margin-top:19px;line-height:1.8}.standfirst br{display:none}.photo figcaption{font-size:13px;gap:9px;padding-top:9px}.photo figcaption:before{display:none}.photo figcaption span{font-size:12px}.section-label{font-size:15px}.cover{padding:24px 24px 26px}.cover-brand img{width:100%;max-width:470px}.cover-brand>span{display:none}.cover-title{margin-top:31px}.cover-title .eyebrow{font-size:13px;letter-spacing:1.5px}.cover-title h1{font-size:clamp(48px,14.5vw,98px);letter-spacing:-.05em;line-height:1.25;margin-top:12px}.title-stop{width:8px;height:8px;margin-left:8px}.cover-subtitle{font-size:15px;letter-spacing:0;line-height:1.6;margin-top:13px;max-width:19em}.cover-intro{grid-template-columns:1fr;margin:24px 0;gap:16px;padding-top:23px}.cover-intro h2{font-size:28px;line-height:1.4}.cover-intro p{font-size:15px;padding-left:0;border:0;line-height:1.8}.cover-intro p br{display:none}.cover-photo{height:auto;aspect-ratio:1.1;margin-left:-24px;margin-right:-24px}.cover-bottom{display:block;margin-top:21px;padding-top:15px}.cover-bottom b{font-size:16px}.cover-bottom span{display:block;font-size:13px;margin-top:6px;line-height:1.8}.vision-photo{height:auto;aspect-ratio:2.05;margin-top:25px;margin-bottom:24px}.vision-copy{grid-template-columns:1fr;gap:24px}.vision-copy p:not(.section-label){font-size:16px}.vision-statement{font-size:23px;line-height:1.65;margin-top:27px;padding-left:17px}.route-intro{grid-template-columns:1fr;gap:18px}.route-intro h2{font-size:38px}.route-intro>p{font-size:16px;padding:0}.route-intro>p br{display:none}.route-index{margin:25px -24px 0;padding:0 24px}.route-row{grid-template-columns:46px 1fr;gap:15px;padding:24px 0}.route-num{font-size:44.5px}.route-row .arrow{display:none}.route-row h3{font-size:22.5px;line-height:1.4}.route-row p{font-size:15px;line-height:1.75;margin-top:7px}.route-row small{font-size:13px;line-height:1.7}.route-note{font-size:15px;line-height:1.8}.route-note br{display:none}.course .page-content{padding-top:27px}.course-heading{gap:18px}.course-heading h2{font-size:31.5px;line-height:1.2}.course-heading .eyebrow{font-size:13px;margin-bottom:13px}.course-number{font-size:78px;padding-right:0}.course-02 .course-heading,.course-04 .course-heading{flex-direction:row}.course-02 .course-number,.course-04 .course-number{padding-right:0;border:0}.course-02 .course-heading>div,.course-04 .course-heading>div{padding-left:0}.course-photo,.course-01 .course-photo{height:auto;aspect-ratio:1.7;margin-top:27px;margin-bottom:24px}.course-thesis{font-size:22.5px;line-height:1.55;margin-top:6px;margin-bottom:24px}.course-tasks{grid-template-columns:1fr;gap:25px}.course-tasks h3{font-size:18px}.course-tasks h3 span{font-size:22.5px}.course-tasks p{font-size:16px;line-height:1.9}.course-result{grid-template-columns:1fr;gap:24px;margin-top:28px;padding-top:22px}.course-result h3{font-size:22.5px}.course-result .section-label{font-size:15px;margin-bottom:9px}.course-result p:not(.section-label){font-size:15px;line-height:1.8}.course-result .roles{font-size:14px!important;margin-top:9px}.course-notes{font-size:14px;line-height:1.9;margin-top:24px;padding-top:17px}.course-notes b:not(:first-child){margin-left:10px}.outcome-spread{grid-template-columns:1fr;gap:28px;margin-top:27px}.work-photo{height:auto;aspect-ratio:1.1;margin-bottom:24px}.outcome-left h3{font-size:23px}.outcome-left p{font-size:16px;line-height:1.85}.exploration-sheet{padding:27px}.exploration-sheet>h3{font-size:30.5px}.exploration-sheet>p:not(.eyebrow){font-size:16px}.exploration-sheet li{font-size:18px}.exploration-sheet .sheet-note{font-size:15px!important}.day-layout{grid-template-columns:1fr;gap:31px;margin-top:30px}.agenda li{grid-template-columns:78px 1fr;padding:14px 0}.agenda time{font-size:24px}.agenda li b{font-size:17px}.agenda li p{font-size:15px}.agenda>.note{font-size:14px}.pickup>div{padding:23px 0 23px 42px}.pickup>div>span{font-size:25px;top:28px}.pickup h3:not(.section-label){padding-left:0}.pickup p{font-size:16px;line-height:1.85}.day-note{margin-top:26px;padding-top:22px}.day-note h3{font-size:23px;line-height:1.5}.day-note p{font-size:15px;line-height:1.85}.fee-intro{grid-template-columns:1fr;gap:18px;margin-top:25px;padding:22px 0}.fee-intro h3{font-size:26px;line-height:1.6}.fee-intro p{font-size:15px}.fee-intro p br{display:none}.fee-cols{grid-template-columns:1fr;gap:23px;margin-top:24px}.fee-cols>div+div{border-left:0;border-top:1px solid var(--line);padding:22px 0 0}.fee-cols h3{font-size:24px}.fee-cols p{font-size:16px}.fee-cols p.note{font-size:14px}.faq{grid-template-columns:1fr;gap:25px;margin-top:28px;padding-top:24px}.faq h3{font-size:18px}.faq p{font-size:16px;line-height:1.85}.notice{font-size:14px;margin-top:27px;padding-top:21px}.school-photo{height:auto;aspect-ratio:1.7;margin-top:25px;margin-bottom:24px}.school-roles{grid-template-columns:1fr;gap:26px}.school-roles h3{font-size:23px}.school-roles p:not(.section-label){font-size:16px;line-height:1.85}.cooperation-steps{grid-template-columns:1fr;gap:25px;margin-top:28px;padding-top:25px}.cooperation-steps li{position:relative;padding-left:49px}.cooperation-steps span{position:absolute;left:0;top:3px;font-size:29px}.cooperation-steps h3{font-size:23px;margin-top:0}.cooperation-steps p{font-size:15px}.enquiry{font-size:15px;line-height:1.8;margin-top:26px;padding-top:20px}.enquiry b{display:block;margin-bottom:8px}.back-brand{margin-bottom:34px}.back-brand img{width:100%}.back-cover .display{font-size:33.5px}.back-cover .eyebrow{font-size:13px}.about{margin-top:26px}.about h3{font-size:24px}.about p{font-size:16px;line-height:1.85}.about p br{display:none}.contact-panel{padding:25px 23px;margin:28px -24px 0}.email{font-size:37px;letter-spacing:-.02em;padding-bottom:18px}.email span{font-size:25px}.contact-detail{gap:20px;align-items:flex-start;flex-wrap:wrap;padding-top:22px}.contact-detail>p{font-size:15px}.qr img{width:94px;height:94px}.qr p{font-size:13px}.credits{font-size:14px;line-height:1.85;margin-top:25px}
}
@media screen and (max-width:370px){.page{padding-left:20px;padding-right:20px}.cover{padding-left:20px;padding-right:20px}.cover-photo,.route-index,.contact-panel{margin-left:-20px;margin-right:-20px}.route-index{padding:0 20px}.display{font-size:29px}.course-heading h2{font-size:27px}.course-number{font-size:61.5px}.course-heading .eyebrow{font-size:12px}.photo figcaption{flex-wrap:wrap;gap:1px}.photo figcaption span{margin-left:0;flex-basis:100%}.course-photo,.school-photo,.work-photo,.vision-photo{margin-bottom:26px}.cover-subtitle{font-size:15px}.cover-title h1{font-size:clamp(44px,14.5vw,98px)}.vision-statement{font-size:21.5px}.course-thesis{font-size:20.5px}.back-cover .display{font-size:30px}.email{font-size:32.5px}.toolbar img{width:114px}.toolbar .download{font-size:13px}.reader-note{font-size:11px}.page footer{left:20px;right:20px}.route-row h3{font-size:20.5px}.route-row{grid-template-columns:39px 1fr;gap:13px}.route-num{font-size:41px}.exploration-sheet{padding:24px}.fee-intro h3{font-size:23px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Art direction for the wider audience photo: source rectangle (160,70)-(1700,840).
   The original JPEG remains unchanged; this 2:1 viewport preserves the principal heads. */
.course-04 .course-photo{height:90mm}
.course-04 .photo-window{position:relative;width:100%;height:100%;overflow:hidden}
.course-04 .photo-window img{position:absolute;max-width:none;width:124.675325%;height:166.233766%;left:-10.38961%;top:-9.090909%;object-fit:fill}
@media screen and (max-width:850px){.course-04 .course-photo{height:auto;aspect-ratio:auto}.course-04 .photo-window{height:auto;aspect-ratio:2 / 1}}

@media screen and (max-width:850px){.course-thesis span{display:inline-block;white-space:nowrap}}

/* Technology photographs retain their complete source proportions. The two
   image plates sit apart from the proposed courses so the scenes stay factual. */
.cover-photo{height:auto;aspect-ratio:3 / 2}
.cover-photo img{height:auto;aspect-ratio:3 / 2;object-fit:contain}
.tech-heading{margin-bottom:16px}
.tech-heading .eyebrow{font-family:'PingFang SC',sans-serif;letter-spacing:.04em}
.tech-heading .display{margin-top:8px}
.tech-photo{margin:0;min-width:0}
.tech-photo img{display:block;width:100%;height:auto;object-fit:contain;aspect-ratio:3 / 2}
.tech-photo figcaption{display:flex;align-items:baseline;gap:9px;font-size:13.5px;line-height:1.5;padding-top:6px;color:var(--muted)}
.tech-photo figcaption>span{font-family:'Times New Roman',serif;color:var(--red)}
.tech-wide-lead{display:grid;grid-template-columns:144mm 1fr;gap:8mm}
.tech-wide-lead figcaption{display:block;padding-top:12px;border-top:2px solid var(--red);font-size:16px;line-height:1.7}
.tech-wide-lead figcaption>span{display:block;font-size:34px;line-height:1;margin-bottom:17px}
.tech-portrait-row{display:grid;grid-template-columns:54mm 54mm 1fr;gap:6mm;margin-top:7mm;align-items:start}
.tech-portrait img{aspect-ratio:2 / 3}
.tech-side-copy{border-top:2px solid var(--red);padding-top:13px}
.tech-side-copy .section-label{margin-bottom:15px}
.tech-side-copy>p:not(.section-label){font-size:16px;line-height:1.85}
.tech-side-copy .tech-side-note{margin-top:22px;color:var(--muted)}
.tech-landscape-pair{display:grid;grid-template-columns:1fr 1fr;gap:6mm;margin-top:6mm}
.tech-reference{font-size:13.5px;line-height:1.6;color:var(--muted);margin-top:4mm;padding-top:3mm;border-top:1px solid var(--line)}
@media screen and (max-width:850px){
  .cover-photo{height:auto;aspect-ratio:3 / 2}
  .tech-heading{margin-bottom:24px}
  .tech-heading .eyebrow{font-size:13.5px}
  .tech-heading .display{font-size:29px;line-height:1.4;margin-top:13px}
  .tech-photo figcaption{font-size:13.5px;line-height:1.6;padding-top:8px}
  .tech-wide-lead{display:block}
  .tech-wide-lead figcaption{display:flex;font-size:13.5px;line-height:1.6;border:0;padding-top:8px}
  .tech-wide-lead figcaption>span{display:inline;font-size:13.5px;line-height:1.6;margin:0}
  .tech-portrait-row{grid-template-columns:1fr 1fr;column-gap:14px;row-gap:24px;margin-top:24px}
  .tech-side-copy{grid-column:1 / -1;padding-top:18px}
  .tech-side-copy .section-label{margin-bottom:8px}
  .tech-side-copy>p:not(.section-label){font-size:16px;line-height:1.85}
  .tech-side-copy br{display:none}
  .tech-side-copy .tech-side-note{margin-top:9px}
  .tech-landscape-pair{grid-template-columns:1fr;gap:24px;margin-top:24px}
  .tech-reference{font-size:13.5px;line-height:1.8;margin-top:24px;padding-top:17px}
  .tech-reference br{display:none}
}
@media screen and (max-width:370px){
  .tech-heading .display{font-size:26px}
  .tech-portrait-row{column-gap:12px}
}

/* Complete landscape and portrait views share a common height on the robotics page. */
.course-02 .robot-tech-photo{height:80.307692mm;aspect-ratio:auto}
.robot-photo-grid{display:grid;grid-template-columns:2.25fr 1fr;gap:6mm;height:100%}
.robot-photo-grid img{width:100%;height:100%;min-width:0;object-fit:contain}
@media screen and (max-width:850px){
  .course-02 .robot-tech-photo{height:auto;aspect-ratio:auto}
  .robot-photo-grid{height:auto;gap:12px}
  .robot-photo-grid img{height:auto;aspect-ratio:3 / 2}
  .robot-photo-grid img+img{aspect-ratio:2 / 3}
  .robot-tech-photo figcaption{flex-wrap:wrap}
}
