*{margin:0;padding:0;box-sizing:border-box}body,html{width:100%;overflow-x:hidden;font-family:Montserrat,Noto Sans TC,sans-serif;background-color:#fff;color:#1a1a1a}#app-container{display:flex;flex-direction:column;min-height:100vh}header{position:absolute;top:0;left:0;width:100%;z-index:2000}header .header-content{max-width:1600px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;padding:30px 60px}@media(max-width:768px){header .header-content{padding:15px 25px}}.logo-link{flex-shrink:0;z-index:2101}.logo-link .logo-img{height:100px;width:auto;transition:height .3s ease}@media(max-width:768px){.logo-link .logo-img{height:70px}}nav{display:flex}nav .nav-inner{display:flex}nav a{margin-left:45px;text-decoration:none;color:#1a1a1a;font-size:13px;letter-spacing:2px;font-weight:400;transition:color .3s,opacity .3s;position:relative;padding-bottom:6px}nav a:after{content:"";position:absolute;bottom:0;left:0;width:0;height:1px;background-color:#000;transition:width .3s ease}nav a:hover:after{width:100%}nav a.router-link-active{font-weight:600}nav a.router-link-active:after{width:100%}.menu-toggle{display:none;background:none;border:none;cursor:pointer;z-index:2101;padding:10px}.menu-toggle .bar{display:block;width:26px;height:1px;background:#000;margin:7px 0;transition:.4s ease}.menu-toggle.active .bar:nth-child(1){transform:translateY(4px) rotate(45deg)}.menu-toggle.active .bar:nth-child(2){transform:translateY(-4px) rotate(-45deg)}@media(max-width:768px){.menu-toggle{display:block}nav{position:fixed;top:0;left:0;width:100%;height:100vh;background:#fffffffa;opacity:0;visibility:hidden;transition:all .5s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column;justify-content:center;align-items:center}nav.is-active{opacity:1;visibility:visible}nav .nav-inner{display:flex;flex-direction:column;align-items:center;width:100%}nav a{margin:15px 0!important;font-size:22px;letter-spacing:5px;color:#1a1a1a}nav a:after{height:1px}}.view-content{flex:1;padding-top:160px}@media(max-width:768px){.view-content{padding-top:110px}}footer{padding:100px 40px;text-align:center}footer .footer-content{margin-bottom:40px}footer .footer-content .company-name{font-size:12px;color:#9c9c9c;letter-spacing:2px;font-weight:500;margin-bottom:12px}footer .footer-content .contact-info{font-size:12px;color:#9c9c9c;letter-spacing:1px;line-height:1.8}footer .footer-content .contact-info .divider{margin:0 10px;color:#ddd}@media(max-width:768px){footer{padding:60px 20px}footer .footer-content .contact-info .divider{display:none}footer .footer-content .contact-info .address,footer .footer-content .contact-info .tel{display:block;margin-bottom:8px}}
