@import "https://fonts.googleapis.com/css2?family=Noto+Sans:wght@400;500;700;800&family=Noto+Sans+TC:wght@400;500;700;900&family=Noto+Sans+JP:wght@400;500;700;900&display=swap";
:root{--bg-color:#050505;--text-primary:#fff;--text-secondary:#a0a0a0;--accent-color:#109afe;--accent-strong:#0660f3;--accent-soft:#109afe14;--accent-grad:#0660f3;--glass-bg:#ffffff0d;--glass-border:#ffffff1a;--font-cjk:"Noto Sans TC", "Microsoft JhengHei", "PingFang TC", sans-serif;--font-body:"Noto Sans", var(--font-cjk);--font-heading:"Noto Sans", var(--font-cjk);--radius-card:16px;--radius-panel:20px}:root:lang(ja){--font-cjk:"Noto Sans JP", "Hiragino Sans", "Yu Gothic UI", "Meiryo", sans-serif}*{box-sizing:border-box;margin:0;padding:0}a,a:link,a:visited{color:inherit;text-decoration:none}body{font-family:var(--font-body);background-color:var(--bg-color);color:var(--text-primary);line-height:1.6;overflow-x:hidden}h1,h2,h3,h4{font-family:var(--font-heading)}.main-container{max-width:1200px;margin:0 auto;padding:0 2rem}.desktop-only{display:block}.mobile-only{display:none}.nav{border-bottom:1px solid var(--glass-border);z-index:1001;background:#050505;justify-content:space-between;align-items:center;width:100%;padding:1.5rem 2rem;display:flex;position:sticky;top:0}@media (max-width:768px){.nav{padding:1.2rem 1.5rem}.nav-logo{font-size:1.2rem}}.nav-logo{color:var(--accent-color);font-size:1.5rem;font-weight:800}.nav-links{gap:1.75rem;display:flex}.nav-links a{color:var(--text-secondary);font-size:.95rem;font-weight:600;text-decoration:none;transition:color .3s;position:relative}.nav-links a:hover{color:var(--text-primary)}.nav-links a:after{content:"";background:var(--accent-grad);width:0;height:2px;transition:width .3s;position:absolute;bottom:-4px;left:0}.nav-links a:hover:after,.nav-links a.active:after{width:100%!important}.nav-links a.active{color:var(--text-primary)}.nav-links a,.nav-logo span,.lang-switcher summary{white-space:nowrap}.nav-logo{flex-shrink:0;margin-right:1.5rem}@media (min-width:1025px) and (max-width:1280px){.nav{padding:1.5rem 1.2rem}.nav-logo{margin-right:1rem;font-size:1.15rem}.nav-links{gap:.9rem}.nav-links a{font-size:.88rem}.nav-links .ml-4{margin-left:.4rem}}.hero{justify-content:space-between;align-items:center;gap:4rem;min-height:80vh;display:flex}.hero-content{flex:1}.hero-title{text-align:center;margin-bottom:1.5rem;font-size:4rem;font-weight:800;line-height:1.1}.hero-title span{color:var(--text-primary)}.hero-desc{color:var(--text-secondary);text-align:center;max-width:600px;margin:0 auto 2.5rem;font-size:1.2rem}.btn-primary{background:var(--accent-grad);color:#fff;border-radius:10px;padding:1rem 2rem;font-size:1.1rem;font-weight:800;text-decoration:none;transition:transform .3s,box-shadow .3s;display:inline-block}.btn-primary:hover{background:#0880fb;transform:translateY(-2px)}.hero-image-container{flex:1;justify-content:center;display:flex;position:relative}.hero-image{object-fit:cover;border:2px solid var(--glass-border);border-radius:30px;width:350px;height:350px}.services{padding:5rem 0}.section-title{text-align:center;margin-bottom:3rem;font-size:2.5rem}.services-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem;display:grid}@media (max-width:960px){.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.service-card{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-card);padding:2rem;transition:transform .3s,border-color .3s}.service-card:hover{border-color:var(--accent-color);transform:translateY(-4px)}.service-icon{color:var(--accent-color);margin-bottom:1.5rem;font-size:2.5rem}.service-title{margin-bottom:1rem;font-size:1.5rem}.service-desc{color:var(--text-secondary)}.experience{padding:5rem 0}.timeline{flex-direction:column;gap:2rem;display:flex;position:relative}.timeline:before{content:"";background:var(--glass-border);width:2px;position:absolute;top:0;bottom:0;left:20px}.timeline-item{gap:2rem;padding-left:3rem;transition:transform .3s;display:flex;position:relative}.timeline-item:hover .timeline-content{border-color:#109afe73}.timeline-dot{background:var(--accent-strong);width:14px;height:14px;box-shadow:none;border-radius:50%;transition:transform .3s,box-shadow .3s;position:absolute;top:5px;left:14px}.timeline-item:hover .timeline-dot{box-shadow:none;transform:scale(1.4)}.timeline-content{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-card);width:100%;padding:1.5rem;transition:border-color .25s}.timeline-date{color:var(--accent-color);margin-bottom:.5rem;font-weight:600}.timeline-role{font-size:1.2rem;font-weight:800}.timeline-company{color:var(--text-secondary);margin-bottom:1rem}.contact{text-align:center;padding:5rem 0}.contact-card{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:30px;max-width:600px;margin:0 auto;padding:4rem 2rem}.contact-card p{color:var(--text-secondary);margin-bottom:2rem}.contact-form{text-align:left;flex-direction:column;gap:1rem;display:flex}.form-group{flex-direction:column;gap:.5rem;display:flex}.form-group label{color:var(--text-secondary);font-size:.9rem}.form-group input,.form-group textarea{border:1px solid var(--glass-border);color:var(--text-primary);background:#00000080;border-radius:10px;padding:1rem;font-family:inherit;transition:border-color .3s}.form-group input:focus,.form-group textarea:focus{border-color:var(--accent-color);outline:none}.submit-btn{background:var(--accent-grad);color:#fff;cursor:pointer;border:none;border-radius:10px;margin-top:1rem;padding:1rem;font-weight:800;transition:transform .3s}.submit-btn:hover{transform:translateY(-2px)}.tags-container{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.tag{color:var(--accent-color);cursor:pointer;background:#109afe1a;border:1px solid #109afe33;border-radius:999px;padding:.2rem .7rem;font-size:.75rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-block}.tag:hover{background:var(--accent-strong);color:#fff;border-color:#0000;transform:translateY(-2px)}@media (max-width:768px){.main-container{padding:0 .5rem}}@media (max-width:480px){.tags-container{flex-wrap:wrap!important;gap:.5rem!important;display:flex!important}.tag{text-align:center;white-space:normal!important;word-break:break-all!important;padding:.3rem .6rem!important;font-size:.75rem!important}}@media (max-width:1024px){.section-title{margin-bottom:2rem;font-size:2.2rem}.desktop-only{display:none}.mobile-only{display:block}.nav{background:#050505;padding:1rem 1.5rem}.hero{text-align:center;flex-direction:column-reverse;gap:2rem;min-height:auto;padding:4rem 0}.hero-title{font-size:2.5rem}.hero-desc{margin-bottom:2rem;font-size:1rem}.hero-image{width:280px;height:280px}.hero-image-container:before{width:200px;height:200px}}@media (max-width:768px){.main-container{padding:0 1rem}.section-title{font-size:1.8rem!important}.services-grid{grid-template-columns:1fr;gap:1.5rem}.service-card{text-align:center;flex-direction:column;align-items:center;padding:1.5rem 1rem;display:flex}.timeline-item{gap:1rem;padding-left:2rem}.timeline:before{left:12px}.timeline-dot{left:6px}.timeline-content{padding:1rem}.contact-card{padding:2rem 1rem}.submit-btn{width:100%}}@media (max-width:480px){.hero-title{font-size:2rem}.btn-primary{text-align:center;width:100%}.nav-logo{font-size:1.25rem}}.status-badge{color:var(--text-primary);background:#109afe0f;border:1px solid #109afe59;border-radius:999px;flex-wrap:wrap;justify-content:center;align-items:center;gap:.6rem;padding:.5rem 1.1rem;font-size:.92rem;line-height:1.5;transition:border-color .25s,background .25s;display:inline-flex}.status-badge:hover{border-color:var(--accent-strong);background:#109afe1f}.status-badge strong{font-weight:700}.status-sep{color:var(--glass-border)}.status-cta{color:var(--accent-color)}.status-arrow{transition:transform .25s;display:inline-block}.status-badge:hover .status-arrow{transform:translate(4px)}.hero-status{margin-bottom:1.5rem}@media (max-width:640px){.status-badge{text-align:center;border-radius:18px;padding:.55rem 1rem;font-size:.82rem;line-height:1.55;display:block}.status-sep{display:none}.status-cta{margin-top:.15rem;display:block}}.ds-page{max-width:1100px;margin:0 auto;padding:0 1.5rem 2rem}.ds-page-narrow{max-width:860px}.ds-hero{text-align:center;margin-bottom:3.5rem}.ds-hero .section-title{margin-bottom:1rem}.ds-lead{color:var(--text-secondary);max-width:720px;margin:0 auto 1.8rem;line-height:1.9}.ds-hero .ds-lead:last-child{margin-bottom:0}.ds-actions{flex-wrap:wrap;justify-content:center;gap:1rem;margin-bottom:1.5rem;display:flex}.ds-actions .btn-primary{padding:.8rem 1.8rem}.ds-section{margin-bottom:4rem}.ds-heading{text-align:center;justify-content:center;align-items:center;gap:.7rem;margin-bottom:.8rem;font-size:1.7rem;line-height:1.4;display:flex}.ds-heading:before{content:"";background:var(--accent-strong);border-radius:2px;flex:none;width:6px;height:1.05em}.ds-sub{color:var(--text-secondary);text-align:center;max-width:720px;margin:0 auto 2rem;line-height:1.7}.ds-eyebrow{background:var(--accent-strong);color:#fff;letter-spacing:1px;border-radius:999px;margin:0 auto 1rem;padding:.25rem .95rem;font-size:.85rem;font-weight:700;display:table}.ds-muted{color:var(--text-secondary);line-height:1.7}.ds-card{border-radius:var(--radius-card);background:var(--glass-bg);border:1px solid var(--glass-border);padding:1.5rem}.ds-card h3{margin-bottom:.7rem;font-size:1.1rem;line-height:1.5}.ds-card ul{color:var(--text-secondary);padding-left:1.1rem;font-size:.95rem;line-height:1.75}a.ds-card,.ds-card-link{color:inherit;transition:transform .25s,border-color .25s;display:block}a.ds-card:hover,.ds-card-link:hover{border-color:var(--accent-color);transform:translateY(-4px)}.ds-num{font-family:var(--font-heading);color:var(--accent-color);margin-bottom:.3rem;font-size:1.6rem;font-weight:800;display:block}.ds-card-accent{border-color:#109afe59}.ds-grid-2,.ds-grid-3,.ds-grid-4{gap:1.2rem;display:grid}.ds-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.ds-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.ds-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.ds-cta{text-align:center;background:var(--accent-soft);border:1px solid #109afe4d;border-radius:24px;margin-top:1rem;padding:3rem 1.5rem}.ds-cta h2{margin-bottom:.7rem;font-size:1.7rem}.ds-cta p{color:var(--text-secondary);max-width:640px;margin:0 auto 1.5rem;line-height:1.7}.ds-cta .ds-actions{margin-bottom:0}.ds-cta .btn-primary{padding:.9rem 2.2rem}@media (max-width:960px){.ds-grid-3,.ds-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.ds-page{padding:0 1rem 2rem}.ds-grid-2,.ds-grid-3,.ds-grid-4{grid-template-columns:1fr}.ds-heading,.ds-cta h2{font-size:1.45rem}.ds-cta{padding:2.2rem 1.2rem}}.only-d{display:block}.only-m{display:none}.btn-secondary{border:1px solid var(--accent-color)!important;color:var(--accent-color)!important;background:0 0!important}.btn-secondary:hover{background:#109afe14!important}@media (max-width:600px){.page-content{padding-top:.75rem!important;padding-bottom:3rem!important}.section-title{font-size:1.85rem;line-height:1.35}.ds-hero{margin-bottom:2.5rem}.ds-lead{margin-bottom:1.4rem;font-size:.98rem;line-height:1.8}.ds-section{margin-bottom:3rem}.ds-sub{margin-bottom:1.5rem;font-size:.95rem}.ds-card{padding:1.25rem}.ds-actions{gap:.6rem}.ds-actions>.btn-primary{text-align:center;flex:140px;min-width:0;padding:.8rem .9rem;font-size:.95rem}.service-card{padding:1.5rem}.only-d{display:none!important}.only-m{display:block!important}.m-swipe{scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;margin:0 -1rem;padding:.2rem 1rem 1rem;overflow-x:auto;gap:.9rem!important;display:flex!important}.m-swipe::-webkit-scrollbar{display:none}.m-swipe>*{scroll-snap-align:center;flex:0 0 78%}}body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}
