:root{--bg: #f6f2ec;--bg-soft: #efe9df;--ink: #453c52;--ink-soft: #6f6780;--accent: #7d6f9c;--accent-2: #c1a065;--line: #e6ded1;--card: #fffdf9;--shadow: 0 24px 60px -28px rgba(74, 60, 82, .32);--radius: 22px;font-family:Noto Sans TC,system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);line-height:1.7;-webkit-font-smoothing:antialiased;overflow-x:hidden}h1,h2,h3,.brand-name,blockquote{font-family:"Noto Serif TC",serif;font-weight:500;letter-spacing:.02em}a{color:inherit;text-decoration:none}.site-header{position:fixed;inset:0 0 auto 0;z-index:50;display:flex;align-items:center;gap:1.5rem;padding:.9rem clamp(1rem,4vw,3rem);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f6f1ea99;border-bottom:1px solid transparent;transition:background .3s,border-color .3s,box-shadow .3s}.site-header.scrolled{background:#f6f1eae6;border-color:var(--line);box-shadow:0 8px 30px -20px #4a362880}.brand{display:flex;align-items:center;gap:.65rem;margin-right:auto}.brand-logo{width:46px;height:46px;object-fit:contain}.brand-name{display:flex;flex-direction:column;font-size:1.15rem;line-height:1.15}.brand-name small{font-size:.55rem;letter-spacing:.28em;color:var(--ink-soft);font-family:Noto Sans TC}.nav{display:flex;gap:1.6rem;font-size:.95rem}.nav a{color:var(--ink-soft);transition:color .2s}.nav a:hover{color:var(--accent)}.nav-cta{padding:.5rem 1.1rem;border:1px solid var(--accent);border-radius:999px;color:var(--accent);font-size:.9rem;transition:background .2s,color .2s}.nav-cta:hover{background:var(--accent);color:#fff}.hero{position:relative;min-height:92vh;display:flex;align-items:center;justify-content:space-between;gap:clamp(1rem,4vw,3.5rem);flex-wrap:wrap;padding:8rem clamp(1.2rem,6vw,6rem) 4rem;overflow:hidden}.hero-copy{position:relative;flex:1 1 520px;max-width:720px}.hero-visual{position:relative;flex:1 1 380px;display:flex;align-items:center;justify-content:center;min-height:min(58vh,480px)}.hero-halo{position:absolute;width:min(560px,92%);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 50% 52%,#f2c9a099,#c69a5a6b 28%,#7d6f9c52 52%,#7d6f9c00 72%);filter:blur(8px);pointer-events:none}.hero-ring{position:absolute;width:min(520px,88%);aspect-ratio:1;border-radius:50%;background:conic-gradient(from 210deg,#c69a5a8c,#7d6f9c73,#f2c9a080,#c69a5a8c);-webkit-mask:radial-gradient(circle,transparent 60%,#000 61%,#000 66%,transparent 67%);mask:radial-gradient(circle,transparent 60%,#000 61%,#000 66%,transparent 67%);opacity:.7;animation:heroSpin 26s linear infinite;pointer-events:none}.hero-logo{position:relative;width:min(430px,78%);filter:drop-shadow(0 26px 50px rgba(74,60,82,.35));animation:heroFloat 6s ease-in-out infinite}@keyframes heroFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes heroSpin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.hero-logo,.hero-ring{animation:none}}.hero-eyebrow{color:var(--accent);letter-spacing:.24em;font-size:.82rem;margin:0 0 1rem}.hero-title{font-size:clamp(2.2rem,6vw,4rem);line-height:1.25;margin:0 0 1.4rem}.hero-sub{color:var(--ink-soft);font-size:clamp(1rem,2.2vw,1.2rem);margin:0 0 2.2rem}.hero-actions{display:flex;gap:1rem;flex-wrap:wrap}.hero-scroll{margin-top:2.6rem;color:var(--ink-soft);font-size:.85rem;animation:floaty 2.4s ease-in-out infinite}@keyframes floaty{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}.btn{display:inline-block;padding:.85rem 1.8rem;border-radius:999px;font-size:1rem;transition:transform .15s,box-shadow .2s,background .2s}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--accent);color:#fff;box-shadow:0 12px 24px -12px var(--accent)}.btn-primary:hover{box-shadow:0 16px 30px -12px var(--accent)}.btn-ghost{border:1px solid var(--line);color:var(--ink)}.btn-ghost:hover{border-color:var(--accent);color:var(--accent)}.section-head{text-align:center;max-width:640px;margin:0 auto 3rem}.section-eyebrow{color:var(--accent-2);letter-spacing:.22em;font-size:.8rem;margin:0 0 .6rem}.section-title{font-size:clamp(1.8rem,4.5vw,2.8rem);margin:0 0 .8rem}.section-desc{color:var(--ink-soft);margin:0}.section-desc,.service-item h3,.service-item p,.flow h3,.flow p,.allow-name,.allow-lead,.plan-sub,.plan-features li,.other-name,.faq details p{text-wrap:balance;line-break:strict}.plans{padding:6rem clamp(1.2rem,5vw,5rem)}.plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.6rem;max-width:1200px;margin:0 auto;align-items:stretch}.plan-card{position:relative;display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:2rem 1.6rem 1.8rem;box-shadow:var(--shadow);transition:transform .3s,box-shadow .3s}.plan-card:hover{transform:translateY(-6px)}.plan-card.is-featured{border-color:var(--accent);box-shadow:0 28px 60px -26px #7d6f9c8c}.plan-card.is-featured:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--radius);padding:1px;background:linear-gradient(160deg,var(--accent),var(--accent-2));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.plan-badge{align-self:flex-start;padding:.3rem .8rem;background:var(--bg-soft);color:var(--accent);border-radius:999px;font-size:.78rem;letter-spacing:.06em}.is-featured .plan-badge{background:var(--accent);color:#fff}.plan-name{margin:.9rem 0 .2rem;font-size:1.5rem}.plan-sub{margin:0 0 1rem;color:var(--ink-soft);font-size:.9rem}.plan-price{margin:0 0 1.2rem;font-family:"Noto Serif TC",serif;font-size:2.1rem;color:var(--ink);line-height:1}.plan-price small{font-size:.9rem;color:var(--ink-soft);margin-right:.25rem}.plan-price span{font-size:.85rem;color:var(--ink-soft);margin-left:.35rem;font-family:Noto Sans TC}.plan-features{list-style:none;margin:0 0 1.6rem;padding:0;display:grid;gap:.6rem;flex:1}.plan-features li{position:relative;padding-left:1.5rem;font-size:.9rem;color:var(--ink);line-height:1.5}.plan-features li:before{content:"✦";position:absolute;left:0;top:0;color:var(--accent-2);font-size:.8rem}.plan-cardfoot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding-top:.5rem;border-top:1px solid var(--line)}.plan-dl{color:var(--ink-soft);font-size:.84rem;border-bottom:1px solid transparent;transition:color .2s,border-color .2s}.plan-dl:hover{color:var(--accent);border-color:var(--accent)}.plan-enter{background:none;border:none;cursor:pointer;font:inherit;color:var(--accent);font-weight:500;font-size:.92rem;padding:.2rem 0}.plan-card:hover .plan-enter{text-decoration:underline}.plan-note{max-width:900px;margin:2.6rem auto 0;text-align:center;color:var(--ink-soft);font-size:.85rem;line-height:1.8}.plan-help{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:1.2rem;margin:2.4rem auto 0;padding:1.6rem 2rem;max-width:760px;background:var(--bg-soft);border-radius:var(--radius);text-align:center}.plan-help span{color:var(--ink);font-size:1rem}.process{padding:6rem clamp(1.2rem,5vw,5rem);background:var(--bg-soft)}.flow{list-style:none;margin:0 auto;padding:0;max-width:1200px;display:grid;grid-template-columns:repeat(2,1fr);gap:.9rem}@media (min-width: 500px){.flow{grid-template-columns:repeat(3,1fr)}}@media (min-width: 700px){.flow{grid-template-columns:repeat(4,1fr)}}@media (min-width: 1200px){.flow{grid-template-columns:repeat(7,1fr)}}.flow li{position:relative;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:1.5rem .95rem 1.25rem}.flow-no{font-family:"Noto Serif TC",serif;font-size:1.6rem;color:var(--accent-2);display:block;margin-bottom:.4rem}.flow h3{margin:0 0 .4rem;font-size:1.05rem}.flow p{margin:0;color:var(--ink-soft);font-size:.8rem;line-height:1.6}.allowance{padding:6rem clamp(1.2rem,5vw,5rem);background:var(--bg-soft)}.allow-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.2rem;max-width:1200px;margin:0 auto}.allow-card{cursor:pointer;text-align:left;font:inherit;display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:1.6rem 1.4rem 1.4rem;transition:transform .25s,box-shadow .25s,border-color .25s}.allow-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:var(--accent)}.allow-en{color:var(--accent-2);letter-spacing:.14em;font-size:.72rem;margin-bottom:.5rem}.allow-name{font-size:1.25rem;margin:0 0 .5rem}.allow-lead{margin:0 0 1.1rem;color:var(--ink-soft);font-size:.9rem;line-height:1.6;flex:1}.allow-go{color:var(--accent);font-size:.9rem;font-weight:500}.allow-note{max-width:1000px;margin:1.8rem auto 0;text-align:center;color:var(--ink-soft);font-size:.82rem}.faq{padding:6rem clamp(1.2rem,5vw,5rem)}.faq-list{max-width:820px;margin:0 auto;display:grid;gap:.8rem}.faq details{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:0 1.3rem;transition:box-shadow .2s}.faq details[open]{box-shadow:var(--shadow)}.faq summary{cursor:pointer;list-style:none;padding:1.1rem 0;font-size:1rem;color:var(--ink);font-family:"Noto Serif TC",serif;display:flex;align-items:center;justify-content:space-between}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"＋";color:var(--accent);font-size:1.2rem;margin-left:1rem}.faq details[open] summary:after{content:"－"}.faq details p{margin:0 0 1.1rem;color:var(--ink-soft);font-size:.92rem;line-height:1.7}.detail{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;overflow-y:auto;background:var(--bg);animation:fade .25s ease}.detail[hidden]{display:none}@keyframes fade{0%{opacity:0}}.detail-bar{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:1rem;padding:.8rem clamp(1rem,4vw,2.5rem);background:#f6f2eceb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);overflow-x:auto}.detail-back{flex:none;background:none;border:1px solid var(--line);border-radius:999px;padding:.45rem 1rem;cursor:pointer;font:inherit;color:var(--ink);font-size:.9rem;white-space:nowrap;transition:border-color .2s,color .2s}.detail-back:hover{border-color:var(--accent);color:var(--accent)}.detail-tabs{display:flex;gap:.35rem}.detail-tab{flex:none;background:none;border:none;cursor:pointer;font:inherit;padding:.45rem .9rem;border-radius:999px;color:var(--ink-soft);font-size:.9rem;white-space:nowrap;transition:background .2s,color .2s}.detail-tab:hover{color:var(--accent)}.detail-tab.is-active{background:var(--accent);color:#fff}.detail-inner{max-width:860px;margin:0 auto;padding:clamp(1.8rem,4vw,3rem) clamp(1.2rem,4vw,2rem) 4rem}.detail-hero{text-align:center;padding-bottom:1.8rem;border-bottom:1px solid var(--line)}.detail-eyebrow{color:var(--accent-2);letter-spacing:.2em;font-size:.78rem;margin:0 0 .6rem}.detail-en{color:var(--ink-soft);letter-spacing:.24em;font-size:.8rem;margin:0 0 .4rem}.detail-name{font-size:clamp(1.8rem,5vw,2.6rem);margin:0 0 .4rem}.detail-tagline{color:var(--ink-soft);margin:0 0 1rem}.detail-price{font-family:"Noto Serif TC",serif;font-size:clamp(1.8rem,5vw,2.4rem);color:var(--accent);margin:0 0 1.4rem}.detail-price span{font-size:.8rem;color:var(--ink-soft);font-family:Noto Sans TC;margin-left:.4rem}.detail-intro{max-width:680px;margin:2rem auto 0;text-align:center;color:var(--ink);line-height:1.95;font-size:1.02rem}.detail-sections{margin-top:2.4rem;display:grid;gap:1.8rem}.dsec-h{font-size:1.15rem;margin:0 0 .8rem;padding:.5rem .9rem;background:var(--bg-soft);border-left:3px solid var(--accent);border-radius:0 8px 8px 0}.dsec-list{margin:0;padding-left:1.3rem;display:grid;gap:.4rem}.dsec-list li{font-size:.95rem;line-height:1.6}.dsec-table{width:100%;border-collapse:collapse}.dsec-table th{text-align:left;font-size:.78rem;color:var(--ink-soft);font-weight:500;padding:.3rem .9rem;border-bottom:1px solid var(--line)}.dsec-table th:last-child{text-align:right}.dsec-table td{padding:.55rem .9rem;font-size:.95rem;border-bottom:1px dashed var(--line)}.dsec-table td:last-child{text-align:right;color:var(--ink-soft);white-space:nowrap}.dsec-table tbody tr:nth-child(odd){background:#00000004}.dsec-note{margin:.6rem 0 0;font-size:.85rem;color:var(--ink-soft);padding-left:.9rem}.detail-remark{margin-top:2.2rem}.detail-others{margin-top:3rem}.others-title{font-size:1.2rem;margin:0 0 1rem;text-align:center}.others-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.9rem}.other-card{cursor:pointer;text-align:left;font:inherit;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:1.1rem 1.2rem;display:grid;gap:.25rem;transition:transform .2s,box-shadow .2s,border-color .2s}.other-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:var(--accent)}.other-name{font-family:"Noto Serif TC",serif;font-size:1.1rem;color:var(--ink)}.other-price{color:var(--accent);font-size:.95rem}.other-go{color:var(--ink-soft);font-size:.82rem}.detail-cta{margin-top:3rem;text-align:center;padding:2rem;background:var(--bg-soft);border-radius:var(--radius)}.detail-cta>p{margin:0 0 1rem;color:var(--ink)}.detail-cta-actions{display:flex;gap:1.2rem;align-items:center;justify-content:center;flex-wrap:wrap}.detail-cta .contact-phone{font-size:clamp(1.6rem,4vw,2.2rem)}.services{padding:6rem clamp(1.2rem,5vw,5rem);background:var(--bg-soft)}.service-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.4rem;max-width:1100px;margin:0 auto}.service-item{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:2rem 1.6rem;text-align:center;transition:transform .25s,box-shadow .25s}.service-item:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.service-icon{font-size:2.2rem}.service-item h3{margin:.8rem 0 .5rem;font-size:1.15rem}.service-item p{margin:0;color:var(--ink-soft);font-size:.92rem}.promise{padding:7rem clamp(1.2rem,5vw,5rem);text-align:center;background:linear-gradient(160deg,#4a3f5c,#6b5b7a 55%,#b98a6f 130%);color:#f3ecf5}.promise blockquote{font-size:clamp(1.35rem,3.2vw,2.1rem);line-height:1.7;margin:0 auto;max-width:1040px;text-wrap:balance}.promise-sign{margin-top:1.6rem;color:#d9c8b0;letter-spacing:.1em}.contact{padding:6rem clamp(1.2rem,5vw,5rem)}.contact-inner{display:grid;grid-template-columns:1fr 1fr;gap:3rem;max-width:1000px;margin:0 auto;align-items:center}.contact-copy h2{font-size:clamp(1.6rem,3.5vw,2.4rem);margin:0 0 .6rem}.contact-copy>p{color:var(--ink-soft);margin:0 0 1.4rem}.contact-phone{display:inline-block;font-family:"Noto Serif TC",serif;font-size:clamp(1.8rem,5vw,2.6rem);color:var(--accent)}.contact-note{color:var(--ink-soft);font-size:.85rem;margin:.4rem 0 0}.contact-form{display:grid;gap:.9rem}.contact-form label{display:grid;gap:.35rem;font-size:.9rem;color:var(--ink-soft)}.contact-form input,.contact-form textarea{padding:.7rem .9rem;border:1px solid var(--line);border-radius:12px;font:inherit;color:var(--ink);background:var(--card);resize:vertical}.contact-form input:focus,.contact-form textarea:focus{outline:2px solid var(--accent-2);border-color:transparent}.contact-form button{margin-top:.4rem;border:none;cursor:pointer}.site-footer{padding:2.8rem 2.4rem;text-align:center;color:var(--ink-soft);font-size:.85rem;border-top:1px solid var(--line)}.footer-logo{display:block;width:140px;height:auto;margin:0 auto 1rem;opacity:.9}@media (max-width: 780px){.nav{display:none}.contact-inner{grid-template-columns:1fr}.hero{min-height:auto;padding-top:6.5rem}.hero-visual{min-height:300px;order:2;margin-top:1rem}.hero-logo{width:min(280px,66%)}}
