.cards{column-count:4;column-gap:1.5rem;max-width:1200px;margin:0 auto;padding:2rem 2rem 4rem}.cards .card{width:100%;break-inside:avoid;margin-bottom:.6rem;animation:slide-fade-in both;animation-timeline:view();animation-range:entry 0% cover 45%}.cards .card-media{position:relative;width:100%;line-height:0;border-radius:10px;overflow:hidden;box-shadow:0 8px 20px #0002;background-image:linear-gradient(to bottom right,#f1f9fd,#ccdef8,#e5fafd,#f8ecfc,#fde6f3,#fdeaef);transition:transform .4s cubic-bezier(.23,1,.32,1),box-shadow .4s ease}.cards .card:hover .card-media{transform:scale(1.02);z-index:10;box-shadow:0 15px 35px #0004}.cards .card img{width:100%;height:auto;display:block}.info-card{position:absolute;inset:0;padding:20px;line-height:normal;background:#ffffffb3;backdrop-filter:blur(20px) saturate(100%);border:1px solid rgba(255,255,255,.3);color:#333;display:flex;flex-direction:column;justify-content:center;opacity:0;visibility:hidden;clip-path:inset(50% round 10px);transition:opacity .5s ease,visibility .5s,clip-path .5s cubic-bezier(.23,1,.32,1),backdrop-filter .5s ease;z-index:11;pointer-events:none;overflow-y:auto;min-height:0;overscroll-behavior:contain}html.dark .info-card{background:#14141ebf;color:#eee;border-color:#ffffff26}.cards .card:hover .info-card{opacity:1;visibility:visible;backdrop-filter:blur(10px) saturate(180%);clip-path:inset(0 round 10px);align-items:flex-start;word-wrap:break-word;overflow-wrap:break-word}.info-card h3{font-size:1.3em;margin-bottom:15px;color:#3a5cad;padding-bottom:8px;border-bottom:2px solid rgba(58,92,173,.3);display:flex;align-items:center}html.dark .info-card h3{color:#a9c1ff;border-bottom-color:#a9c1ff4d}.info-card h3 i{margin-right:10px;font-size:.9em}.info-card p{font-size:.9em;line-height:1.6;margin-bottom:10px;display:flex;align-items:flex-start;word-wrap:break-word;overflow-wrap:break-word;min-width:0}.info-card p i{margin-right:8px;margin-top:4px;width:16px;text-align:center;color:#555}.info-card p span{word-break:break-all}html.dark .info-card p i{color:#bbb}.info-card p strong{font-weight:700;margin-right:5px;flex-shrink:0}@media(max-width:1100px){.cards{column-count:3}}@media(max-width:850px){.cards{column-count:2}}@media(max-width:768px){.cards{column-count:initial;display:grid;gap:1rem;grid-auto-flow:dense;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));padding:1rem 1rem 3rem;perspective:1000px}.cards .card{position:relative;break-inside:auto;margin-bottom:0;border-radius:10px;box-shadow:0 8px 20px #0002;min-height:200px;background-image:linear-gradient(to bottom right,#f1f9fd,#ccdef8,#e5fafd,#f8ecfc,#fde6f3,#fdeaef);display:flex;justify-content:center;align-items:center;padding:0;transition:transform .4s cubic-bezier(.23,1,.32,1),filter .6s ease,opacity .6s ease,box-shadow .4s ease;z-index:1;animation-timeline:view(block);animation-range:entry 12% cover 40%}.cards .card-media{display:contents}.cards .card:hover{transform:scale(1.02) translateZ(10px) .5s ease;z-index:10;box-shadow:0 15px 35px #0004;filter:none;opacity:1}.cards .card:hover .card-media{transform:none;box-shadow:none}.cards .card img{width:100%;height:100%;object-fit:cover;border-radius:10px}.info-card{inset:0 auto auto 0;height:100%;width:100%;border-radius:10px;box-shadow:0 10px 35px #0003;clip-path:circle(0% at 50% 50%);padding:12px}.cards .card:hover .info-card{clip-path:circle(75% at 50% 50%);align-items:flex-start}.cards .card:nth-of-type(4n),.cards .card:nth-of-type(5n){grid-column:span 1}.info-card h3{font-size:1.05em;margin-bottom:8px;padding-bottom:4px}.info-card p{font-size:.8em;line-height:1.45;margin-bottom:6px}}@media(max-width:480px){.cards{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));padding:.5rem .5rem 2rem;gap:.5rem}.cards .card{animation-timeline:view(block);animation-range:entry 8% cover 35%}.info-card{padding:10px}.info-card h3{font-size:.95em;margin-bottom:6px;padding-bottom:3px}.info-card p{font-size:.75em;line-height:1.4;margin-bottom:4px}}@media(min-width:769px){.gallery-lightbox{position:fixed;inset:0;z-index:9999;background:#0009;backdrop-filter:blur(4px);opacity:0;transition:opacity .35s cubic-bezier(.16,1,.3,1);cursor:pointer}.gallery-lightbox.active{opacity:1}.gallery-lightbox-media{position:fixed;border-radius:10px;overflow:visible;perspective:800px;transition:left .55s cubic-bezier(.16,1,.3,1),top .55s cubic-bezier(.16,1,.3,1),width .55s cubic-bezier(.16,1,.3,1),height .55s cubic-bezier(.16,1,.3,1)}.gallery-lightbox-img-wrap{position:relative;width:100%;height:100%;overflow:hidden;border-radius:10px;transform-style:preserve-3d;backface-visibility:hidden;box-shadow:0 20px 60px #00000073,0 8px 24px #0000004d;transition:transform .15s ease-out}.gallery-lightbox-img-wrap:after{content:"";position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(to right,#fff0,#ffffff1f 40%,#ffffff4d,#ffffff1f 60%,#fff0);transform:skew(-20deg);pointer-events:none;z-index:2}.gallery-lightbox.active .gallery-lightbox-img-wrap:after{animation:gallery-sheen-sweep .75s .5s ease-out forwards}@keyframes gallery-sheen-sweep{0%{left:-100%}to{left:150%}}.gallery-lightbox-img-wrap img{width:100%;height:100%;object-fit:cover;display:block}}.about{width:100%;min-height:100vh;display:flex;justify-content:center;align-items:center}#main{height:100vh;width:100%;display:flex;justify-content:center;align-items:center;padding:20px;box-sizing:border-box}button{font-family:AlimamaShuHeiTi-Bold,sans-serif}#click-section{width:25%;height:100%;padding:20px 0;position:relative;display:flex;align-items:center}#drawerboxes{margin-left:10%;width:100%;height:80%;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-evenly}#drawerboxes:before{content:"";width:8px;height:94%;position:absolute;left:-10px;top:3%;z-index:120;background:linear-gradient(to bottom,#afbeff4d,#afbeffcc,#afbeff4d)}.drawerbox{height:calc(100% / 4.5);width:70%;position:relative;z-index:100;transform:translate(-70%);transition:transform .5s ease-in-out;margin:5px 0;border-radius:8px}.drawerbox.active{transform:translate(0)}.drawer-btn{width:100%;height:100%;font-weight:900;font-size:clamp(16px,2vw,30px);background:#bfcafa;border:none;border-radius:8px;transition:all .5s ease-in-out;color:transparent;position:relative;overflow:hidden;box-shadow:0 4px 15px #9da6ce4d}html.dark .drawer-btn{background:linear-gradient(to bottom,#1e235099,#1e23504d,#1e235033);box-shadow:0 0 8px #afbeff1a}.drawer-btn.active{background-size:cover;background-position:center;color:#fff;box-shadow:0 6px 20px #cad0e066}.drawer-btn:hover{cursor:pointer;transform:translate(5px);box-shadow:5px 5px 10px #9da6ce66}.drawer-btn.active:hover{box-shadow:5px 6px 10px #cad0e080}#slide-section{position:relative;height:100%;width:58%;display:flex;justify-content:center;padding:40px;background:linear-gradient(to right bottom,#fff9,#ffffff4d,#fff3);backdrop-filter:blur(11px);border-radius:15px;box-shadow:0 8px 32px #1f26875e;border:1px solid rgba(255,255,255,.18);user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}html.dark #slide-section{background:linear-gradient(to right bottom,#1e235099,#1e23504d,#1e235033);border-color:#ffffff1a}#slide-bar{position:absolute;top:10%;left:40px;height:80%;width:2px;background-color:#dfdfdf80;border-radius:1px}html.dark #slide-bar{background-color:#fff3}#bar{position:absolute;height:25%;width:6px;top:0;left:-2px;background:linear-gradient(to bottom,#afbeff,#4664b4);border-radius:3px;transition:transform .5s ease-in-out;box-shadow:0 2px 10px #afbeff80}html.dark #bar{background:linear-gradient(to bottom,#a9c1ff,#6482dc);box-shadow:0 2px 10px #a9c1ff66}#card-section{height:100%;width:calc(100% - 60px);overflow:hidden;margin-left:60px}.card{display:flex;flex-direction:column;height:100%;width:100%;padding:5% 0;color:#fff;transition:transform .5s ease-in-out;justify-content:space-between}.card-small-title{font-size:clamp(16px,2vw,30px);font-weight:600;padding-bottom:10px;color:#4664b4;text-transform:uppercase;letter-spacing:2px}.card-title{font-size:clamp(24px,4.5vw,56px);font-weight:700;padding-bottom:20px;color:#4664b4;line-height:1.2}.card-content{font-size:clamp(14px,1.5vw,24px);font-weight:400;color:#5e7bff;margin-bottom:30px;line-height:1.6;flex:1}.card-img{width:100%;height:330px;overflow:hidden;border-radius:12px;box-shadow:0 8px 32px #0000001a}.card-img img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.card-img:hover img{transform:scale(1.05)}#page-about .card-title a{color:inherit;text-decoration:none}@media(max-width:1024px){#main{flex-direction:column;height:auto;min-height:100vh}#click-section{width:100%;height:300px;margin-bottom:20px}#slide-section{width:100%;height:600px}#drawerboxes{flex-direction:row;height:100%;margin-left:0;justify-content:space-around;align-items:center}.drawerbox{width:calc(100% / 4.5);height:70%;transform:translateY(70%)}.drawerbox.active{transform:translateY(0)}}@media(max-width:768px){#main{padding:10px;padding-top:8vh;flex-direction:column;justify-content:flex-start;align-items:stretch}#click-section{display:none}#slide-section{width:100%;height:60vh;padding:20px;touch-action:pan-y}#page-about .card{justify-content:flex-start;gap:6px;padding:4% 0}#page-about .card-content{flex:0 1 auto;margin-bottom:12px}.card-img{height:180px;flex-shrink:0}}@media(max-width:480px){#main{padding-top:6vh}#slide-section{padding:14px;height:58vh}.card-small-title{font-size:14px}.card-title{font-size:22px;padding-bottom:14px}.card-content{font-size:14px;margin-bottom:20px}.card-img{height:160px}}.timeline-shell{width:80%;max-width:2100px;position:relative;padding:80px 0;transition:.3s ease 0s;background-size:cover;border-radius:24px;box-shadow:0 25px 50px #0006,0 15px 25px #00000040,0 5px 15px #00000026,inset 0 4px 8px #ffffff26,inset 0 -4px 8px #0000001f,0 0 0 1px #ffffff1a,0 0 0 3px #ffffff0d,0 0 0 5px #ffffff05;margin:20px auto;overflow:hidden;border:3px solid transparent;background-clip:padding-box;background:linear-gradient(#0000,#0000) padding-box,linear-gradient(135deg,#ffffff4d,#ffffff1a,#fff3) border-box;background-attachment:fixed;background-size:86% 100%;background-position:center;background-repeat:no-repeat;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;pointer-events:none}.timeline-shell:before{position:absolute;left:0;top:0;width:100%;height:100%;background:#636363b3;content:"";z-index:1;border-radius:22px;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}.timeline-shell:after{content:"";position:absolute;inset:-8px;background:linear-gradient(135deg,#ffffff26,#ffffff05,#ffffff14,#ffffff03);border-radius:33px;z-index:-1;filter:blur(2px);box-shadow:0 0 20px #ffffff1a,inset 0 2px 4px #ffffff0d}.timeline-header{width:100%;text-align:center;margin-bottom:40px;position:relative;z-index:2}.timeline-title{color:#fff;font-size:clamp(28px,3.5vw,40px);font-weight:400;margin:0;text-shadow:0 3px 6px rgba(0,0,0,.5)}.timeline-subtitle{color:#fff9;font-size:clamp(12px,1vw,14px);letter-spacing:2px;margin:8px 0 0;font-weight:400;text-shadow:0 2px 4px rgba(0,0,0,.3)}.timeline{display:flex;margin:0 auto;flex-direction:column;max-width:1100px;position:relative;z-index:2;height:600px;overflow-y:auto;overflow-x:hidden;padding:0 40px 120px;pointer-events:auto;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.timeline::-webkit-scrollbar{display:none}.timeline::-webkit-scrollbar{width:6px}.timeline::-webkit-scrollbar-track{background:#ffffff1a;border-radius:3px}.timeline::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:3px}.timeline::-webkit-scrollbar-thumb:hover{background:#ffffff80}.timeline:before{position:absolute;left:50%;width:3px;height:calc(100% + 80px);margin-left:-1.5px;content:"";background:linear-gradient(to bottom,#ffffff1a);box-shadow:inset 0 0 3px #ffffff26;border-radius:2px;top:0;z-index:1}.timeline-pointer{position:absolute;left:50%;width:6px;height:6px;background:#ffffffe6;border-radius:50%;transform:translate(-50%);z-index:3;box-shadow:0 0 0 2px #fff3,0 0 0 4px #ffffff1a,0 2px 6px #0000004d;transition:all .6s cubic-bezier(.25,.46,.45,.94);opacity:0}.timeline-pointer.active{opacity:1;animation:pointerPulse 2s infinite}.timeline-pointer:before{content:"";position:absolute;top:50%;left:50%;width:2px;height:2px;background:linear-gradient(135deg,#fffc,#c8c8ffe6);border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 1px 2px #0006}@keyframes pointerPulse{0%,to{box-shadow:0 0 0 2px #fff3,0 0 0 4px #ffffff1a,0 2px 6px #0000004d;transform:translate(-50%) scale(1)}50%{box-shadow:0 0 0 3px #ffffff4d,0 0 0 6px #ffffff26,0 3px 8px #0006;transform:translate(-50%) scale(1.05)}}.timeline-item{padding:30px 0;opacity:.4;filter:blur(1px);transition:all .6s ease;box-sizing:border-box;width:calc(50% - 30px);display:flex;position:relative;transform:translateY(-30px);user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.timeline-item:nth-child(odd){align-self:flex-start}.timeline-item:nth-child(2n){align-self:flex-end}.timeline-item:before{content:attr(data-text);width:98%;position:absolute;color:#fff9;font-size:clamp(10px,.8vw,12px);top:50%;transform:translateY(-50%);padding-left:10px;opacity:0;right:calc(-100% - 30px);font-weight:700;letter-spacing:2px;text-shadow:0 1px 3px rgba(0,0,0,.5);transition:all .4s ease}.timeline-item:nth-child(2n):before{right:auto;text-align:right;left:calc(-100% - 31px);padding-left:0;border-left:none;padding-right:10px}.timeline-item--active{opacity:1;transform:translateY(0);filter:blur(0px)}.timeline-item--active:before{top:50%;transform:translateY(-50%);transition:all .4s ease .2s;opacity:1}.timeline-content{width:100%;background:#ffffff14;border-radius:15px;padding:20px;backdrop-filter:blur(15px);box-shadow:0 10px 30px #0003,inset 0 1px 3px #ffffff1a,0 0 0 1px #ffffff14;transition:all .4s ease;border:1px solid rgba(255,255,255,.1);user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.timeline-item--active .timeline-content{background:#ffffff1f;box-shadow:0 15px 35px #00000040,inset 0 2px 5px #ffffff26,0 0 0 2px #ffffff1f;transform:scale(1.02);border:1px solid rgba(255,255,255,.15)}.timeline-content-title{font-weight:400;font-size:clamp(24px,3vw,36px);margin:0 0 10px;transition:.4s;padding:0 5px;box-sizing:border-box;color:#fff;text-shadow:0 3px 6px rgba(0,0,0,.5);user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.timeline-content h3{font-size:clamp(16px,2vw,20px)!important;margin:8px 0!important;padding:0 5px!important;user-select:none!important;-webkit-user-select:none!important;-moz-user-select:none!important;-ms-user-select:none!important}.timeline-content-desc{margin:8px 0 0;font-size:clamp(12px,1vw,14px);box-sizing:border-box;color:#fffc;line-height:1.5;padding:0 5px;text-shadow:0 1px 3px rgba(0,0,0,.3);user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.timeline-img{max-width:100%;height:auto;max-height:150px;object-fit:cover;box-shadow:0 8px 20px #0006,0 3px 8px #0003;border-radius:10px;transition:all .4s ease;margin-bottom:12px;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-khtml-user-drag:none;-moz-user-drag:none;-o-user-drag:none;-webkit-user-drag:none}.timeline-item--active .timeline-img{box-shadow:0 12px 25px #00000080,0 5px 12px #0000004d,0 0 0 2px #ffffff1a;transform:translateY(-2px)}.timeline-scroll-indicator{position:absolute;right:15px;top:50%;transform:translateY(-50%);z-index:10;display:flex;flex-direction:column;align-items:center;gap:8px}.scroll-indicator-track{width:3px;height:120px;background:#fff3;border-radius:2px;position:relative;overflow:hidden}.scroll-indicator-thumb{width:100%;height:15px;background:#fff9;border-radius:2px;transition:transform .3s ease;box-shadow:0 2px 4px #0000004d}.scroll-indicator-text{color:#fffc;font-size:10px;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.5);white-space:nowrap}@media only screen and (max-width:1024px){.timeline-shell{width:85%;margin:15px auto;min-height:70vh;padding:40px 0}.timeline{max-width:600px;padding:0 20px 80px;height:350px}.timeline-pointer{width:8px;height:8px}.timeline-pointer:before{width:3px;height:3px}}@media only screen and (max-width:900px){.timeline-shell{width:100%;max-width:100%;margin:0;border-radius:18px;height:clamp(620px,82dvh,760px);min-height:unset;padding:14px 0 10px;display:grid;grid-template-rows:auto 1fr;background-size:cover;background-position:center;overflow:clip;isolation:isolate}.timeline-shell:before{inset:0;border-radius:inherit}.timeline-shell:after{display:none}.timeline{padding:8px 12px 56px;height:100%;max-width:100%;overscroll-behavior:contain;gap:12px}.timeline-item{align-self:baseline!important;width:100%;padding:12px 0 12px 42px;transform:none}.timeline-item:before{display:none}.timeline:before{left:20px;width:2px}.timeline-content{padding:12px;border-radius:12px}.timeline-item--active .timeline-content,.timeline-item--active{transform:none}.timeline-img{width:100%;aspect-ratio:16 / 9;height:auto;max-height:none;object-fit:cover;object-position:center;border-radius:10px}.timeline-scroll-indicator{display:none}.timeline-pointer{left:18px;width:6px;height:6px;transform:translate(-50%)}.timeline-pointer:before{width:2px;height:2px}}@media only screen and (max-width:480px){.timeline-shell{height:clamp(560px,80dvh,700px);border-radius:14px;padding-top:12px}.timeline-header{margin-bottom:18px}.timeline-title{font-size:clamp(22px,7vw,28px)}.timeline-subtitle{font-size:11px;letter-spacing:1px}.timeline{padding:6px 10px 48px}.timeline-item{padding-left:36px}.timeline:before,.timeline-pointer{left:14px}}@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media(prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}[data-astro-transition-scope]{animation:none!important}}
