@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@400;500;600;700;800;900&display=swap');
:root{--paper:#f6f2e9;--ink:#35293c;--purple:#663c71;--muted:#716878;--line:#dcd3de;--yellow:#e6f18d}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Noto Sans TC',sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}header{max-width:1440px;margin:auto;padding:26px 6%;display:flex;justify-content:space-between;align-items:center;gap:25px}.brand{display:flex;gap:12px;align-items:center;font-size:20px;font-weight:800;letter-spacing:2px}.brand small{display:block;font-size:9px;letter-spacing:2px;margin-top:3px}.brand-star{font-size:37px;color:var(--purple)}nav{display:flex;align-items:center;gap:32px;font-size:13px;font-weight:500}.nav-entry{border:1px solid var(--ink);border-radius:30px;padding:11px 20px}.menu{display:none}.hero{max-width:1440px;margin:auto;padding:65px 6% 0;display:grid;grid-template-columns:1.05fr 1fr;position:relative;overflow:hidden}.eyebrow{font-size:11px;font-weight:600;letter-spacing:2px}.intro{font-size:17px;margin:40px 0 16px;letter-spacing:4px}h1{font-size:clamp(58px,6.1vw,88px);line-height:1.24;letter-spacing:-3px;margin:0;font-weight:900}h1 span{color:var(--purple)}.lead{font-size:16px;line-height:2;color:var(--muted);margin:28px 0}.actions{display:flex;gap:26px;align-items:center;flex-wrap:wrap}.button{padding:17px 26px;border-radius:6px;display:inline-flex;gap:42px;align-items:center;font-size:14px;font-weight:600;transition:transform .2s,background .2s}.primary{background:var(--purple);color:white}.button:hover{background:#4f285b;transform:translateY(-3px)}.text-link{font-size:13px;border-bottom:1px solid;padding-bottom:7px;display:inline-block}.hero-note{font-size:9px;letter-spacing:1.4px;margin:42px 0;color:var(--muted)}.hero-art{position:relative;min-height:540px}.planet{position:absolute;width:400px;height:400px;border-radius:50%;background:radial-gradient(circle at 30% 28%,#d5a9d1,#a36eb0 55%,#6e447c);top:35px;left:50%;transform:translateX(-50%);box-shadow:inset -25px -30px 65px #683d7740}.orbit{position:absolute;border:1px solid #85579160;border-radius:50%;width:520px;height:340px;left:50%;top:65px;transform:translateX(-50%) rotate(-35deg)}.o2{transform:translateX(-50%) rotate(45deg);width:460px;height:450px;top:10px}.ticket{position:absolute;background:var(--yellow);padding:30px 35px;top:160px;left:50%;width:290px;transform:translateX(-50%) rotate(-10deg);box-shadow:14px 18px 0 #39264020;border:1px solid #372743}.ticket>span{font-size:10px;letter-spacing:3px}.ticket strong{display:block;font-size:44px;line-height:1.4;letter-spacing:4px;margin:20px 0}.ticket small{font-size:9px;letter-spacing:1px}.ticket-line{border-top:1px dashed #514456;margin:20px -35px}.spark{position:absolute;z-index:2;color:var(--purple)}.s1{font-size:90px;right:0;top:10px}.s2{font-size:100px;left:10px;bottom:80px}.s3{font-size:45px;right:55px;bottom:70px;color:#9b77a7}.art-caption{position:absolute;bottom:15px;left:50%;transform:translateX(-50%);font-size:9px;letter-spacing:2px;white-space:nowrap}.hero-bottom{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:25px 0;font-size:10px;letter-spacing:1.5px;margin-top:25px}.section{padding:75px max(6%,calc((100vw - 1268px)/2));scroll-margin-top:20px}.section-label{display:flex;justify-content:space-between;font-size:11px;letter-spacing:2px;border-bottom:1px solid var(--line);padding-bottom:20px}.about-content{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-top:50px}h2{font-size:clamp(30px,3.1vw,44px);line-height:1.5;margin:0;letter-spacing:-1px}.about p,.contact p,.audition p{line-height:2;font-size:15px;color:var(--muted)}.about-content p:first-child{margin-top:0}.about-content .text-link{margin-top:18px}.services{background:#ebe5ef}.section-heading{display:flex;justify-content:space-between;align-items:end;margin:45px 0}.section-heading p{font-size:14px;line-height:2;color:var(--muted)}.service-list article{display:flex;align-items:center;gap:40px;border-top:1px solid #cfc2d5;padding:30px 0}.service-list article:last-child{border-bottom:1px solid #cfc2d5}.number{font-size:12px;letter-spacing:2px;color:var(--purple);align-self:start;margin-top:7px}.service-list h3{font-size:21px;margin:0 0 12px;font-weight:600}.service-list p{margin:0;font-size:14px;line-height:1.9;color:var(--muted)}.service-icon{margin-left:auto;font-size:48px;color:var(--purple);min-width:55px;text-align:center}.contact{background:var(--purple);color:var(--paper)}.contact .section-label{border-color:#ffffff40}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;margin-top:50px}.contact p{color:#e0cde5}.email{font-size:clamp(17px,2.1vw,28px);border-bottom:1px solid #cda9d6;padding-bottom:15px;display:flex;justify-content:space-between;gap:12px}.copy{background:transparent;border:1px solid #cda9d6;color:var(--paper);border-radius:30px;padding:10px 17px;font-size:12px;margin-top:22px}.copy:hover{background:#ffffff15}#copy-status{min-height:24px;font-size:12px}.audition{display:flex;align-items:center;gap:90px;padding-top:100px;padding-bottom:100px}.audition-art{font-size:200px;line-height:1;color:var(--purple);width:28%;text-align:center}.audition-content .eyebrow{margin-top:0;color:var(--purple)}.audition-content small{display:block;font-size:11px;color:var(--muted);margin-top:17px;line-height:1.8}.audition-content .button{margin-top:10px}footer{border-top:1px solid var(--line);padding:35px 6%;display:flex;align-items:center;gap:35px;flex-wrap:wrap;font-size:12px}footer p{color:var(--muted)}footer>a:not(.brand){margin-left:auto}footer>small{font-size:10px;color:var(--muted)}a:focus-visible,button:focus-visible{outline:3px solid #b28ac1;outline-offset:5px}.skip{position:fixed;top:-100px;left:20px;z-index:20;background:white;padding:15px}.skip:focus{top:10px}
@media(max-width:900px){header{padding:20px 6%}.menu{display:block;border:0;background:transparent;font-size:24px;color:var(--ink)}nav{display:none;position:absolute;top:85px;left:6%;right:6%;background:var(--paper);padding:25px;z-index:10;border:1px solid var(--line);box-shadow:0 15px 35px #35293c15;flex-direction:column;align-items:start}nav.open{display:flex}.hero{padding-top:30px;grid-template-columns:1fr 1fr}.hero-art{min-height:490px;transform:scale(.8);transform-origin:center}.planet{width:340px;height:340px}.orbit{width:410px}.ticket{width:260px;padding:25px}.ticket strong{font-size:38px}.ticket-line{margin-left:-25px;margin-right:-25px}.s1{right:-30px}.s2{left:-50px}.lead{font-size:14px}.actions{gap:18px}.about-content{gap:35px}.contact-grid{grid-template-columns:1fr}.contact-action{max-width:500px}.audition{gap:40px}footer{gap:20px}}
@media(max-width:600px){.hero{grid-template-columns:1fr}.hero h1{font-size:60px}.intro{margin-top:25px}.hero-note{margin:30px 0 0}.hero-art{min-height:420px;margin-top:5px;transform:scale(.85)}.planet{top:20px}.ticket{top:95px}.o1{top:35px}.o2{top:0;height:360px}.s1{right:0}.s2{left:-10px;bottom:40px}.s3{bottom:60px;right:10px}.art-caption{bottom:-5px}.hero-bottom{font-size:8px;letter-spacing:.5px;margin-top:0;gap:15px}.section{padding:50px 6%}.section-label{font-size:9px;letter-spacing:1px}.about-content{grid-template-columns:1fr;gap:25px;margin-top:30px}.section-heading{display:block;margin:30px 0}.section-heading p{margin-top:20px}.service-list article{gap:16px;padding:24px 0}.service-list h3{font-size:17px;line-height:1.7}.service-list p{font-size:13px}.service-icon{font-size:30px;min-width:30px}.number{font-size:10px}.contact-grid{margin-top:30px;gap:20px}.contact p br{display:none}.audition{gap:0;position:relative;overflow:hidden}.audition-art{position:absolute;right:-20px;top:35px;font-size:150px;opacity:.12;width:auto}.audition-content{position:relative}.audition h2{font-size:28px}footer .brand{width:100%}footer>a:not(.brand){margin-left:0}footer small{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.hero h1{font-size:clamp(44px,4.8vw,68px);letter-spacing:-2px}.project-tag{display:inline-block;border:1px solid var(--line);border-radius:30px;padding:7px 13px;font-size:11px;color:var(--purple);margin:5px 0 16px}.audition{background:#eee7f0;border-top:1px solid var(--line)}@media(max-width:600px){.hero h1{font-size:clamp(36px,10vw,54px);letter-spacing:-1px}.brand{font-size:18px}.intro{font-size:14px;letter-spacing:2px}}
