:root{color-scheme:light;--bg:#fff;--bg-elev:#f6fcfd;--bg-soft:#eef7f9;--text:#2b2f3f;--text-muted:#6b6f80;--heading:#2f3a6b;--brand:#6b4fa0;--brand-strong:#533c83;--accent:#37b8c8;--accent-soft:#e4f7fa;--sky:#9ee9f2;--line:#dcecf0;--link:#533c83;--radius:14px;--shadow:0 1px 2px #2b2f3f0f, 0 8px 24px #2b2f3f0f;--font-sans:"Noto Sans TC", system-ui, -apple-system, "Segoe UI", "PingFang TC", "Microsoft JhengHei", sans-serif;--font-serif:"Noto Serif TC", "PingFang TC", "Songti TC", Georgia, serif;--measure:72ch;--gutter:clamp(16px, 4vw, 32px)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);letter-spacing:.01em;margin:0;font-size:17px;line-height:1.8}img,video{max-width:100%;height:auto}a{color:var(--link);text-underline-offset:3px;text-decoration-thickness:1px}a:hover{color:var(--brand)}h1,h2,h3,h4{font-family:var(--font-serif);color:var(--heading);margin:0 0 .5em;font-weight:600;line-height:1.3}h1{font-size:clamp(1.7rem,3.6vw,2.4rem)}h2{font-size:clamp(1.35rem,2.6vw,1.7rem)}h3{font-size:1.15rem}p{margin:0 0 1.1em}.container{width:min(1120px, 100% - var(--gutter) * 2);margin-inline:auto}.narrow{width:min(760px, 100% - var(--gutter) * 2);margin-inline:auto}.muted{color:var(--text-muted)}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.site-header.classic{z-index:20;background:#fff;position:relative}.brand-row{justify-content:center;align-items:center;padding:18px 0 14px;display:flex}.brand{align-items:center;text-decoration:none;display:flex}.brand img{width:auto;height:72px}.brand .wordmark{display:none}.menubar{background:#85e6f8}.nav{justify-content:center;align-items:stretch;gap:28px;min-height:80px;display:flex}.nav a{color:#2b2f56;text-decoration:none}.nav-item{position:relative}.nav>a,.nav>.nav-item>a{white-space:nowrap;align-items:center;gap:8px;min-height:80px;padding:0;font-size:1rem;display:flex;position:relative}.nav>a:after,.nav>.nav-item>a:after{content:"";opacity:0;background:#bf7155;height:2px;position:absolute;inset:auto 0 18px}.nav>a:is(:hover,:focus-visible,[aria-current=page]),.nav>.nav-item:is(:hover,:focus-within)>a,.nav>.nav-item>a[aria-current=page]{color:#bf7155}.nav>a:is(:hover,:focus-visible,[aria-current=page]):after,.nav>.nav-item:is(:hover,:focus-within)>a:after,.nav>.nav-item>a[aria-current=page]:after{opacity:1}.caret{border-bottom:1px solid;border-right:1px solid;width:6px;height:6px;margin-left:3px;font-size:0;display:inline-block;transform:rotate(45deg)}.submenu{visibility:hidden;opacity:0;z-index:30;background:#f2efef;border-top:2px solid #bf7155;border-radius:0;width:270px;padding:0;transition:visibility 0s linear .18s,opacity 0s linear .18s;position:absolute;top:100%;left:0;box-shadow:1px 1px 24px #0000000f}.nav-item:is(:hover,:focus-within)>.submenu{visibility:visible;opacity:1;transition-delay:0s}.submenu a{color:#333;background:#f2efef;border-bottom:1px solid #dcdadb;padding:12px 20px;font-size:.9rem;line-height:1.6;display:block}.submenu a:is(:hover,:focus-visible,:active,[aria-current=page]),.submenu .nav-item:is(:hover,:focus-within)>a,.submenu .nav-item:has([aria-current=page])>a{color:#333;background:#fff}.nav-item.sub>a{justify-content:space-between;align-items:center;gap:12px;display:flex}.nav-item.sub .caret{flex:0 0 6px;transform:rotate(-45deg)}.submenu.flyout{margin:0;top:-2px;left:100%}.nav a:focus-visible,.nav summary:focus-visible,.nav button:focus-visible,.nav-toggle-label:focus-visible{outline-offset:-3px;outline:2px solid #2b2f56}.nav-toggle-label{cursor:pointer;background:0 0;border:0;padding:10px;display:none}.submenu-toggle{display:none}.nav-toggle-label span{background:var(--heading);width:22px;height:2px;margin:5px 0;display:block}.nav-search{flex:0 0 24px;position:relative}.nav-search summary{color:#2b2f56;cursor:pointer;justify-content:center;align-items:center;height:100%;min-height:80px;list-style:none;display:flex}.nav-search summary::-webkit-details-marker{display:none}.nav-search summary:hover,.nav-search[open] summary{color:#bf7155}.nav-search svg{width:18px;height:18px;display:block}.nav-search-panel{z-index:31;background:#f2efef;border-top:2px solid #bf7155;width:300px;padding:20px;position:absolute;top:100%;right:0;box-shadow:1px 1px 24px #0000000f}.nav-search form{margin:0;display:flex}.nav-search input{width:100%;min-width:0;font:inherit;background:#fff;border:1px solid #dcdadb;border-radius:0;padding:10px 12px;font-size:.9rem}.nav-search button{color:#fff;cursor:pointer;background:#222;border:0;border-radius:0;flex:0 0 42px;place-items:center;display:grid}@media (width<=1024px){.site-header.classic{position:sticky;top:0}.site-header.nav-open{z-index:102}.brand-row{justify-content:space-between;padding:10px 0}.brand img{height:52px}.nav-toggle-label{display:block}.menubar{top:100%;position:absolute;inset-inline:0}.menubar>.container{width:100%}.nav{min-height:0;max-height:calc(100dvh - var(--mobile-header-height,72px));overscroll-behavior-y:contain;padding:0 0 env(safe-area-inset-bottom);flex-direction:column;justify-content:flex-start;align-items:stretch;gap:0;display:none;overflow-y:auto}.nav>*{flex-shrink:0}.site-header.nav-open .nav{display:flex}.nav>a,.nav>.nav-item>a{min-height:48px;padding:10px var(--gutter);white-space:normal}.nav .has-children>a{display:none}.nav .submenu-toggle{width:100%;min-height:48px;padding:10px var(--gutter);color:#2b2f56;text-align:left;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:0;justify-content:space-between;align-items:center;gap:16px;font-size:1rem;display:flex}.nav>a:after,.nav>.nav-item>a:after{display:none}.submenu,.submenu.flyout{visibility:visible;opacity:1;width:100%;box-shadow:none;background:#f2efef;border:0;margin:0;padding:0;transition:none;display:none;position:static}.nav-item.is-expanded>.submenu{display:block}.submenu a{min-height:44px;padding:10px var(--gutter) 10px calc(var(--gutter) + 16px);overflow-wrap:anywhere;border:0}.submenu .submenu-toggle{min-height:44px;padding-left:calc(var(--gutter) + 16px);color:#333;border-top:1px solid #dcdadb;font-size:.9rem;font-weight:700}.submenu .submenu-toggle:is(:hover,:focus-visible,:active,[aria-expanded=true]),.submenu .nav-item:has([aria-current=page])>.submenu-toggle{background:#fff}.submenu.flyout a{padding-left:calc(var(--gutter) + 32px)}.caret{display:none}.nav .submenu-toggle .caret{flex:0 0 6px;margin:0 4px 4px 0;display:block;transform:rotate(45deg)}.nav .submenu-toggle[aria-expanded=true] .caret{margin-bottom:0;transform:rotate(225deg)}.nav-search{flex-basis:auto}.nav-search summary{min-height:44px;padding:12px var(--gutter);justify-content:flex-start}.nav-search-panel{width:100%;padding:12px var(--gutter);box-shadow:none;background:0 0;border:0;position:static}}@media (prefers-reduced-motion:reduce){.submenu{transition:none}}.site-footer{color:#2b2f56;background:#b6f0fb;margin-top:64px;font-size:1rem;line-height:1.65}.footer-columns{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(28px,5vw,84px);padding-block:60px 80px;display:grid}.footer-heading-slot{min-height:150px}.site-footer .footer-logo{width:220px;max-width:100%;height:auto;display:block}.site-footer h3{font-family:var(--font-sans);color:inherit;margin:0 0 14px;font-size:1.1rem;line-height:1.65}.site-footer .footer-about h3{font-size:1rem}.site-footer p{margin-bottom:20px}.site-footer a{color:inherit;overflow-wrap:anywhere;text-decoration:none}.site-footer a:hover{text-decoration:underline}.site-footer ul{margin:0;padding:0;list-style:none}.site-footer li{margin:0 0 14px}.footer-social{flex-wrap:wrap;gap:7px;margin-top:20px;display:flex}.footer-social a{color:#fff;place-items:center;width:32px;height:32px;display:grid}.footer-social svg,.footer-social img{width:22px;height:22px;display:block}.footer-social .facebook{background:#3b5998}.footer-social .instagram{background:#c13584}.footer-social .podcast{background:#8564a6}.footer-social .youtube{background:#cd201f}.footer-social .mail{background:#111}.footer-social a:hover{opacity:.8}.footer-search{width:100%;margin-top:46px;display:flex}.footer-search input{width:100%;min-width:0;font:inherit;color:inherit;background:0 0;border:1px solid #73b6c5;border-right:0;border-radius:0;padding:10px 12px}.footer-search input::placeholder{color:#52617d}.footer-search button{color:#fff;cursor:pointer;background:#111;border:0;border-radius:0;flex:0 0 48px;place-items:center;display:grid}.footer-search svg{width:18px;height:18px}.site-footer :is(a,input,button):focus-visible{outline-offset:3px;outline:3px solid #2b2f56}.footer-copyright{color:#fff;text-align:center;background:#2b2f56;padding-block:12px;font-size:.75rem}@media (width<=800px){.footer-columns{grid-template-columns:1fr;gap:38px;padding-block:40px}.footer-heading-slot{min-height:0;margin-bottom:24px}.footer-search{margin-top:28px}}.hero{background:radial-gradient(1200px 500px at 20% -10%,#6b4fa01a,#0000 60%),radial-gradient(900px 400px at 90% 0,#9ee9f28c,#0000 60%);padding:clamp(40px,8vw,96px) 0 clamp(32px,6vw,64px)}.hero.with-image{color:#fff;background-position:50%;background-size:cover;align-items:center;min-height:420px;display:flex;position:relative}.hero.slider{color:#fff;min-height:clamp(360px,48vw,620px);padding:0;position:relative;overflow:hidden}.hero.slider.banners{aspect-ratio:auto;background:var(--bg-soft);width:100%;max-width:none;height:clamp(300px,50vw,960px);min-height:0;max-height:none;margin-inline:auto}.hero.slider.banners .slide{display:block}.hero.slider.banners .slide:before{display:none}.hero.slider.banners .slide img{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.hero-cta{flex-wrap:wrap;justify-content:center;gap:12px;padding:20px 0 0;display:flex}@media (width<=640px){.hero.slider.banners{aspect-ratio:1440/660;height:auto}.hero-cta .btn{padding:8px 14px;font-size:.92rem}}.hero.slider .slide{opacity:0;pointer-events:none;background-position:50%;background-size:cover;align-items:center;transition:opacity .8s;display:flex;position:absolute;inset:0}.hero.slider .slide:before{content:"";background:linear-gradient(90deg,#2b2f3f80,#2b2f3f1a);position:absolute;inset:0}.hero.slider .slide.active{opacity:1;pointer-events:auto}.hero.slider .slide .container{position:relative}.hero.slider h1,.hero.slider .h1{font-family:var(--font-serif);color:#fff;text-shadow:0 1px 8px #00000059;margin:0 0 .4em;font-size:clamp(2rem,5vw,3rem);font-weight:600;line-height:1.3}.hero.slider .lead{color:#fff;text-shadow:0 1px 8px #00000059;max-width:42em;font-size:1.1rem}.hero.slider .btn{color:#fff;border-color:#fff}.hero.slider .btn.primary{background:var(--brand);border-color:var(--brand)}.slider-btn{z-index:2;width:44px;height:44px;color:var(--heading);cursor:pointer;background:#ffffffbf;border:0;border-radius:50%;font-size:1.6rem;line-height:1;position:absolute;top:50%;transform:translateY(-50%)}.slider-btn.prev{left:12px}.slider-btn.next{right:12px}.slider-btn:hover{background:#fff}.dots{z-index:2;justify-content:center;gap:8px;display:flex;position:absolute;bottom:14px;left:0;right:0}.dots button{cursor:pointer;background:#ffffff8c;border:0;border-radius:50%;width:10px;height:10px;padding:0}.dots button[aria-selected=true]{background:#fff;border-radius:6px;width:24px}@media (width<=640px){.slider-btn{display:none}}.hero.with-image:before{content:"";background:linear-gradient(90deg,#2b2f3f8c,#2b2f3f26);position:absolute;inset:0}.hero.with-image .container{position:relative}.hero.with-image h1,.hero.with-image .lead{color:#fff;text-shadow:0 1px 8px #00000059}.hero.with-image .btn{color:#fff;border-color:#fff}.hero.with-image .btn.primary{background:var(--brand);border-color:var(--brand)}.video{aspect-ratio:16/9;max-width:var(--measure);border-radius:var(--radius);margin:1em 0;position:relative;overflow:hidden}.video iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.section.home-body{padding-block:clamp(48px,5vw,80px)}.home-body .prose{grid-template-columns:minmax(var(--gutter), 1fr) minmax(0, 1120px) minmax(var(--gutter), 1fr);width:100%;max-width:none;display:grid}.home-body .prose>*{grid-column:2;min-width:0}.home-body .prose>.learning-axis-image{grid-column:1/-1}.home-body .prose>.home-section-divider{border:0;border-top:1px solid #e6e6e6;grid-column:1/-1;width:100%;margin:0 0 clamp(48px,5vw,80px)}.home-body .learning-axis-image img{border-radius:0;width:100%;height:auto;margin:0;display:block}.system-intro{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:clamp(28px,4vw,56px);margin-block:clamp(96px,12vw,192px);display:grid}.system-intro-media{aspect-ratio:16/9}.system-intro-media iframe{border:0;width:100%;height:100%;display:block}.system-intro .system-intro-copy h2{font-family:var(--font-sans);color:#292b50;margin:0 0 24px;font-size:clamp(1.7rem,2.5vw,2rem)}.home-section-title,.home-body .prose h2{text-align:center;font-family:var(--font-sans);color:var(--heading);margin:0 0 28px;font-size:clamp(1.35rem,2.3vw,1.7rem)}.home-section-title:after,.home-body .prose h2:after{content:"";background:#83e2f4;width:120px;height:2px;margin:18px auto 0;display:block}.home-body .system-intro-copy h2{text-align:left;margin-top:0}.home-body .system-intro-copy h2:after{width:53%;height:3px;margin:28px 0 0}.system-intro .system-intro-copy h3{font-family:var(--font-sans);color:#6d8fcd;margin:0 0 28px;font-size:clamp(1.25rem,2vw,1.5rem)}.system-intro-copy p{color:#626d88;line-height:1.8}.system-intro-more{color:#34415d;letter-spacing:.1em;background:#83e2f4;align-items:stretch;min-height:46px;font-size:.9rem;font-weight:700;text-decoration:none;display:inline-flex}.system-intro-more span:first-child{place-items:center;padding:10px 28px;display:grid}.system-intro-more span:last-child{border-left:1px solid #64becf;place-items:center;width:46px;font-size:1.5rem;display:grid}.system-intro-more:hover{color:#292b50;background:#a3ecf7}.system-intro-more:focus-visible{outline:3px solid var(--heading);outline-offset:4px}@media (width<=800px){.system-intro{grid-template-columns:1fr;gap:36px;margin-block:80px}}.podcast-grid{grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:32px;display:grid}.podcast-grid a{transform-origin:50%;transition:transform .22s,box-shadow .22s;display:block}.home-body .podcast-grid img{border-radius:0;width:100%;height:auto;margin:0;display:block}.podcast-grid a:is(:hover,:focus-visible,:active){transform:translateY(-6px)scale(1.025);box-shadow:0 12px 24px #2b2f3f33}.podcast-grid a:focus-visible{outline:3px solid var(--accent);outline-offset:4px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.podcast-grid a{transition:none}.podcast-grid a:is(:hover,:focus-visible,:active){transform:none}}.hero h1{margin-bottom:.4em;font-size:clamp(2rem,5vw,3rem)}.hero .lead{max-width:42em;color:var(--text);font-size:1.1rem}.hero .cta{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.btn{border:1px solid var(--brand);color:var(--brand-strong);background:0 0;border-radius:999px;padding:10px 20px;font-weight:600;text-decoration:none;display:inline-block}.btn.primary{background:var(--brand);color:#fff}.btn:hover{background:var(--brand-strong);color:#fff}.section{padding:40px 0 8px}.section-head{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:16px;display:flex}.section-head h2{margin:0}.section-head a{font-size:.92rem}.grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;display:grid}.card{background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;transition:transform .15s,box-shadow .15s;display:flex;overflow:hidden}.card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.card .thumb{aspect-ratio:16/10;background:var(--bg-soft);overflow:hidden}.card .thumb img{object-fit:cover;width:100%;height:100%;display:block}.card .body{flex-direction:column;gap:6px;padding:16px 18px 18px;display:flex}.card h3{margin:0;font-size:1.08rem}.card h3 a{color:var(--heading);text-decoration:none}.card h3 a:hover{color:var(--brand)}.card .meta{color:var(--text-muted);font-size:.82rem}.card .summary{color:var(--text);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:.93rem;display:-webkit-box;overflow:hidden}.event-card .when{color:var(--accent);align-items:center;gap:8px;font-size:.9rem;font-weight:600;display:inline-flex}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{background:var(--accent-soft);color:#1f6f6a;border-radius:999px;padding:2px 10px;font-size:.78rem;text-decoration:none}.chip.tag{background:var(--bg-soft);color:var(--text-muted)}.article-head{padding:40px 0 16px}.article-head .meta{color:var(--text-muted);flex-wrap:wrap;gap:8px 16px;font-size:.9rem;display:flex}.dream-article{max-width:760px}.dream-article .article-head{text-align:center}.dream-article .article-head .meta{justify-content:center}.dream-article .prose,.dream-article .article-foot{max-width:none}.dream-article .featured,.dream-article .prose img{margin-inline:auto}.dream-article .prose img{display:block}.featured{border-radius:var(--radius);margin:8px 0 24px;overflow:hidden}.featured img{width:100%;display:block}.prose{max-width:var(--measure);font-size:1.05rem}.prose>:first-child{margin-top:0}.prose h2{margin-top:1.8em}.prose h3{margin-top:1.4em}.prose img{border-radius:10px;margin:.6em 0}.prose blockquote{border-left:4px solid var(--accent);background:var(--accent-soft);color:var(--heading);border-radius:0 10px 10px 0;margin:1.2em 0;padding:.4em 1.2em}.prose table{border-collapse:collapse;width:100%;margin:1em 0;font-size:.95rem;display:block;overflow-x:auto}.prose th,.prose td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:8px 10px}.prose th{background:var(--bg-soft)}.prose hr{border:0;border-top:1px solid var(--line);margin:2em 0}.prose pre{background:var(--bg-soft);border-radius:10px;padding:12px 16px;font-size:.9rem;overflow-x:auto}.prose iframe{max-width:100%}.article-foot{max-width:var(--measure);border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:12px 24px;margin-top:32px;padding-top:20px;display:flex}.event-info{background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--radius);max-width:var(--measure);grid-template-columns:max-content 1fr;gap:8px 16px;margin:8px 0 24px;padding:18px 22px;font-size:.98rem;display:grid}.event-info dt{color:var(--text-muted)}.event-info dd{margin:0}.event-info dd a{word-break:break-all}.event-list h2{margin:32px 0 12px}.event-list .past .card{opacity:.85}.year-group{margin:12px 0}.year-group>summary{cursor:pointer;align-items:center;gap:8px;padding:8px 0;list-style:none;display:flex}.year-group>summary::-webkit-details-marker{display:none}.year-group>summary:before{content:"▸";color:var(--accent);transition:transform .15s}.year-group[open]>summary:before{transform:rotate(90deg)}.year-group>summary h3{margin:0}.year-group .grid{margin:8px 0 20px}.list-head{padding:40px 0 8px}.pagination{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin:40px 0 0;display:flex}.pagination a,.pagination span{border:1px solid var(--line);background:var(--bg-elev);border-radius:999px;padding:6px 14px;font-size:.92rem;text-decoration:none}.pagination span[aria-current]{background:var(--brand);color:#fff;border-color:var(--brand)}.pagination span.disabled{opacity:.4}.term-index{columns:2;column-gap:32px}@media (width<=640px){.term-index{columns:1}}.search-box{padding:40px 0}.search-box .pagefind-ui{--pagefind-ui-primary:var(--brand);--pagefind-ui-text:var(--text);--pagefind-ui-background:var(--bg-elev);--pagefind-ui-border:var(--line);--pagefind-ui-font:var(--font-sans)}.notfound{text-align:center;padding:80px 0}.back-to-top[data-astro-cid-vy5be4ad]{z-index:40;color:#fff;cursor:pointer;background:#333;border:0;border-radius:5px;place-items:center;width:48px;height:48px;transition:background-color .14s,transform .14s,box-shadow .14s;display:grid;position:fixed;bottom:20px;right:24px;box-shadow:0 2px 6px #0003}.back-to-top[data-astro-cid-vy5be4ad][hidden]{display:none}.back-to-top[data-astro-cid-vy5be4ad] svg[data-astro-cid-vy5be4ad]{width:22px;height:22px}.back-to-top[data-astro-cid-vy5be4ad]:is(:hover,:focus-visible){background:#af4e00;transform:translateY(-3px);box-shadow:0 6px 16px #0000004d}.back-to-top[data-astro-cid-vy5be4ad]:focus-visible{outline-offset:4px;outline:3px solid #37b8c8}.back-to-top[data-astro-cid-vy5be4ad]:active{background:#713200;transition-duration:0s;transform:translateY(1px)scale(.94);box-shadow:inset 0 0 0 2px #ffffffa6,inset 0 3px 6px #00000059}@media (width<=640px){.back-to-top[data-astro-cid-vy5be4ad]{bottom:16px;right:16px}}@media (prefers-reduced-motion:reduce){.back-to-top[data-astro-cid-vy5be4ad]{transition:none}.back-to-top[data-astro-cid-vy5be4ad]:is(:hover,:focus-visible,:active){transform:none}}.flora{--flora-size:80px;--flora-right:24px;--flora-bottom:84px;--flora-panel-bottom:176px;color:#2b2f56;font-family:Noto Sans TC,sans-serif}.flora *{box-sizing:border-box}.flora button{font:inherit;cursor:pointer}.flora button:disabled{cursor:wait;opacity:.55}.flora button:focus-visible,.flora textarea:focus-visible{outline-offset:3px;outline:3px solid #37b8c8}.flora-launcher{right:var(--flora-right);bottom:var(--flora-bottom);width:var(--flora-size);height:var(--flora-size);z-index:101;background:#fff;border:0;border-radius:50%;padding:0;position:fixed;box-shadow:0 4px 8px #0003}.flora-launcher img{width:100%;height:100%;animation:4s ease-in-out infinite flora-breathe;display:block}.flora-launcher:before{content:"";pointer-events:none;border:2px solid #70cfcf;border-radius:50%;animation:4s ease-in-out infinite flora-halo;position:absolute;inset:-4px}.flora-launcher-label{color:#2b2f56;white-space:nowrap;background:#fff;border:1px solid #c8e8e7;border-radius:20px;padding:7px 12px;font-size:14px;position:absolute;top:50%;right:calc(100% + 14px);transform:translateY(-50%);box-shadow:0 2px 8px #0001}.flora-launcher:is(:hover,:focus-visible) img,.flora-launcher:is(:hover,:focus-visible):before{animation-play-state:paused}.flora-launcher[aria-expanded=true] img{animation:none}.flora-launcher[aria-expanded=true]:before,.flora-launcher[aria-expanded=true] .flora-launcher-label{display:none}.flora-panel{right:var(--flora-right);bottom:var(--flora-panel-bottom);width:420px;max-width:calc(100% - 48px);height:640px;max-height:calc(100dvh - var(--flora-panel-bottom) - 16px);z-index:100;text-align:left;background:#f4faf9;border:1px solid #c6dfdf;border-radius:20px;flex-direction:column;display:flex;position:fixed;overflow:hidden;box-shadow:0 12px 45px #182d4933}.flora-panel[hidden]{display:none}.flora-panel[data-expanded=true]{width:640px;height:calc(100dvh - var(--flora-panel-bottom) - 16px)}.flora-header{background:linear-gradient(120deg,#d7f2f0,#e7e0f8);flex-shrink:0;align-items:center;gap:9px;padding:13px;display:flex}.flora-header img{flex-shrink:0;width:40px;height:40px}.flora-header h2{color:#2b2f56;border:0;margin:0;padding:0;font:700 18px/1.4 Noto Sans TC,sans-serif}.flora-header p{margin:2px 0 0;font-size:13px;line-height:1.5}.flora-actions{gap:3px;margin-left:auto;display:flex}.flora-actions button{color:#2b2f56;background:#ffffff80;border:0;border-radius:8px;width:34px;height:34px;font-size:25px;line-height:1}.flora-actions button:hover{background:#fff}.flora-toolbar{color:#647273;border-bottom:1px solid #dce9e7;justify-content:space-between;align-items:center;padding:6px 14px;font-size:13px;display:flex}.flora-toolbar button{color:#325c63;background:0 0;border:0;padding:5px;font-size:14px}.flora-messages{overscroll-behavior:contain;scroll-behavior:smooth;flex:1;min-height:0;padding:16px 14px 8px;overflow-y:auto}.flora-message{overflow-wrap:anywhere;background:#fff;border:1px solid #e0eae8;border-radius:14px;max-width:94%;margin:0 0 16px;padding:10px 12px;font-size:17px;line-height:1.8}.flora-message--user{background:#e0f3f0;border-color:#c5e6e1;margin-left:auto}.flora-speaker{color:#587779;margin-bottom:3px;font-size:13px;font-weight:700;display:block}.flora-message-text{white-space:pre-wrap}.flora-message-text a{color:#245f82;text-decoration:underline}.flora-message[data-incomplete=true]{border-style:dashed}.flora-suggestions{flex-wrap:wrap;gap:6px;padding:5px 14px 10px;display:flex}.flora-suggestions[hidden]{display:none}.flora-suggestions button{color:#3b656c;background:#fff;border:1px solid #c8e2df;border-radius:14px;padding:5px 9px;font-size:15px}.flora-form{background:#fff;border-top:1px solid #dce9e7;align-items:flex-end;gap:8px;margin:0;padding:10px 12px;display:flex}.flora-form textarea{resize:none;color:#273a44;background:#fff;border:1px solid #c8dcda;border-radius:10px;flex:1;min-width:0;padding:9px;font:400 17px/1.5 Noto Sans TC,sans-serif}.flora-form button{color:#fff;background:#38666f;border:0;border-radius:10px;padding:10px 12px;font-size:16px}.flora-status{color:#5a6c6c;background:#fff;min-height:18px;margin:0;padding:0 14px;font-size:14px;line-height:1.5}.flora-status[data-error=true]{color:#9b3829}.flora-note{color:#748180;background:#fff;margin:0;padding:4px 14px 9px;font-size:12px;line-height:1.5}.flora-sr-only{clip:rect(0,0,0,0);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}@keyframes flora-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}@keyframes flora-halo{0%,to{opacity:.25;transform:scale(1)}50%{opacity:.65;transform:scale(1.09)}}@media (width<=640px){.flora{--flora-size:72px;--flora-right:16px;--flora-bottom:80px;--flora-panel-bottom:164px}.flora-panel{max-width:calc(100% - 32px);height:512px}.flora-header{gap:7px;padding:10px}.flora-header p{font-size:12px}.flora-message{font-size:16px}}@media (prefers-reduced-motion:reduce){.flora-launcher img,.flora-launcher:before{animation:none}.flora-launcher:before{opacity:.35}.flora-messages{scroll-behavior:auto}}:root{--service-heading:#92b36a;--service-rule:#f7c331;--reveal-duration:1s;--reveal-distance:20px}.page-banner{width:100%;height:auto;display:block}.service-section.service-section--reading{color:#000;text-align:left;width:min(1440px,66%);font-size:18.667px;line-height:1.5}.service-section.service-section--reading :is(h1,h2){margin-bottom:48px;font-size:32px}.service-section.service-section--reading :is(h1,h2):after{width:400px;max-width:70%;height:1px;margin-top:24px}.service-section--reading p{margin:0 0 24px}.service-section--reading+.service-section--reading{margin-top:64px}.reading-intro{text-align:center;margin-bottom:56px}.poster-stack{gap:30px;display:grid}.poster-stack figure{margin:0}.poster-stack img{width:100%;height:auto;display:block}.service-content:has(>.story-section){padding:0 0 40px}.story-section{color:#333;width:min(1600px,82%);margin-inline:auto;font-size:16px;line-height:1.5}.story-introduction{text-align:justify;font-size:18.667px}.story-introduction p{margin:0 0 24px}.story-section>h2{text-align:center;color:#000;margin:24px 0;font:400 24px/1.5 Microsoft JhengHei,PingFang TC,sans-serif}.story-list{gap:32px;margin-bottom:48px;display:grid}.story-list-item h3{margin:0 0 16px;font:700 24px/1.3 Microsoft JhengHei,PingFang TC,sans-serif}.story-list-item p{margin:0}.story-list-item a{color:#2b2f56;text-decoration:none}.story-list-item a:hover{color:#bd8e62;text-decoration:underline}.story-list-item a:focus-visible{outline-offset:4px;outline:2px solid #2b2f56}.course-topic-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:34px 4%;display:grid}.course-topic{align-items:center;gap:20px;min-width:0;display:flex}.course-topic h3{color:#333;margin:0;font:400 18px/1.5 Microsoft JhengHei,PingFang TC,sans-serif}.course-topic-icon{color:#ff5151;border:1px solid #333;border-radius:50%;flex:0 0 44px;place-items:center;width:44px;height:44px;display:grid}.course-topic-icon svg{width:24px;height:24px}@media (width<=800px){.service-section.service-section--reading,.story-section{width:calc(100% - var(--gutter) * 2)}.service-section.service-section--reading,.story-introduction{font-size:16px}.service-section.service-section--reading :is(h1,h2){text-wrap:balance;margin-bottom:32px;font-size:26px}.service-section--reading+.service-section--reading{margin-top:40px}.reading-intro{margin-bottom:32px}.poster-stack{gap:20px}.story-section{padding-top:24px}.story-list-item h3{font-size:22px}.course-topic-grid{grid-template-columns:1fr;gap:24px}}.service-content:has(>.content-band){padding:0}.content-band{color:#2b2f56;padding:60px 0;font-size:16px;line-height:1.5}.content-band--blue{background:#dcedf7}.content-band-inner{width:74%;max-width:1480px;margin-inline:auto}.content-band-title{color:#2b2f56;text-align:center;text-wrap:balance;margin:0 0 50px;font:700 24px/1.5 Microsoft JhengHei,PingFang TC,sans-serif}.content-band-title:after{content:"";background:#85e1ef;width:200px;max-width:60%;height:2px;margin:24px auto 0;display:block}.content-band-title--plain{margin-bottom:24px}.content-band-title--plain:after{content:none}.content-band p{margin:0 0 20px}.content-band-inner>p+.content-band-title{margin-top:40px}.content-band-inner>:last-child{margin-bottom:0}.content-band-lead{text-align:center}.icon-feature-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:44px 4%;display:grid}.icon-feature{grid-column:span 2;min-width:0}.icon-feature-grid--five>:first-child{grid-column:2/span 2}.icon-feature-grid--five>:nth-child(2){grid-column:4/span 2}.icon-feature-grid--five>:nth-child(3){grid-column:1/span 2}.icon-feature img{width:50%;height:auto;margin:0 auto 28px;display:block}.icon-feature h3,.profile-copy h3{color:#2b2f56;margin:0 0 24px;font:700 17.6px/1.5 Microsoft JhengHei,PingFang TC,sans-serif}.icon-feature h3{text-align:center}.icon-feature p{color:#000;text-align:justify;margin-bottom:0}.profile-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:4%;display:grid}.profile-portrait{width:100%;height:auto;display:block}.profile-copy{color:#666;min-width:0}.profile-copy h3+p{color:#2b2f56}.profile-copy p{text-align:justify}.profile-copy>:last-child{margin-bottom:0}.media-video-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:4%;display:grid}.media-video{aspect-ratio:5/3;min-width:0}.media-video iframe{border:0;width:100%;height:100%;display:block}.content-band .media-caption{color:#000;margin:64px 0 24px}.media-poster{margin-bottom:60px;display:block}.media-poster img{width:100%;height:auto;display:block}.media-platforms{flex-wrap:wrap;justify-content:center;gap:6%;display:flex}.media-platform-link{color:#fff;font:700 14px/1.5 var(--font-sans);letter-spacing:1px;text-align:center;background:#2b2f56;border-radius:4px;padding:12px 28px;text-decoration:none;display:inline-block}.media-platform-link:hover{color:#fff;background:#414775}.media-platform-link:focus-visible,.media-poster:focus-visible{outline-offset:5px;outline:2px solid #2b2f56}@media (width<=800px){.content-band{padding-block:36px}.content-band-inner{width:calc(100% - var(--gutter) * 2)}.content-band-title{margin-bottom:32px;font-size:22px}.content-band-title--plain{margin-bottom:20px}.icon-feature-grid,.profile-grid,.media-video-grid{grid-template-columns:1fr;gap:36px}.icon-feature-grid--five>.icon-feature{grid-column:auto}.icon-feature img{width:150px;max-width:50%}.profile-portrait{max-width:480px;margin-inline:auto}.content-band .media-caption{margin-top:32px}.media-poster{margin-bottom:36px}.media-platforms{gap:20px}}.course-layout{grid-template-columns:minmax(220px,24%) minmax(0,1fr);align-items:start;gap:4.5%;width:min(1680px,90%);margin:48px auto 0;display:grid}.course-sidebar{font-family:var(--font-sans);color:#2b2f56;padding:0 12px}.course-directory>summary{display:none}.course-calendar-link{color:inherit;margin-bottom:36px;font-size:24px;font-weight:700;text-decoration:none;display:block}.course-directory-group{margin-bottom:48px}.course-directory-group h2{color:#292929;font:700 24px/1.5 var(--font-sans);margin:0 0 34px}.course-directory-group ul{margin:0;padding:0;list-style:none}.course-directory-group a{color:inherit;border-right:3px solid #0000;padding:10px 20px;font-size:18px;line-height:1.5;text-decoration:none;display:block}.course-directory-group a:is(:hover,:focus-visible,[aria-current=page]){background:#f8f8f8;border-right-color:#2b2f56}.course-sidebar a:focus-visible,.course-directory>summary:focus-visible{outline-offset:3px;outline:2px solid #2b2f56}.course-page{color:#111;letter-spacing:0;min-width:0;font-family:Microsoft JhengHei,PingFang TC,sans-serif;font-size:18px;line-height:1.6}.course-section{padding:42px 0 48px;overflow:clip}.course-section:first-child{padding-top:0}.course-section--cream{background:#fffaea}.course-section-inner{width:70%;margin-inline:auto}.course-section--intro .course-section-inner{width:60%}.course-section-inner>p{text-align:justify;margin:0 0 28px}.course-section-inner>:last-child{margin-bottom:0}.course-section :is(h1,h2,h3){color:var(--service-heading);text-align:center;margin:0 0 32px;font-family:inherit;line-height:1.5}.course-section h1{font-size:24px}.course-section :is(h2,h3){font-size:21px}.course-section :is(h1,h2,h3):after{content:"";background:var(--service-rule);width:180px;max-width:60%;height:2px;margin:22px auto 0;display:block}.course-section-inner>.course-emphasis{color:#bd8e62;text-align:center;margin:36px 0;font-size:19px;font-weight:700}.course-section-inner>.course-emphasis:last-child{margin-bottom:0}.course-figure{width:96%;margin:32px auto}.course-figure img{width:100%;height:auto;display:block}.course-section--wide .course-section-inner{width:80%}.course-section--broad .course-section-inner{width:90%}.course-section-inner>.course-align-center{text-align:center}.course-section-inner>.course-align-left{text-align:left}.course-section .course-heading-large{font-size:32px}.course-section .course-subheading{font-size:21px}.course-text-emphasis{color:#bd8e62;font-weight:700}.course-banner{width:100%;height:auto;display:block}.course-banner-frame{margin:0}.course-banner-frame img{width:100%;height:auto;display:block}.course-banner-frame+.course-section{padding-top:42px}.course-feature-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:4%;margin:36px 0;display:grid}.course-feature-grid .course-figure{width:100%;margin:0}.course-feature-grid img{width:100%;max-width:158px;height:auto;margin:auto;display:block}.course-checklist{margin:28px 0;padding:0;list-style:none}.course-checklist li{margin-block:16px;padding-left:30px;position:relative}.course-checklist li:before{content:"✓";text-align:center;color:#fff;background:#92b36a;border-radius:50%;width:22px;height:22px;font-size:14px;line-height:22px;position:absolute;top:3px;left:0}.course-table-scroll{margin:28px 0;overflow-x:auto}.course-table{border-collapse:collapse;width:100%;font-size:16px}.course-table :is(th,td){vertical-align:middle;text-align:center;border:1px solid #e5e5e5;padding:14px 16px}.course-table th{color:#2b2f56;background:#f5f7f2;font-weight:700}.course-table tbody tr:nth-child(2n){background:#fafafa}.course-video{aspect-ratio:16/9;margin:36px 0}.course-video iframe{border:0;width:100%;height:100%;display:block}.course-stories{margin:0;padding:0;list-style:none}.course-stories li{border-bottom:1px solid #e5e5e5;padding:16px 0}.course-stories a{color:#2b2f56}.course-registration{text-align:center;background:#dcedf7;padding:48px 24px}.course-registration h2{color:#2b2f56;font:700 24px/1.5 var(--font-sans);margin-top:0}.course-registration-link{color:#2b2f56;background:#85e1ef;padding:14px 26px;font-weight:700;text-decoration:none;display:inline-block}.course-registration-link:hover{background:#b6f0fb}.course-registration-link:focus-visible{outline-offset:4px;outline:2px solid #2b2f56}.course-registration-note{margin:16px 0 0;font-size:14px}.course-page .appointment-panel{width:76%}.course-page .appointment-band{padding-inline:0}body:has(.course-layout) .site-footer{margin-top:20px}@media (width<=1100px){.course-section-inner,.course-section--intro .course-section-inner,.course-page .appointment-panel{width:86%}}@media (width<=900px){.course-layout{width:calc(100% - var(--gutter) * 2);margin-top:24px;display:block}.course-sidebar{margin-bottom:32px;padding:0}.course-directory{border:1px solid #e2e2e2}.course-directory>summary{cursor:pointer;padding:16px 20px;font-weight:700;display:list-item}.course-directory nav{padding:16px 20px}.course-calendar-link,.course-directory-group h2{margin-bottom:20px;font-size:20px}.course-directory-group{margin-bottom:24px}.course-directory-group a,.course-page{font-size:16px}.course-section{padding-block:32px}.course-section-inner,.course-section--intro .course-section-inner,.course-section--wide .course-section-inner,.course-section--broad .course-section-inner{width:90%}.course-section .course-heading-large{font-size:26px}.course-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.course-table :is(th,td){padding:10px}.course-table{min-width:450px}.course-section-inner>.course-emphasis{font-size:17px}.course-figure{width:100%}.course-page .appointment-panel{width:90%}}.service-page{color:#666;letter-spacing:0;font-family:Microsoft JhengHei,PingFang TC,sans-serif;font-size:18px;line-height:1.5}.service-content{padding:40px 0 44px;overflow:clip}.service-section{text-align:center;width:min(1200px,64%);margin-inline:auto}.service-section+.service-section{margin-top:38px}.service-section h1,.service-section h2{color:var(--service-heading);text-align:center;margin:0 0 30px;font-family:inherit;font-weight:700;line-height:1.5}.service-section h1{font-size:24px}.service-section h2{font-size:32px}.service-section h1:after,.service-section h2:after{content:"";background:var(--service-rule);width:180px;max-width:50%;height:2px;margin:22px auto 0;display:block}.service-subtitle{color:#bd8e62;margin:0 0 36px;font-size:16px;font-weight:700}.service-section p:last-child{margin-bottom:0}.service-section--gallery{width:min(1200px,74%);margin-bottom:60px}.service-section--gallery h1{margin-bottom:40px;font-size:32px}.service-section--gallery h1:after{width:300px}.poster-gallery{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:4%;display:grid}.poster-gallery-item{min-width:0;margin:0;transition:transform .22s,box-shadow .22s;display:block}.poster-gallery-item img{width:100%;height:auto;display:block}.poster-gallery-item:is(:hover,:focus-visible){transform:translateY(-5px);box-shadow:0 12px 20px #00000029}.poster-gallery-item:focus-visible{outline-offset:6px;outline:2px solid #2b2f56}.service-checklist{text-align:left;margin:56px 0 0;padding:0;list-style:none}.service-checklist li{align-items:baseline;gap:10px;margin-block:10px;display:flex}.service-checklist li:before{content:"✓";color:#fff;background:#2b2f56;border-radius:50%;flex:0 0 24px;place-items:center;height:24px;font-size:15px;font-weight:700;display:inline-grid}.appointment-band{padding:52px var(--gutter);background:#dcedf7;overflow:clip}.appointment-panel{text-align:center;background:#fff;width:min(1480px,78%);margin:auto;padding:42px 28px}.appointment-panel h2{color:#f7662f;margin:0 0 24px;font-family:inherit;font-size:24px}.appointment-hours{color:#111;margin:0 0 20px}.appointment-hours span{color:#af4e00}.appointment-description{margin-bottom:64px;font-size:16px}.appointment-link{display:inline-block}.appointment-link img{width:230px;max-width:100%;height:auto;display:block}.appointment-link:focus-visible{outline-offset:6px;outline:2px solid #2b2f56}body:has(.service-page) .site-footer{margin-top:20px}.reveal-pending{opacity:0}.reveal-enter{animation:reveal-fade var(--reveal-duration) ease both}[data-reveal=left].reveal-enter{animation-name:reveal-left}[data-reveal=up].reveal-enter{animation-name:reveal-up}@keyframes reveal-fade{0%{opacity:0}to{opacity:1}}@keyframes reveal-left{0%{opacity:0;transform:translateX(calc(-1 * var(--reveal-distance)))}to{opacity:1;transform:translate(0)}}@keyframes reveal-up{0%{opacity:0;transform:translateY(var(--reveal-distance))}to{opacity:1;transform:translateY(0)}}@media (width<=1024px){.service-section{width:calc(100% - var(--gutter) * 2)}.appointment-panel{width:100%}}@media (width<=640px){.poster-gallery{grid-template-columns:1fr;gap:32px;max-width:420px;margin-inline:auto}.service-section--gallery{margin-bottom:20px}.service-section--gallery h1{font-size:28px}.service-page{font-size:16px;line-height:1.8}.service-content{padding-block:32px}.service-section h2{font-size:28px}.service-checklist{margin-top:32px}.appointment-band{padding-block:32px}.appointment-panel{padding:32px 20px}.appointment-description{margin-bottom:36px}}@media (prefers-reduced-motion:reduce){.poster-gallery-item{transition:none}.poster-gallery-item:is(:hover,:focus-visible){transform:none}.reveal-pending{opacity:1}.reveal-enter{animation:none}}@media print{.reveal-pending,.reveal-enter{opacity:1;animation:none;transform:none}}
