/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.table{display:table}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--paper:#f7f5ef;--ink:#18171b;--muted:#625f68;--violet:#6558e8;--violet-dark:#493cb9;--lavender:#dcd7ff;--yellow:#f2d462;--line:#18171b24}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font-family:Noto Sans TC,PingFang TC,Microsoft JhengHei,Arial,sans-serif}a{color:inherit;text-decoration:none}.site-header{z-index:50;background:0 0;border-bottom:1px solid #0000;justify-content:space-between;align-items:center;width:100%;height:84px;padding:0 max(24px,50vw - 620px);transition:height .25s,background .25s,border-color .25s,box-shadow .25s;display:flex;position:fixed;top:0;left:0}.site-header.is-scrolled{border-color:var(--line);background:#f7f5eff5;height:72px;box-shadow:0 12px 35px #18171b14}.brand{letter-spacing:-.02em;align-items:center;gap:12px;font-size:18px;font-weight:800;display:flex}.brand-mark{color:#fff;background:var(--violet);border-radius:50% 50% 45% 55%;place-items:center;width:38px;height:38px;font-size:13px;display:grid;transform:rotate(-5deg)}.brand-mark+span{transform:translateY(-1px)}nav{gap:36px;font-size:14px;font-weight:650;display:flex}nav a,.text-link,.header-link{transition:color .2s}nav a:hover,.text-link:hover,.header-link:hover{color:var(--violet)}.header-link{border:1px solid var(--ink);border-radius:999px;padding:11px 16px;font-size:13px;font-weight:750}.hero{grid-template-columns:1.05fr .95fr;align-items:center;gap:64px;width:min(1240px,100% - 48px);min-height:700px;margin:0 auto;padding:150px 0 92px;display:grid}.eyebrow{letter-spacing:.19em;color:var(--violet-dark);align-items:center;gap:10px;margin:0 0 24px;font-size:14pt;font-weight:850;display:flex}.eyebrow span{background:var(--violet);width:28px;height:2px}h1{letter-spacing:-.065em;margin:0;font-size:clamp(52px,5.4vw,82px);font-weight:850;line-height:1.05}h1 em{color:var(--violet);font-style:normal;position:relative}h1 em:after{content:"";background:var(--yellow);z-index:-1;border-radius:100%;height:9px;position:absolute;bottom:2px;left:1%;right:-2%;transform:rotate(-1deg)}.hero-lead{max-width:610px;color:var(--muted);margin:30px 0 0;font-size:14pt;line-height:1.9}.hero-actions{align-items:center;gap:30px;margin-top:36px;display:flex}.button{border-radius:10px;justify-content:center;align-items:center;gap:36px;min-height:56px;padding:0 24px;font-size:14pt;font-weight:800;transition:transform .2s,box-shadow .2s;display:inline-flex}.button-primary{background:var(--ink);color:#fff;box-shadow:7px 7px 0 var(--lavender)}.button-primary:hover{box-shadow:10px 10px 0 var(--lavender);transform:translate(-2px,-2px)}.text-link{border-bottom:1px solid var(--ink);padding-bottom:4px;font-size:14pt;font-weight:750}.trust-row{border-top:1px solid var(--line);gap:0;margin-top:56px;padding-top:24px;display:flex}.trust-row>span{border-right:1px solid var(--line);min-width:150px;margin-right:24px;padding-right:24px}.trust-row>span:last-child{border:0;margin:0;padding:0}.trust-row b,.trust-row small{display:block}.trust-row b{font-size:14pt}.trust-row small{color:var(--muted);margin-top:5px;font-size:14pt}.hero-visual{background:var(--violet);height:600px;box-shadow:18px 18px 0 var(--lavender);border-radius:44% 56% 50% 50%/50% 42% 58% 50%;position:relative;overflow:hidden}.hero-visual img{object-fit:cover;object-position:center top;width:100%;height:100%;display:block}.hero-photo-tag{color:var(--ink);background:#f7f5eff0;border-radius:999px;padding:11px 16px;font-size:13px;font-weight:850;position:absolute;bottom:28px;left:28px;box-shadow:0 12px 30px #18171b2e}.orbit{z-index:1;border:1px solid #ffffff61;border-radius:50%;position:absolute}.orbit-one{width:460px;height:460px;top:42px;left:52px}.orbit-two{width:330px;height:330px;top:107px;left:115px}.visual-card{z-index:2;background:#fff;position:absolute;box-shadow:0 22px 60px #231d5a40}.card-main{border-radius:24px;width:300px;padding:30px;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-2deg)}.card-main>p{letter-spacing:.17em;color:var(--violet-dark);margin:0 0 18px;font-size:14pt;font-weight:900}.card-main strong{letter-spacing:-.05em;font-size:30px;display:inline-block}.connector{color:var(--violet);padding:0 6px}.result-pill{background:var(--ink);color:#fff;text-align:center;border-radius:10px;margin-top:24px;padding:11px 13px;font-size:14pt;font-weight:800}.card-note{border-radius:15px;padding:15px 18px 15px 45px;font-size:14pt;line-height:1.5;top:74px;right:22px;transform:rotate(5deg)}.card-note p{margin:0}.spark{color:var(--violet);font-size:18px;position:absolute;top:17px;left:17px}.card-tools{border-radius:14px;gap:7px;padding:12px;display:grid;bottom:72px;left:24px;transform:rotate(-5deg)}.card-tools span{background:var(--lavender);border-radius:999px;padding:6px 10px;font-size:14pt;font-weight:850}.celia-signature{z-index:2;color:#fff;font-family:cursive;font-size:45px;position:absolute;bottom:36px;right:32px;transform:rotate(-8deg)}.course-section{background:var(--ink);color:#fff;padding:110px max(24px,50vw - 620px)}.section-heading{grid-template-columns:1fr 1fr;align-items:end;gap:80px;display:grid}.section-heading .eyebrow{color:var(--lavender)}.section-heading h2{letter-spacing:-.05em;margin:0;font-size:clamp(40px,4vw,62px);line-height:1.14}.section-heading>p{color:#bbb8c2;max-width:560px;margin:0 0 7px;font-size:14pt;line-height:1.85}.course-grid{grid-template-columns:repeat(3,1fr);gap:18px;margin-top:60px;display:grid}.course-card{border:1px solid #ffffff26;border-radius:20px;flex-direction:column;min-height:330px;padding:28px;transition:transform .25s,background .25s;display:flex}.course-card:hover{background:#ffffff0d;transform:translateY(-6px)}.course-number{color:var(--yellow);letter-spacing:.14em;font-size:14pt;font-weight:900}.course-card h3{letter-spacing:-.03em;margin:60px 0 15px;font-size:26px}.course-card p{color:#bdbac4;margin:0;font-size:14pt;line-height:1.8}.tag-row{flex-wrap:wrap;gap:7px;margin-top:auto;padding-top:28px;display:flex}.tag-row span{color:#dddbe2;border:1px solid #ffffff2e;border-radius:999px;padding:6px 10px;font-size:14pt}.teaching-section{grid-template-columns:.8fr 1.2fr;gap:100px;width:min(1240px,100% - 48px);margin:0 auto;padding:120px 0;display:grid;position:relative}.teaching-intro h2,.portfolio-copy h2,.contact-section h2{letter-spacing:-.055em;margin:0;font-size:clamp(42px,4.5vw,66px);line-height:1.13}.teaching-intro>p:last-child,.portfolio-copy>p{color:var(--muted);margin:28px 0 0;font-size:14pt;line-height:1.9}.learning-path{border-top:1px solid var(--line);gap:0;display:grid}.learning-path article{border-bottom:1px solid var(--line);grid-template-columns:66px 1fr;gap:18px;padding:24px 0;display:grid}.learning-path article>span{color:var(--violet);font-size:14pt;font-weight:900}.learning-path h3{margin:0 0 7px;font-size:19px}.learning-path p{color:var(--muted);margin:0;font-size:14pt;line-height:1.65}.teaching-photo{background:var(--ink);border-radius:30px;grid-column:1/-1;min-height:520px;margin:36px 0 0;position:relative;overflow:hidden}.teaching-photo img{object-fit:cover;object-position:center 42%;width:100%;height:100%;min-height:520px;display:block}.teaching-photo:after{content:"";background:linear-gradient(#0000,#18171be6);position:absolute;inset:55% 0 0}.teaching-photo figcaption{z-index:1;color:#fff;justify-content:space-between;align-items:end;gap:30px;display:flex;position:absolute;bottom:42px;left:6%;right:6%}.teaching-photo figcaption b{max-width:520px;font-size:clamp(30px,4vw,50px);line-height:1.2}.teaching-photo figcaption span{color:#e7e4ed;max-width:440px;font-size:14pt;line-height:1.7}.teaching-section blockquote{background:var(--lavender);border-radius:30px;grid-column:1/-1;min-height:300px;margin:40px 0 0;padding:64px 8%;position:relative;overflow:hidden}.teaching-section blockquote:after{content:"";border:56px solid #6558e838;border-radius:50%;width:280px;height:280px;position:absolute;top:-80px;right:-50px}.teaching-section blockquote>span{color:var(--violet);opacity:.35;font-family:Georgia,serif;font-size:115px;position:absolute;top:12px;left:5%}.teaching-section blockquote p{z-index:1;letter-spacing:-.04em;margin:0;font-size:clamp(30px,4vw,52px);font-weight:850;line-height:1.3;position:relative}.teaching-section blockquote cite{margin-top:24px;font-size:14pt;font-style:normal;font-weight:800;display:block}.experience-section{background:#fff;padding:110px max(24px,50vw - 620px)}.light-heading .eyebrow{color:var(--violet-dark)}.light-heading>p{color:var(--muted)}.experience-list{border-top:1px solid var(--ink);margin-top:58px}.experience-list article{border-bottom:1px solid var(--line);grid-template-columns:100px 1fr 2.3fr 40px;align-items:center;gap:28px;padding:28px 0;display:grid}.experience-year{color:var(--violet);font-size:14pt;font-weight:900}.experience-place{font-size:14pt;font-weight:750}.experience-list h3{letter-spacing:-.02em;margin:0 0 8px;font-size:14pt}.experience-list p{color:var(--muted);margin:0;font-size:14pt}.experience-arrow{border:1px solid var(--line);border-radius:50%;place-items:center;width:36px;height:36px;transition:background .2s,color .2s;display:grid}.experience-list article:hover .experience-arrow{background:var(--violet);color:#fff}.portfolio-section{grid-template-columns:.72fr 1.28fr;align-items:start;gap:80px;width:min(1240px,100% - 48px);margin:0 auto;padding:120px 0;display:grid}.portfolio-copy{position:sticky;top:36px}.portfolio-copy .text-link{margin-top:32px;display:inline-block}.portfolio-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.work-card{margin:0 0 22px}.work-card:nth-child(2n){transform:translateY(60px)}.work-visual{background:var(--lavender);border-radius:18px;height:420px;margin-bottom:18px;position:relative;overflow:hidden}.work-visual img{object-fit:cover;object-position:center top;width:100%;height:100%;transition:transform .35s;display:block}.work-card:hover .work-visual img{transform:scale(1.025)}.work-card h3{margin:0 0 6px;font-size:14pt}.work-card>div:last-child p{color:var(--muted);margin:0;font-size:14pt}.work-poster .work-visual{background:var(--violet);color:#fff;padding:32px}.work-poster .mini-kicker{letter-spacing:.2em;font-size:14pt;font-weight:900;display:block}.work-poster strong{letter-spacing:-.08em;margin-top:42px;font-size:64px;line-height:.84;display:block}.work-poster i{background:var(--yellow);color:var(--ink);border-radius:999px;padding:8px 12px;font-size:14pt;font-style:normal;font-weight:800;position:absolute;bottom:22px;right:20px}.work-carousel .work-visual{background:var(--yellow);justify-content:center;align-items:center;gap:8px;padding:28px;display:flex}.work-carousel .work-visual span{color:#fff;background:var(--ink);border-radius:8px;place-items:end center;width:29%;height:210px;padding-bottom:20px;font-size:14pt;font-weight:800;display:grid;box-shadow:7px 7px #fffc}.work-carousel .work-visual span:nth-child(2){background:var(--violet);transform:translateY(-15px)}.work-carousel .work-visual b{font-size:14pt;position:absolute;top:18px;right:20px}.work-slides .work-visual{background:var(--ink);color:#fff;justify-content:center;align-items:center;gap:10px;display:flex}.work-slides small{border:1px solid #ffffff47;border-radius:8px;padding:11px 10px;font-weight:850}.work-slides i{color:var(--yellow);font-style:normal}.work-brand .work-visual{background:var(--lavender);place-items:center;display:grid}.work-brand strong{letter-spacing:-.08em;color:#0000;-webkit-text-stroke:2px var(--violet);font-size:58px;transform:scaleY(1.45)}.work-brand em{color:var(--violet);font-family:cursive;font-size:42px;position:absolute;bottom:50px;right:45px;transform:rotate(-8deg)}.platform-section{background:var(--ink);color:#fff;padding:110px max(24px,50vw - 620px)}.platform-section .section-heading .eyebrow{color:var(--lavender)}.platform-grid{grid-template-columns:1fr 1fr;gap:14px;margin-top:58px;display:grid}.platform-card{border:1px solid #ffffff26;border-radius:18px;flex-direction:column;min-height:280px;padding:30px;transition:background .25s,color .25s,transform .25s;display:flex}.platform-card:hover{background:var(--lavender);color:var(--ink);transform:translateY(-4px)}.platform-key{color:var(--yellow);letter-spacing:.16em;font-size:14pt;font-weight:900}.platform-card:hover .platform-key{color:var(--violet-dark)}.platform-card h3{letter-spacing:-.03em;margin:42px 0 12px;font-size:24px}.platform-card p{color:#aaa7b0;max-width:520px;margin:0;font-size:14pt;line-height:1.75}.platform-card:hover p{color:#504d57}.platform-cta{margin-top:auto;padding-top:24px;font-size:14pt;font-weight:800}.platform-cta b{float:right;font-size:18px}.contact-section{background:var(--violet);color:#fff;grid-template-columns:1fr 1fr;align-items:end;gap:80px;padding:110px max(24px,50vw - 620px);display:grid}.contact-section .eyebrow{color:var(--yellow)}.contact-copy>p{color:#e1ddff;max-width:560px;margin:0 0 32px;font-size:14pt;line-height:1.85}.button-yellow{background:var(--yellow);color:var(--ink);box-shadow:7px 7px #18171bd9}.button-yellow:hover{transform:translate(-2px,-2px);box-shadow:10px 10px #18171bd9}.contact-copy small{color:#ded9ff;margin-top:24px;display:block}footer{background:var(--paper);border-top:1px solid var(--line);grid-template-columns:1fr 1fr 1fr;align-items:center;padding:36px max(24px,50vw - 620px);display:grid}footer p{text-align:center;color:var(--muted);font-size:12px}footer>div{justify-content:flex-end;gap:20px;font-size:12px;font-weight:750;display:flex}footer>div a:hover{color:var(--violet)}.back-to-top{z-index:45;background:var(--violet);color:#fff;cursor:pointer;border:1px solid #ffffff47;border-radius:50%;place-content:center;gap:0;width:62px;height:62px;padding:0;transition:transform .2s,background .2s,box-shadow .2s;display:grid;position:fixed;bottom:28px;right:28px;box-shadow:0 14px 32px #493cb947}.back-to-top span{font-size:22px;line-height:1}.back-to-top small{letter-spacing:.12em;margin-top:2px;font-size:9px;font-weight:850}.back-to-top:hover{background:var(--violet-dark);transform:translateY(-4px);box-shadow:0 18px 38px #493cb959}.back-to-top:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}@media (width<=900px){nav{display:none}.hero{grid-template-columns:1fr;gap:56px;padding-top:56px}.hero-visual{height:500px}.course-grid{grid-template-columns:1fr}.course-card{min-height:280px}.section-heading{grid-template-columns:1fr;gap:28px}.teaching-section,.portfolio-section{grid-template-columns:1fr;gap:55px}.teaching-photo figcaption{flex-direction:column;align-items:flex-start}.portfolio-copy{position:static}.experience-list article{grid-template-columns:70px 1fr 40px}.experience-place,.experience-list article>div:nth-child(3){grid-column:2}.experience-arrow{grid-area:1/3/3}.contact-section{grid-template-columns:1fr;gap:38px}}@media (width<=600px){.site-header{height:72px;padding:0 16px}.site-header.is-scrolled{height:64px}.header-link{display:none}.hero{width:calc(100% - 32px);padding:120px 0 72px}h1{font-size:48px}.hero-lead{font-size:14pt}.hero-actions{flex-direction:column;align-items:flex-start;gap:24px}.trust-row{grid-template-columns:1fr 1fr;gap:20px;display:grid}.trust-row>span{border:0;min-width:0}.trust-row>span:last-child{grid-column:1/-1}.hero-visual{height:510px;box-shadow:10px 10px 0 var(--lavender);border-radius:30px}.hero-photo-tag{text-align:center;bottom:16px;left:16px;right:16px}.card-main{width:255px;padding:24px}.card-main strong{font-size:24px}.card-note{top:35px;right:8px}.card-tools{bottom:45px;left:8px}.celia-signature{bottom:22px;right:18px}.course-section{padding-top:80px;padding-bottom:80px}.teaching-section,.portfolio-section{width:calc(100% - 32px);padding:80px 0}.teaching-section blockquote{padding:56px 28px}.teaching-photo,.teaching-photo img{min-height:580px}.teaching-photo figcaption{bottom:28px;left:24px;right:24px}.teaching-section blockquote p{font-size:30px}.experience-section,.platform-section,.contact-section{padding:80px 16px}.experience-list article{grid-template-columns:54px 1fr;gap:10px 15px}.experience-arrow{display:none}.portfolio-grid,.platform-grid{grid-template-columns:1fr}.work-card:nth-child(2n){transform:none}.work-visual{height:520px}.platform-card{min-height:250px}footer{text-align:center;grid-template-columns:1fr;gap:18px}footer p{margin:0}footer>div,.footer-brand{justify-content:center}.back-to-top{width:54px;height:54px;bottom:16px;right:16px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important}}
