#smooth-wrapper{position:fixed;height:100%;width:100%;inset:0;overflow-y:auto;overflow-x:hidden;touch-action:pan-y;-webkit-overflow-scrolling:touch;overscroll-behavior:none}#smooth-content{min-height:100vh;touch-action:pan-y;-webkit-overflow-scrolling:touch}html,body{margin:0;padding:0;width:100%;height:100%;font-family:var(--font-primary);color:var(--color-text-main);background-color:var(--color-gray-background);touch-action:pan-y;-webkit-overflow-scrolling:touch;overscroll-behavior:none}main{margin-top:0;min-height:100vh}body{position:relative;height:100%;-webkit-overflow-scrolling:touch;overscroll-behavior-y:none}@media (max-width: 720px){#smooth-wrapper{overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;touch-action:pan-y;overscroll-behavior:none}body{overflow:hidden;overscroll-behavior-y:none;-webkit-overflow-scrolling:touch}}#splash-screen{display:none}#fixed-projects-container{position:relative;width:100%;height:100dvh;overflow:hidden;background-color:var(--color-gray-background, #EAEAEA)}.fixed-wrapper{position:relative;width:100%;height:100dvh;display:flex;flex-direction:column;justify-content:center;align-items:center;background-color:var(--color-gray-background, #EAEAEA)}.slider-side-zone{position:absolute;top:0;bottom:0;width:50%;z-index:5;-webkit-tap-highlight-color:transparent}.slider-side-prev{left:0;cursor:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'><path d='M20 16H10M15 11l-5 5 5 5' fill='none' stroke='%231f1f1f' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/></svg>") 16 16,w-resize}.slider-side-next{right:0;cursor:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'><path d='M12 16h10M17 11l5 5-5 5' fill='none' stroke='%231f1f1f' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/></svg>") 16 16,e-resize}.project-image-container{position:relative;z-index:10;display:block;height:60vh;aspect-ratio:3 / 2;max-width:75vw;overflow:hidden;margin-bottom:0;background-color:var(--color-gray-background, #EAEAEA);user-select:none;-webkit-user-select:none;text-decoration:none;cursor:pointer}.project-slide,.project-img{cursor:pointer}.project-slide{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;justify-content:center;align-items:center;will-change:transform,opacity}.project-img{width:100%;height:100%;object-fit:cover;object-position:center;transition:filter .5s ease-out;pointer-events:none}.project-img.lqip-blur{filter:blur(20px);transform:scale(1.05)}.project-title-container{position:absolute;bottom:20px;left:0;width:100%;text-align:center;z-index:20;pointer-events:none}.project-title{font-family:var(--font-secondary);font-size:var(--font-size-16);font-weight:500;color:var(--color-text-main, #1f1f1f);text-decoration:underline;margin:0;padding:0;display:inline-block;cursor:pointer;pointer-events:auto}a.project-title{border-bottom:1px solid var(--color-text-main, #1f1f1f);text-decoration:none;padding-bottom:2px}a.project-title:hover{color:var(--color-gray);opacity:1}@media (min-width: 1921px){.project-image-container{height:min(60vh,900px);max-width:70vw}}@media (min-width: 768px) and (max-width: 1024px) and (orientation: portrait){.project-image-container{width:65%;height:50vh;max-width:75vw}}@media (max-width: 767px){.project-image-container{width:calc(100% - 30px);height:60vh;max-width:none}.project-title{font-size:var(--font-size-12)}}#footer.full-screen-footer{position:relative;height:100vh;width:100%;display:flex;align-items:center;justify-content:center;padding:20px;box-sizing:border-box;font-family:var(--font-secondary);background-color:var(--color-white)}.footer-grid-container{display:grid;grid-template-columns:1fr 1.5fr;gap:60px;width:70vw;max-width:1400px;align-items:stretch}.footer-image-container{width:100%;height:auto;overflow:hidden}.footer-image-container img{width:100%;height:auto;display:block;object-fit:cover}.footer-text-container{display:flex;flex-direction:column;justify-content:space-between;height:100%;font-family:var(--font-secondary)}.about-section h2,.contact-section-new h2{font-family:var(--font-secondary);font-size:var(--font-size-24);font-weight:600;margin-top:0;margin-bottom:0;text-align:left}.contact-section-new{margin:0;padding:0;text-align:left}.contact-section-new h2.cn{margin-left:0;padding-left:0}.about-section p{font-size:var(--font-size-18);font-weight:400;line-height:1.1}.about-section p:last-child{margin-bottom:0}.contact-columns{display:flex;gap:40px;margin-bottom:24px;margin-left:0;padding-left:0}.contact-column p{font-size:var(--font-size-18);line-height:1.1;margin:0;color:var(--color-text-main)}.contact-column p strong{font-weight:400}.footer-email-link{font-size:var(--font-size-18);margin:0;padding:0;text-align:left;line-height:1.1}.footer-email-link a{color:var(--color-text-main);text-decoration:underline;transition:color .3s ease}.footer-email-link a:hover{color:var(--color-gray)}.footer-copyright-bar{position:absolute;bottom:20px;left:50%;transform:translate(-50%);font-size:var(--font-size-14);color:var(--color-gray-medium);width:100%;text-align:center}@media (max-width: 768px){#footer.full-screen-footer{height:auto;padding:60px 15px}.footer-grid-container{grid-template-columns:1fr;gap:40px;width:100%;max-width:none}.footer-text-container{gap:30px}.about-section .line{width:100%;white-space:normal}.about-section .line>div{white-space:normal;word-wrap:break-word}.contact-columns{font-size:var(--font-size-16);flex-direction:column;gap:20px;margin-left:0;padding-left:0}.footer-email-link{margin-left:0;text-align:left}.footer-copyright-bar{left:20px;transform:none;text-align:left}}body:not(.lang-cn) span.cn,body:not(.lang-cn) .split-text.cn,body:not(.lang-cn) .contact-columns.cn{display:none!important}body.lang-cn span.en,body.lang-cn .split-text.en,body.lang-cn .contact-columns.en{display:none!important}span.en{display:inline-block}.split-text.en{display:block}.contact-columns.en{display:flex}body.lang-cn span.cn{display:inline-block}body.lang-cn .split-text.cn{display:block}body.lang-cn .contact-columns.cn{display:flex}@keyframes slideOutLeft{0%{transform:translate(0);opacity:1}to{transform:translate(-100px);opacity:0}}@keyframes slideInRight{0%{transform:translate(100px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideOutRight{0%{transform:translate(0);opacity:1}to{transform:translate(100px);opacity:0}}@keyframes slideInLeft{0%{transform:translate(-100px);opacity:0}to{transform:translate(0);opacity:1}}
