@import "https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@300;400;500;700;900&family=Space+Grotesk:wght@300;400;500;700&display=swap";:root{--bg:#f6f9fd;--bg-soft:#edf3fa;--bg-card:#ffffffc7;--border:#0f3c781f;--border-hover:#0d948880;--text:#0f1c2e;--text-dim:#5a6b82;--cyan:#0891b2;--teal:#0d9488;--violet:#6366f1;--gold:#b98618;--gradient:linear-gradient(120deg,#0891b2,#0d9488 45%,#6366f1);--font-zh:"Noto Sans TC","PingFang TC","Microsoft JhengHei",sans-serif;--font-en:"Space Grotesk","Noto Sans TC",sans-serif;--radius:18px;--nav-h:72px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--font-zh);-webkit-font-smoothing:antialiased;line-height:1.7;overflow-x:hidden}::selection{background:#0891b238}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}.container{width:min(1180px,92vw);margin:0 auto}.section{padding:110px 0;position:relative}.section-alt{background:linear-gradient(#0000,#0891b20d,#0000)}.section-head{text-align:center;margin-bottom:64px}.section-head .eyebrow{letter-spacing:4px;text-transform:uppercase;color:var(--teal);font-size:13px;font-family:var(--font-en);margin-bottom:14px;display:inline-block}.section-head h2{letter-spacing:1px;background:var(--gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:max(30px,min(4.4vw,46px));font-weight:900}.section-head p{color:var(--text-dim);margin-top:14px;font-size:17px}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);padding:36px 30px;transition:transform .45s cubic-bezier(.22,1,.36,1),border-color .45s,box-shadow .45s;position:relative;overflow:hidden;box-shadow:0 4px 24px -12px #0f3c781f}.card:before{content:"";background:radial-gradient(600px circle at var(--mx,50%)var(--my,0%),#0d948812,transparent 45%);opacity:0;pointer-events:none;transition:opacity .4s;position:absolute;top:0;bottom:0;left:0;right:0}.card:hover{border-color:var(--border-hover);transform:translateY(-6px);box-shadow:0 24px 56px -24px #0891b24d}.card:hover:before{opacity:1}.btn{letter-spacing:1px;border:none;border-radius:999px;align-items:center;gap:10px;padding:15px 34px;font-size:16px;font-weight:700;transition:transform .3s,box-shadow .3s,background .3s,border-color .3s;display:inline-flex}.btn-primary{background:var(--gradient);color:#fff;box-shadow:0 10px 30px -10px #0891b280}.btn-primary:hover{transform:translateY(-3px)scale(1.02);box-shadow:0 18px 40px -10px #0891b299}.btn-ghost{color:var(--text);background:#fff9;border:1px solid #0f3c7838}.btn-ghost:hover{border-color:var(--teal);color:var(--teal);transform:translateY(-3px)}.reveal{opacity:0;transition:opacity .9s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1);transform:translateY(36px)}.reveal.visible{opacity:1;transform:none}.navbar{z-index:100;height:var(--nav-h);border-bottom:1px solid #0000;align-items:center;transition:background .4s,-webkit-backdrop-filter .4s,backdrop-filter .4s,border-color .4s,box-shadow .4s;display:flex;position:fixed;top:0;left:0;right:0}.navbar.scrolled{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom-color:var(--border);background:#ffffffc7;box-shadow:0 4px 24px -16px #0f3c7840}.navbar.menu-open{-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;background:0 0;border-bottom-color:#0000}.navbar .container{justify-content:space-between;align-items:center;display:flex}.logo{align-items:center;gap:12px;display:flex}.logo-mark{background:var(--gradient);color:#fff;width:38px;height:38px;font-size:19px;font-weight:900;font-family:var(--font-en);border-radius:12px;place-items:center;display:grid;box-shadow:0 6px 18px -6px #0891b28c}.logo-text{flex-direction:column;line-height:1.2;display:flex}.logo-text b{letter-spacing:1px;font-size:16px}.logo-text span{color:var(--text-dim);letter-spacing:1.5px;font-size:11px;font-family:var(--font-en)}.nav-links{align-items:center;gap:34px;display:flex}.nav-links a{color:var(--text-dim);padding:6px 0;font-size:15px;transition:color .3s;position:relative}.nav-links a:after{content:"";background:var(--gradient);border-radius:2px;width:0;height:2px;transition:width .35s cubic-bezier(.22,1,.36,1);position:absolute;bottom:0;left:0}.nav-links a:hover,.nav-links a.active{color:var(--text)}.nav-links a.active:after,.nav-links a:hover:after{width:100%}.lang-toggle{border:1px solid var(--border);background:#ffffffb3;border-radius:999px;display:flex;overflow:hidden}.lang-toggle button{color:var(--text-dim);font-size:13px;font-weight:700;font-family:var(--font-en);letter-spacing:1px;background:0 0;border:none;padding:7px 16px;transition:background .3s,color .3s}.lang-toggle button.active{background:var(--gradient);color:#fff}.hamburger{z-index:110;background:0 0;border:none;width:42px;height:42px;display:none;position:relative}.hamburger span{background:var(--text);border-radius:2px;width:24px;height:2px;margin:6px auto;transition:transform .35s,opacity .35s;display:block}.hamburger.open span:first-child{transform:translateY(8px)rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:translateY(-8px)rotate(-45deg)}.hero{background:radial-gradient(900px 500px at 15% 10%,#0891b214,#0000 60%),radial-gradient(900px 500px at 85% 85%,#6366f114,#0000 60%);align-items:center;min-height:100svh;display:flex;position:relative;overflow:hidden}.hero-canvas{z-index:0;position:absolute;top:0;bottom:0;left:0;right:0}.hero-content{z-index:2;text-align:center;width:min(900px,92vw);padding-top:var(--nav-h);margin:0 auto;position:relative}.hero-badge{border:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);letter-spacing:2px;color:var(--teal);background:#ffffffa6;border-radius:999px;align-items:center;gap:8px;margin-bottom:30px;padding:8px 20px;font-size:13.5px;animation:1s .15s both fadeUp;display:inline-flex}.hero-badge:before{content:"";background:var(--teal);width:7px;height:7px;box-shadow:0 0 10px var(--teal);border-radius:50%;animation:2.2s infinite pulse}.hero h1{letter-spacing:2px;font-size:max(42px,min(7.6vw,88px));font-weight:900;line-height:1.18;animation:1s .3s both fadeUp}.hero h1 .line2{background:var(--gradient);-webkit-text-fill-color:transparent;filter:drop-shadow(0 4px 22px #0891b238);-webkit-background-clip:text;background-clip:text}.hero p.sub{max-width:640px;color:var(--text-dim);margin:28px auto 44px;font-size:max(15.5px,min(2vw,18px));animation:1s .45s both fadeUp}.hero-ctas{flex-wrap:wrap;justify-content:center;gap:18px;animation:1s .6s both fadeUp;display:flex}.scroll-hint{z-index:2;color:var(--text-dim);letter-spacing:3px;flex-direction:column;align-items:center;gap:10px;font-size:12px;animation:1s 1s both fadeUp;display:flex;position:absolute;bottom:34px;left:50%;transform:translate(-50%)}.scroll-hint .mouse{border:2px solid #0f3c784d;border-radius:14px;width:24px;height:38px;position:relative}.scroll-hint .mouse:after{content:"";background:var(--teal);border-radius:4px;width:4px;height:8px;margin-left:-2px;animation:1.8s infinite scrollDot;position:absolute;top:7px;left:50%}.grid-3{grid-template-columns:repeat(3,1fr);gap:26px;display:grid}.grid-4{grid-template-columns:repeat(4,1fr);gap:26px;display:grid}.grid-2{grid-template-columns:repeat(2,1fr);gap:26px;display:grid}.service-icon{border:1px solid var(--border);width:60px;height:60px;color:var(--cyan);background:linear-gradient(135deg,#0891b21a,#6366f11a);border-radius:16px;place-items:center;margin-bottom:24px;font-size:28px;display:grid}.card h3{letter-spacing:1px;margin-bottom:14px;font-size:21px;font-weight:700}.card p.desc{color:var(--text-dim);font-size:15px}.feature-list{margin-top:20px;list-style:none}.feature-list li{color:var(--text-dim);padding:7px 0 7px 26px;font-size:14.5px;position:relative}.feature-list li:before{content:"✦";color:var(--teal);font-size:12px;position:absolute;left:2px}.card-link{color:var(--teal);letter-spacing:1px;align-items:center;gap:8px;margin-top:22px;font-size:14.5px;font-weight:700;display:inline-flex}.card-link .arrow{transition:transform .3s}.card:hover .card-link .arrow{transform:translate(6px)}.stats-band{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:linear-gradient(90deg,#0891b20f,#6366f10f);padding:56px 0}.stats-band .container{text-align:center;grid-template-columns:repeat(4,1fr);gap:20px;display:grid}.stat-value{font-family:var(--font-en);background:var(--gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:max(34px,min(4.5vw,52px));font-weight:700}.stat-label{color:var(--text-dim);letter-spacing:1px;margin-top:6px;font-size:14.5px}.process-grid{counter-reset:step;grid-template-columns:repeat(4,1fr);gap:22px;display:grid}.process-step{text-align:left;padding:30px 26px;position:relative}.process-step .num{font-family:var(--font-en);opacity:.3;background:var(--gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:16px;font-size:44px;font-weight:700;line-height:1}.process-step h4{letter-spacing:1px;margin-bottom:8px;font-size:18px}.process-step p{color:var(--text-dim);font-size:14px}.cta-banner{text-align:center;border:1px solid var(--border);background:radial-gradient(800px 300px at 20% 0,#0891b21a,#0000),radial-gradient(800px 300px at 80% 100%,#6366f11a,#0000),#fff;border-radius:28px;padding:76px 40px;position:relative;overflow:hidden;box-shadow:0 20px 60px -30px #0f3c7840}.cta-banner h2{letter-spacing:1px;font-size:max(28px,min(4vw,42px));font-weight:900}.cta-banner p{color:var(--text-dim);margin:16px 0 36px;font-size:17px}.page-hero{padding:calc(var(--nav-h) + 90px)0 70px;text-align:center;position:relative;overflow:hidden}.page-hero:before{content:"";pointer-events:none;background:radial-gradient(#0891b21a,#0000 65%);width:900px;height:500px;position:absolute;top:-220px;left:50%;transform:translate(-50%)}.page-hero h1{letter-spacing:2px;background:var(--gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:max(34px,min(5.5vw,58px));font-weight:900}.page-hero p{color:var(--text-dim);letter-spacing:2px;margin-top:16px;font-size:18px}.chips{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.chip{border:1px solid var(--border);background:var(--bg-card);font-family:var(--font-en);color:var(--text-dim);border-radius:999px;padding:10px 22px;font-size:14.5px;transition:border-color .3s,color .3s,transform .3s}.chip:hover{border-color:var(--teal);color:var(--teal);transform:translateY(-3px)}.contact-grid{grid-template-columns:1.4fr 1fr;align-items:start;gap:30px;display:grid}.form-group{margin-bottom:22px}.form-group label{color:var(--text-dim);letter-spacing:1px;margin-bottom:8px;font-size:14px;display:block}.form-group input,.form-group textarea,.form-group select{border:1px solid var(--border);width:100%;color:var(--text);background:#fff;border-radius:12px;padding:14px 18px;font-family:inherit;font-size:15px;transition:border-color .3s,box-shadow .3s}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--teal);outline:none;box-shadow:0 0 0 3px #0d948824}.form-group textarea{resize:vertical;min-height:140px}.form-sent{color:var(--teal);margin-top:14px;font-size:14.5px}.info-row{border-bottom:1px solid var(--border);gap:16px;padding:18px 0;display:flex}.info-row:last-child{border-bottom:none}.info-icon{color:var(--cyan);align-items:flex-start;padding-top:4px;font-size:22px;display:flex}.info-row b{letter-spacing:1px;font-size:14px;display:block}.info-row span{color:var(--text-dim);word-break:break-all;font-size:14.5px}footer{border-top:1px solid var(--border);background:linear-gradient(#0000,#0891b20d);padding:70px 0 190px}.footer-grid{grid-template-columns:2fr 1fr 1fr;gap:40px;margin-bottom:50px;display:grid}.footer-grid p{color:var(--text-dim);max-width:340px;margin-top:16px;font-size:14.5px}.footer-grid h4{letter-spacing:2px;color:var(--text);margin-bottom:18px;font-size:15px}.footer-contact{flex-direction:column;gap:8px;margin-top:18px;display:flex}.footer-contact span{color:var(--text-dim);align-items:center;gap:8px;font-size:14px;display:inline-flex}.footer-contact svg{color:var(--cyan);flex-shrink:0}.footer-contact a:hover{color:var(--teal)}.footer-grid ul{list-style:none}.footer-grid ul li{margin-bottom:12px}.footer-grid ul a{color:var(--text-dim);font-size:14.5px;transition:color .3s}.footer-grid ul a:hover{color:var(--teal)}.footer-bottom{border-top:1px solid var(--border);color:var(--text-dim);flex-wrap:wrap;justify-content:space-between;gap:10px;padding-top:28px;font-size:13.5px;display:flex}.about-story{text-align:center;max-width:780px;color:var(--text-dim);margin:0 auto;font-size:17.5px;line-height:2.1}.about-story p+p{margin-top:26px}.page-shell{position:relative}.title-host{z-index:1;opacity:0;pointer-events:none;height:max(380px,min(52vh,560px));transition:opacity .6s;position:absolute;top:0;left:0;right:0}.title-host.on{opacity:1;pointer-events:auto}.title-host .hero-canvas{cursor:pointer;position:absolute;top:0;bottom:0;left:0;right:0}.page-fade{animation:.55s cubic-bezier(.22,1,.36,1) both pageFade}@keyframes pageFade{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.page-hero-3d{padding:calc(var(--nav-h) + 40px)0 0;flex-direction:column;justify-content:flex-end;height:max(380px,min(52vh,560px));display:flex}.page-hero-3d .hero-canvas{z-index:0;cursor:pointer;position:absolute;top:0;bottom:0;left:0;right:0}.page-hero-content{z-index:2;text-align:center;pointer-events:none;padding-bottom:26px;position:relative}.page-hero-sub{color:var(--text-dim);letter-spacing:2px;font-size:17px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.finder{padding:46px 42px}.finder:hover{transform:none}.finder-head{text-align:center;margin-bottom:28px}.finder-head .eyebrow{letter-spacing:4px;text-transform:uppercase;color:var(--teal);font-size:12px;font-family:var(--font-en);margin-bottom:10px;display:inline-block}.finder-head h2{letter-spacing:1px;font-size:max(24px,min(3.2vw,32px));font-weight:900}.finder-head p{color:var(--text-dim);margin-top:8px;font-size:15px}.finder-progress{justify-content:center;gap:10px;margin-bottom:26px;display:flex}.finder-progress .dot{background:#0f3c781f;border-radius:3px;width:34px;height:5px;transition:background .4s}.finder-progress .dot.on{background:var(--gradient)}.finder-crumbs{flex-wrap:wrap;justify-content:center;gap:10px;margin-bottom:24px;display:flex}.crumb{border:1px solid var(--border-hover);color:var(--teal);background:#0d948812;border-radius:999px;align-items:center;gap:8px;padding:8px 16px;font-size:14px;font-weight:700;transition:border-color .3s,background .3s;display:inline-flex}.crumb:hover{background:#0d948824}.crumb .crumb-x{opacity:.6;font-size:13px}.finder-step{animation:.5s cubic-bezier(.22,1,.36,1) both fadeUp}.finder-q{text-align:center;letter-spacing:1px;margin-bottom:24px;font-size:19px;font-weight:700}.finder-options{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.finder-option{border:1px solid var(--border);color:var(--text);letter-spacing:1px;background:#ffffffa6;border-radius:14px;flex-direction:column;align-items:center;gap:10px;padding:24px 14px;font-size:15px;font-weight:700;transition:transform .3s,border-color .3s,box-shadow .3s,background .3s;display:flex}.finder-option .opt-icon{color:var(--cyan);font-size:28px;transition:transform .3s}.finder-option:hover{border-color:var(--border-hover);background:#fff;transform:translateY(-4px);box-shadow:0 14px 34px -16px #0891b259}.finder-option:hover .opt-icon{transform:scale(1.15)}.finder-back{color:var(--text-dim);background:0 0;border:none;align-items:center;gap:8px;margin-top:22px;font-size:14px;transition:color .3s;display:inline-flex}.finder-back:hover{color:var(--teal)}.finder-note{background:#b986180f;border:1px solid #b9861840;border-radius:14px;align-items:flex-start;gap:12px;margin-bottom:18px;padding:16px 20px;animation:.55s cubic-bezier(.22,1,.36,1) both fadeUp;display:flex}.finder-note svg{color:var(--gold);flex-shrink:0;margin-top:3px;font-size:20px}.finder-note p{color:var(--text);font-size:14.5px;line-height:1.9}.finder-result{flex-direction:column;gap:12px;display:flex}.result-row{border:1px solid var(--border);background:#ffffffb3;border-radius:14px;align-items:center;gap:16px;padding:16px 20px;animation:.55s cubic-bezier(.22,1,.36,1) both fadeUp;display:flex}.result-row.optional{opacity:.85;border-style:dashed}.result-icon{width:44px;height:44px;color:var(--cyan);border:1px solid var(--border);background:linear-gradient(135deg,#0891b21a,#6366f11a);border-radius:12px;flex-shrink:0;place-items:center;font-size:21px;display:grid}.result-body{flex:1;min-width:0}.result-body b{letter-spacing:1px;font-size:15.5px;display:block}.result-body span{color:var(--text-dim);font-size:13.5px}.tag{letter-spacing:1px;border-radius:999px;flex-shrink:0;padding:4px 12px;font-size:12px;font-weight:700}.tag-core{color:var(--teal);background:#0d94881f}.tag-opt{color:var(--violet);background:#6366f11a}.finder-actions{flex-wrap:wrap;justify-content:center;gap:14px;margin-top:30px;display:flex}@media (max-width:680px){.finder{padding:34px 22px}.finder-options{grid-template-columns:repeat(2,1fr)}.result-row{flex-wrap:wrap}}.privacy-intro{color:var(--text-dim);border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);margin-bottom:40px;padding:26px 30px;font-size:16.5px;line-height:2}.privacy-section{margin-bottom:36px}.privacy-section h2{letter-spacing:1px;border-left:3px solid var(--teal);margin-bottom:12px;padding-left:14px;font-size:20px;font-weight:700}.privacy-section p{color:var(--text-dim);font-size:15.5px;line-height:2}.animal-parade{z-index:80;pointer-events:none;height:170px;position:fixed;bottom:0;left:0;right:0}@media (max-width:680px){.animal-parade{height:120px}}.parade-pop{z-index:85;color:#f47288;pointer-events:none;font-size:20px;font-weight:700;animation:1.05s ease-out both paradePop;position:fixed;transform:translate(-50%,-100%)}@keyframes paradePop{0%{opacity:0;transform:translate(-50%,-100%)scale(.5)}20%{opacity:1}to{opacity:0;transform:translate(-50%,-100%)translateY(-56px)scale(1.3)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(32px)}to{opacity:1;transform:none}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}@keyframes scrollDot{0%{opacity:0;transform:translateY(0)}35%{opacity:1}to{opacity:0;transform:translateY(12px)}}@keyframes floatY{0%,to{transform:translateY(0)}50%{transform:translateY(-14px)}}@media (max-width:960px){.grid-3,.grid-4,.process-grid{grid-template-columns:repeat(2,1fr)}.contact-grid,.grid-2{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.stats-band .container{grid-template-columns:repeat(2,1fr);row-gap:36px}}@media (max-width:680px){.grid-3,.grid-4,.process-grid,.footer-grid{grid-template-columns:1fr}.section{padding:80px 0}.hamburger{display:block}.nav-links{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#f8fbfffc;flex-direction:column;justify-content:center;gap:36px;transition:transform .45s cubic-bezier(.22,1,.36,1);position:fixed;top:0;bottom:0;left:0;right:0;transform:translate(100%)}.nav-links.open{transform:none}.nav-links a{font-size:22px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}