@import"https://fonts.googleapis.com/css2?family=Space+Mono:ital,wght@0,400;0,700;1,400;1,700&display=swap";@import"https://fonts.googleapis.com/css2?family=Noto+Serif+TC:wght@400;500;600;700&display=swap";.header{background-color:#fffef8;border-bottom:none;padding:1.7vw 0;position:fixed;top:0;left:0;width:100%;z-index:100}.header.scrolled{background-color:#fffef8}.header .container{display:flex;align-items:stretch;max-width:none;margin:0;padding:0 3vw 0 0;transition:padding-left .3s cubic-bezier(.4,0,.2,1);position:relative}.logo{margin-right:3vw;margin-left:3.5vw;display:flex;align-items:center}.logo a{display:block;line-height:0;padding:0;margin:0}.logo-image{height:5vw;width:auto;display:block}.nav{display:flex;flex-direction:row;gap:5vw;flex:1;align-items:center}.nav .nav-item{color:#000;font-weight:500;font-size:2.2vw;transition:color .3s;cursor:pointer;padding:0 .1vw;text-decoration:none}.nav .nav-item:hover{color:#333}@media (min-width: 769px){.nav{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);flex:0}}@media (max-width: 1700px) and (min-width: 769px){.nav .nav-item{font-size:1.8vw}}@media (max-width: 768px){.header .container{flex-wrap:wrap;gap:1.5vw}.nav{order:3;width:100%;justify-content:center;align-items:center}.logo-image{height:7vw}.nav .nav-item{font-size:4.5vw}}.loading-page{position:fixed;top:0;left:0;right:0;bottom:0;width:100vw;height:100vh;height:100dvh;background-color:#fffef8;z-index:9999;transition:opacity .8s ease-out;overflow:hidden;touch-action:none;-webkit-user-select:none;user-select:none;transform:translateZ(0);-webkit-transform:translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden}.loading-page.fade-out{opacity:0;pointer-events:none}.loading-content{width:100%;height:100%;position:relative}.loading-title-section{background-color:#fffef8;padding:0;display:flex;justify-content:flex-start;align-items:center;width:76.3%;position:fixed;left:3.5vw;top:50%;transform:translateY(-50%);transition:top 1.2s cubic-bezier(.25,.1,.25,1),transform 1.2s cubic-bezier(.25,.1,.25,1);will-change:transform,top;-webkit-transform:translateY(-50%) translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden}.loading-title{font-size:11.5vw;font-weight:400;color:#1a1a1a;letter-spacing:-.01em;margin:0;line-height:.9;white-space:nowrap;transform:scaleY(1.2) translateZ(0);-webkit-transform:scaleY(1.2) translateZ(0);position:relative;overflow:visible;backface-visibility:hidden;-webkit-backface-visibility:hidden}.loading-title:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#fffef8;animation:revealText 1.8s cubic-bezier(.65,0,.35,1) forwards;z-index:1;will-change:transform;transform:translateZ(0);-webkit-transform:translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden}.loading-title-section.move-to-navbar{top:8vw;transform:translateY(0) translateZ(0);-webkit-transform:translateY(0) translateZ(0)}@keyframes revealText{0%{transform:translate(0) translateZ(0)}to{transform:translate(100%) translateZ(0)}}@media (max-width: 768px){.loading-title-section.move-to-navbar{top:12vw;transform:translateY(0) translateZ(0);-webkit-transform:translateY(0) translateZ(0)}}@media (max-width: 480px){.loading-title-section.move-to-navbar{top:12vw;transform:translateY(0) translateZ(0);-webkit-transform:translateY(0) translateZ(0)}}.gallery-scroll-container{display:flex;flex-direction:column;min-height:100vh;background-color:#fffef8;padding:0;position:relative;z-index:60;padding-top:8vw;-webkit-overflow-scrolling:touch;transform:translateZ(0);will-change:transform;-ms-overflow-style:none;scrollbar-width:none;contain:layout style}.gallery-scroll-container::-webkit-scrollbar{display:none;width:0;height:0}.gallery-hero-section{width:100%;display:flex;flex-direction:column;min-height:100vh;gap:0;box-sizing:border-box;flex-shrink:0;transform:translateZ(0);-webkit-transform:translateZ(0);backface-visibility:hidden;contain:layout style}.gallery-couplet-section{display:flex;min-height:100vh;background-color:#fffef8;position:relative;transform:translateZ(0);-webkit-transform:translateZ(0);backface-visibility:hidden;contain:layout style}.gallery-sitemap{width:100%;background-color:#fffef8;padding:40px 0 30px;border-top:1px solid #e0e0e0;margin-top:2rem;flex-shrink:0}.gallery-sitemap .footer-content{display:flex;justify-content:space-between;align-items:flex-start;gap:40px}.gallery-sitemap .footer-section{opacity:1;transform:none}.gallery-sitemap .company-info{display:flex;flex-direction:column;gap:8px}.gallery-sitemap .sitemap{display:flex;flex-direction:column;align-items:flex-end}.gallery-image-section{width:60%;height:calc(100vh - 8vw);display:flex;align-items:center;justify-content:center;padding:3rem;background-color:#fffef8;position:sticky;top:8vw;align-self:flex-start;overflow:visible;transform:translateZ(0);-webkit-transform:translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden}.gallery-image-sticky{text-align:center;max-width:min(50vw,520px);width:100%}.gallery-image-wrapper{position:relative;width:100%;max-height:60vh;display:flex;justify-content:center;align-items:center}.gallery-main-image{width:100%;height:auto;max-height:60vh;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;transform:translateZ(0);-webkit-transform:translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden}.gallery-image-next{position:relative;z-index:1}.gallery-image-current{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) translateZ(0);-webkit-transform:translate(-50%,-50%) translateZ(0);z-index:2;opacity:1;transition:opacity .5s cubic-bezier(.4,0,.2,1);will-change:opacity}.gallery-image-current.fade-out{opacity:0}.gallery-current-title{margin-top:2rem;display:flex;flex-direction:column;align-items:center;gap:.3rem;transition:opacity .3s cubic-bezier(.4,0,.2,1)}.gallery-current-title.transitioning{opacity:.7}.gallery-current-title .title-en{font-size:1.1rem;font-weight:700;letter-spacing:.1em;color:#000}.gallery-current-title .title-zh{font-size:1.1rem;font-weight:400;color:#000;font-family:"Noto Serif TC",serif}.gallery-text-section{width:40%;padding:0 3rem;padding-top:calc(20vh - 4vw);display:flex;flex-direction:column;gap:0;background-color:#fffef8}.gallery-text-spacer{flex-shrink:0}.gallery-text-spacer-top{height:0}.gallery-text-spacer-bottom{height:40vh}.gallery-text-item{opacity:.25;color:#999;padding:2rem 0;transform:translateZ(0);-webkit-transform:translateZ(0);backface-visibility:hidden;will-change:opacity;transition:opacity .15s ease-out,color .15s ease-out}.gallery-text-item.active{opacity:1;color:#000}.text-item-title{font-size:2rem;font-weight:700;margin-bottom:1rem;letter-spacing:.05em}.title-zh-small{display:block;font-size:1.5rem;margin-top:.5rem;opacity:.8;font-weight:400}.text-item-description{font-size:1.1rem;line-height:1.8;max-width:500px;font-family:"Noto Serif TC",serif}@media (max-width: 1024px){.gallery-scroll-container{padding-top:10vw}.gallery-image-section{width:60%;height:calc(100vh - 10vw);padding:2rem}.gallery-image-sticky{max-width:min(48vw,400px)}.gallery-image-wrapper,.gallery-main-image{max-height:55vh}.gallery-current-title .title-en,.gallery-current-title .title-zh{font-size:1rem}.gallery-text-section{width:40%;padding:0 1.5rem;padding-top:calc(22.5vh - 5vw)}.gallery-text-spacer-top{height:0}.gallery-text-spacer-bottom{height:35vh}.gallery-text-item{padding:1.5rem 0}.text-item-title{font-size:1.5rem}.title-zh-small{font-size:1.2rem}.text-item-description{font-size:1rem}}@media (max-width: 768px){.gallery-scroll-container{padding-top:12vw}.gallery-image-section{width:75%;height:calc(100vh - 12vw);padding:1rem 0 1rem 3vw;justify-content:flex-start}.gallery-image-sticky{max-width:min(60vw,300px)}.gallery-image-wrapper,.gallery-main-image{max-height:40vh}.gallery-current-title{margin-top:.8rem;gap:.2rem}.gallery-current-title .title-en,.gallery-current-title .title-zh{font-size:3.5vw}.gallery-text-section{width:25%;padding:0 .5rem 0 0;padding-top:calc(30vh - 6vw);margin-left:-3vw}.gallery-text-spacer-top{height:0}.gallery-text-spacer-bottom{height:30vh}.gallery-text-item{padding:1.5rem 0}.text-item-title{font-size:1.1rem}.title-zh-small{font-size:.9rem}.text-item-description{font-size:3.5vw;line-height:1.6;max-width:100%}}@media (max-width: 480px){.gallery-scroll-container{padding-top:14vw}.gallery-image-section{width:55%;height:calc(100vh - 14vw);padding:.5rem 0 .5rem 3vw;justify-content:flex-start}.gallery-image-sticky{max-width:min(48vw,240px)}.gallery-image-wrapper,.gallery-main-image{max-height:35vh}.gallery-current-title{margin-top:.5rem;gap:.15rem}.gallery-current-title .title-en,.gallery-current-title .title-zh{font-size:3.8vw}.gallery-text-section{width:45%;padding:0 .5rem 0 0;padding-top:calc(32.5vh - 7vw);margin-left:-3vw}.gallery-text-spacer-top{height:0}.gallery-text-spacer-bottom{height:25vh}.gallery-text-item{padding:1rem 0}.text-item-title{font-size:1rem}.title-zh-small{font-size:.8rem}.text-item-description{font-size:3.8vw;line-height:1.7}}.image-popup-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:10000;display:flex;align-items:center;justify-content:center;background:rgba(255,254,248,.7);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);animation:popupFadeIn .3s ease-out}@keyframes popupFadeIn{0%{opacity:0;backdrop-filter:blur(0px);-webkit-backdrop-filter:blur(0px)}to{opacity:1;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}}.image-popup-content{position:relative;max-width:90vw;max-height:90vh;display:flex;align-items:center;justify-content:center;animation:popupScaleIn .3s cubic-bezier(.34,1.56,.64,1)}@keyframes popupScaleIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.image-popup-img{max-width:80vw;max-height:85vh;object-fit:contain;box-shadow:0 25px 80px #00000026;pointer-events:none;-webkit-user-select:none;user-select:none}.image-popup-close{position:absolute;top:-40px;right:-10px;border:none;background:transparent;color:#000;font-size:24px;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;transition:opacity .2s ease,transform .2s ease}.image-popup-close:hover{opacity:.6;transform:scale(1.1)}@media (max-width: 768px){.image-popup-img{max-width:92vw;max-height:80vh}.image-popup-close{top:-50px;right:0}}.footer{background-color:#fffef8;padding:30px 20px 150px;margin-top:-50px;width:100%;position:relative;z-index:100;transform:translateZ(0);-webkit-transform:translateZ(0);backface-visibility:hidden;contain:layout style paint}.footer-container{max-width:1200px;margin:0 auto}.footer-content{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:40px;gap:60px}.footer-section{flex:1;opacity:0;transform:translateY(20px);transition:opacity .8s ease-out,transform .8s ease-out}.footer-section.animate-in{opacity:1;transform:translateY(0)}.footer-section:nth-child(1).animate-in{transition-delay:.1s}.footer-section:nth-child(2).animate-in{transition-delay:.3s}.company-info{display:flex;flex-direction:column;gap:12px;align-items:flex-start}.company-name{font-family:"Noto Serif TC",serif;font-size:24px;font-weight:400;color:#333;margin:0;letter-spacing:1px}.company-phone{display:flex;align-items:center;gap:8px;font-size:14px;color:#555;margin:0}.phone-label{font-size:14px;font-weight:600;color:#555}.company-phone a{text-decoration:none;transition:color .3s ease;display:flex;align-items:center;gap:8px;font-size:14px;color:#555;margin:0}.company-phone a:hover{color:#000}.company-address{display:flex;align-items:center;gap:8px;font-size:14px;color:#555;margin:0}.address-label{font-size:14px;font-weight:600;color:#555}.company-info-item{display:flex;align-items:center;gap:8px;font-size:14px;color:#555;margin:0}.info-label{font-size:14px;font-weight:600;color:#555;white-space:nowrap}.copyright-info{font-size:14px;color:#666;margin:0;letter-spacing:.5px}.sitemap{display:flex;flex-direction:column;align-items:flex-end}.sitemap-title{font-size:14px;font-weight:600;color:#333;margin:0 0 12px;letter-spacing:2px}.sitemap-nav{display:flex;flex-direction:column;gap:12px;align-items:flex-end}.sitemap-link{color:#555;text-decoration:none;font-size:14px;font-weight:500;letter-spacing:1px;transition:all .3s ease;position:relative;padding:0}.sitemap-link:after{content:"";position:absolute;bottom:-2px;right:0;width:0;height:2px;background-color:#000;transition:width .3s ease}.sitemap-link:hover{color:#000}.sitemap-link:hover:after{width:100%}.social-media{display:flex;gap:15px;margin-top:12px;justify-content:flex-end}.social-media a{display:flex;align-items:center;justify-content:center;transition:transform .3s ease}.social-media a:hover{transform:scale(1.1)}.social-icon{width:30px;height:30px}.footer-bottom{padding-top:30px;text-align:center}.copyright{font-size:14px;color:#666;margin:0;letter-spacing:.5px}@media (max-width: 768px){.footer{padding:40px 20px 20px;margin-top:0}.footer-content{flex-direction:column;gap:40px;padding-bottom:30px}.sitemap{align-items:flex-start}.sitemap-nav{align-items:flex-start;gap:12px}.sitemap-link:after{right:auto;left:0;bottom:-2px}.social-media{justify-content:flex-start;margin-top:12px}.social-icon{width:28px;height:28px}.company-info{gap:12px}.company-name{font-size:20px}.company-phone,.company-address{font-size:14px}.company-info-item{font-size:14px;flex-wrap:wrap}.info-label,.copyright-info{font-size:14px}.sitemap-title{font-size:14px;margin:0 0 12px}.sitemap-link{font-size:14px;padding:0}.copyright{font-size:12px}}.hero-section{width:100%;display:flex;flex-direction:column;min-height:100vh;padding-top:8vw;gap:0;box-sizing:border-box;position:sticky;top:0;z-index:10;transform:translateZ(0);-webkit-transform:translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden}.hero-title-section{background-color:#fffef8;padding:0;display:flex;justify-content:flex-start;align-items:center;width:76.3%;margin-bottom:2vw;margin-left:3.5vw}.hero-title{font-size:11.5vw;font-weight:400;color:#1a1a1a;letter-spacing:-.01em;margin:0;text-align:justify;text-align-last:justify;line-height:.9;white-space:nowrap;width:100%;opacity:1;transform:scaleY(1.2)}.hero-image-section{background-color:transparent;display:flex;justify-content:flex-start;align-items:center;width:100%;padding:0;overflow:hidden;position:relative}.hero-image{width:100%;height:auto;object-fit:cover;object-position:center;display:block;opacity:1;transform:scale(1.15) translateZ(0);-webkit-transform:scale(1.15) translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden}.hero-info-section{background-color:#fffef8;padding:0;opacity:1;transform:translateY(0);flex:1;display:flex;flex-direction:column;justify-content:center;position:relative}.hero-info-container{display:flex;justify-content:flex-start;align-items:stretch;gap:0;width:100%;margin:0;position:relative;padding:2.5vw 0}.hero-info-left{width:65%;padding:0 3.5vw;display:flex;align-items:center}.hero-info-text{font-family:"Noto Serif TC",serif;font-size:1.8vw;line-height:1.8;color:#333;margin:0;font-weight:400;max-width:100%}.hero-info-divider{display:none}.hero-info-right{display:flex;flex-direction:column;gap:.8vw;align-items:flex-start;justify-content:center;padding:0 3.5vw;min-width:auto}.hero-info-right a{font-size:1.5vw;color:#333;text-decoration:none;letter-spacing:.07vw;transition:color .3s ease;font-weight:500}.hero-info-right a:hover{color:#666}@media (max-width: 768px){.hero-section{min-height:100vh;padding-top:12vw;gap:0}.hero-title-section{padding:0;width:76.3%;margin-left:3.5vw}.hero-title{font-size:11.5vw;width:100%;text-align:justify;text-align-last:justify}.hero-image-section{width:100%;padding:0;overflow:hidden;justify-content:flex-start}.hero-image{width:100%;height:auto;min-height:60vh;object-fit:cover;object-position:60% center;transform:scale(1.15)}.hero-info-section{padding:0;flex:1;display:flex;flex-direction:column;justify-content:center}.hero-info-container{flex-direction:row;gap:0;align-items:stretch;width:100%;padding:2.5vw 0}.hero-info-left{width:65%;padding:0 3.5vw}.hero-info-text{max-width:100%;font-size:3.5vw}.hero-info-right{align-items:flex-start;padding:0 3.5vw;min-width:auto}.hero-info-right a{font-size:3.2vw}}@media (max-width: 480px){.hero-section{min-height:100vh;padding-top:12vw}.hero-title-section{padding:0;width:76.3%;margin-left:3.5vw}.hero-title{font-size:11.5vw;width:100%;text-align:justify;text-align-last:justify}.hero-image-section{width:100%;padding:0;overflow:hidden;justify-content:flex-start}.hero-image{width:100%;height:auto;min-height:72.5vh;object-fit:cover;object-position:60% center;transform:scale(1.15)}.hero-info-section{padding:0;flex:1;display:flex;flex-direction:column;justify-content:center}.hero-info-container{flex-direction:row;width:100%;padding:2.5vw 0}.hero-info-left{width:70%;padding:0 3.5vw}.hero-info-right{padding:0 3.5vw}.hero-info-text{font-size:3.8vw;line-height:1.7}.hero-info-right a{font-size:2.5vw}}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{background-color:#000;scroll-behavior:smooth}html.loaded{background-color:#fffef8}body{background-color:#000;transition:background-color .3s ease;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body.loaded{background-color:#fffef8}.App{min-height:100vh;position:relative;background-color:transparent}body.loaded .App{background-color:#fffef8}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.animate-fade-in{animation:fadeIn .6s ease-out forwards}.animate-slide-up{animation:slideUp .6s ease-out forwards}.animate-slide-down{animation:slideDown .6s ease-out forwards}.animate-scale-in{animation:scaleIn .6s ease-out forwards}.scroll-animate{opacity:0;transform:translateY(30px)}.scroll-animate.animate-in{animation:slideUp .8s ease-out forwards}html,body{margin:0;padding:0;width:100%;height:100%;background-color:#000;font-family:Space Mono,monospace;text-transform:uppercase;-webkit-overflow-scrolling:touch;overscroll-behavior:none;-ms-overflow-style:none;scrollbar-width:none}html::-webkit-scrollbar,body::-webkit-scrollbar{display:none}#root{width:100%;height:100%;background-color:transparent}::selection{background-color:red;color:#000}::-moz-selection{background-color:red;color:#000}
