@import url("https://fonts.googleapis.com/css2?family=Chango&display=swap");@import url("https://fonts.googleapis.com/css2?family=Comfortaa:wght@300..700&display=swap");@import url("https://fonts.googleapis.com/css2?family=Elms+Sans:wght@551&display=swap");@import url("https://fonts.googleapis.com/css2?family=Long+Cang&display=swap");@import url("https://fonts.googleapis.com/css2?family=Mansalva&display=swap");@import url("https://fonts.googleapis.com/css2?family=Montserrat&display=swap");@import url("https://fonts.googleapis.com/css2?family=Nerko+One&display=swap");@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+HK:wght@500&display=swap");@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@600&display=swap");@import url("https://fonts.googleapis.com/css2?family=Nunito:ital,wght@0,500;1,500&display=swap");@import url("https://fonts.googleapis.com/css2?family=Permanent+Marker&display=swap");@import url("https://fonts.googleapis.com/css2?family=Quicksand:wght@300..700&display=swap");@import url("https://fonts.googleapis.com/css2?family=Roboto+Flex:opsz,wdth,wght@8..144,25..151,100..1000&display=swap");@import url("https://fonts.googleapis.com/css2?family=Schoolbell&display=swap");@import url("https://fonts.googleapis.com/css2?family=Walter+Turncoat&display=swap");.mansalva-regular{font-family:Mansalva,sans-serif;font-weight:400;font-style:normal}.schoolbell-regular{font-family:Schoolbell,cursive;font-weight:400;font-style:normal}.walter-turncoat-regular{font-family:Walter Turncoat,cursive;font-weight:400;font-style:normal}.noto-serif-hk{font-family:"Noto Serif HK",serif;font-optical-sizing:auto;font-weight:500;font-style:normal}.noto-serif-sc{font-family:"Noto Serif SC",serif;font-optical-sizing:auto;font-weight:600;font-style:normal}.long-cang-regular{font-family:Long Cang,cursive;font-weight:400;font-style:normal}.montserrat{font-family:Montserrat,sans-serif;font-optical-sizing:auto;font-weight:400;font-style:normal}.elms-sans{font-family:Elms Sans,sans-serif;font-optical-sizing:auto;font-weight:551;font-style:normal}.quicksand{font-family:Quicksand,sans-serif;font-optical-sizing:auto;font-weight:500;font-style:normal}.chango-regular{font-family:Chango,sans-serif;font-weight:400;font-style:normal}.permanent-marker-regular{font-family:Permanent Marker,cursive;font-weight:400;font-style:normal}.nerko-one-regular{font-family:Nerko One,cursive;font-weight:400;font-style:normal}.comfortaa{font-family:Comfortaa,sans-serif;font-optical-sizing:auto;font-weight:400;font-style:normal}.nunito{font-family:Nunito,sans-serif;font-optical-sizing:auto;font-weight:500;font-style:normal}.roboto-flex{font-family:Roboto Flex,sans-serif;font-optical-sizing:auto;font-weight:400;font-style:normal;font-variation-settings:"slnt" 0,"wdth" 150,"GRAD" 0,"XOPQ" 96,"XTRA" 468,"YOPQ" 79,"YTAS" 750,"YTDE" -203,"YTFI" 738,"YTLC" 514,"YTUC" 712}body,html{margin:0;padding:0;overflow-x:clip;background:#fff}button{background:none;border:none;padding:0}.page{min-height:100vh;position:relative}.header{position:fixed;top:0;left:0;right:0;z-index:5;height:80px;pointer-events:none;background:hsla(0,0%,100%,.95);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.header>*{pointer-events:auto}.sidebar{position:fixed;top:400px;left:0;bottom:0;width:300px;z-index:5;flex-direction:column;justify-content:center;padding-left:40px;pointer-events:none}.sidebar,.sidebar.desktop-only{display:flex}.sidebar.mobile-only{display:none}.sidebar>*{pointer-events:auto}.content{margin-left:180px;min-height:100vh;padding:120px 48px 48px;position:relative;z-index:1}.homeImage{position:fixed;top:180px;left:200px;z-index:5}.heroText{font-size:20px;color:#4e4e4edc;margin-bottom:16px;position:fixed;top:220px;left:850px}.bodyTextWrap{position:fixed;top:300px;left:800px;width:500px}.bodyParagraph{font-size:16px;line-height:1.8;text-align:justify;text-indent:2em;color:#686664;margin-bottom:20px;margin-top:0}.bodyParagraph:last-child{margin-bottom:0}@media (max-width:768px){.sidebar{display:none}.sidebar.desktop-only{display:none!important}.sidebar.mobile-only{display:flex}.content{margin-left:0;padding:100px 18px 80px}.homeImage{position:relative;top:auto;left:auto;display:flex;justify-content:center;padding-top:80px;padding-bottom:24px;z-index:0}.homeImage img{width:280px!important;height:auto!important;z-index:1}.heroText{text-align:center;font-size:18px;margin-bottom:20px;margin-top:0}.bodyTextWrap,.heroText{position:relative;top:auto;left:auto;padding:0 20px}.bodyTextWrap{width:auto;max-width:100%}.bodyParagraph{font-size:14px;line-height:26px;margin-bottom:16px}}.logo{position:fixed;top:30px;left:80px;z-index:5;text-decoration:none;color:#fbad7d;font-size:30px;letter-spacing:.05em;font-family:Chango,cursive;opacity:1;transition:.2s;cursor:pointer;pointer-events:auto}.logo:hover{opacity:.8}.tabs{display:flex;flex-direction:column;align-items:flex-start;gap:40px;font-family:Nunito,cursive}.tab{font-size:16px;font-weight:500;letter-spacing:0;color:#2d2a26;opacity:.8;cursor:pointer;transition:.2s;text-decoration:none;position:relative;background:none;border:none;padding:0}.tab.active{text-decoration:underline;text-underline-offset:6px}.tab.active,.tab:hover{opacity:1;color:#f5823b}.tab:hover{transform:scale(1.05)}.topRight{position:fixed;top:35px;right:55px;z-index:5;display:flex;align-items:center;pointer-events:auto}.timeline{margin-right:50px;color:#2d2a26;cursor:pointer;opacity:1;transition:.2s;font-family:Nerko One,cursive;font-size:20px}.timeline:hover{color:#f5823b}.timeline.active{text-decoration:underline;text-underline-offset:6px;color:#f5823b}.socials{display:flex;align-items:center;gap:14px}.socials a{color:#2d2a26;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:.2s}.socials a:hover{color:#f5823b;transform:scale(1.08)}.wechatBtn{background:none;border:none;padding:0;cursor:pointer;color:#2d2a26;transition:.2s;display:inline-flex;align-items:center;justify-content:center}.wechatBtn:hover{color:#f5823b;transform:scale(1.08)}.qrOverlay{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;background:#faf1e4d9;backdrop-filter:blur(4px)}.qrModal{background:#fff;padding:32px;border-radius:16px;box-shadow:0 8px 32px #fbe6c726;text-align:center}.qrModal img{border-radius:8px;width:700px;height:auto;max-width:80vw}body.modal-open .bottom-nav,body.modal-open .header,body.modal-open .logo,body.modal-open .mobile-menu-btn,body.modal-open .sidebar,body.modal-open .topRight{display:none;pointer-events:none;transition:opacity .3s ease}.imageModalOverlay{position:fixed;inset:0;z-index:100;flex-direction:column;background:#faf1e4d9;backdrop-filter:blur(8px)}.imageModalContent,.imageModalOverlay{display:flex;align-items:center;justify-content:center}.imageModalContent{position:relative;max-width:90vw;max-height:80vh;flex:1}.imageModalImage{max-height:100%;-o-object-fit:contain;object-fit:contain}.imageModalImage,.videoModalPlayer{max-width:100%;width:auto;height:auto;border-radius:8px}.videoModalPlayer{max-height:80vh}.worksGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px}.workCard{position:relative;overflow:hidden;border-radius:16px;background:#fff;border:2px solid #f5f0eb;transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px rgba(0,0,0,.04);cursor:pointer}.workCard:hover{border-color:#fbad7d;transform:translateY(-4px);box-shadow:0 8px 24px hsla(23,94%,74%,.15)}.cardImage{position:relative;aspect-ratio:4/3;overflow:hidden;background:#f5f0eb;border-radius:14px 14px 0 0}.cardImageImg{position:absolute;inset:0}.cardImage video,.cardImageImg{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.cardOverlay{position:absolute;inset:0;background:hsla(0,66%,66%,0);transition:all .5s;display:flex;align-items:flex-end;padding:20px}.workCard:hover .cardOverlay{background:#f0edea4d}.cardOverlayContent{opacity:0;transform:translateY(10px);transition:all .4s}.workCard:hover .cardOverlayContent{opacity:1;transform:translateY(0)}.cardOverlayDesc{color:#fff;font-size:14px;margin-top:4px;text-shadow:0 0 5px rgba(18,1,1,.6),0 0 10px rgba(19,0,0,.4),0 0 20px rgba(67,28,5,.3)}.cardInfo{padding:16px}.cardHeader{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.cardTitle{font-size:16px;font-weight:600;color:#2d2a26}.cardDate{font-size:12px;color:#a89f94;font-family:Nunito,sans-serif}.cardTags{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.cardTag{font-size:11px;color:#a89f94;background:#f5f0eb;padding:4px 12px;border-radius:20px;display:inline-block}.playButtonOverlay{position:absolute;inset:0;pointer-events:none}.playButton,.playButtonOverlay{display:flex;align-items:center;justify-content:center}.playButton{width:56px;height:56px;border-radius:50%;background:hsla(0,0%,100%,.8);backdrop-filter:blur(4px);transition:all .2s ease}.playButton:hover{transform:scale(1.1);background:hsla(0,0%,100%,.95)}.playIcon{width:0;height:0;border-top:8px solid transparent;border-left:14px solid #fbad7d;border-bottom:8px solid transparent;margin-left:4px}.textCard{background:#fff;border:2px solid #f5f0eb;border-radius:16px;padding:32px 28px;transition:all .3s ease;box-shadow:0 2px 8px rgba(0,0,0,.04);cursor:pointer;display:flex;flex-direction:column;gap:12px;min-height:240px}.textCard:hover{border-color:#fbad7d;box-shadow:0 8px 24px hsla(23,94%,74%,.15)}.textCardHeader{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.textCardTitle{font-family:"Noto Serif SC",serif;font-size:22px;font-weight:600;color:#2d2a26;line-height:1.4;flex:1}.textCardDate{font-size:14px;color:#d4ccc4;font-family:Nunito,sans-serif;flex-shrink:0}.textCardSubTitle{font-size:16px;color:#a89f94;line-height:1.5}.textCardFooter{margin-top:auto;padding-top:12px;border-top:1px solid #f5f0eb}.markdownBody{font-family:"Noto Serif SC",serif;font-size:16px;line-height:1.8;color:#2d2a26}.markdownBody h1{font-size:22px;font-weight:600;margin-bottom:20px;color:#191818}.markdownBody h2{font-size:18px;font-weight:600;margin-top:28px;margin-bottom:14px;color:#191818}.markdownBody p{margin-bottom:16px;text-indent:2em}.markdownBody blockquote{border-left:3px solid #fbad7d;padding-left:16px;margin:20px 0;color:#a89f94;font-style:italic}.markdownBody ul{margin:16px 0;padding-left:24px}.markdownBody li{margin-bottom:8px}.markdownBody strong{font-weight:600;color:#191818}.markdownBody em{font-style:italic}.textModalOverlay{position:fixed;inset:0;z-index:200;display:flex;align-items:flex-start;justify-content:center;padding:5vh 0;overflow-y:auto;background:#faf1e4d9;backdrop-filter:blur(8px)}.textModalContent{background:#fff;max-width:1000px;width:90vw;max-height:85vh;border-radius:16px;padding:40px;display:flex;flex-direction:column}.textModalTitle{font-family:"Noto Serif SC",serif;font-size:24px;font-weight:600;color:#191818;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #f5f0eb}.textModalScroll{overflow-y:auto;flex:1}.subNav{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:32px}.subNavItem{padding:8px 18px;font-family:Nunito,sans-serif;font-size:13px;color:#a89f94;transition:all .3s ease;border-radius:20px;border:1.5px solid transparent;text-decoration:none;cursor:pointer}.subNavItem:hover{color:#fbad7d;border-color:#f5f0eb}.subNavItem.active{color:#fbad7d;border-color:#fbad7d;background:hsla(23,94%,74%,.08)}.timelinePage{max-width:1000px;margin:0 auto}.timelineList{position:relative;padding-left:24px}.timelineList:before{content:"";position:absolute;left:6px;top:0;bottom:0;width:2px;background:#f5f0eb}.timelineItem{position:relative;padding-bottom:32px}.timelineItem:last-child{padding-bottom:0}.timelineDot{position:absolute;left:-22px;top:4px;width:12px;height:12px;border-radius:50%;background:#fbad7d;border:3px solid #fff;box-shadow:0 0 0 2px #f5f0eb}.timelineItemContent{background:#fff;border:2px solid #f5f0eb;border-radius:16px;padding:20px;transition:all .3s ease;cursor:pointer}.timelineItemContent:hover{border-color:#fbad7d;box-shadow:0 4px 16px hsla(23,94%,74%,.1)}.timelineDate{font-size:12px;color:#a89f94;margin-bottom:4px}.timelineTitle{font-family:"Noto Serif SC",serif;font-size:16px;margin-bottom:4px}.pageTitle,.timelineTitle{font-weight:700;color:#2d2a26}.pageTitle{font-family:Roboto Flex,sans-serif;font-size:32px;letter-spacing:-.02em;margin-bottom:8px}.pageSubtitle{font-size:14px;color:#a89f94;margin-bottom:32px}.desktop-only{display:flex}.mobile-only{display:none}@media (max-width:768px){.desktop-only{display:none!important}.mobile-only{display:flex}.logo{top:18px;left:18px;font-size:16px;letter-spacing:.2em}.mobile-menu-btn{position:fixed;top:18px;right:18px;z-index:60;background:none;border:none;padding:8px;cursor:pointer;color:#0d0d0dad;transition:.2s}.mobile-menu-btn:hover{color:#f5823b}.mobile-menu-overlay{position:fixed;inset:0;z-index:55;background:hsla(0,0%,100%,.7);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.mobile-menu-content{gap:40px;padding:40px 20px}.mobile-menu-content,.mobile-nav{display:flex;flex-direction:column;align-items:center}.mobile-nav{gap:24px}.mobile-nav-item{font-family:Nunito,cursive;font-size:18px;letter-spacing:.1em;color:#0d0d0dad;background:none;border:none;cursor:pointer;transition:.2s;padding:0}.mobile-nav-item.active{color:#f5823b;text-decoration:underline;text-underline-offset:6px}.mobile-nav-item:hover{color:#f5823b}.mobile-timeline{font-family:Nerko One,cursive;font-size:20px;color:#0d0d0dad;background:none;border:none;cursor:pointer;transition:.2s}.mobile-timeline.active{color:#f5823b;text-decoration:underline;text-underline-offset:6px}.mobile-socials{display:flex;gap:24px;align-items:center}.mobile-socials .wechatBtn,.mobile-socials a{color:#0d0d0dad;transition:.2s;background:none;border:none;padding:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.mobile-socials .wechatBtn:hover,.mobile-socials a:hover{color:#f5823b;transform:scale(1.1)}.bottom-nav{position:fixed;bottom:0;left:0;right:0;z-index:50;background:hsla(0,0%,100%,.95);backdrop-filter:blur(8px);border-top:1px solid hsla(23,94%,74%,.15);justify-content:space-around;height:56px;padding-bottom:env(safe-area-inset-bottom)}.bottom-nav,.bottom-nav-item{display:flex;align-items:center}.bottom-nav-item{flex:1;justify-content:center;height:100%;background:none;border:none;font-family:Nunito,cursive;font-size:12px;letter-spacing:.05em;color:#a89f94;cursor:pointer;transition:.2s;position:relative}.bottom-nav-item.active{color:#fbad7d;font-weight:600}.bottom-nav-item.active:after{content:"";position:absolute;bottom:8px;left:50%;transform:translateX(-50%);width:20px;height:2px;background:#fbad7d;border-radius:1px}.bottom-nav-item:hover{color:#f5823b}.worksGrid{grid-template-columns:1fr}.content{padding-top:120px}}:root{--color-bg:#fff;--color-text:#2d2a26;--color-muted:#a89f94;--color-accent:#fbad7d;--color-accent-hover:#f5823b;--color-border:#f5f0eb;--color-card:#fff}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{background-color:#fff;color:#2d2a26;font-family:Nunito,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:#fff}::-webkit-scrollbar-thumb{background:#f5f0eb;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#fbad7d}::-moz-selection{background:hsla(23,94%,74%,.3);color:#2d2a26}::selection{background:hsla(23,94%,74%,.3);color:#2d2a26}