@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Serif+SC:wght@400;500;600;700&display=swap');
:root{--ink:#283b35;--muted:#6e7770;--cream:#f7f1e7;--paper:#fffdf8;--line:#e3ded3;--sage:#dce7d9;--green:#345846;--gold:#b4874b;--pink:#eee0d3}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font:16px/1.7 'DM Sans',system-ui,sans-serif}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.wrap{width:min(1160px,calc(100% - 48px));margin:auto}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Noto Serif SC',serif;font-weight:600}h2{font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.35}.eyebrow{font-size:.78rem;letter-spacing:.16em;font-weight:700;color:#a0713f}.site-head{height:88px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.wordmark{display:flex;align-items:center;gap:10px;font-family:'Noto Serif SC',serif;font-size:1.3rem;font-weight:700;line-height:1.05}.wordmark small{display:block;font:600 .5rem/1.8 'DM Sans',sans-serif;letter-spacing:.14em}.mark{width:39px;height:39px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#fff7e9;font-size:1.1rem}.site-head nav{display:flex;gap:34px;font-size:.9rem}.site-head nav a:hover,.footer a:hover{color:var(--gold)}
.hero{min-height:575px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:50px}.hero-copy{padding:55px 0}.hero h1{font-size:clamp(2.6rem,5vw,4.75rem);line-height:1.27;letter-spacing:-.045em;margin:18px 0 25px}.hero h1 em{font-style:normal;color:#a37a48}.lead{color:var(--muted);max-width:510px;font-size:1.06rem;line-height:1.9}.hero-link{display:inline-flex;align-items:center;gap:70px;margin-top:25px;border-bottom:1px solid var(--ink);padding-bottom:10px;font-weight:700}.hero-link:hover{gap:85px}.hero-art{position:relative;width:min(450px,100%);height:450px;justify-self:center;display:grid;place-items:center}.orbit{position:absolute;border-radius:50%;border:1px solid #d2c7ad}.orbit-a{inset:10px}.orbit-b{inset:44px;border-style:dashed;transform:rotate(-18deg)}.hero-art:before{content:'';position:absolute;inset:74px;background:#e8e1d0;border-radius:50%;filter:blur(2px)}.art-card{position:relative;z-index:1;width:267px;height:325px;background:#fbf6ec;border:1px solid #d0c5ae;box-shadow:15px 20px 0 #d9d4bf,0 25px 60px #52665724;transform:rotate(-7deg);display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:'Noto Serif SC',serif}.art-card span{font-size:.9rem;letter-spacing:.45em}.art-card strong{font-size:3.4rem;letter-spacing:.06em;margin:20px 0}.art-card i{font-size:.72rem;font-style:normal;color:#8d8b7f}.art-stamp{position:absolute;right:15px;bottom:31px;background:#b87d60;color:white;border-radius:50%;width:76px;height:76px;display:grid;place-items:center;text-align:center;font-family:'Noto Serif SC',serif;line-height:1.3;transform:rotate(15deg)}
.studio-section{background:#e8eee4;padding:90px 0 105px}.section-top{display:flex;justify-content:space-between;align-items:end;gap:20px}.section-top h2{margin-bottom:25px}.section-top>p{color:var(--muted);font-size:.9rem}.studio-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(270px,.8fr);gap:24px}.form-panel,.side-panel{background:var(--paper);border:1px solid #dce3d6;border-radius:14px}.form-panel{padding:36px}.tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:5px;background:#f0f1e9;border-radius:9px;margin-bottom:32px}.tab{border:0;background:transparent;border-radius:6px;color:#66736b;min-height:48px;font-size:.88rem;font-weight:600}.tab span{color:var(--gold);margin-right:4px}.tab.active{background:white;color:var(--ink);box-shadow:0 2px 8px #182d2115}label{display:block;font-weight:700;font-size:.93rem;margin:19px 0 8px}label b,label span{font-size:.75rem;color:#9b8e77;font-weight:500;margin-left:6px}input,select{width:100%;min-height:52px;border:1px solid #d9dfd5;border-radius:7px;padding:12px 15px;background:white;color:var(--ink);outline:none}input:focus,select:focus{border-color:#6f9580;box-shadow:0 0 0 3px #6f95802a}input::placeholder{color:#9ca69e}.hint{color:#89948c;font-size:.76rem;margin:7px 0 0}.primary,.secondary{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;border-radius:7px;min-height:52px;padding:12px 22px;font-weight:700;border:1px solid var(--green)}.primary{background:var(--green);color:white}.primary:hover:not(:disabled){background:#243e31}.primary:disabled{opacity:.52;cursor:not-allowed}.secondary{background:transparent;color:var(--green)}.secondary:hover{background:#f1f5ed}form .primary{width:100%;margin-top:29px}.error{margin:13px 0 0;color:#a64037;font-size:.86rem}.side-panel{background:#315441;color:#f7f5e8;padding:46px 40px;display:flex;flex-direction:column;min-height:100%}.side-number{font-size:.78rem;color:#b6d2bc;letter-spacing:.12em}.side-panel h3{font-size:2rem;line-height:1.55;margin:80px 0 18px}.side-panel p{color:#d6e3d7;line-height:1.9}.side-rule{height:1px;background:#87a18b;margin:auto 0 28px}.side-quote{font-family:'Noto Serif SC',serif;font-size:1.2rem}
.results{background:var(--paper);border:1px solid #dce3d6;border-radius:14px;margin-top:24px;padding:40px}.results-head{display:flex;justify-content:space-between;align-items:start;gap:16px}.results-head h2{margin-bottom:12px}.text-button{border:0;background:transparent;text-decoration:underline;text-underline-offset:5px;color:var(--green);font-weight:700}.context-line{color:var(--muted);margin:0 0 24px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.name-card{border:1px solid var(--line);border-radius:9px;padding:23px;background:white;position:relative;min-height:205px}.name-card .topline{display:flex;justify-content:space-between;align-items:center}.name-card .index{font-size:.7rem;color:#a88e6e;letter-spacing:.12em}.save{border:0;background:transparent;font-size:1.5rem;color:#9aab9a;line-height:1;padding:0}.save[aria-pressed="true"]{color:#b47163}.name-card h3{font-size:1.65rem;margin:13px 0 0;line-height:1.35}.name-card .roman{color:#8b9b8d;font-size:.81rem;margin:3px 0 14px}.name-card p:last-child{font-size:.9rem;color:#5c6d61;margin:0}.method{font-size:.78rem;color:#7b877d;margin:22px 0}.result-footer{border-top:1px solid var(--line);padding-top:20px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:.82rem;color:var(--muted)}.result-footer .secondary{min-height:42px;font-size:.82rem}
.how{padding:95px 0 110px}.how h2{margin:12px 0 40px}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.features article{border-top:1px solid #c9c6b9;padding-top:19px}.features span{font-size:.78rem;color:#a37a48}.features h3{font-size:1.25rem;margin:32px 0 10px}.features p{color:var(--muted);font-size:.91rem}.plans{background:#e9dfd0;padding:90px 0}.plans-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:54px}.plans-grid>div>p:not(.eyebrow){color:var(--muted);max-width:330px}.plan-cards{display:grid;grid-template-columns:1fr 1fr;gap:15px}.plan-cards article{background:var(--paper);padding:25px;border-radius:11px;border:1px solid #ddd3c5}.plan-cards article.premium{background:#f8f1e5;border-color:#c7ad86}.plan-type{font-size:.78rem;color:#9c7850}.plan-cards h3{font-size:1.35rem;margin:12px 0}.price{font-size:1.2rem;font-weight:700;color:var(--ink)!important;margin:10px 0 14px!important}.plan-cards ul{padding-left:20px;min-height:102px;color:#627167;font-size:.85rem}.plan-cards li{margin:5px 0}.plan-cards button,.plan-link{width:100%;min-height:45px;font-size:.82rem}.plan-note{font-size:.72rem!important;line-height:1.5;margin:10px 0 0!important;color:#887a68!important}.footer{min-height:130px;display:flex;justify-content:space-between;align-items:center;gap:20px}.footer p,.footer a{font-size:.8rem;color:var(--muted);margin:0}
@media(max-width:850px){.hero{grid-template-columns:1fr 350px;gap:10px}.hero-art{height:350px}.art-card{transform:rotate(-7deg) scale(.78)}.plans-grid{grid-template-columns:1fr}.studio-grid{grid-template-columns:1fr}.side-panel{display:none}.cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.wrap{width:min(100% - 32px,1160px)}.site-head{height:73px}.site-head nav{gap:14px;font-size:.78rem}.hero{display:block;min-height:0;padding-bottom:50px}.hero-copy{padding:50px 0 0}.hero h1{font-size:3rem}.hero-art{height:300px;margin:auto}.orbit-a{inset:10px 45px}.orbit-b{inset:35px 70px}.art-card{transform:rotate(-7deg) scale(.66)}.art-stamp{right:35px;bottom:0}.studio-section,.how,.plans{padding:60px 0}.section-top>p{display:none}.form-panel{padding:21px}.tab{font-size:.75rem;line-height:1.3;padding:7px 3px}.tab span{display:block}.results{padding:22px}.results-head h2{font-size:1.6rem}.cards{grid-template-columns:1fr}.name-card{min-height:0}.result-footer{align-items:start;flex-direction:column}.features,.plan-cards{grid-template-columns:1fr}.features{gap:15px}.features h3{margin-top:10px}.footer{flex-wrap:wrap;padding:26px 0}.footer p{order:3;width:100%}}
@media print{.site-head,.hero,.studio-grid,.how,.plans,.footer,.result-footer,.results-head .text-button{display:none!important}.studio-section{background:white;padding:0}.results{border:0;padding:0;margin:0}.cards{grid-template-columns:repeat(3,1fr)}.name-card{break-inside:avoid}}
.art-preview{margin-top:18px;border-top:1px solid var(--line);padding-top:16px}.art-preview svg{width:100%;max-width:190px;display:block;margin:auto}.art-download{width:100%;margin-top:9px;padding:8px;border:1px solid var(--line);border-radius:6px;background:#f9f7f0;color:var(--green);font-size:.75rem;font-weight:700}.art-download:hover{border-color:var(--green)}
.english-pair{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:10px 0;margin:4px 0 12px;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.english-pair span{font-size:.6rem;letter-spacing:.11em;color:#a18865}.english-pair strong{font-size:1.05rem;color:var(--green)}.english-pair small{display:block;width:100%;font-size:.7rem;color:#78867a;line-height:1.5}
.birth-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.birth-grid input{min-width:0}.bazi-summary{border:1px solid #d5dfd3;background:#f3f7ee;border-radius:8px;padding:17px 20px;margin:0 0 22px}.bazi-summary h3{font-size:1rem;margin:0 0 6px}.bazi-summary p{font-weight:700;margin:0 0 5px}.bazi-summary small{display:block;color:#607266;line-height:1.7;font-size:.78rem}
@media(max-width:380px){.birth-grid{grid-template-columns:1fr}}
