:root{--bg:#090d18;--panel:#111929;--line:#ffffff1b;--text:#f1f5ff;--muted:#9aa9c3;--cyan:#62e3ed;--blue:#6578ff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,"Noto Sans TC","PingFang TC","Microsoft JhengHei",sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.2}::selection{background:#76e9e5;color:#09111a}.wrap{width:min(1280px,calc(100% - 80px));margin:auto}.review-note{background:#d4e8ff;color:#142137;text-align:center;padding:7px 16px;font-size:12px;letter-spacing:.05em}.header{position:sticky;top:0;z-index:20;background:#090d18de;backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.nav{height:78px;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:center;gap:10px;font-size:18px;font-weight:800;letter-spacing:.08em;line-height:1.1}.brand svg{width:48px}.brand small{display:block;font-size:9px;color:#8291ac;letter-spacing:.2em;margin-top:6px}.links{display:flex;align-items:center;gap:35px;font-size:14px;color:#c8d2e3}.links a{transition:color .2s}.links a:hover{color:var(--cyan)}.nav-cta{color:white!important;border:1px solid #556176;padding:10px 16px;border-radius:4px}.nav-cta span{padding-left:18px;color:var(--cyan)}.menu{display:none}.hero{min-height:660px;display:grid;grid-template-columns:1.06fr .94fr;gap:6%;align-items:center;padding-top:64px;padding-bottom:78px}.eyebrow,.kicker{display:inline-flex;align-items:center;gap:9px;font-size:11px;letter-spacing:.18em;color:var(--cyan);font-weight:700}.eyebrow i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--cyan);box-shadow:0 0 16px var(--cyan)}h1{font-size:clamp(42px,4.7vw,68px);letter-spacing:-.04em;margin:26px 0 24px}h1 span,h2 em{font-style:normal;background:linear-gradient(100deg,#edf8ff 10%,#82d9f2 48%,#7b8eff);color:transparent;background-clip:text}.lead{color:#b1bfd2;line-height:1.9;font-size:17px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}.btn{min-height:52px;padding:14px 20px;display:inline-flex;align-items:center;justify-content:center;gap:25px;border-radius:4px;font-size:14px;font-weight:700;transition:transform .25s,background .25s,border-color .25s}.btn:hover{transform:translateY(-3px)}.primary{background:linear-gradient(110deg,#a6e9f1,#92b6ff);color:#0b1728}.secondary{border:1px solid #435068;color:#dce8f9}.secondary:hover{border-color:#9dc8ff}.play-small{font-size:10px;color:var(--cyan)}.hero-caption{display:flex;gap:14px;margin-top:48px;color:#8391a8;font-size:12px;letter-spacing:.08em}.hero-caption b{color:#598baf}.hero-art{height:480px;border:1px solid #ffffff22;background:radial-gradient(circle at 48% 48%,#23395f 0,#121b30 35%,#0b101d 75%);position:relative;overflow:hidden}.hero-art:before{content:"";position:absolute;inset:0;background-image:linear-gradient(#ffffff09 1px,transparent 1px),linear-gradient(90deg,#ffffff09 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(transparent,#000 30%,#000 70%,transparent)}.art-top,.art-bottom{position:absolute;z-index:3;left:22px;right:22px;display:flex;justify-content:space-between;color:#a5b5cf;font:10px monospace;letter-spacing:.12em}.art-top{top:20px}.art-top span:last-child{color:#87e7df}.art-bottom{bottom:20px}.ring{position:absolute;border:1px solid #88c4ff55;border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-18deg)}.r1{width:56%;height:56%}.r2{width:75%;height:39%}.r3{width:44%;height:76%}.orb{position:absolute;border-radius:50%;filter:blur(25px)}.orb-a{width:220px;height:220px;background:#2f74f060;top:18%;left:17%}.orb-b{width:180px;height:180px;background:#16dddc35;bottom:8%;right:10%}.orbit-line{position:absolute;width:85%;height:1px;background:linear-gradient(90deg,transparent,#86caff90,transparent);left:8%;top:50%;transform:rotate(-32deg)}.l2{transform:rotate(32deg)}.node{position:absolute;border-radius:50%;background:#b1ffff;box-shadow:0 0 20px #63e5fa}.n1{width:9px;height:9px;top:26%;left:28%}.n2{width:7px;height:7px;right:19%;top:37%}.n3{width:12px;height:12px;bottom:25%;right:35%}.core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:150px;height:150px;border:1px solid #a9deff99;background:radial-gradient(circle at 35% 25%,#97f5f0,#355eac 45%,#101c40 80%);border-radius:50%;box-shadow:0 0 60px #568dff66,inset -15px -20px 40px #030b2c;display:grid;place-items:center;text-align:center;font-size:11px;letter-spacing:.22em;font-weight:bold}.ticker{border-block:1px solid var(--line);overflow:hidden;padding:17px 0;color:#94a8c6;font:11px monospace;letter-spacing:.19em;white-space:nowrap}.ticker div{width:max-content;animation:ticker 32s linear infinite}.ticker b{color:#76dce9;padding:0 32px}@keyframes ticker{to{transform:translateX(-50%)}}.section{padding-top:125px;padding-bottom:125px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:48px}.section-head>p{max-width:405px;color:var(--muted);font-size:15px}.caution,.visual-note{font-size:12px;color:#8493ab}.caution{display:inline-block;margin-top:10px}h2{font-size:clamp(34px,3.5vw,52px);letter-spacing:-.035em;margin-top:20px}.works-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.work{display:block;min-width:0}.work-art{height:310px;position:relative;overflow:hidden;background:#18253e}.work-one .work-art{background:radial-gradient(circle at 50% 60%,#607aa6,#152343 65%)}.work-two .work-art{background:radial-gradient(circle at 50% 60%,#795a8d,#271d3e 65%)}.work-three .work-art{background:radial-gradient(circle at 50% 60%,#477c8e,#142c3a 65%)}.work-number{position:absolute;left:20px;top:18px;font:10px monospace;letter-spacing:.16em;color:#d7eaff;z-index:2}.play{position:absolute;right:18px;bottom:18px;display:grid;place-items:center;width:43px;height:43px;border:1px solid #ffffff75;border-radius:50%;font-size:19px;transition:background .25s,color .25s}.work:hover .play{background:white;color:#101827}.abstract{position:absolute;inset:14%;transition:transform .5s}.work:hover .abstract{transform:scale(1.08)}.abstract-one div{position:absolute;inset:17% 23%;border-radius:50% 50% 38% 38%;background:repeating-linear-gradient(45deg,#b1c4d8,#b1c4d8 3px,#7891aa 4px,#7891aa 7px);transform:rotate(-14deg);box-shadow:0 24px 50px #0a152888}.abstract-one div:before{content:"";position:absolute;width:45%;height:45%;border:10px solid #a7bacd;border-bottom:0;border-radius:50% 50% 0 0;top:-24%;left:24%}.abstract-two i{position:absolute;top:27%;width:32%;height:44%;border-radius:50%;background:radial-gradient(circle at 30% 25%,#e9b4d2,#a82755 46%,#3e102c 80%);box-shadow:0 15px 35px #120b2888}.abstract-two i:first-child{left:17%}.abstract-two i:last-child{right:17%;top:38%}.abstract-two:before{content:"";position:absolute;width:30%;height:40%;left:40%;top:0;border-left:2px solid #a0c6b6;transform:rotate(40deg)}.abstract-three i{position:absolute;bottom:10%;height:65%;width:24%;border:1px solid #8dc9d7;background:linear-gradient(145deg,#accbd3,#416477 60%,#1b354c);transform:rotate(-10deg);box-shadow:0 20px 30px #07172277}.abstract-three i:nth-child(1){left:16%}.abstract-three i:nth-child(2){left:38%;height:80%;transform:rotate(6deg)}.abstract-three i:nth-child(3){left:60%;transform:rotate(15deg)}.work-info{display:flex;justify-content:space-between;align-items:end;padding:19px 2px;border-bottom:1px solid var(--line)}.work-info span{font-size:11px;color:#9aacc5}.work-info h3{font-size:18px;margin-top:8px}.work-info .work-arrow{font-size:20px;color:#b1dfe9}.visual-note{margin-top:20px}.services{background:#101727;border-block:1px solid var(--line)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#ffffff16;border:1px solid #ffffff16}.service{position:relative;background:#111a2a;min-height:250px;padding:28px;transition:background .25s,transform .25s}.service:hover{background:#19263c;transform:translateY(-4px);z-index:1}.service-num{font:10px monospace;color:#91a4bd;letter-spacing:.12em}.icon{font-size:30px;color:#9cdbe7;margin:25px 0 18px}.service h3{font-size:20px}.service p{color:#9eacc2;font-size:14px;max-width:275px;margin-top:12px}.service-arrow{position:absolute;right:28px;bottom:25px;color:#7bc3d5}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid #617188}.step{padding:30px 26px 10px 0}.step+.step{padding-left:26px;border-left:1px solid var(--line)}.step-num{font:28px monospace;color:#9cdde8}.step-num span{display:block;margin-top:10px;color:#74859f;font-size:10px;letter-spacing:.17em}.step h3{font-size:20px;margin-top:35px}.step p{font-size:14px;color:var(--muted);margin-top:14px;max-width:230px}.faq-section{background:#101727}.faq-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:80px}.faq-layout>div>p{color:var(--muted);margin-top:24px;font-size:15px}.faq-list{border-top:1px solid #ffffff30}.faq-list details{border-bottom:1px solid #ffffff25}.faq-list summary{list-style:none;cursor:pointer;padding:24px 0;font-size:16px;font-weight:700;display:flex;justify-content:space-between;gap:20px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font-size:23px;line-height:1;color:#8fdce9}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{color:var(--muted);font-size:14px;padding:0 35px 25px 0}.contact-card{overflow:hidden;position:relative;border:1px solid #ffffff25;padding:75px 8%;background:linear-gradient(110deg,#152640,#101a2d 65%,#182c48)}.contact-card>*{position:relative}.contact-glow{position:absolute;width:420px;height:420px;right:-5%;top:-30%;border:1px solid #8cd3f65c;border-radius:50%;box-shadow:0 0 100px #3e72de44,inset 0 0 100px #37c3e82c}.contact-glow:before,.contact-glow:after{content:"";position:absolute;inset:12%;border:1px solid #8cd3f638;border-radius:50%}.contact-glow:after{inset:25%}.contact-card h2{font-size:clamp(36px,4.2vw,60px);margin-top:22px}.contact-card>p{color:#b0bed2;margin-top:20px}.contact-card .contact-warning{font-size:12px;color:#9babc1;margin-top:20px}footer{border-top:1px solid var(--line);padding:50px 0;color:#a3b1c4}.footer-inner{display:flex;justify-content:space-between;gap:30px}.footer-inner .brand{color:white}.footer-inner p{font:10px monospace;letter-spacing:.15em;margin:15px 0}.footer-nav{display:flex;gap:24px;font-size:13px}.footer-meta{text-align:right;font-size:12px}.reveal{opacity:0;transform:translateY(24px);transition:opacity .65s,transform .65s}.reveal.in{opacity:1;transform:none}@media(max-width:900px){.wrap{width:min(100% - 40px,720px)}.links{position:absolute;display:none;top:78px;left:0;right:0;background:#101827;padding:20px;flex-direction:column;align-items:stretch;gap:0;border-bottom:1px solid #ffffff25}.links.open{display:flex}.links a{padding:13px 10px}.links .nav-cta{margin-top:8px;text-align:center}.menu{display:flex;flex-direction:column;gap:6px;background:none;border:1px solid #ffffff3b;border-radius:4px;padding:12px}.menu span{display:block;background:white;width:20px;height:1px}.hero{grid-template-columns:1fr;gap:45px;min-height:auto;padding-top:65px}.hero-art{height:400px}.section{padding-top:90px;padding-bottom:90px}.section-head{display:block}.section-head>p{margin-top:24px}.works-grid{grid-template-columns:1fr 1fr}.works-grid .work:last-child{grid-column:span 2}.work-art{height:270px}.service-grid{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr 1fr}.step:nth-child(3){border-left:0;padding-left:0;border-top:1px solid var(--line)}.step:nth-child(4){border-top:1px solid var(--line)}.step{padding-bottom:30px}.faq-layout{grid-template-columns:1fr;gap:35px}.footer-inner{flex-wrap:wrap}.footer-meta{width:100%;text-align:left}}@media(max-width:560px){.review-note{font-size:10px}.nav{height:68px}.links{top:68px}.brand{font-size:16px}.brand svg{width:40px}.hero{padding-top:48px;padding-bottom:55px}.hero-art{height:300px}.art-top,.art-bottom{font-size:8px}.core{width:110px;height:110px;font-size:9px}.hero-caption{margin-top:32px;gap:8px;font-size:11px}h1{font-size:40px;line-height:1.25}.lead{font-size:15px}.section{padding-top:72px;padding-bottom:72px}.works-grid{grid-template-columns:1fr}.works-grid .work:last-child{grid-column:auto}.work-art{height:260px}.service-grid{grid-template-columns:1fr}.service{min-height:215px}.steps{grid-template-columns:1fr}.step,.step+.step,.step:nth-child(3),.step:nth-child(4){border-left:0;border-top:1px solid var(--line);padding:25px 0}.steps{border-top:0}.step h3{margin-top:20px}.contact-card{padding:55px 24px}.contact-card h2{font-size:34px}.footer-nav{flex-wrap:wrap}.btn{width:100%}.actions{gap:10px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}
/* 獨立設計的星雲背板：以藍、青、紫光及線條呼應科技感，不依賴第三方素材。 */
body{background:#060b1c;position:relative;isolation:isolate}body:before,body:after{content:"";position:fixed;z-index:-1;inset:-18%;pointer-events:none}body:before{background:radial-gradient(ellipse at 10% 35%,#0b526a66,transparent 35%),radial-gradient(ellipse at 83% 30%,#42268466,transparent 32%),radial-gradient(ellipse at 52% 95%,#24539a4a,transparent 35%);filter:blur(20px);animation:aurora 16s ease-in-out infinite alternate}body:after{background-image:radial-gradient(1px 1px at 10% 20%,#a9f6ff,transparent),radial-gradient(1px 1px at 75% 10%,#93c8ff,transparent),radial-gradient(2px 2px at 40% 60%,#7ee6f5,transparent),radial-gradient(1px 1px at 90% 80%,#c1a4ff,transparent);background-size:270px 240px,390px 330px,520px 480px,320px 410px;opacity:.42;animation:stars 8s ease-in-out infinite alternate}.hero{position:relative}.hero:before,.hero:after{content:"";position:absolute;z-index:-1;pointer-events:none;border:1px solid #77dafa28;border-radius:50%;width:65%;height:58%;right:-6%;top:2%;transform:rotate(-17deg)}.hero:after{width:85%;height:36%;right:10%;top:15%;transform:rotate(16deg);border-color:#837bff23}.hero-art{transform:perspective(900px) rotateY(-3deg);box-shadow:0 25px 80px #0008,0 0 55px #5b7dff24}.hero-art .r1{animation:orbit-one 15s linear infinite}.hero-art .r2{animation:orbit-two 20s linear infinite}.hero-art .orb-a{animation:float-glow 7s ease-in-out infinite alternate}.hero-art .orb-b{animation:float-glow 9s ease-in-out infinite alternate-reverse}.hero-art .n1,.hero-art .n2,.hero-art .n3{animation:pulse-node 3s ease-in-out infinite alternate}.hero-art .n2{animation-delay:1s}.hero-art .n3{animation-delay:2s}.services,.faq-section{background:linear-gradient(120deg,#101c30e8,#12152ae8)}.service{background:#101c2ed9}.contact-card{background:linear-gradient(110deg,#142947ee,#161a3eee 65%,#1e2750ee)}.work-art:after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 30%,#c4f9ff22 50%,transparent 70%);transform:translateX(-120%);transition:transform .8s;pointer-events:none}.work:hover .work-art:after{transform:translateX(120%)}@keyframes aurora{from{transform:translate3d(-2%,-1%,0) scale(1)}to{transform:translate3d(3%,3%,0) scale(1.08)}}@keyframes stars{from{opacity:.2;transform:translateY(0)}to{opacity:.55;transform:translateY(-20px)}}@keyframes orbit-one{to{transform:translate(-50%,-50%) rotate(342deg)}}@keyframes orbit-two{to{transform:translate(-50%,-50%) rotate(-378deg)}}@keyframes float-glow{to{transform:translate(35px,-24px) scale(1.15)}}@keyframes pulse-node{to{opacity:.45;box-shadow:0 0 6px #63e5fa}}@media(prefers-reduced-motion:reduce){body:before,body:after,.hero-art *{animation:none!important}.hero-art{transform:none}}
/* 全頁持續移動的獨立背板；明確分層，避免被頁面底色遮住。 */
html{background:#060b1c}body{background:transparent;isolation:auto}body:before,body:after{display:none}
body>.ambient{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;background:#060b1c}
body>.review-note,body>main,body>footer{position:relative;z-index:1}body>.header{z-index:20}
.ambient-glow,.ambient-orbit,.ambient-stars,.ambient-beam{position:absolute;pointer-events:none;will-change:transform,opacity}
.ambient-glow{border-radius:50%;filter:blur(32px);mix-blend-mode:screen}
.glow-cyan{width:65vw;height:55vh;left:-25%;top:2%;background:radial-gradient(ellipse,#126b8f9c 0%,#0d49696b 38%,transparent 72%);animation:drift-cyan 9s ease-in-out infinite alternate}
.glow-violet{width:70vw;height:65vh;right:-20%;top:10%;background:radial-gradient(ellipse,#54308a99 0%,#252c6b70 40%,transparent 72%);animation:drift-violet 11s ease-in-out infinite alternate}
.glow-blue{width:65vw;height:45vh;left:20%;bottom:-15%;background:radial-gradient(ellipse,#27589b9c 0%,#1b286873 38%,transparent 72%);animation:drift-blue 12s ease-in-out infinite alternate}
.ambient-orbit{border:1px solid #70e6f83b;border-radius:50%;width:90vw;height:38vh;top:20%;left:5%;transform:rotate(-18deg);animation:ambient-orbit-a 16s ease-in-out infinite alternate}
.orbit-b{width:80vw;height:55vh;top:9%;left:24%;border-color:#a399ff38;transform:rotate(22deg);animation:ambient-orbit-b 19s ease-in-out infinite alternate}
.ambient-stars{inset:-12%;background-image:radial-gradient(circle,#8bf5ff 1px,transparent 2px),radial-gradient(circle,#c5b3ff 1.4px,transparent 2.5px),radial-gradient(circle,#d9fcff 1px,transparent 2px);background-size:197px 169px,313px 227px,397px 307px;background-position:0 0,65px 90px,110px 30px;opacity:.5;animation:star-drift 15s linear infinite alternate}
.stars-b{background-size:281px 217px,389px 263px,463px 349px;background-position:100px 45px,10px 130px,180px 80px;opacity:.3;animation-duration:22s;animation-direction:alternate-reverse}
.ambient-beam{width:55vw;height:1px;left:-20%;top:27%;background:linear-gradient(90deg,transparent,#75f4ffb0,#9f9dff90,transparent);box-shadow:0 0 15px #62e7ffb0;transform:rotate(-20deg);animation:beam-sweep 8s ease-in-out infinite alternate}
.beam-b{width:45vw;left:55%;top:65%;transform:rotate(24deg);background:linear-gradient(90deg,transparent,#a394ffae,#68e5f99e,transparent);animation-duration:10s;animation-direction:alternate-reverse}
@keyframes drift-cyan{from{transform:translate3d(-3%,-5%,0) scale(.9)}to{transform:translate3d(33%,25%,0) scale(1.18)}}
@keyframes drift-violet{from{transform:translate3d(8%,-10%,0) scale(.88)}to{transform:translate3d(-30%,24%,0) scale(1.2)}}
@keyframes drift-blue{from{transform:translate3d(-15%,4%,0)}to{transform:translate3d(25%,-35%,0) scale(1.15)}}
@keyframes ambient-orbit-a{from{transform:translate3d(-5%,-5%,0) rotate(-18deg)}to{transform:translate3d(10%,20%,0) rotate(-5deg)}}
@keyframes ambient-orbit-b{from{transform:translate3d(4%,0,0) rotate(22deg)}to{transform:translate3d(-12%,12%,0) rotate(5deg)}}
@keyframes star-drift{from{transform:translate3d(-2%,-2%,0);opacity:.23}to{transform:translate3d(5%,7%,0);opacity:.65}}
@keyframes beam-sweep{from{transform:translate3d(-15%,-90px,0) rotate(-20deg);opacity:.28}to{transform:translate3d(65%,130px,0) rotate(-12deg);opacity:.85}}
@media(max-width:560px){.ambient-glow{filter:blur(18px)}.glow-cyan,.glow-violet,.glow-blue{width:95vw;height:45vh}.ambient-orbit{width:150vw}.ambient-stars{background-size:200px 170px,270px 220px,330px 280px}.stars-b{display:none}.ambient-beam{width:90vw}}
@media(prefers-reduced-motion:reduce){.ambient *{animation:none!important;will-change:auto}.ambient-stars{opacity:.3}.ambient-beam{opacity:.3}}
/* 清晰細線加柔光，光暈停留於內容背後，不模糊文字。 */
.ambient-orbit{box-shadow:0 0 10px #72d6ff35,inset 0 0 9px #7f99ff20}
.ambient-beam{box-shadow:0 0 5px 1px #a7ebff70,0 0 20px 3px #76d8ff38}
.pointer-glow{position:absolute;top:0;left:0;width:180px;height:180px;margin:-90px 0 0 -90px;border-radius:50%;pointer-events:none;opacity:0;background:radial-gradient(circle,#91f1ff50 0%,#65caff22 22%,#6279ff0d 48%,transparent 72%);transition:opacity .25s;will-change:transform,opacity}
.pointer-glow.visible{opacity:.85}
@media(hover:none),(pointer:coarse){.pointer-glow{display:none}}
@media(prefers-reduced-motion:reduce){.pointer-glow{display:none!important}}
/* 依觀察調整：稀疏連線、緩慢旋轉的軌道與長光束，保留原創繪製。 */
.ambient-network{position:absolute;inset:0;width:100%;height:100%;opacity:.65;pointer-events:none}
.ambient-orbit{width:590px;height:590px;left:auto;right:-9%;top:-15%;border-color:#84caff23;box-shadow:0 0 10px #80cfff20,inset 0 0 9px #7f99ff18;animation:node-orbit 19s linear infinite}
.ambient-orbit:after{content:"";position:absolute;width:7px;height:7px;border-radius:50%;left:11%;top:18%;background:#75f1ff;box-shadow:0 0 9px 3px #4bd9ff88}
.orbit-b{width:510px;height:510px;right:auto;left:-20%;top:14%;border-style:dashed;border-color:#9c93ff20;animation-duration:27s;animation-direction:reverse}
.orbit-c{width:300px;height:670px;right:18%;top:-35%;border-color:#8de9ff1c;animation-duration:17s}
.ambient-beam{width:70vw;left:-8%;top:27%;height:1px;animation-duration:9s;box-shadow:0 0 5px 1px #a7ebff60,0 0 20px 3px #76d8ff30}
.beam-b{left:35%;top:57%;width:68vw;animation-duration:11s;background:linear-gradient(90deg,transparent,#a394ffbd,transparent)}
.beam-c{left:-20%;top:8%;width:48vw;animation:beam-sweep 13s -3s ease-in-out infinite alternate;background:linear-gradient(90deg,transparent,#8cb8ffb5,transparent)}
.pointer-glow{width:520px;height:520px;margin:-260px 0 0 -260px;background:radial-gradient(circle,rgba(82,232,255,.11) 0%,rgba(108,110,255,.055) 28%,transparent 68%);transition:opacity .35s}
.pointer-glow.visible{opacity:1}
@keyframes node-orbit{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
@media(max-width:560px){.ambient-orbit{width:420px;height:420px;right:-45%;top:-9%}.orbit-b{left:-70%;top:18%}.orbit-c{display:none}.ambient-beam{width:110vw}.beam-c{display:none}}
@media(prefers-reduced-motion:reduce){.ambient-network{opacity:.45}.ambient-orbit,.ambient-beam{animation:none!important}.ambient-orbit:after{box-shadow:none}}
/* 保留既有背板動畫與節奏，只平衡藍紫光色。 */
.glow-cyan{background:radial-gradient(ellipse,#244d9b99 0%,#283b826b 38%,transparent 72%)}
.glow-violet{background:radial-gradient(ellipse,#733db0aa 0%,#3a2e846f 40%,transparent 72%)}
.glow-blue{background:radial-gradient(ellipse,#4157a99c 0%,#432a7b75 38%,transparent 72%)}
.ambient-orbit{border-color:#a6a2ff36;box-shadow:0 0 10px #a28bff32,inset 0 0 9px #85baff20}
.ambient-orbit:after{background:#b5a2ff;box-shadow:0 0 9px 3px #9f79ff88}
.orbit-b{border-color:#79aaff35}.orbit-b:after{background:#8bd7ff;box-shadow:0 0 9px 3px #729dff88}
.orbit-c{border-color:#b18eff30}.orbit-c:after{background:#ccabff}
.beam-a{background:linear-gradient(90deg,transparent,#87c5ffbe,#a98bffb0,transparent);box-shadow:0 0 5px 1px #a7bfff60,0 0 20px 3px #8b78ff45}
.beam-b{background:linear-gradient(90deg,transparent,#c48cffc0,#91b6ffad,transparent);box-shadow:0 0 6px #c68fff75,0 0 22px #a174ff48}
.beam-c{background:linear-gradient(90deg,transparent,#9caeffb8,#c498ffa0,transparent)}
.pointer-glow{background:radial-gradient(circle,rgba(137,165,255,.11) 0%,rgba(166,112,255,.06) 28%,transparent 68%)}
/* 六張獨立服務卡，微型動畫均為原創幾何示意。 */
.service-grid{gap:16px;background:none;border:0}.service{border:1px solid #8091d62e;border-radius:14px;background:linear-gradient(155deg,#172440f0,#11172dee);padding:24px;min-height:315px;overflow:hidden}.service:hover{background:linear-gradient(155deg,#202c4cf5,#191c3cf5);border-color:#a18cf25c}.service-num{color:#a7a4d9}.service-visual{height:132px;border:1px solid #879de638;border-radius:10px;position:relative;overflow:hidden;margin:16px 0 21px;background:radial-gradient(circle at 70% 50%,#46328555,transparent 48%),linear-gradient(120deg,#091328,#101029)}.service-visual:before{content:"";position:absolute;inset:0;background-image:linear-gradient(#a2bcff0c 1px,transparent 1px),linear-gradient(90deg,#a2bcff0c 1px,transparent 1px);background-size:22px 22px}.service-visual>span{position:absolute;left:12px;bottom:9px;font:8px monospace;letter-spacing:.14em;color:#a2afd4}.service-visual i,.service-visual b{font-style:normal}.service h3{font-size:20px}.service p{max-width:none;padding-right:10px}.service-arrow{right:22px;bottom:19px}
.sv-frame{position:absolute;width:100px;height:68px;left:50%;top:48%;transform:translate(-50%,-50%) rotate(-5deg);border:1px solid #9dbbff99;border-radius:8px;background:#26356677;box-shadow:0 0 24px #8774ff45;overflow:hidden;animation:sv-float 4s ease-in-out infinite alternate}.sv-play{position:absolute;left:39%;top:27%;color:#b5d7ff;font-size:24px;text-shadow:0 0 12px #9d9fff}.sv-scan{position:absolute;left:0;right:0;height:1px;background:#c3c7ff;box-shadow:0 0 8px #a0a9ff;animation:sv-scan 3s ease-in-out infinite alternate}.sv-sparkle{position:absolute;color:#d2bcff;text-shadow:0 0 12px #b27bff;animation:sv-twinkle 2.8s ease-in-out infinite alternate}.s-a{left:25%;top:25%;font-size:19px}.s-b{right:23%;top:56%;font-size:15px;animation-delay:-1.4s}
.sv-phone{position:absolute;top:14px;left:36%;height:100px;width:52px;border:2px solid #98c0fc;border-radius:11px;background:#172553;box-shadow:0 0 22px #767cff45;animation:sv-float 4s ease-in-out infinite alternate}.sv-phone i{display:block;text-align:center;padding-top:20px;color:#c5b8ff}.sv-phone b{display:block;width:25px;height:3px;background:#8a91ca;margin:7px auto 0;border-radius:4px}.sv-phone b:last-child{width:17px}.sv-wave{position:absolute;display:flex;align-items:end;gap:4px;left:60%;top:46%;height:32px}.sv-wave i{width:4px;height:55%;border-radius:3px;background:#ad8eff;animation:sv-wave 1.2s ease-in-out infinite alternate}.sv-wave i:nth-child(2){animation-delay:-.3s;height:80%}.sv-wave i:nth-child(3){animation-delay:-.6s;height:35%}.sv-wave i:nth-child(4){animation-delay:-.8s;height:65%}.sv-wave i:nth-child(5){animation-delay:-.2s;height:45%}
.sv-shape{position:absolute;top:29%;width:56px;height:56px;mix-blend-mode:screen;animation:sv-float 4.5s ease-in-out infinite alternate}.sv-shape.circle{left:31%;border-radius:50%;background:#a67affaa}.sv-shape.square{left:43%;top:37%;background:#639df0aa;transform:rotate(15deg);animation-delay:-1s}.sv-shape.diamond{left:53%;top:25%;width:46px;height:46px;background:#df9cf099;transform:rotate(45deg);animation-delay:-2s}.sv-swatches{position:absolute;right:15%;bottom:18%;display:flex;gap:4px}.sv-swatches i{width:8px;height:8px;border-radius:50%;background:#b28eff}.sv-swatches i:nth-child(2){background:#77b7fb}.sv-swatches i:nth-child(3){background:#db9cdb}
.sv-browser{position:absolute;left:32%;top:20%;width:126px;height:78px;border:1px solid #9aa9f3;border-radius:7px;background:#131d42;box-shadow:0 0 22px #776ce03f;animation:sv-float 4s ease-in-out infinite alternate}.sv-top{height:16px;border-bottom:1px solid #8795c966;font-size:8px;letter-spacing:2px;color:#b4a0f3;padding:1px 6px}.sv-page{padding:9px}.sv-page i{float:left;width:37px;height:37px;background:linear-gradient(140deg,#9671d8,#5185ce);border-radius:3px;margin-right:8px}.sv-page b{display:block;background:#899bd0;height:4px;width:42px;margin:4px 0 7px;border-radius:3px}.sv-page b:last-child{width:28px;opacity:.6}.sv-cursor{position:absolute;left:66%;top:59%;color:#d3c5ff;font-size:21px;text-shadow:0 0 8px #9d85ff;animation:sv-cursor 3.5s ease-in-out infinite alternate}
.sv-message{position:absolute;border:1px solid #a5a7f5aa;background:#433e7a99;box-shadow:0 0 18px #9276ff35;border-radius:12px 12px 12px 2px;text-align:center;color:#e1d4ff}.msg-one{width:70px;height:42px;left:35%;top:23%;font-size:22px;line-height:25px;animation:sv-float 3.5s ease-in-out infinite alternate}.msg-two{width:52px;height:38px;left:53%;top:50%;font-size:22px;line-height:33px;background:#25548599;animation:sv-float 3.5s -1.5s ease-in-out infinite alternate}.sv-social-orbit{position:absolute;inset:13% 29%;border:1px dashed #a79aff55;border-radius:50%;animation:sv-rotate 12s linear infinite}
.sv-route{position:absolute;left:20%;right:20%;top:37%;display:flex;align-items:center}.sv-route i{display:grid;place-items:center;flex:0 0 34px;height:34px;border:1px solid #a49af0;border-radius:9px;color:#d9cbff;background:#353068}.sv-route b{height:1px;flex:1;background:#899cf2}.sv-route-pulse{position:absolute;top:48%;left:22%;width:6px;height:6px;border-radius:50%;background:#c7b5ff;box-shadow:0 0 9px #b3a0ff;animation:sv-route 3s ease-in-out infinite alternate}
@keyframes sv-float{from{translate:0 -3px}to{translate:0 4px}}@keyframes sv-scan{from{top:0;opacity:.25}to{top:100%;opacity:.8}}@keyframes sv-twinkle{from{opacity:.25;transform:scale(.7)}to{opacity:1;transform:scale(1.1)}}@keyframes sv-wave{from{transform:scaleY(.4)}to{transform:scaleY(1)}}@keyframes sv-cursor{from{transform:translate(-10px,7px)}to{transform:translate(10px,-6px)}}@keyframes sv-rotate{to{transform:rotate(360deg)}}@keyframes sv-route{from{left:24%}to{left:75%}}
@media(max-width:560px){.service{min-height:0}.service-visual{height:120px}.sv-phone{height:90px}.service p{padding-bottom:12px}}
@media(prefers-reduced-motion:reduce){.service-visual *{animation:none!important}.service-visual .sv-scan{top:50%;opacity:.5}.service-visual .sv-route-pulse{left:50%}}
.standard-grid,.compare-grid,.use-grid{display:grid;gap:16px}.standard-grid{grid-template-columns:repeat(4,1fr)}.standard-grid article,.compare-grid article,.use-card,.price-card,.estimate-card{border:1px solid #8f9ddd35;border-radius:14px;background:linear-gradient(145deg,#17243bed,#10182ceb);padding:25px}.standard-grid span,.use-card>span{font:11px monospace;letter-spacing:.15em;color:#aea4ef}.standard-grid h3,.compare-grid h3,.use-card h3{font-size:19px;margin:22px 0 12px}.standard-grid p,.compare-grid p,.use-card p,.price-card p,.estimate-card p{font-size:14px;color:var(--muted)}.compare-grid{grid-template-columns:1fr 1fr;margin-top:16px}.compare-grid .compare-featured{background:linear-gradient(130deg,#233358ef,#282253ef);border-color:#aa94ff70}.compare-label{font-size:12px;color:#b3c3e8}.compare-grid h3{margin-top:12px}.use-section,.pricing-section{background:linear-gradient(120deg,#101a30e8,#1a1735e8)}.use-grid{grid-template-columns:repeat(4,1fr)}.use-art{height:145px;position:relative;overflow:hidden;border-radius:10px;margin-bottom:20px;background:radial-gradient(circle at 50% 50%,#4d388b99,#0b162b 70%);border:1px solid #8c9df23a}.use-art>*{position:absolute}.use-cube{width:54px;height:54px;left:calc(50% - 27px);top:42px;background:linear-gradient(135deg,#a794ed,#537cd4);transform:rotate(30deg) skew(-8deg,-8deg);box-shadow:0 0 30px #9983ff70;animation:use-float 4s ease-in-out infinite alternate}.use-orbit{border:1px solid #a899ff70;border-radius:50%;width:110px;height:70px;left:calc(50% - 55px);top:38px;animation:use-spin 12s linear infinite}.use-avatar,.first-avatar{width:57px;height:57px;left:calc(50% - 28px);top:42px;background:linear-gradient(#ac8fff,#5487db);border-radius:50%;box-shadow:0 0 22px #ad8aff77;animation:use-float 4s ease-in-out infinite alternate}.use-avatar:before,.first-avatar:before{content:"";position:absolute;width:18px;height:18px;left:19px;top:10px;border-radius:50%;background:#e1d9ff}.use-avatar i,.first-avatar i{position:absolute;width:32px;height:18px;left:12px;bottom:8px;border-radius:20px 20px 10px 10px;background:#e1d9ff}.use-book{width:70px;height:70px;left:calc(50% - 35px);top:35px;border:1px solid #b9aeff;border-radius:7px;background:#29255f;transform:rotate(-8deg);animation:use-float 4s ease-in-out infinite alternate}.use-book i{display:block;width:45px;height:3px;margin:12px auto;background:#b7b5e9;border-radius:5px}.use-spark{left:68%;top:22%;color:#e3baff;font-size:22px;text-shadow:0 0 10px #c796ff;animation:sv-twinkle 3s ease-in-out infinite alternate}.use-moon{width:48px;height:48px;left:39%;top:23%;border-radius:50%;background:linear-gradient(140deg,#f0d9ff,#918df5);box-shadow:0 0 25px #a190fd;animation:use-float 4s ease-in-out infinite alternate}.use-hill{width:140%;height:80px;bottom:-50px;left:-20%;background:#474384;border-radius:50% 50% 0 0}.six-steps{grid-template-columns:repeat(3,1fr);border:0;gap:16px}.six-steps .step,.six-steps .step+.step,.six-steps .step:nth-child(3),.six-steps .step:nth-child(4){border:1px solid #ffffff22;border-top:1px solid #a39ffb60;border-radius:10px;padding:24px;background:#121d31b5}.six-steps .step h3{margin-top:23px}.first-project{padding-top:70px}.first-card{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;border:1px solid #a394ff55;border-radius:16px;padding:55px;background:linear-gradient(120deg,#182c48eb,#29204aeb);overflow:hidden}.first-card p{color:var(--muted);margin-top:22px;max-width:520px}.first-card ul{display:flex;gap:18px;flex-wrap:wrap;padding:0;list-style:none;color:#d2d8f2;font-size:13px;margin-top:24px}.first-card li:before{content:"✦";color:#b5a1ff;margin-right:7px}.first-art{height:280px;position:relative;background:radial-gradient(circle,#7a64d677,transparent 60%)}.first-ring{position:absolute;width:220px;height:220px;left:calc(50% - 110px);top:30px;border:1px solid #b9a7ff78;border-radius:50%;animation:use-spin 16s linear infinite}.first-avatar{width:100px;height:100px;left:calc(50% - 50px);top:90px}.first-avatar:before{width:28px;height:28px;left:36px;top:20px}.first-avatar i{width:54px;height:30px;left:23px;bottom:15px}.first-art span{position:absolute;bottom:10px;left:0;right:0;text-align:center;font:10px monospace;letter-spacing:.2em;color:#aaa9d6}.pricing-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.price-card,.estimate-card{padding:32px}.price-card h3,.estimate-card h3{font-size:22px;margin:18px 0}.price-line{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-top:24px}.price-line strong{font-size:36px;color:#dfd5ff}.price-line span{color:#aebbd0;font-size:13px}.secondary-price{margin-top:10px}.secondary-price strong{font-size:25px}.price-card p{margin-top:20px}.price-card .btn{margin-top:28px}.estimate-value{display:flex;justify-content:space-between;align-items:center;margin-top:28px}.estimate-value output{font-size:25px;color:#d9d0ff}.estimate-value span,.range-label,.estimate-total span{font-size:12px;color:#a2b1c9}.estimate-card input[type=range]{width:100%;accent-color:#a397ff;margin:22px 0 5px}.range-label{display:flex;justify-content:space-between}.estimate-total{border-top:1px solid #ffffff23;margin-top:28px;padding-top:20px;display:flex;align-items:center;justify-content:space-between;gap:15px}.estimate-total output{font-size:28px;font-weight:bold;color:#d6cbff}.estimate-card .visual-note{margin-top:18px}.contact-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:50px}.brief-form{display:grid;grid-template-columns:1fr 1fr;gap:15px;position:relative}.brief-form>label{font-size:13px;color:#d5def1}.brief-form>label:nth-child(3),.brief-form>label:nth-child(4),.brief-form fieldset,.brief-form button{grid-column:1/-1}.brief-form input[type=text],.brief-form textarea{display:block;width:100%;margin-top:7px;padding:12px;border:1px solid #8795bd66;border-radius:5px;background:#0d1729;color:white;font:inherit;resize:vertical}.brief-form fieldset{border:0;padding:0;margin:0}.brief-form legend{font-size:13px;color:#d5def1}.platforms{display:flex;gap:12px;flex-wrap:wrap;margin-top:10px;color:#c3cfe1;font-size:13px}.platforms input{accent-color:#a898ff}.preview-disabled{width:100%;background:#38425b;color:#bec7d7;cursor:not-allowed;border:1px solid #75809c}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes use-float{from{translate:0 -4px}to{translate:0 5px}}@keyframes use-spin{to{transform:rotate(360deg)}}@media(max-width:900px){.standard-grid,.use-grid{grid-template-columns:repeat(2,1fr)}.six-steps{grid-template-columns:repeat(2,1fr)}.first-card,.contact-layout{grid-template-columns:1fr}.first-art{height:240px}.first-ring{top:10px}.first-avatar{top:70px}}@media(max-width:560px){.standard-grid,.use-grid,.compare-grid,.six-steps,.pricing-grid{grid-template-columns:1fr}.first-card{padding:30px 24px}.brief-form{grid-template-columns:1fr}.brief-form>label,.brief-form fieldset,.brief-form button{grid-column:1}.price-card,.estimate-card{padding:25px}.price-line strong{font-size:29px}.estimate-total output{font-size:24px}}@media(prefers-reduced-motion:reduce){.use-art *,.first-art *{animation:none!important}}
/* 置中浮動導覽與閱讀進度 */
html{scroll-padding-top:112px}.read-progress{position:fixed;z-index:100;left:0;right:0;top:0;height:3px;background:#19122a}.read-progress-fill{height:100%;width:100%;transform:scaleX(0);transform-origin:left center;background:linear-gradient(90deg,#8a68ef,#ca89ff);box-shadow:0 0 8px #b38bff}
.header{position:sticky;top:10px;width:min(1280px,calc(100% - 40px));margin:10px auto 0;border:1px solid #8da0db3d;border-radius:18px;background:#0a1025e8;box-shadow:0 12px 35px #0004;overflow:visible}.header .nav{width:100%;height:70px;padding:0 20px}.header .links{gap:19px;font-size:13px}.header .nav-cta{padding:9px 14px}.header .nav-cta span{padding-left:8px}
@media(max-width:1050px){.header .brand{font-size:15px}.header .brand svg{width:37px}.header .links{gap:12px;font-size:12px}}
@media(max-width:900px){html{scroll-padding-top:100px}.header{width:calc(100% - 24px);top:8px}.header .nav{height:64px;padding:0 15px}.header .links{top:72px;left:-1px;right:-1px;border:1px solid #8191ca55;border-radius:12px;background:#10182cf7;gap:0;padding:10px}.header .links a{font-size:14px}.header .links .nav-cta{margin-top:6px}}
/* 桌機導覽以視窗中心為基準，不受左側標誌寬度影響。 */
.header .nav{position:relative}.header .links{position:absolute;left:50%;right:auto;transform:translateX(-50%);gap:15px;white-space:nowrap}.header .nav-cta{background:linear-gradient(110deg,#a5e3ff,#849cf5);color:#0b1830!important;border-color:#b5d7ff;border-radius:7px;box-shadow:0 0 18px #659cff35}.header .nav-cta:hover{background:linear-gradient(110deg,#c3efff,#a9baff);color:#091326!important}.header .nav-cta span{color:#1a3464}
@media(max-width:1050px) and (min-width:901px){.header .links{gap:10px;font-size:11px}.header .nav-cta{padding:8px 10px}}
@media(max-width:900px){.header .links{position:absolute;left:-1px;right:-1px;transform:none;white-space:normal}.header .links .nav-cta{color:#0b1830!important}}
/* 集中而柔和的游標光，保持在文字下方。 */
.pointer-glow{width:270px;height:270px;margin:-135px 0 0 -135px;background:radial-gradient(circle,rgba(151,174,255,.26) 0%,rgba(163,120,255,.13) 24%,rgba(118,141,255,.045) 48%,transparent 70%)}
/* 兩軌內容與寬度完全相同，位移一軌後無縫銜接。 */
.ticker .ticker-track{display:flex;width:max-content;animation:ticker 32s linear infinite}.ticker .ticker-group{display:flex;align-items:center;gap:32px;flex:0 0 auto;width:auto;padding-right:32px;animation:none}.ticker .ticker-group b{padding:0}.ticker .ticker-group span{white-space:nowrap}
@media(prefers-reduced-motion:reduce){.ticker .ticker-track{animation:none!important}}
/* 雙排無縫：兩組等寬重複，上英文左行，下中文右行。 */
.ticker{padding:10px 0}.ticker .ticker-track{height:25px}.ticker .ticker-chinese{animation:ticker-right 32s linear infinite;color:#aab8d6}.ticker .ticker-group{gap:32px;padding-right:32px}@keyframes ticker-right{from{transform:translateX(-50%)}to{transform:translateX(0)}}
.hero-caption{margin-top:42px;gap:20px;font-size:13px}.hero-caption span{display:inline-flex;align-items:center;gap:7px}.hero-caption b{display:inline-grid;place-items:center;width:19px;height:19px;border:1px solid #52ca9b88;border-radius:50%;color:#64e1ad;font-size:12px;line-height:1}
/* 垂直時間軸：光球跟隨滾動，六項保持獨立。 */
.timeline{position:relative;padding-left:48px;display:grid;gap:12px}.timeline-rail{position:absolute;left:18px;top:0;bottom:0;width:2px;background:#8791cb40}.timeline-fill{position:absolute;top:0;left:0;width:100%;height:0;background:linear-gradient(#7bbaff,#b98bff);box-shadow:0 0 12px #a58fff}.timeline-ball{position:absolute;left:50%;top:0;width:12px;height:12px;border-radius:50%;background:#d6d1ff;transform:translate(-50%,-50%);box-shadow:0 0 9px 4px #a992ff9c}.timeline-step{display:grid;grid-template-columns:48px 46px 1fr;align-items:center;gap:20px;padding:22px 28px;border:1px solid #8592d83d;border-radius:12px;background:linear-gradient(110deg,#142138ed,#1c1c3bef)}.timeline-number{font:18px monospace;color:#a99be9}.timeline-icon{display:grid;place-items:center;width:42px;height:42px;border:1px solid #9ba7ed55;border-radius:10px;background:#2c3264;color:#c9baff;font-size:21px}.timeline-step h3{font-size:19px}.timeline-step p{font-size:14px;color:var(--muted);margin-top:7px}
/* 原創真人風格圖：雙層浮卡和三項角色說明。 */
.first-card li:before{content:"✓";display:inline-grid;place-items:center;width:17px;height:17px;margin-right:7px;border:1px solid #59d5a0;border-radius:50%;color:#70e6b3;font-size:11px}.character-composite{position:relative;min-height:350px;margin:12px 0}.character-back{position:absolute;inset:5% 4% 10% 6%;transform:rotate(5deg);border-radius:19px;border:1px solid #a9a0ff66;background:linear-gradient(145deg,#344d82,#38275c);box-shadow:0 24px 55px #0006}.character-photo{position:absolute;inset:5% 4% 10% 6%;overflow:hidden;border-radius:18px;border:1px solid #a3b4f47a;box-shadow:0 25px 65px #0009;transform:rotate(-2deg);background:#101b37}.character-photo img{width:100%;height:100%;object-fit:cover;object-position:62% center}.character-photo:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#080e20df)}.character-photo span{position:absolute;z-index:1;bottom:15px;left:18px;color:#d7dbfb;font:9px monospace;letter-spacing:.16em}.character-float{position:absolute;z-index:2;display:grid;grid-template-columns:25px 1fr;gap:2px 7px;padding:10px 12px;border:1px solid #99a5e258;border-radius:10px;background:#111a31e8;box-shadow:0 10px 25px #0007;animation:sv-float 4s ease-in-out infinite alternate}.character-float b{grid-row:1/3;display:grid;place-items:center;width:20px;height:20px;border:1px solid #5cdaa4;border-radius:50%;color:#77eab5;font-size:12px}.character-float strong{font-size:12px}.character-float small{font-size:10px;color:#a8b6d1}.cf-one{top:13%;left:-4%}.cf-two{top:45%;right:-5%;animation-delay:-1.3s}.cf-three{bottom:1%;left:18%;animation-delay:-2.6s}
.headline-price{margin-top:28px}.headline-price span,.headline-price strong{display:block}.headline-price span{font-size:20px;color:#c4cdea}.headline-price strong{font-size:clamp(33px,3.3vw,48px);color:#e4dcff;line-height:1.2}.price-includes{padding:0;list-style:none;display:grid;gap:9px;margin:20px 0;color:#cdd7eb;font-size:14px}.price-includes li:before{content:"✓";color:#68e4ad;margin-right:10px}.price-cta{width:100%}.duration-presets{display:flex;flex-wrap:wrap;gap:7px;margin-top:21px}.duration-presets button{border:1px solid #929cdf60;border-radius:7px;padding:7px 10px;color:#cbd7eb;background:#182341;cursor:pointer;font-size:12px;font-family:inherit}.duration-presets button:hover,.duration-presets button[aria-pressed=true]{border-color:#ada4ff;background:#3b3c7c;color:white}.estimate-total{position:relative;overflow:hidden;border:1px solid #999ee754;border-radius:9px;padding:18px;margin-top:28px;background:#101b35}.estimate-total:after{content:"";position:absolute;inset:-50% auto -50% -50%;width:25%;background:linear-gradient(90deg,transparent,#c1baff55,transparent);transform:skewX(-20deg);animation:estimate-sweep 3s linear infinite;pointer-events:none}@keyframes estimate-sweep{0%,25%{left:-40%;opacity:0}35%{opacity:1}70%,100%{left:130%;opacity:0}}
.quality-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.quality-grid article{border:1px solid #8f9ddd35;border-radius:12px;padding:26px;background:#152039d9}.quality-grid span{font:11px monospace;color:#aaa2e5}.quality-grid h3{font-size:19px;margin:18px 0 10px}.quality-grid p{font-size:14px;color:var(--muted)}
.handoff-strip{display:flex;align-items:center;gap:16px;margin-top:28px;padding:17px;border:1px solid #9aa5dc45;border-radius:10px;background:#0e192faa}.handoff-strip span{flex:1;color:#9eadd0;font-size:11px}.handoff-strip strong{display:block;color:#e2e8f9;font-size:13px;margin-top:5px}.handoff-strip b{color:#b8a0ff}.brief-details{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.brief-details div{padding:14px;border:1px solid #8594cb35;border-radius:9px;background:#0d182ba8}.brief-details small,.brief-details strong{display:block}.brief-details small{font-size:10px;color:#a59ddd}.brief-details strong{font-size:12px;color:#d4ddee;margin-top:6px}.brief-form .brief-note,.brief-form .brief-status,.brief-form .brief-output-label{grid-column:1/-1}.brief-note,.brief-status{font-size:12px;color:#aab9d0}.brief-status{color:#8fe7bd}.brief-output-label textarea{width:100%;margin-top:7px;padding:12px;border:1px solid #8795bd66;border-radius:5px;background:#0d1729;color:white;font:inherit;resize:vertical}.generate-brief{width:100%}
@media(max-width:900px){.quality-grid{grid-template-columns:1fr 1fr}.character-composite{min-height:340px}.first-card{gap:20px}}
@media(max-width:560px){.hero-caption{gap:9px;font-size:11px}.hero-caption b{width:17px;height:17px;font-size:10px}.timeline{padding-left:30px}.timeline-rail{left:9px}.timeline-step{grid-template-columns:28px 35px 1fr;gap:10px;padding:18px 12px}.timeline-number{font-size:14px}.timeline-icon{width:34px;height:34px;font-size:17px}.timeline-step h3{font-size:16px}.timeline-step p{font-size:13px}.character-composite{min-height:270px;margin:5px}.character-float{padding:7px;font-size:11px}.cf-one{left:-2%}.cf-two{right:-2%}.cf-three{left:12%}.quality-grid{grid-template-columns:1fr}.brief-details{grid-template-columns:1fr 1fr}.handoff-strip{gap:8px;padding:12px}.brief-form .brief-note,.brief-form .brief-status,.brief-form .brief-output-label{grid-column:1}.duration-presets button{font-size:11px}.ticker .ticker-track{height:23px}}
@media(prefers-reduced-motion:reduce){.ticker .ticker-track,.character-float,.estimate-total:after{animation:none!important}.timeline-ball{display:none}.timeline-fill{height:100%!important}}
.hero-caption b{position:relative;top:-2px}
/* 每組至少覆蓋一個視窗寬，避免寬螢幕循環邊界露出空隙。 */
.ticker .ticker-group{min-width:100vw;justify-content:space-around}
/* 內容預設可見；只有觀察器成功啟動後才啟用漸入。 */
.reveal{opacity:1;transform:none}.js-reveal .reveal{opacity:0;transform:translateY(24px)}.js-reveal .reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.js-reveal .reveal{opacity:1;transform:none}}
/* 導覽外框只包住選項，整組以視窗水平中心定位。 */
html{scroll-padding-top:clamp(110px,19vh,180px)}.header{background:transparent;border:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.header .nav{height:70px}.header .links{top:50%;left:50%;right:auto;transform:translate(-50%,-50%);gap:23px;width:max-content;padding:7px 8px 7px 22px;border:1.5px solid #94a7ed62;border-radius:18px;background:#0a1028ed;box-shadow:0 12px 35px #0008,0 0 24px #8d83ff20;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.header .nav-cta,.generate-brief{background:linear-gradient(105deg,#b6f4ff 0%,#64d6ff 38%,#8198ff 100%);border:1px solid #b5ecff;color:#0b1a34!important;box-shadow:0 0 12px #6bd9ff80,0 0 30px #708bff45}.header .nav-cta:hover,.generate-brief:hover{background:linear-gradient(105deg,#dcfaff,#86e9ff,#a6b8ff);box-shadow:0 0 16px #88e9ffad,0 0 36px #827fff67}
@media(max-width:1100px){html{scroll-padding-top:105px}.header .menu{display:flex}.header .links{display:none;top:72px;left:auto;right:0;transform:none;width:min(340px,calc(100vw - 30px));gap:0;white-space:normal;padding:10px;border-radius:14px}.header .links.open{display:flex}.header .links a{font-size:14px;padding:13px 10px}.header .links .nav-cta{margin-top:6px}.header .nav{height:64px}}
/* 分層卡片：維持文字對比，以邊緣微光強化紫藍深度。 */
.service,.standard-grid article,.compare-grid article,.use-card,.timeline-step,.quality-grid article,.price-card,.estimate-card{border:1.5px solid #8c9ee56b;background:linear-gradient(145deg,#1d3154ed 0%,#24254ced 50%,#171a38f2 100%);box-shadow:inset 0 1px 0 #c1c8ff18,0 9px 30px #04071960,0 0 18px #8678ff16}.service:hover{background:linear-gradient(145deg,#283f67f5,#302957f5 55%,#1d2040f5);border-color:#b5a1ff9c}.compare-grid .compare-featured{background:linear-gradient(135deg,#293b67f2,#3a2b63f2);border-color:#b5a0ff82}.timeline-step{border-top:1.5px solid #b2a8ff9c}.first-card{border:1.5px solid #a79be987;box-shadow:inset 0 1px 0 #d0c9ff1f,0 0 25px #826efa22}
/* 多層影片畫面為原創幾何示意，不替換已認可的人物照片。 */
.character-composite{perspective:900px}.character-back{z-index:0}.character-photo{z-index:1}.scene-deck{position:absolute;inset:0;z-index:0;pointer-events:none;transform-style:preserve-3d}.scene-frame{position:absolute;width:39%;height:37%;border:1px solid #a9b7ff9a;border-radius:10px;overflow:hidden;background:linear-gradient(150deg,#284c83,#2d215c 65%,#111b3d);box-shadow:0 12px 35px #0008,0 0 20px #9181ff40}.scene-frame:before{content:"";position:absolute;inset:0;background:linear-gradient(165deg,transparent 30%,#85b8ff40 31%,transparent 33%),radial-gradient(circle at 67% 31%,#cfb2ff80,transparent 22%)}.scene-frame:after{content:"";position:absolute;inset:auto 8px 7px;height:3px;border-radius:5px;background:linear-gradient(90deg,#a78dff 50%,#64739b 50%)}.scene-frame i{position:absolute;inset:27% 12% 18%;border-radius:50% 50% 4px 4px;background:linear-gradient(140deg,#8ea5e877,#302c6577)}.scene-frame b{position:absolute;top:35%;left:43%;font-size:16px;color:#e0e9ff;text-shadow:0 0 10px #9bb4ff}.scene-one{left:-3%;top:0;transform:rotate(-15deg) translateZ(-75px)}.scene-two{right:-5%;top:2%;transform:rotate(14deg) translateZ(-110px)}.scene-three{right:-3%;bottom:0;transform:rotate(-9deg) translateZ(-135px)}
.brief-form select{display:block;width:100%;margin-top:7px;padding:12px;border:1px solid #8795bd66;border-radius:5px;background:#0d1729;color:#eef3ff;font:inherit}.brief-form>label:nth-child(3),.brief-form>label:nth-child(4){grid-column:auto}.brief-form>label:nth-child(5),.brief-form>label:nth-child(6){grid-column:1/-1}
@media(max-width:560px){html{scroll-padding-top:100px}.header{width:calc(100% - 24px)}.header .links{right:0}.brief-form>label:nth-child(3),.brief-form>label:nth-child(4),.brief-form>label:nth-child(5),.brief-form>label:nth-child(6){grid-column:1}.scene-frame{width:43%;height:34%}}
@media(max-width:1100px){.header .links{flex-direction:column;align-items:stretch}.header .links a{display:block}}
/* 僅以簡短標記區分示意視覺與可點開的原作品。 */
.sample-badge{position:absolute;right:14px;top:14px;z-index:3;border:1px solid #cad7fa66;border-radius:20px;padding:3px 8px;background:#101a30c9;color:#e0e8fa;font-size:10px;letter-spacing:.06em}
.line-guide{grid-column:1/-1}.line-guide .line-button{width:100%;color:#d7f9eb;border:1px solid #70d6a581;background:#183c36}.line-guide p{font-size:12px;color:#aebcd2;margin-top:8px}.brief-form>label:nth-child(5){grid-column:1/-1}
.tilt-card{transition:transform .24s ease,box-shadow .24s ease,opacity .65s ease}.tilt-moving{will-change:transform}
@media(prefers-reduced-motion:reduce){.tilt-card{transition:none!important}}
.line-guide[hidden]{display:none}
/* 首屏外層傾斜不覆寫內層原有變形和動態。 */
.hero-tilt{min-width:0;transform-style:preserve-3d}.hero-art{border-radius:16px}.work-art{border-radius:12px}.btn{border-radius:10px}.menu{border-radius:9px}.brief-form input[type=text],.brief-form textarea,.brief-form select,.brief-output-label textarea{border-radius:9px}.duration-presets button,.timeline-icon,.sv-route i{border-radius:10px}.brief-price-hint{display:block;color:#aabbe0;font-size:11px;margin-top:7px}
.estimate-card input[type=range]:disabled{opacity:.4;cursor:not-allowed}
/* 六個獨立節點與右側長卡：發光時間線穿過節點中心。 */
.timeline{padding-left:0}.timeline-rail{left:21px;z-index:0}.timeline-row{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:20px}.timeline-node{position:relative;z-index:1;display:grid;place-items:center;width:44px;height:44px;border:1px solid #8f9ef5a6;border-radius:13px;background:#14203fdf;color:#b7d7ff;font:13px monospace;box-shadow:0 0 15px #8d85ff38,inset 0 0 12px #8c83ff18}.timeline-step{display:block;min-width:0}.timeline-step h3{margin-top:0}.timeline-ball{z-index:3}
@media(max-width:560px){.timeline{padding-left:0}.timeline-rail{left:17px}.timeline-row{grid-template-columns:36px minmax(0,1fr);gap:12px}.timeline-node{width:36px;height:36px;border-radius:11px;font-size:12px}.timeline-step{display:block;padding:17px 14px}}
/* 兩排方向與節奏維持原設定，僅替換分隔符為紫藍柔光圓點。 */
.ticker .ticker-group .ticker-dot{display:block;flex:0 0 6px;width:6px;height:6px;border-radius:50%;padding:0;background:radial-gradient(circle,#f0eaff 0%,#b294ff 48%,#7b64e9 100%);box-shadow:0 0 5px 2px #ae8eff94,0 0 13px 4px #8c75ff45}.ticker .ticker-group .ticker-dot:nth-of-type(even){background:radial-gradient(circle,#eefbff 0%,#83d9ff 48%,#608cff 100%);box-shadow:0 0 5px 2px #7bc7ff94,0 0 13px 4px #638bff45}
.timeline-node{background:linear-gradient(90deg,transparent 48%,#a8c9ff55 49%,#a8c9ff55 51%,transparent 52%),#14203fdf}
/* 英文每組五點，交錯兩組後再複製，接縫仍維持紫藍交錯；雙倍距離、雙倍時間維持原移速。 */
.ticker .ticker-english{animation-duration:64s}.ticker .ticker-english .ticker-group:nth-child(even) .ticker-dot:nth-of-type(odd){background:radial-gradient(circle,#eefbff 0%,#83d9ff 48%,#608cff 100%);box-shadow:0 0 5px 2px #7bc7ff94,0 0 13px 4px #638bff45}.ticker .ticker-english .ticker-group:nth-child(even) .ticker-dot:nth-of-type(even){background:radial-gradient(circle,#f0eaff 0%,#b294ff 48%,#7b64e9 100%);box-shadow:0 0 5px 2px #ae8eff94,0 0 13px 4px #8c75ff45}
/* 原創商業影像示意分層置於已認可人物照片後方，非客戶實績。 */
.character-photo{inset:12% 9% 14% 9%}.scene-frame{width:46%;height:39%;background-image:linear-gradient(140deg,#12193628,#16113a55),url('assets/commercial-backdrops.png');background-size:100% 100%,200% 200%;background-repeat:no-repeat}.scene-frame:before{background:linear-gradient(140deg,transparent,#18244330)}.scene-frame i{display:none}.scene-one{left:-3%;top:0;background-position:center,0% 0%}.scene-two{right:-5%;top:2%;background-position:center,100% 0%}.scene-three{right:-3%;bottom:0;background-position:center,100% 100%}.scene-four{left:-2%;bottom:0;transform:rotate(12deg) translateZ(-95px);background-position:center,0% 100%}
/* 四個情境縮圖位於人物圖前的四角，三個說明浮標保持最上層。 */
.character-photo{z-index:1}.scene-deck{z-index:2;transform-style:flat;isolation:isolate}.character-float{z-index:4}.scene-frame{width:28%;height:24%}.scene-one{left:-2%;top:3%;transform:rotate(-9deg)}.scene-two{right:-2%;top:3%;transform:rotate(9deg)}.scene-three{right:-2%;bottom:4%;transform:rotate(-7deg)}.scene-four{left:0;bottom:5%;transform:rotate(8deg)}
@media(max-width:560px){.scene-frame{width:30%;height:22%}.scene-one{left:0}.scene-two,.scene-three{right:0}}
/* 面板僅位於原始人物圖的保守藍底安全區；未算出安全區時不顯示。 */
.portrait-overlay{position:absolute;inset:0;z-index:1;overflow:hidden;pointer-events:none;visibility:hidden}.portrait-overlay.safe-ready{visibility:visible}.portrait-safe-left,.portrait-safe-right{position:absolute;top:0;bottom:0;overflow:hidden}.portrait-safe-left{left:0;width:0}.portrait-safe-right{right:0;width:0}.portrait-panel{position:absolute;display:block;left:5%;width:88%;height:20%;border:1px solid #aac2ff85;border-radius:6px;background-image:linear-gradient(135deg,#2731603b,#26175455),url('assets/commercial-backdrops.png');background-size:100% 100%,200% 200%;background-repeat:no-repeat;box-shadow:0 0 13px #82a7ff80;opacity:.68}.portrait-panel:after{content:"";position:absolute;left:7%;right:7%;bottom:6%;height:2px;background:linear-gradient(90deg,#b99aff 45%,#b6cbff55 45%);border-radius:3px}.pp-one{top:4%;transform:rotate(-5deg);background-position:center,0% 0%}.pp-two{top:28%;transform:rotate(4deg);background-position:center,100% 0%}.pp-three{top:52%;transform:rotate(-4deg);background-position:center,0% 100%}.pp-four{top:76%;transform:rotate(5deg);background-position:center,100% 100%}.pp-right{top:20%;left:5%;width:90%;height:24%;background-position:center,100% 100%}
/* 在一般手機寬度保留更多原圖藍底，同一人物照片不重繪。 */
@media(min-width:320px) and (max-width:560px){.character-photo img{object-position:45% center}}
/* 作品影片對話框：僅開啟時載入 iframe；原連結保留作播放受限的替代。 */
.video-dialog{width:min(920px,calc(100% - 32px));max-width:none;max-height:calc(100dvh - 32px);padding:0;border:1px solid #a6a5f080;border-radius:18px;background:#10172c;color:#f1f5ff;box-shadow:0 25px 90px #000c;overflow:auto}.video-dialog::backdrop{background:#020713d9;backdrop-filter:blur(5px)}.video-dialog-panel{padding:20px}.video-dialog-header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:15px}.video-dialog-header h2{font-size:20px;margin:0;letter-spacing:0}.video-dialog-close{width:42px;height:42px;flex:none;border-radius:12px;border:1px solid #a4b6df66;background:#202a47;color:white;font-size:20px;cursor:pointer}.video-dialog-close:hover,.video-dialog-close:focus-visible{border-color:#c3b5ff;outline:2px solid #a7c6ff;outline-offset:2px}.video-frame{position:relative;width:100%;aspect-ratio:16/9;background:#050916;border-radius:10px;overflow:hidden}.video-frame iframe{display:block;width:100%;height:100%;border:0}.video-dialog-footer{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-top:16px}.video-dialog-footer p{font-size:13px;color:#b5c4d9}.video-dialog-footer a{font-size:13px;color:#a9dcff;text-decoration:underline;white-space:nowrap}.video-dialog-footer a:focus-visible{outline:2px solid #a7c6ff;outline-offset:3px}@media(max-width:560px){.video-dialog-panel{padding:14px}.video-dialog-header h2{font-size:17px}.video-dialog-footer{align-items:flex-start;flex-direction:column;gap:8px}}
.video-dialog{max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px)}
.video-dialog:not([open]){display:none}
/* 新增三件作品使用抽象示意，不冒充真實影片截圖。 */
.work-four .work-art{background:radial-gradient(circle at 50% 60%,#6a7c9f,#1b2845 68%)}.work-five .work-art{background:radial-gradient(circle at 50% 60%,#6d5d99,#211d3b 68%)}.work-six .work-art{background:radial-gradient(circle at 50% 60%,#4d7b91,#142839 68%)}.abstract-four i{position:absolute;width:26%;height:38%;top:32%;border-radius:50%;background:radial-gradient(circle at 30% 25%,#e5d5ff,#b7799c 50%,#5b344d);box-shadow:0 15px 28px #08122688}.abstract-four i:nth-child(1){left:16%}.abstract-four i:nth-child(2){left:37%;top:23%;background:radial-gradient(circle at 30% 25%,#e2e5cd,#91ac79 50%,#4b6656)}.abstract-four i:nth-child(3){left:59%}.abstract-five i{position:absolute;width:31%;height:56%;top:21%;display:grid;place-items:center;border:1px solid #ccc6ff;border-radius:8px;color:#c9bcff;font-size:38px;background:linear-gradient(145deg,#7779ac,#2e345e);box-shadow:0 18px 30px #080d2688}.abstract-five i:first-child{left:23%;transform:rotate(-16deg)}.abstract-five i:last-child{left:48%;transform:rotate(14deg)}.abstract-six i{position:absolute;bottom:15%;height:55%;width:29%;border:1px solid #b6d6e7;border-radius:8px 8px 2px 2px;background:linear-gradient(145deg,#abbdd1,#586d93 60%,#283d5c);box-shadow:0 18px 30px #08182988}.abstract-six i:nth-child(1){left:16%;transform:rotate(-10deg)}.abstract-six i:nth-child(2){left:36%;height:70%;background:linear-gradient(145deg,#d0bcd9,#786a9e 65%,#37375d)}.abstract-six i:nth-child(3){left:56%;transform:rotate(10deg)}@media(max-width:900px){.works-grid .work:last-child{grid-column:auto}}
.work[hidden],.sample-badge[hidden]{display:none!important}.inventory-work .work-art{background:radial-gradient(circle at 50% 55%,#536f9b,#1a2544 70%)}.inventory-abstract i{position:absolute;width:36%;height:49%;top:25%;border:1px solid #aabdee88;border-radius:12px;background:linear-gradient(140deg,#7a81bc88,#31456e99);box-shadow:0 15px 30px #08112288}.inventory-abstract i:first-child{left:20%;transform:rotate(-10deg)}.inventory-abstract i:last-child{left:44%;transform:rotate(9deg)}.work-art .work-thumb{position:absolute;z-index:1;inset:0;width:100%;height:100%;object-fit:cover}.work-art .work-thumb:not([src]){display:none}.inventory-work .play{z-index:2}.works-more{display:flex;justify-content:center;margin-top:28px}

.video-frame video{display:block;width:100%;height:100%;object-fit:contain;background:#050916}.work-local .play{z-index:2}

.hero-work{display:block;color:#fff;text-decoration:none;isolation:isolate}.hero-work:before{display:none}.hero-work-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-work-shade{position:absolute;inset:0;background:linear-gradient(180deg,#07112635 25%,#080e20e8 100%)}.hero-work-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:68px;height:68px;display:grid;place-items:center;padding-left:3px;border:1px solid #d1dcffb3;border-radius:50%;background:#1a2c53b8;box-shadow:0 0 34px #7597ff66;font-size:22px}.hero-work-caption{position:absolute;left:25px;right:25px;bottom:24px;display:block}.hero-work-caption small{color:#c6d5ff;font-size:10px;letter-spacing:.13em}.hero-work-caption h3{margin:8px 0;color:#fff;font-size:22px}.hero-work-caption>span{color:#d8e3ff;font-size:13px}.hero-work:focus-visible{outline:3px solid #b8c9ff;outline-offset:4px}
