.cestiny-client{--color-paper:#efe8d8;--color-paper-light:#f6f1e6;--color-parchment:#e3d8c1;--color-sand:#d8c9aa;--color-rule:#cdbfa3;--color-rule-dark:#bfaf8e;--color-charcoal:#2b2a26;--color-ink:#4a463e;--color-muted:#8a8273;--color-olive:#5f6138;--color-ochre:#b0843a;--color-card-cream:#f1eadb;--color-card-ink:#2e2b28;--color-element-wood:#6e7246;--color-element-fire:#a4553a;--color-element-earth:#b0843a;--color-element-metal:#8e8a80;--color-element-water:#3e5563;--color-god-atlas:#6e7246;--color-god-robin:#6e7246;--color-god-dionysus:#b0843a;--color-god-franklin:#3e5563;--color-god-gatsby:#6e7246;--color-god-cato:#b0843a;--color-god-caesar:#8e2f2a;--color-god-confucius:#3d5578;--color-god-plato:#4a4470;--color-god-maria:#5f7c93;--font-family-display:"Cormorant Garamond","EB Garamond",Georgia,"Noto Serif SC","Songti SC",serif;--font-family-text:"EB Garamond","Crimson Pro",Georgia,"Noto Serif SC","Songti SC",serif;--font-family-sans:Karla,Jost,Inter,Helvetica,Arial,"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;--font-family-cjk:"Noto Serif SC","Source Han Serif SC","Songti SC",STSong,SimSun,serif;--font-family-cjk-sans:"Noto Sans SC","Source Han Sans SC","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-size-caption:12px;--font-size-label:13px;--font-size-body-sm:15px;--font-size-body:17px;--font-size-lead:20px;--font-size-h3:24px;--font-size-h2:32px;--font-size-h1:42px;--font-size-hero:54px;--font-line-height-tight:1.1;--font-line-height-snug:1.3;--font-line-height-body:1.55;--font-letter-spacing-tight:-0.01em;--font-letter-spacing-normal:0em;--font-letter-spacing-wide:0.14em;--font-letter-spacing-wider:0.18em;--font-letter-spacing-widest:0.3em;--font-zh-line-height:1.7;--font-zh-letter-spacing:0.02em;--font-zh-size-adjust:0.94;--space-0:0px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-gutter:20px;--space-touch:44px;--size-content-max:1312px;--size-reading-max:620px;--size-bottom-nav:64px;--breakpoint-sm:720px;--breakpoint-md:1024px;--breakpoint-lg:1240px;--radius-none:0px;--radius-xs:2px;--radius-sm:8px;--radius-md:12px;--radius-sheet:22px;--radius-pill:999px;--radius-round:50%;--border-width-hairline:1px;--shadow-card:0px 14px 30px -18px rgba(70,50,20,0.35);--shadow-raised:0px 22px 40px -26px rgba(70,50,20,0.45);--shadow-sheet:0px -18px 40px -20px rgba(40,30,15,0.45);--shadow-modal:0px 20px 50px 0px rgba(0,0,0,0.35);--motion-duration-fast:120ms;--motion-duration-base:200ms;--motion-duration-sheet:320ms;--motion-easing-standard:cubic-bezier(0.2,0,0,1);--motion-easing-out:cubic-bezier(0,0,0.2,1)}.cestiny-client [lang=zh-Hans],.cestiny-client:lang(zh),:lang(zh) .cestiny-client{--font-family-display:var(--font-family-cjk);--font-family-text:var(--font-family-cjk);--font-family-sans:var(--font-family-cjk-sans);--font-line-height-body:var(--font-zh-line-height);--font-letter-spacing-wide:var(--font-zh-letter-spacing);--font-letter-spacing-wider:var(--font-zh-letter-spacing)}.cestiny-client{min-height:100vh;background:var(--color-paper);color:var(--color-ink);font-family:var(--font-cestiny-text),var(--font-family-text);font-size:var(--font-size-body);line-height:var(--font-line-height-body);color-scheme:light}.cestiny-client :focus-visible{outline:2px solid var(--color-olive);outline-offset:2px}.cestiny-wordmark{font-family:var(--font-cestiny-display),var(--font-family-display);font-weight:500;letter-spacing:var(--font-letter-spacing-widest);color:var(--color-charcoal)}.cestiny-bottom-nav{display:flex;min-height:var(--size-bottom-nav)}.cestiny-header-nav{display:none;align-items:center;gap:8px}@media (min-width:720px){.cestiny-shell-pad{padding-left:40px;padding-right:40px}}@media (min-width:1024px){.cestiny-bottom-nav{display:none}.cestiny-header-nav{display:flex}}.cestiny-auth{min-height:100vh}.cestiny-auth-side{display:none}.cestiny-auth-card{width:100%;max-width:420px;margin:0 auto;padding:0 24px 48px}.cestiny-auth-button,.cestiny-auth-label{font-family:var(--font-cestiny-ui),var(--font-family-sans);font-size:var(--font-size-label);letter-spacing:var(--font-letter-spacing-wide);text-transform:uppercase}:lang(zh) .cestiny-auth-back,:lang(zh) .cestiny-auth-button,:lang(zh) .cestiny-auth-label{text-transform:none;letter-spacing:var(--font-zh-letter-spacing)}:lang(zh) .cestiny-auth-lead{font-style:normal}@media (min-width:1024px){.cestiny-auth{display:grid;grid-template-columns:1fr 1fr}.cestiny-auth-side{display:flex;min-height:100vh;flex-direction:column;justify-content:space-between;background:var(--color-parchment);padding:48px 64px}.cestiny-auth-main{display:flex;align-items:center;justify-content:center;padding:48px 24px}.cestiny-auth-card{width:420px;padding:0}.cestiny-auth .cestiny-auth-mobile-brand{display:none}}@media (min-width:1240px){.cestiny-welcome{display:grid;grid-template-columns:minmax(0,36rem) minmax(0,1fr);column-gap:64px;align-items:end;max-width:var(--size-content-max)}}.cestiny-birth{display:grid;gap:32px}.cestiny-birth-preview{display:none}@keyframes cestiny-spin{to{transform:rotate(1turn)}}.cestiny-spin{animation:cestiny-spin 2.4s linear infinite}@media (prefers-reduced-motion:reduce){.cestiny-spin{animation:none}}@media (min-width:1024px){.cestiny-birth{grid-template-columns:minmax(0,28rem) minmax(0,1fr);align-items:start;column-gap:48px}.cestiny-birth-preview{display:block}}.cestiny-chart-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cestiny-landing{margin:0 auto;max-width:var(--size-content-max)}.cestiny-landing-foot,.cestiny-landing-hero,.cestiny-landing-nav,.cestiny-landing-quote,.cestiny-landing-section{padding-left:20px;padding-right:20px}.cestiny-landing-nav{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;min-height:72px;border-bottom:1px solid var(--color-rule)}.cestiny-landing-links{display:none;gap:20px}.cestiny-landing-foot a,.cestiny-landing-links a,.cestiny-landing-sheet a,.cestiny-landing-signin{font-family:var(--font-cestiny-ui),var(--font-family-sans);font-size:13px;color:var(--color-ink)}.cestiny-landing-actions{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;margin-left:auto}.cestiny-landing-signin{white-space:nowrap}.cestiny-landing-menu,.cestiny-landing-sheet{display:none}.cestiny-landing-cta,.cestiny-landing-ghost{display:inline-flex;min-height:44px;align-items:center;padding:0 16px;font-family:var(--font-cestiny-ui),var(--font-family-sans);font-size:13px;letter-spacing:.14em;text-transform:uppercase}.cestiny-landing-cta{background:var(--color-charcoal);color:var(--color-paper-light)}.cestiny-landing-ghost{border:1px solid var(--color-charcoal);color:var(--color-charcoal)}.cestiny-landing-cta-block{width:100%;justify-content:center;margin-top:20px}:lang(zh) .cestiny-landing-cta,:lang(zh) .cestiny-landing-eyebrow,:lang(zh) .cestiny-landing-ghost,:lang(zh) .cestiny-landing-numeral{letter-spacing:var(--font-zh-letter-spacing);text-transform:none}.cestiny-landing-hero{display:grid;gap:48px;padding-top:48px;padding-bottom:24px}.cestiny-landing-eyebrow,.cestiny-landing-numeral{display:flex;align-items:center;gap:10px;font-family:var(--font-cestiny-ui),var(--font-family-sans);font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--color-ochre)}.cestiny-landing-title{margin-top:16px;font-size:42px;line-height:1.05}.cestiny-landing-h2,.cestiny-landing-title{font-family:var(--font-cestiny-display),var(--font-family-display);color:var(--color-charcoal)}.cestiny-landing-h2{font-size:32px;line-height:1.1}.cestiny-landing-h3{margin-top:8px;font-family:var(--font-cestiny-display),var(--font-family-display);font-size:24px;line-height:1.2;color:var(--color-charcoal)}.cestiny-landing-prose{max-width:var(--size-reading-max);margin-top:16px;color:var(--color-ink)}.cestiny-landing-caption{margin-top:12px;font-size:12px;color:var(--color-muted)}.cestiny-landing-center{text-align:center}.cestiny-landing-mark{display:flex;justify-content:center;color:var(--color-charcoal)}.cestiny-landing-section{border-top:1px solid var(--color-rule);padding-top:48px;padding-bottom:48px}.cestiny-landing-elements,.cestiny-landing-pillars{display:grid;gap:28px;margin-top:32px}.cestiny-landing-elements li{border-top:1px solid var(--color-rule);padding-top:16px}.cestiny-landing-cards{display:flex;gap:16px;margin-top:32px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}.cestiny-landing-cards li{flex:0 0 168px;scroll-snap-align:start}.cestiny-landing-card{display:flex;flex-direction:column;gap:8px}.cestiny-landing-card img{width:100%;height:auto;aspect-ratio:3/5;object-fit:cover;background:var(--color-card-cream)}.cestiny-landing-card p{color:var(--color-ink);font-size:15px;line-height:1.45}.cestiny-landing-yinyang{display:flex;gap:16px;align-items:flex-start;margin-top:40px;max-width:var(--size-reading-max)}.cestiny-landing-price{max-width:420px;margin:0 auto;padding:32px;background:var(--color-paper-light);box-shadow:0 14px 30px -18px rgba(70,50,20,.35)}.cestiny-landing-price-line{margin-top:12px;font-family:var(--font-cestiny-display),var(--font-family-display);font-size:42px;line-height:1;color:var(--color-charcoal)}.cestiny-landing-price-line small,.cestiny-landing-price-was{font-family:var(--font-cestiny-text),var(--font-family-text);font-size:17px;font-style:italic;color:var(--color-muted)}.cestiny-landing-price-was{margin-right:8px;font-size:28px;text-decoration:line-through}.cestiny-landing-points{display:grid;gap:28px;max-width:var(--size-reading-max)}.cestiny-landing-addons{max-width:420px;margin:28px auto 0}.cestiny-landing-addons ul{margin-top:12px}.cestiny-landing-addons li{border-top:1px solid var(--color-rule);padding:10px 0}.cestiny-landing-todo{margin-top:8px;color:var(--color-ochre);font-family:var(--font-cestiny-ui),var(--font-family-sans);font-size:13px}.cestiny-landing-price ul{margin-top:20px}.cestiny-landing-price li{border-top:1px solid var(--color-rule);padding:10px 0}.cestiny-landing-faq,.cestiny-landing-faq-head{max-width:var(--size-reading-max);margin-right:auto;margin-left:auto}.cestiny-landing-faq{margin-top:24px;border-top:1px solid var(--color-rule)}.cestiny-landing-faq button{display:flex;width:100%;min-height:56px;align-items:center;justify-content:space-between;gap:16px;padding:16px 0;border-bottom:1px solid var(--color-rule);font-family:var(--font-cestiny-text),var(--font-family-text);font-size:17px;text-align:left;color:var(--color-charcoal)}.cestiny-faq-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .2s cubic-bezier(.2,0,0,1)}.cestiny-faq-panel.is-open{grid-template-rows:1fr}.cestiny-faq-panel>div{overflow:hidden}.cestiny-faq-panel p{padding-bottom:20px;max-width:60ch;color:var(--color-ink)}.cestiny-landing-quote{display:flex;flex-direction:column;align-items:center;gap:16px;padding-top:48px;padding-bottom:48px;text-align:center}.cestiny-landing-quote blockquote{max-width:var(--size-reading-max);font-family:var(--font-cestiny-display),var(--font-family-display);font-size:32px;line-height:1.2;color:var(--color-charcoal)}.cestiny-landing-quote cite{font-family:var(--font-cestiny-ui),var(--font-family-sans);font-size:13px;font-style:normal;color:var(--color-muted)}.cestiny-landing-foot{display:grid;gap:24px;border-top:1px solid var(--color-rule);padding-top:32px;padding-bottom:48px}.cestiny-landing-foot nav{display:flex;flex-direction:column;gap:8px}.cestiny-landing-foot nav p{font-family:var(--font-cestiny-ui),var(--font-family-sans);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--color-muted)}:lang(zh) .cestiny-landing-faq button,:lang(zh) .cestiny-landing-foot nav p{letter-spacing:var(--font-zh-letter-spacing);text-transform:none;line-height:1.7}@media (max-width:1023px){.cestiny-landing-menu{display:inline-flex;min-height:44px;align-items:center;padding:0 8px;font-family:var(--font-cestiny-ui),var(--font-family-sans);font-size:13px}.cestiny-landing-sheet{display:flex;flex-basis:100%;flex-direction:column;gap:4px;padding-bottom:12px}}@media (min-width:720px){.cestiny-landing-foot,.cestiny-landing-hero,.cestiny-landing-nav,.cestiny-landing-quote,.cestiny-landing-section{padding-left:40px;padding-right:40px}.cestiny-landing-pillars{grid-template-columns:1fr 1fr}}@media (min-width:1024px){.cestiny-landing-foot,.cestiny-landing-hero,.cestiny-landing-nav,.cestiny-landing-quote,.cestiny-landing-section{padding-left:64px;padding-right:64px}.cestiny-landing-links{display:flex}.cestiny-landing-menu,.cestiny-landing-sheet{display:none}.cestiny-landing-hero{grid-template-columns:1.05fr .95fr;align-items:center;min-height:calc(100vh - 72px);padding-top:24px}.cestiny-landing-price-line,.cestiny-landing-title{font-size:54px}.cestiny-landing-section{padding-top:64px;padding-bottom:64px}.cestiny-landing-pillars{grid-template-columns:repeat(4,minmax(0,1fr))}.cestiny-landing-cards,.cestiny-landing-elements{grid-template-columns:repeat(5,minmax(0,1fr))}.cestiny-landing-cards{display:grid;overflow:visible}.cestiny-landing-card img,.cestiny-landing-cards li{width:100%}.cestiny-landing-card img{height:auto;aspect-ratio:3/5}.cestiny-landing-faq button{font-size:20px}.cestiny-landing-foot{grid-template-columns:1.4fr 1fr 1fr}}@media (prefers-reduced-motion:reduce){.cestiny-faq-panel{transition:none}}html.cestiny-client{min-height:0;background:transparent;color:inherit;font-family:inherit;font-size:16px;line-height:inherit;color-scheme:normal}.uc,.uc *{box-sizing:border-box}.uc{--font-family-display:var(--font-uc-display),"Cormorant Garamond","EB Garamond",Georgia,serif;--font-family-text:var(--font-uc-text),"EB Garamond",Georgia,serif;--font-family-sans:var(--font-uc-sans),Karla,Inter,Helvetica,Arial,sans-serif;color:var(--color-charcoal);font-family:var(--font-family-text)}.uc,.uc-pending{min-height:100vh;background:var(--color-paper)}body:has(.uc),body:has(.uc-pending){background:var(--color-paper)}.uc .page{min-height:100vh;display:flex;flex-direction:column;padding:0 20px;max-width:var(--size-content-max);margin:0 auto}.uc .top{height:64px}.uc .brand,.uc .top{display:flex;align-items:center}.uc .brand{gap:10px;color:var(--color-charcoal);font-family:var(--font-family-display);font-weight:500;font-size:17px;letter-spacing:.3em}.uc main{flex:1;display:flex;flex-direction:column;justify-content:center;gap:32px;padding:24px 0}.uc .art{width:300px;height:auto;align-self:flex-start}.uc .eyebrow{font-family:var(--font-family-sans);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--color-muted);margin:0 0 18px}.uc .eyebrow b{display:inline-block;width:8px;height:8px;background:var(--color-ochre);margin-right:8px;border-radius:50%;animation:uc-pulse 1.6s ease-in-out infinite}@keyframes uc-pulse{50%{opacity:.25}}.uc h1{font-family:var(--font-family-display);font-weight:400;font-size:48px;line-height:1.04;letter-spacing:-.015em;margin:0;color:var(--color-charcoal)}.uc .sub{font-size:19px;line-height:1.5;color:var(--color-ink);max-width:30ch;margin:24px 0 0}.uc .foot{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;padding:16px 0 28px;flex-wrap:wrap}.uc .meta{font-family:var(--font-family-sans);font-size:12px;letter-spacing:.1em;color:var(--color-muted)}.uc form{display:flex;flex-direction:column;gap:4px}.uc .row{display:flex;align-items:stretch;border-bottom:1px solid var(--color-rule-dark)}.uc .row:focus-within{border-color:var(--color-charcoal)}.uc input{width:150px;min-height:var(--space-touch);border:0;background:transparent;font:15px var(--font-family-text);color:var(--color-charcoal);outline:none;padding:0 2px}.uc input::placeholder{color:var(--color-muted)}.uc button{min-width:64px;min-height:var(--space-touch);border:0;background:transparent;font-family:var(--font-family-sans);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--color-ink);cursor:pointer}.uc button:focus-visible,.uc button:hover{color:var(--color-charcoal);text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--color-ochre)}.uc .err{min-height:18px;font-size:14px;font-style:italic;color:var(--color-element-fire);visibility:hidden;margin:0}.uc form.is-error .row{border-bottom:2px solid var(--color-element-fire);margin-bottom:-1px;animation:uc-nudge .32s cubic-bezier(.36,.07,.19,.97)}.uc form.is-error input::placeholder{color:var(--color-element-fire)}.uc form.is-error .err{visibility:visible}@keyframes uc-nudge{25%{transform:translateX(-3px)}75%{transform:translateX(3px)}}.uc .sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.uc .ln{fill:none;stroke:var(--color-charcoal);stroke-width:1.1;stroke-linecap:round;stroke-linejoin:round}.uc .fine{stroke:var(--color-rule-dark);stroke-width:.8}.uc .wood{fill:none;stroke:var(--color-ochre);stroke-width:1.2;stroke-linecap:round}.uc .fillp{fill:var(--color-paper)}.uc .ink{fill:var(--color-charcoal)}@media (min-width:720px){.uc .page{padding:0 48px}.uc h1{font-size:72px}.uc .art{width:380px}}@media (min-width:1024px){.uc .page{padding:0 80px}.uc main{flex-direction:row-reverse;align-items:center;justify-content:space-between;gap:48px}.uc h1{font-size:88px;line-height:.98}.uc .sub{font-size:21px;max-width:32ch;margin-top:28px}.uc .art{width:520px;align-self:center}}.uc .ham{transform-box:fill-box;transform-origin:10% 90%;animation:uc-ham .7s ease-in-out infinite}@keyframes uc-ham{0%,to{transform:rotate(-35deg)}50%{transform:rotate(15deg)}}.uc .walk{animation:uc-walk 6s ease-in-out infinite alternate}@keyframes uc-walk{to{transform:translateX(70px)}}.uc .bob{animation:uc-bob .5s ease-in-out infinite alternate}@keyframes uc-bob{to{transform:translateY(-2px)}}.uc .bird{animation:uc-fly 5s ease-in-out infinite}@keyframes uc-fly{50%{transform:translate(-14px,-8px)}}.uc .spark{opacity:0;animation:uc-sp .7s linear infinite}@keyframes uc-sp{0%,to{opacity:0}45%,60%{opacity:1}}.uc .swing{transform-origin:258px 30px;animation:uc-sw 4s ease-in-out infinite alternate}@keyframes uc-sw{0%{transform:rotate(-3deg)}to{transform:rotate(3deg)}}.uc .lower{animation:uc-lo 8s cubic-bezier(.45,0,.55,1) infinite alternate}@keyframes uc-lo{0%{transform:translateY(-22px)}to{transform:translateY(0)}}.uc .dr{stroke-dasharray:1;stroke-dashoffset:1;animation:uc-dr 8s cubic-bezier(.65,0,.35,1) infinite}@keyframes uc-dr{0%{stroke-dashoffset:1}60%,to{stroke-dashoffset:0}}.uc .pen{transform-origin:170px 125px;animation:uc-or 8s cubic-bezier(.65,0,.35,1) infinite}@keyframes uc-or{0%{transform:rotate(0)}60%,to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.uc,.uc *,.uc :after,.uc :before,.uc:after,.uc:before{animation:none!important}.uc .dr{stroke-dashoffset:.3}}