@charset "UTF-8";
:root{--ink:#21475b;--blue:#22638a;--paper:#f8f7f2;--muted:#607482;--line:#cdd8da;--navy:#173e54;--serif:"Songti TC","Noto Serif TC","PMingLiU",serif;--sans:"PingFang TC","Noto Sans TC","Microsoft JhengHei",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.8}body:has(dialog[open]){overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button{border:0}img{display:block;max-width:100%}figure,h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400}button:focus-visible,a:focus-visible{outline:3px solid #ce8944;outline-offset:5px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}.skip{position:fixed;top:-100px;left:16px;z-index:100;background:var(--paper);padding:10px}.skip:focus{top:8px}.site-header{height:78px;padding:0 4.5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:var(--paper);position:relative;z-index:10}.wordmark{font-family:var(--serif);font-size:19px;letter-spacing:2px;white-space:nowrap}.brand-symbol{font-size:30px;margin-right:7px}.site-header nav{display:flex;gap:30px;align-items:center;font-size:13px}.site-header nav a{padding:8px 0}.site-header nav a:hover{color:#a35f2c}.nav-download{border-bottom:1px solid var(--ink)}.menu-toggle{display:none}.hero{background:#88b3d4 url('assets/sky.jpg') center/cover;color:#173e54;padding:34px 4.5% 0;overflow:hidden}.hero-top,.hero-bottom{display:flex;justify-content:space-between;align-items:center;font-size:12px;letter-spacing:2px}.eyebrow{font-size:11px;letter-spacing:2.8px;font-weight:500}.hero-top{position:relative;z-index:1}.hero-layout{display:grid;grid-template-columns:.9fr 1.2fr;align-items:center;max-width:1500px;margin:25px auto 18px;gap:3%}.hero-copy{padding-bottom:50px}.hero-copy h1{width:114%;position:relative;z-index:1}.hero-copy h1 img{width:100%;height:auto;filter:drop-shadow(0 1px 2px #275b6b33)}.hero-line{font-family:var(--serif);font-size:clamp(15px,1.5vw,20px);letter-spacing:2px;margin:27px 0 25px}.round-link{display:inline-flex;align-items:center;gap:28px;font-size:13px}.circle-arrow{border:1px solid #21475b80;border-radius:50%;width:44px;height:44px;display:grid;place-items:center;font-size:23px;transition:transform .2s}.round-link:hover .circle-arrow{transform:translateY(4px)}.hero-photo{margin-top:35px;position:relative}.hero-photo>img{width:100%;height:auto}.hero-photo figcaption{font-family:var(--serif);font-size:13px;text-align:right;letter-spacing:2px;padding:13px 0}.hero-bottom{border-top:1px solid #21475b44;padding:20px 0;font-size:10px;letter-spacing:2px}.hero-bottom a{font-size:12px;letter-spacing:1px}.section-wrap{max-width:1370px;margin:auto;padding:90px 5.5%}.section-label{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:18px;font-size:11px;letter-spacing:2px;margin-bottom:48px}.story-layout{display:grid;grid-template-columns:.83fr 1.17fr;gap:7%;align-items:center}.hand{width:440px;max-width:100%;height:auto}.ink{filter:brightness(0) saturate(100%) invert(26%) sepia(23%) saturate(1304%) hue-rotate(159deg) brightness(93%) contrast(93%)}.intro{font-family:var(--serif);font-size:23px;line-height:1.9;margin:32px 0 22px}.body-copy{line-height:2.2;color:var(--muted);font-size:14px}.small-caption{font-size:11px;letter-spacing:2px;margin-top:34px}.photo-button{padding:0;display:block;position:relative;background:transparent;width:100%}.photo-button img{width:100%;height:auto}.photo-expand{position:absolute;bottom:12px;right:12px;background:#f8f7f2ed;color:var(--ink);padding:5px 10px;font-size:11px;opacity:0;transition:opacity .2s}.photo-button:hover .photo-expand,.photo-button:focus-visible .photo-expand{opacity:1}.story-photo{transform:rotate(1.5deg)}figcaption{font-size:11px}.story-photo figcaption{display:flex;justify-content:space-between;margin-top:14px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:35px;margin-bottom:42px}.section-heading h2 .hand{width:330px}.section-heading p{font-size:14px;color:var(--muted);margin-top:18px}.edition-note{font-size:11px;color:var(--muted);max-width:230px;text-align:right}.students-section{padding-top:20px}.student-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:38px 25px}.student-card{display:block}.student-card:nth-child(even){padding-top:28px}.student-photo{overflow:hidden;background:#e6e8e5;aspect-ratio:3/4}.student-photo img{width:100%;height:100%;object-fit:cover;transition:transform .45s}.student-card:hover img{transform:scale(1.035)}.student-info{display:flex;align-items:center;justify-content:space-between;padding-top:13px}.student-info .number{font-family:Georgia,serif;font-size:14px;font-style:italic;color:var(--muted)}.student-info strong{font-family:var(--serif);font-weight:400;font-size:18px}.student-detail{font-size:11px;color:var(--muted);margin-top:3px}.stage-section{background:var(--navy);color:#f1f4f3}.stage-section .section-label{border-color:#cedee233;color:#c6d9e3}.stage-layout{display:grid;grid-template-columns:1fr 2.7fr;gap:9%;align-items:center}.stacked-title{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.stacked-title img{width:155px;height:83px;object-fit:contain;object-position:left}.stage-copy p{font-family:var(--serif);font-size:15px;line-height:2.1;margin-top:24px;color:#c6d9e3}.video-frame{aspect-ratio:16/9;position:relative;background:#102d3f}.video-launch{position:relative;display:block;padding:0;width:100%;height:100%;background:transparent;color:#fff}.video-launch>img{height:100%;width:100%;object-fit:cover;filter:brightness(.65)}.play-circle{display:grid;place-items:center;width:76px;height:76px;border:1px solid #f8f7f2;border-radius:50%;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:22px;padding-left:4px;background:#173e5430;transition:background .2s}.video-launch:hover .play-circle{background:#173e54bb}.video-overlay-label{position:absolute;bottom:22px;left:24px;font-size:13px;letter-spacing:2px}.video-frame iframe{border:0;width:100%;height:100%;display:block}.video-meta{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:25px}.video-meta h3{font-family:var(--serif);font-size:24px;margin:6px 0}.video-meta p,.video-note{font-size:11px;color:#bdd1dc}.video-meta a{font-size:12px;white-space:nowrap;border-bottom:1px solid #bdd1dc;padding:8px 0}.video-note{margin-top:20px}.filters{display:flex;gap:8px;white-space:nowrap}.filters button{background:transparent;padding:9px 13px;font-size:12px;border-bottom:1px solid transparent}.filters button.active{border-color:var(--ink);color:var(--blue)}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px 25px;align-items:start}.gallery-item.wide{grid-column:span 2}.gallery-item:nth-child(3n+2){margin-top:35px}.gallery-item figcaption{display:flex;justify-content:space-between;padding-top:12px;color:var(--muted)}.gallery-item img{max-height:520px;object-fit:contain;background:#ebece8}.closing{background:#8bb8d8 url('assets/sky.jpg') center/cover;text-align:center;padding:70px 24px 75px}.closing .eyebrow{margin-bottom:25px}.closing h2{display:flex;justify-content:center;gap:24px;max-width:750px;margin:0 auto 25px}.closing h2 img{width:calc(50% - 12px);object-fit:contain}.closing p{font-family:var(--serif);font-size:17px;letter-spacing:1px}.download-link{display:inline-flex;flex-direction:column;margin-top:33px;border-top:1px solid #21475b55;border-bottom:1px solid #21475b55;padding:15px 40px;font-size:18px;font-family:var(--serif)}.download-link span{font-family:var(--sans);font-size:11px;letter-spacing:1px;margin-top:6px}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:30px 5.5%;font-size:11px;color:var(--muted)}.site-footer a{font-family:var(--serif);font-size:17px;color:var(--ink)}.profile-view{max-width:1240px;margin:auto;padding:35px 6% 90px}.back-link{display:inline-block;font-size:13px;padding:12px 0;margin-bottom:30px}.profile-layout{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.profile-main-image{width:100%;max-height:680px;object-fit:contain;background:#e8e9e5}.profile-copy .hand{margin:25px 0;width:330px}.profile-name{font-family:var(--serif);font-size:42px;letter-spacing:4px}.profile-copy .body-copy{margin:18px 0 30px}.profile-copy dl{border-top:1px solid var(--line);font-size:13px}.profile-copy dl div{display:flex;padding:13px 0;border-bottom:1px solid var(--line);gap:25px}.profile-copy dt{color:var(--muted);min-width:85px}.profile-copy dd{margin:0}.profile-message{margin-top:35px}.profile-message h3{font-family:var(--serif);font-size:22px;margin-bottom:12px}.profile-message p{color:var(--muted);font-size:14px;white-space:pre-line}.profile-album{margin-top:80px}.profile-album h2{font-family:var(--serif);font-size:25px;margin-bottom:25px}.profile-album-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.profile-album-grid img{width:100%;height:auto}.profile-navigation{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:55px;padding-top:22px;font-size:13px}.profile-stage-link{display:inline-block;margin-top:25px;border-bottom:1px solid var(--ink);font-size:13px}dialog{position:fixed;border:0;padding:18px 24px;color:#f3f4f0;background:#102e40;width:min(1100px,95vw);max-height:94dvh;overflow:auto}dialog::backdrop{background:#061724e8}#lightbox-image{max-height:72dvh;max-width:100%;width:auto;height:auto;margin:auto;object-fit:contain}.lightbox-toolbar,.lightbox-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px}.lightbox-toolbar{padding-bottom:15px;font-size:12px}.lightbox-toolbar button,.lightbox-bottom button{background:transparent;color:inherit;min-width:44px;min-height:44px}.lightbox-bottom{padding-top:10px}.lightbox-bottom p{font-family:var(--serif);font-size:16px;text-align:center}.lightbox-bottom button{font-size:23px}.noscript-note{padding:25px;text-align:center}a:hover{transition:color .2s}
@media(min-width:1600px){.hero{padding-left:max(4.5%,calc((100vw - 1500px)/2));padding-right:max(4.5%,calc((100vw - 1500px)/2))}}
@media(max-width:1000px){.site-header{padding:0 4%;height:70px}.site-header nav{gap:18px;font-size:12px}.wordmark{font-size:16px;letter-spacing:1px}.hero-line{letter-spacing:0}.section-wrap{padding:65px 5%}.students-section{padding-top:10px}.student-grid{grid-template-columns:repeat(3,1fr);gap:28px 22px}.student-card:nth-child(even){padding-top:0}.student-card:nth-child(3n+2){padding-top:24px}.story-layout{gap:5%}.intro{font-size:20px}.section-heading{gap:20px}.stage-layout{gap:5%;grid-template-columns:1fr 2.6fr}.stacked-title img{width:125px;height:65px}.stage-copy p{font-size:13px}.video-meta h3{font-size:20px}}
@media(max-width:700px){html{scroll-padding-top:24px}.site-header{height:68px;padding:0 22px}.menu-toggle{display:flex;align-items:center;gap:14px;background:none;font-size:13px;min-height:44px}.menu-toggle span{font-size:23px}.site-header nav{display:none;position:absolute;top:68px;left:0;right:0;background:var(--paper);padding:16px 24px 24px;border-bottom:1px solid var(--line);font-size:15px}.site-header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:5px}.site-header nav a{padding:10px}.hero{padding:24px 22px 0;background-position:38% top}.hero-top{font-size:10px;letter-spacing:1px}.hero-top .eyebrow{font-size:9px;letter-spacing:1.4px}.hero-layout{display:flex;flex-direction:column;gap:0;margin:26px auto 0}.hero-copy{width:100%;padding:0}.hero-copy h1{width:95%;margin:auto}.hero-line{font-size:15px;margin:20px 0 12px;text-align:center;letter-spacing:1px}.round-link{display:flex;justify-content:center;gap:20px;margin:0 auto 20px;font-size:12px}.circle-arrow{height:36px;width:36px;font-size:20px}.hero-photo{margin:0 -22px;width:calc(100% + 44px)}.hero-photo figcaption{font-size:10px;padding:8px 22px}.hero-bottom{font-size:8px;letter-spacing:1px;padding:14px 0;gap:15px}.hero-bottom>span:nth-child(2){display:none}.hero-bottom a{font-size:10px}.section-wrap{padding:52px 24px}.section-label{margin-bottom:30px;padding-top:13px;font-size:10px;letter-spacing:1.5px}.story-layout{grid-template-columns:1fr;gap:32px}.story-layout .hand{width:330px}.intro{font-size:22px;margin-top:25px}.body-copy{font-size:14px}.small-caption{margin-top:23px}.story-photo{transform:rotate(1deg)}.section-heading{display:block;margin-bottom:28px}.section-heading h2 .hand{width:270px}.section-heading p{font-size:13px}.edition-note{display:block;text-align:left;max-width:none;margin-top:12px;font-size:10px}.students-section{padding-top:12px}.student-grid{grid-template-columns:repeat(3,1fr);gap:22px 12px}.student-card:nth-child(3n+2){padding-top:17px}.student-info{align-items:baseline;gap:3px;padding-top:9px}.student-info strong{font-size:15px;letter-spacing:0}.student-info .number{font-size:11px}.student-info .arrow{display:none}.student-detail{font-size:10px}.stage-layout{grid-template-columns:1fr;gap:25px}.stacked-title{flex-direction:row;gap:12px}.stacked-title img{width:80px;height:52px}.stage-copy p{margin-top:18px;font-size:14px}.stage-copy p br{display:none}.video-meta{display:block;padding-top:18px}.video-meta h3{font-size:22px}.video-meta a{display:inline-block;margin-top:14px}.video-overlay-label{font-size:11px;left:16px;bottom:14px}.play-circle{width:58px;height:58px;font-size:17px}.video-note{font-size:10px}.filters{margin-top:20px;gap:14px}.filters button{padding:8px 5px;font-size:12px}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:25px 14px}.gallery-item:nth-child(3n+2){margin-top:0}.gallery-item.wide{grid-column:span 2}.gallery-item figcaption{font-size:10px;gap:8px}.gallery-item figcaption span:last-child{display:none}.closing{padding:50px 24px}.closing h2{gap:12px}.closing h2 img{width:calc(50% - 6px)}.closing p{font-size:14px}.download-link{font-size:17px;padding:13px 20px}.site-footer{flex-direction:column;align-items:flex-start;gap:7px;padding:27px 24px;font-size:10px}.profile-view{padding:20px 24px 55px}.profile-layout{grid-template-columns:1fr;gap:30px}.profile-main-image{max-height:65dvh}.profile-name{font-size:34px}.profile-copy .hand{width:280px}.profile-album{margin-top:45px}.profile-album-grid{grid-template-columns:1fr 1fr;gap:14px}.profile-album-grid>:first-child{grid-column:span 2}.profile-navigation{font-size:12px;gap:18px}dialog{padding:10px 14px;width:96vw}.lightbox-bottom p{font-size:14px}#lightbox-image{max-height:68dvh}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
