@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Serif+TC:wght@400;500;600&display=swap');
:root{color-scheme:light;--paper:#f5f1e9;--cream:#fffdf8;--ink:#222b37;--muted:#59636e;--line:#d6d1c7;--copper:#9b604b;--night:#152433;--serif:'Noto Serif TC',Georgia,serif;--sans:'DM Sans',-apple-system,BlinkMacSystemFont,'Noto Sans TC',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.75 var(--sans)}a{color:inherit}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.6;cursor:wait}img,svg{max-width:100%}.wrap{width:min(1250px,calc(100% - 64px));margin-inline:auto}.skip{position:absolute;top:-100px;left:16px;z-index:20;background:var(--cream);padding:8px 16px}.skip:focus{top:8px}.topline{display:flex;justify-content:space-between;gap:12px;padding:10px max(32px,calc((100vw - 1250px)/2));background:var(--night);color:#e6ddd0;font-size:11px;letter-spacing:.17em;text-transform:uppercase}.masthead{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:90px;border-bottom:1px solid var(--line)}.brand{text-decoration:none;display:flex;align-items:center;gap:14px;font:600 22px var(--serif)}.brand small{display:block;margin-top:1px;font:10px var(--sans);letter-spacing:.18em;color:var(--muted)}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--copper);border-radius:50%;font:26px Georgia;color:var(--copper)}.masthead nav{display:flex;gap:27px}.masthead nav a{text-decoration:none;font-size:13px}.masthead nav a:hover,.text-link:hover{color:var(--copper)}.eyebrow{font:600 11px var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--copper)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400}h1{font-size:clamp(46px,5.8vw,88px);line-height:1.25;letter-spacing:-.06em}h1 em{font-style:normal;color:var(--copper)}h2{font-size:clamp(36px,4vw,58px);line-height:1.35;letter-spacing:-.04em}h3{font-size:clamp(27px,3vw,40px);line-height:1.4}.english{display:block;margin-top:12px;color:#68717a;font:italic 15px/1.7 Georgia,serif}.opening{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.94fr);gap:clamp(40px,6vw,100px);align-items:center;padding-top:80px;padding-bottom:105px}.opening-copy{padding:18px 0}.opening-copy .lead{max-width:34em;font-size:18px;line-height:1.9}.opening-copy .english{max-width:31em}.text-link{display:inline-block;margin-top:24px;padding-bottom:8px;border-bottom:1px solid var(--copper);font-weight:600;text-decoration:none}.opening-art{position:relative;aspect-ratio:1;min-height:430px;overflow:hidden;background:radial-gradient(circle at 54% 46%,#35495a 0,#1d3041 43%,#142331 100%);box-shadow:24px 24px 0 #e8e0d4}.opening-art:after{content:'';position:absolute;inset:17px;border:1px solid #b7a78270;pointer-events:none}.orbit{position:absolute;left:50%;top:48%;border:1px solid #d8c7aa73;border-radius:50%;transform:translate(-50%,-50%) rotate(-24deg)}.orbit-one{width:25%;height:25%}.orbit-two{width:57%;height:57%;border-color:#d8c7aa50}.orbit-three{width:88%;height:88%;border-color:#d8c7aa3b}.sun{position:absolute;left:51%;top:47%;width:58px;height:58px;border-radius:50%;transform:translate(-50%,-50%);background:#e4c18a;box-shadow:0 0 22px #e5c28d8a,0 0 76px #e5c28d40}.planet{position:absolute;border-radius:50%;box-shadow:0 0 18px #f6e3b66b}.planet-one{left:34%;top:31%;width:11px;height:11px;background:#f8e8cf}.planet-two{left:78%;top:56%;width:18px;height:18px;background:#b7c6d0}.planet-three{left:17%;top:73%;width:8px;height:8px;background:#d9a98d}.art-note{position:absolute;left:42px;bottom:36px;color:#e5ddd2;font:12px/1.6 Georgia;letter-spacing:.22em}.entry{display:grid;grid-template-columns:minmax(0,.6fr) minmax(0,1fr);gap:clamp(36px,6vw,96px);align-items:start;padding-top:66px;padding-bottom:120px;border-top:1px solid var(--line)}.entry-copy{position:sticky;top:32px}.entry-copy>p:last-child{max-width:26em;color:var(--muted)}.form-card{padding:34px 38px;background:var(--cream);border:1px solid var(--line);box-shadow:12px 12px 0 #eae3d8}.form-top{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-bottom:23px;border-bottom:1px solid var(--line);font-size:11px;letter-spacing:.15em}.quiet{border:0;padding:0;background:none;color:var(--copper);font-size:13px;letter-spacing:normal}.sample-note{margin:14px 0 0;color:var(--copper);font-size:13px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:24px}.form-card label{display:block;font-weight:600;font-size:14px}.form-card label span{display:block;font-weight:400;color:var(--muted);font-size:12px}.form-card input:not([type=checkbox]),.form-card select{width:100%;min-height:48px;margin-top:7px;padding:10px 12px;border:1px solid #c9c8c3;border-radius:0;background:#fff;color:var(--ink)}.form-card input:focus-visible,.form-card select:focus-visible{outline:2px solid var(--copper);outline-offset:2px}.form-card .check{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin-top:21px;font-weight:400}.check input{accent-color:var(--copper);width:19px;height:19px}.form-bottom{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-top:35px;padding-top:24px;border-top:1px solid var(--line)}.form-bottom p{margin:0;color:var(--muted);font-size:12px}.form-bottom p span{font:italic 12px Georgia}.submit{flex-shrink:0;padding:14px 20px;border:1px solid var(--night);background:var(--night);color:#fff;white-space:nowrap}.submit:hover{background:#30485b}.submit span{margin-left:15px}#form-error{margin:18px 0 0;color:#a44d43;font-weight:600}.results{padding:100px 0 110px;background:#e9e6e0}.results-heading{max-width:50em}.results-heading h2{margin-bottom:18px}.notice{padding:14px 18px;background:#f9f2e5;border-left:3px solid var(--copper);color:#674f40}.chart-layout{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);gap:40px;align-items:start;margin-top:38px}.wheel-panel,.chart-facts{min-width:0}.wheel-panel{padding:20px 20px 14px;background:var(--night);color:#e5e0d7}.wheel-caption{margin:5px 12px 10px;color:#d0d2d2;font-size:13px}.wheel-caption .english{margin-top:2px;color:#bfc7cd;font-size:12px}.wheel-outer{fill:#1e3041;stroke:#b4a482;stroke-width:1.2}.wheel-ring,.wheel-inner{fill:none;stroke:#8c93a0;stroke-width:1}.zodiac-line{stroke:#b4a482;stroke-width:1;opacity:.65}.house-line{stroke:#cdd5db;stroke-width:.85;opacity:.65}.asc-line{stroke:#e4c18a;stroke-width:2;opacity:1}.sign-symbol{fill:#e4d8c1;font:25px Georgia}.planet-symbol{fill:#f4d397;font:26px Georgia}.house-number{fill:#becbd2;font:12px var(--sans)}.wheel-center{fill:#24394a;stroke:#d8b988}.center-word{fill:#ead4ac;font:12px Georgia;letter-spacing:.14em}.center-sub{fill:#c3cbd0;font:9px var(--sans);letter-spacing:.08em}.chart-facts{padding:20px 0}.chart-facts h3{margin:8px 0 30px}.placement{display:grid;grid-template-columns:110px 1fr;gap:15px;align-items:baseline;padding:11px 2px;border-bottom:1px solid #c8c8c4;font-size:14px}.placement strong{font-weight:600}.placement span{color:#4e5d67}.angles{margin-top:24px;padding:18px 20px;background:#f9f5ed;color:#42505d;font-size:14px}.aspects-room{display:grid;grid-template-columns:minmax(0,.65fr) minmax(0,1fr);gap:60px;margin-top:85px;padding-top:52px;border-top:1px solid #c8c8c4}.aspects-room>div:first-child p:last-child{max-width:28em;color:var(--muted)}.aspect-list{columns:2;column-gap:28px}.aspect-row{break-inside:avoid;margin:0;padding:10px 0;border-bottom:1px solid #c8c8c4;font-size:13px}.source-note{max-width:900px;margin:90px 0 0;padding-top:20px;border-top:1px solid #c8c8c4;font-size:13px;color:var(--muted)}.source-note a{color:var(--copper)}.method{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1fr);gap:70px;padding-top:115px;padding-bottom:125px}.method .eyebrow{grid-column:1/-1;margin-bottom:-30px}.method>div{padding-top:16px;color:var(--muted)}footer{padding:28px 0;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}footer .wrap{display:flex;justify-content:space-between;gap:18px}footer a{text-decoration:none;color:var(--copper)}
@media(max-width:850px){.opening,.entry,.chart-layout,.aspects-room,.method{grid-template-columns:1fr}.opening{padding-top:45px;padding-bottom:80px}.opening-art{min-height:0;max-width:560px;width:100%;margin:0 auto}.entry{gap:15px;padding-bottom:90px}.entry-copy{position:static}.chart-layout{gap:25px}.aspects-room{gap:22px}.method{gap:20px}.method .eyebrow{margin-bottom:0}.method>div{padding-top:0}.masthead nav{gap:15px}}
@media(max-width:600px){.wrap{width:calc(100% - 32px)}.topline{padding:10px 16px;font-size:9px;letter-spacing:.07em}.masthead{min-height:80px}.brand{font-size:20px}.brand small{font-size:8px}.masthead nav a{font-size:11px}.masthead nav a:nth-child(2){display:none}h1{font-size:clamp(42px,11vw,60px)}h2{font-size:38px}.opening{gap:30px}.opening-art{box-shadow:10px 10px 0 #e8e0d4}.form-card{padding:22px 18px;box-shadow:6px 6px 0 #eae3d8}.fields{grid-template-columns:1fr;gap:18px}.form-bottom{display:block}.submit{margin-top:20px;width:100%}.results{padding:65px 0 80px}.wheel-panel{padding:7px}.chart-facts{padding:0}.placement{grid-template-columns:90px 1fr;gap:8px;font-size:12px}.aspect-list{columns:1}.aspects-room{margin-top:45px}.method{padding-top:75px;padding-bottom:80px}footer .wrap{display:block}footer .wrap>*{display:block;margin-bottom:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
 .learning-invite{display:grid;grid-template-columns:1fr .7fr;gap:7vw;align-items:center;border-top:1px solid var(--line);padding-top:110px;padding-bottom:110px}.learning-invite p:not(.eyebrow){max-width:39em}.learning-art{position:relative;aspect-ratio:1.1;background:#d8cab7;color:var(--night);display:flex;flex-direction:column;justify-content:space-between;padding:45px;overflow:hidden}.learning-art:before,.learning-art:after{content:'';position:absolute;border:1px solid #806f58;border-radius:50%;width:70%;aspect-ratio:1;right:-16%;top:15%}.learning-art:after{width:47%;right:0;top:28%}.learning-art span{font:400 clamp(45px,5vw,90px)/1 Georgia,serif;letter-spacing:-.08em}.learning-art i{font:400 15px/1.7 Georgia,serif;letter-spacing:.25em;font-style:normal;z-index:1}@media(max-width:700px){.learning-invite{grid-template-columns:1fr;padding-block:65px}.learning-art{max-width:400px}}
.faq{display:grid;grid-template-columns:.8fr 1fr;gap:8vw;border-top:1px solid var(--line);padding-top:100px;padding-bottom:100px}.faq>div>div{border-top:1px solid var(--line);padding:19px 0}.faq h3{font-size:23px;margin-bottom:10px}.faq p{font-size:14px;color:var(--muted)}@media(max-width:700px){.faq{grid-template-columns:1fr;gap:20px;padding-block:65px}}
