:root{color-scheme:light;--white: #ffffff;--paper: #f4f5f5;--stone: #e6e7e7;--mist: #d4d7d8;--line: rgba(16, 18, 18, .13);--ink: #101212;--muted: #62696b;--soft: #8d9496;--black: #080909;--panel: rgba(255, 255, 255, .88);--radius: 6px;--container: min(1180px, calc(100% - 40px) );--section: clamp(72px, 10vw, 132px);font-family:Noto Sans TC,PingFang TC,Microsoft JhengHei,system-ui,sans-serif;background:var(--paper);color:var(--ink)}*{box-sizing:border-box}html{overflow-x:hidden;scroll-padding-top:88px;scroll-behavior:smooth}body{margin:0;overflow-x:hidden;background:var(--paper);color:var(--ink);line-height:1.75;text-rendering:optimizeLegibility}body::selection{background:#d8dddf}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input,select,textarea{font:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--ink);outline-offset:4px}.skip-link{position:fixed;top:12px;left:12px;z-index:100;padding:10px 14px;border:1px solid var(--ink);border-radius:var(--radius);background:var(--white);color:var(--ink);font-size:.9rem;font-weight:700;transform:translateY(-140%);transition:transform .18s ease}.skip-link:focus-visible{transform:translateY(0)}.site-header{position:fixed;inset:0 0 auto;z-index:40;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:28px;min-height:72px;padding:0 clamp(18px,4vw,52px);border-bottom:1px solid rgba(255,255,255,.28);background:#f4f5f5b8;backdrop-filter:blur(18px);transition:min-height .22s ease,background .22s ease,border-color .22s ease,box-shadow .22s ease}.site-header.is-scrolled{min-height:64px;border-bottom-color:#1012121a;background:#f4f5f5e6;box-shadow:0 10px 34px #1012120f}.brand{display:inline-flex;align-items:center;gap:12px;min-width:max-content}.brand-mark{display:grid;width:36px;height:36px;place-items:center;border:1px solid rgba(16,18,18,.3);background:#ffffffb8;color:var(--ink);font-family:Georgia,serif;line-height:1}.brand span:last-child{display:grid;gap:0}.brand strong{font-size:.95rem;letter-spacing:.16em}.brand small,.section-kicker,.section-heading span,.studio-copy span,.beginner-panel span,.contact-copy span,.scene-label,.scene-english{color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.16em;line-height:1.35;text-transform:uppercase}.site-header nav{display:flex;justify-content:center;gap:clamp(16px,3vw,32px);color:#101212b8;font-size:.92rem;white-space:nowrap}.site-header nav a{position:relative;padding:8px 0}.site-header nav a:after{position:absolute;right:0;bottom:2px;left:0;height:1px;background:currentColor;content:"";transform:scaleX(0);transform-origin:right;transition:transform .18s ease}.site-header nav a:hover:after{transform:scaleX(1);transform-origin:left}.site-header nav a:focus-visible:after{transform:scaleX(1);transform-origin:left}.site-header nav a.is-active{color:var(--ink)}.site-header nav a.is-active:after{transform:scaleX(1);transform-origin:left}.header-cta,.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:1px solid currentColor;border-radius:var(--radius);font-size:.92rem;font-weight:700;line-height:1.1;text-align:center;transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease;touch-action:manipulation}.header-cta{min-width:max-content;padding:0 18px;background:var(--ink);color:var(--white)}.button{min-width:136px;padding:0 20px}.button:hover,.header-cta:hover{transform:translateY(-2px)}.button:active,.header-cta:active{transform:translateY(0)}.button-dark{border-color:var(--ink);background:var(--ink);color:var(--white)}.button-light{border-color:#ffffffc7;background:#fff3;color:var(--white);backdrop-filter:blur(12px)}.button-dark:hover,.header-cta:hover{box-shadow:0 12px 28px #10121229}.cinematic{position:relative;height:650vh;background:var(--black)}.sequence-pin{position:relative;min-height:100svh;overflow:hidden;background:var(--black)}.sequence-progress{position:absolute;right:24px;bottom:24px;left:24px;z-index:12;height:2px;background:#fff3}.sequence-progress span{display:block;width:100%;height:100%;transform:scaleX(0);transform-origin:left;background:#ffffffdb}.scene{position:absolute;inset:0;display:grid;min-height:100svh;opacity:0;visibility:hidden}.scene:first-of-type{opacity:1;visibility:visible}.scene img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;will-change:transform,filter}.scene-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.54),transparent 45%,rgba(0,0,0,.18)),linear-gradient(180deg,#00000024,#0000001f 42%,#00000085);pointer-events:none}.scene-right .scene-shade,.scene-top-right .scene-shade,.scene-bottom-right .scene-shade{background:linear-gradient(270deg,rgba(0,0,0,.52),transparent 46%,rgba(0,0,0,.18)),linear-gradient(180deg,#0000001f,#0000001a 42%,#00000080)}.glass-sheen{position:absolute;inset:0;width:42%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.34),transparent);mix-blend-mode:screen;opacity:0;filter:blur(10px);pointer-events:none}.scene-copy{position:relative;z-index:4;align-self:center;width:min(520px,calc(100% - 40px));margin:0 clamp(20px,7vw,104px);color:var(--white);text-shadow:0 18px 52px rgba(0,0,0,.42)}.scene-right .scene-copy,.scene-top-right .scene-copy,.scene-bottom-right .scene-copy{justify-self:end}.scene-top-right .scene-copy{align-self:start;margin-top:clamp(100px,15vh,164px)}.scene-bottom-right .scene-copy{align-self:end;margin-bottom:clamp(76px,12vh,132px)}.scene-copy h1,.scene-title{max-width:9.5em;margin:12px 0;font-size:clamp(2.9rem,7vw,6.9rem);font-weight:500;letter-spacing:0;line-height:.98}.scene-title{font-size:clamp(2.25rem,5vw,5.3rem)}.scene-english{color:#ffffffbd}.scene-text{max-width:39rem;margin:18px 0 0;color:#ffffffe0;font-size:clamp(1rem,1.5vw,1.18rem);line-height:1.85}.scene-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.scene-actions[data-final-cta]{opacity:0;transform:translateY(22px)}.concept-ribbon{position:absolute;top:88px;right:clamp(18px,4vw,48px);z-index:10;max-width:320px;margin:0;padding:10px 12px;border:1px solid rgba(255,255,255,.24);border-radius:var(--radius);background:#0c0d0d70;color:#ffffffd1;font-size:.82rem;line-height:1.55;backdrop-filter:blur(14px)}.section{position:relative;width:var(--container);margin:0 auto;padding:var(--section) 0;background:var(--section-bg, var(--paper));box-shadow:0 0 0 100vmax var(--section-bg, var(--paper));clip-path:inset(0 -100vmax)}.section+.section{border-top:1px solid rgba(16,18,18,.08)}.intro-band,.plans-section,.beginner-section,.contact-section{--section-bg: #ffffff}.services-section,.studio-section,.faq-section{--section-bg: #f0f2f2}.motion-ready [data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .62s ease,transform .62s ease;transition-delay:calc(var(--reveal-index, 0) * 70ms);will-change:opacity,transform}.motion-ready [data-reveal].is-visible{opacity:1;transform:translateY(0)}.intro-band{border-bottom:1px solid var(--line)}.intro-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr);gap:clamp(32px,7vw,96px);align-items:start;margin-top:18px}.intro-grid h2,.section-heading h2,.studio-copy h2,.beginner-panel h2,.contact-copy h2{margin:0;color:var(--ink);font-size:clamp(2.05rem,4vw,4.15rem);font-weight:500;letter-spacing:0;line-height:1.08;text-wrap:balance}.intro-grid p,.section-heading p,.studio-copy p,.beginner-panel p,.contact-copy p,.plan-row p,.service-list p,.faq-list p{color:var(--muted);text-wrap:pretty}.note{display:inline-block;margin-top:14px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius);background:#ffffff9e;color:var(--ink)!important;font-size:.9rem}.section-heading{display:grid;grid-template-columns:minmax(0,.86fr) minmax(280px,.64fr);gap:clamp(24px,6vw,72px);align-items:end;margin-bottom:clamp(32px,5vw,56px)}.section-heading h2{margin-top:8px}.section-heading.compact{display:block;max-width:720px}.services-section .section-heading{display:block;max-width:760px;margin-inline:auto;text-align:center}.plans-section .section-heading{margin-inline:auto;text-align:center}.service-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-list article{position:relative;min-height:300px;padding:clamp(22px,3vw,34px);border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#ffffff73;outline:1px solid transparent;outline-offset:-1px;transition:transform .22s ease,background .22s ease,box-shadow .22s ease,outline-color .22s ease}.service-list article:after{position:absolute;right:18px;bottom:18px;width:36px;height:36px;border-right:1px solid rgba(16,18,18,.22);border-bottom:1px solid rgba(16,18,18,.22);border-radius:0 0 999px;content:"";opacity:0;transform:translate(-6px,-6px);transition:opacity .22s ease,transform .22s ease}.service-list span{color:var(--soft);font-family:Georgia,serif;font-size:1.3rem}.service-list h3,.plan-row h3{margin:36px 0 10px;font-size:clamp(1.25rem,2vw,1.65rem);font-weight:500;line-height:1.25}.plan-table{margin-top:32px;border-top:1px solid var(--line)}.plan-row{position:relative;z-index:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:clamp(18px,4vw,38px);align-items:center;padding:clamp(24px,4vw,40px) 0;border-bottom:1px solid var(--line);transition:padding-inline .22s ease,background .22s ease}.plan-row:before{position:absolute;inset:10px -18px;z-index:-1;border:1px solid transparent;border-radius:var(--radius);background:transparent;content:"";transition:border-color .22s ease,background .22s ease}.plan-row>*{position:relative;z-index:1}.plan-index{color:var(--soft);font-family:Georgia,serif;font-size:clamp(1.4rem,2.2vw,1.9rem);line-height:1}.plan-row h3{margin:0 0 10px}.plan-row p{max-width:680px;margin:0}.plan-row a{display:inline-flex;align-items:center;justify-content:center;min-width:136px;min-height:44px;padding:0 16px;border:1px solid var(--ink);border-radius:var(--radius);color:var(--ink);font-size:.9rem;font-weight:700;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease;touch-action:manipulation}.studio-section{display:grid;grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr);gap:clamp(28px,5vw,72px);align-items:center}.studio-copy ul{display:grid;gap:12px;margin:28px 0 0;padding:0;list-style:none}.studio-copy li{position:relative;padding:12px 0 0 20px;border-top:1px solid var(--line);color:var(--ink)}.studio-copy li:before{position:absolute;top:20px;left:0;width:7px;height:7px;border:1px solid currentColor;border-radius:50%;content:""}.studio-frame{position:relative;overflow:hidden;border:1px solid var(--line);background:var(--white);box-shadow:0 18px 54px #10121212}.studio-frame:before{position:absolute;inset:12px;border:1px solid rgba(255,255,255,.5);content:"";pointer-events:none}.studio-frame img{width:100%;aspect-ratio:16 / 10;object-fit:cover;transition:transform .7s ease}.beginner-section{display:grid;grid-template-columns:minmax(0,.95fr) minmax(280px,.72fr);gap:clamp(28px,5vw,72px);align-items:stretch}.beginner-panel{padding:clamp(32px,6vw,72px);border:1px solid var(--line);border-radius:var(--radius);background:var(--white);transition:transform .22s ease,box-shadow .22s ease}.beginner-panel .button{margin-top:20px}.beginner-steps{display:grid;align-content:stretch;border-top:1px solid var(--line)}.beginner-steps p{position:relative;display:grid;gap:12px;margin:0;padding:clamp(22px,4vw,34px) 0;border-bottom:1px solid var(--line);color:var(--muted);transition:padding-left .22s ease,color .22s ease}.beginner-steps strong{color:var(--ink);font-family:Georgia,serif;font-size:1.5rem}.faq-list{display:grid;gap:10px;margin-top:30px}.faq-list details{border:1px solid var(--line);border-radius:var(--radius);background:#ffffff80;transition:background .2s ease,border-color .2s ease}.faq-list summary{position:relative;cursor:pointer;min-height:56px;padding:18px 54px 18px 20px;color:var(--ink);font-weight:700;transition:padding-left .2s ease;touch-action:manipulation}.faq-list summary::marker{content:""}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{position:absolute;top:50%;right:20px;display:grid;width:24px;height:24px;place-items:center;border:1px solid rgba(16,18,18,.18);border-radius:50%;color:var(--muted);content:"+";font-size:1rem;font-weight:500;line-height:1;transform:translateY(-50%);transition:border-color .2s ease,color .2s ease,transform .2s ease}.faq-list summary:focus-visible{outline:none;box-shadow:inset 0 0 0 2px #101212cc}.faq-list details[open]{border-color:#10121242;background:#ffffffd1}.faq-list details[open] summary{padding-left:26px}.faq-list details[open] summary:after{border-color:#1012126b;color:var(--ink);content:"-";transform:translateY(-50%) rotate(180deg)}.faq-list p{margin:0;padding:0 54px 22px 26px}.contact-section{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,.9fr);gap:clamp(32px,7vw,86px);align-items:start}.rating-panel{grid-column:1 / -1;display:grid;justify-items:center;gap:16px;margin-top:clamp(18px,4vw,38px);padding-top:clamp(28px,5vw,46px);border-top:1px solid var(--line);text-align:center}.rating-panel>p:first-child{margin:0;color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.16em;line-height:1.35;text-transform:uppercase}.rating-buttons{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.rating-buttons button{display:grid;width:52px;height:52px;place-items:center;border:1px solid transparent;border-radius:var(--radius);background:transparent;filter:grayscale(1);opacity:.42;transition:transform .18s ease,background .18s ease,border-color .18s ease,filter .18s ease,opacity .18s ease,box-shadow .18s ease;touch-action:manipulation}.rating-buttons button span{font-size:1.85rem;line-height:1}.rating-buttons button.is-active,.rating-buttons button.is-preview{border-color:#10121229;background:#ffffffc2;filter:grayscale(0);opacity:1}.rating-buttons button.is-current{box-shadow:0 14px 34px #10121214;transform:translateY(-4px)}.rating-buttons button:active{transform:translateY(0)}.rating-label{min-height:28px;margin:0;color:var(--ink);font-size:.96rem;font-weight:700}.rating-note{margin:-6px 0 0;color:var(--muted);font-size:.86rem}.contact-lines{display:grid;gap:10px;margin-top:26px;color:var(--ink)}.contact-lines a{width:fit-content;background-image:linear-gradient(currentColor,currentColor);background-position:0 100%;background-repeat:no-repeat;background-size:0 1px;transition:background-size .18s ease}.contact-form{display:grid;gap:16px;padding:clamp(24px,5vw,44px);border:1px solid var(--line);border-radius:var(--radius);background:var(--white);box-shadow:0 1px #1012120a;transition:border-color .22s ease,box-shadow .22s ease}.contact-form.has-submitted{border-color:#10121247;box-shadow:0 18px 54px #10121212}.contact-form label{display:grid;gap:8px}.contact-form label span{color:var(--ink);font-size:.9rem;font-weight:700}.contact-form input,.contact-form select,.contact-form textarea{width:100%;min-height:48px;border:1px solid rgba(16,18,18,.18);border-radius:var(--radius);background:#f9fafa;color:var(--ink);padding:10px 12px;caret-color:var(--ink);transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}.contact-form select{cursor:pointer}.contact-form textarea{resize:vertical}.form-notice{margin:0;padding:12px 14px;border:1px solid rgba(16,18,18,.22);border-radius:var(--radius);background:#eef1f2;color:var(--ink);font-weight:700}.form-notice:not([hidden]){display:block;animation:notice-in .22s ease both}@keyframes notice-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.site-footer{display:grid;gap:8px;padding:38px clamp(20px,4vw,52px);border-top:1px solid var(--line);background:#111313;color:#ffffffd1}.site-footer p{max-width:900px;margin:0}@media(hover:hover){.service-list article:hover{z-index:2;background:#ffffffd1;outline-color:#10121229;box-shadow:0 18px 48px #10121214;transform:translateY(-6px)}.service-list article:hover:after{opacity:1;transform:translate(0)}.plan-row:hover{padding-inline:18px}.plan-row:hover:before{border-color:#1012121a;background:#ffffff94}.plan-row:focus-within{padding-inline:18px}.plan-row:focus-within:before{border-color:#10121229;background:#ffffffa8}.plan-row a:hover{background:var(--ink);color:var(--white);box-shadow:0 12px 28px #1012121f;transform:translate(3px)}.studio-frame:hover img{transform:scale(1.035)}.beginner-panel:hover{box-shadow:0 20px 54px #10121212;transform:translateY(-4px)}.beginner-steps p:hover{padding-left:16px;color:var(--ink)}.faq-list details:hover{background:#ffffffb8}.contact-lines a:hover{background-size:100% 1px}.rating-buttons button:hover{border-color:#1012122e;background:#ffffffb3;filter:grayscale(.25);opacity:.82;transform:translateY(-2px)}}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:#10121285;background:var(--white);box-shadow:0 0 0 4px #1012120f;outline:none}.plan-row a:active{transform:translate(0)}.contact-form button{justify-self:start}@media(max-width:980px){.site-header{grid-template-columns:auto auto}.site-header nav{display:none}.section-heading,.intro-grid,.studio-section,.beginner-section,.contact-section{grid-template-columns:1fr}.service-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){:root{--container: min(100% - 28px, 1180px)}html{scroll-padding-top:72px;scroll-behavior:auto}.site-header{min-height:64px;padding:0 14px;gap:12px}.brand{gap:9px}.brand-mark{width:32px;height:32px}.brand strong{font-size:.86rem}.brand small{font-size:.62rem}.header-cta{min-height:44px;padding:0 12px;font-size:.84rem}.cinematic{height:520vh}.sequence-pin,.scene{min-height:100svh}.scene img{object-position:center}.scene:first-of-type img{object-position:58% center}.scene-right img,.scene-top-right img,.scene-bottom-right img{object-position:48% center}.scene-shade,.scene-right .scene-shade,.scene-top-right .scene-shade,.scene-bottom-right .scene-shade{background:linear-gradient(180deg,#0000001f,#00000024 42%,#000000b8),linear-gradient(90deg,rgba(0,0,0,.24),transparent 62%)}.scene-copy,.scene-right .scene-copy,.scene-top-right .scene-copy,.scene-bottom-right .scene-copy{align-self:end;justify-self:start;width:min(100% - 28px,560px);margin:0 14px clamp(64px,12vh,92px)}.scene-copy h1,.scene-title{max-width:10.5em;font-size:clamp(2.15rem,12vw,3.9rem);line-height:1.04}.scene-title{font-size:clamp(2rem,10vw,3.35rem)}.scene-text{font-size:.96rem;line-height:1.75}.scene-actions{gap:10px}.button{width:100%;min-width:0}.scene-actions .button{width:auto;min-width:132px;flex:1 1 132px}.concept-ribbon{top:76px;right:14px;left:14px;max-width:none;font-size:.76rem}.sequence-progress{right:14px;bottom:16px;left:14px}.intro-grid h2,.section-heading h2,.studio-copy h2,.beginner-panel h2,.contact-copy h2{font-size:clamp(2rem,9vw,3rem)}.service-list{grid-template-columns:1fr}.service-list article{min-height:auto}.service-list h3{margin-top:22px}.plan-row{grid-template-columns:auto minmax(0,1fr);gap:12px 18px}.plan-row a{grid-column:1 / -1;width:100%}.plan-index{padding-top:4px;font-size:1.2rem}.beginner-panel,.contact-form{padding:24px}.contact-form button{justify-self:stretch}.faq-list p{padding-right:20px;padding-left:20px}.rating-buttons{gap:8px}.rating-buttons button{width:48px;height:48px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important}.cinematic{height:auto;background:var(--black)}.sequence-pin{display:grid;gap:1px;overflow:visible}.scene{position:relative;min-height:88svh;opacity:1;visibility:visible}.scene-copy,.scene-actions[data-final-cta]{opacity:1;transform:none}.sequence-progress{display:none}}
