@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap");:root{color-scheme:dark;--bg-primary:#0b1221;--surface-card:#131d2e;--surface-glass:#192337;--surface-card-border:#30394c;--text-primary:#f3eee6;--text-secondary:#b3bbcb;--text-tertiary:#a0aabd;--gold:#dfc397;--primary-purple:#c5b4ed;--element-fire:#f4b67c;--element-water:#91c5f4;--element-earth:#dfc397;--element-metal:#c8cfdd;--element-wood:#9fd3b2;--element-fire-glow:#322a28;--element-water-glow:#1c2a3d;--element-earth-glow:#302c29;--element-metal-glow:#272e3d;--element-wood-glow:#20322e;--font-body:"DM Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-heading:"Libre Caslon Display",Georgia,serif}*{box-sizing:border-box}body{background:var(--bg-primary);color:var(--text-primary);font-family:var(--font-body);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}body,h1,h2,h3,h4,p{margin:0}h1,h2{font-family:var(--font-heading);font-weight:400;line-height:1.12}h3,h4{font-size:1rem;font-weight:500}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer;color:inherit;border:0;background:none}button:disabled{cursor:default}a,button,input,summary{-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--gold);outline-offset:5px}input:focus-visible{outline-offset:2px}a,button,summary{touch-action:manipulation}::selection{background:#655779;color:#fff}.text-secondary{color:var(--text-secondary)}.text-sm{font-size:.85rem}.eyebrow{color:var(--gold);font-size:.65rem;text-transform:uppercase;letter-spacing:.18em;font-weight:600}.app-shell{min-height:100vh;display:flex;flex-direction:column;isolation:isolate}main{flex:1 1}.container{max-width:1176px;margin:auto;padding:0 40px}.celestial-background{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none;background:radial-gradient(ellipse at 55% 18%,#20243e55,transparent 55%),radial-gradient(ellipse at 3% 70%,#20233944,transparent 40%)}.particle{position:absolute;width:2px;height:2px;border-radius:50%;background:var(--gold);opacity:.38;animation:float-particle var(--duration) ease-in-out var(--delay) infinite}.particle:nth-child(2n){background:var(--primary-purple)}.particle--star{width:6px;height:6px;border-radius:0;-webkit-clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%)}@keyframes float-particle{0%,to{transform:translate(0);opacity:.25}50%{transform:translate(var(--drift),-28px);opacity:.65}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.fade-in{animation:fade-in .3s ease-out}.skip-link{position:fixed;top:-100px;left:20px;padding:12px 20px;background:var(--gold);color:var(--bg-primary);z-index:10}.skip-link:focus{top:10px}.navbar{border-bottom:1px solid #ffffff0b}.navbar-inner{max-width:1296px;margin:auto;padding:24px 40px;display:flex;align-items:center;justify-content:space-between;gap:16px}.navbar-brand{display:inline-flex;gap:10px;align-items:center;min-height:44px;font-size:1.4rem;letter-spacing:-.04em;font-weight:500}.navbar-brand svg{color:var(--gold);font-size:1.5rem}.brand-dot{color:var(--gold)}.nav-actions{display:flex;align-items:center;gap:30px}.nav-caption{color:var(--text-tertiary);font-size:.75rem}.motion-toggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:0 12px;color:var(--text-secondary);font-size:.75rem;border:1px solid var(--surface-card-border);border-radius:30px}.motion-toggle:hover:not(:disabled){color:var(--text-primary);border-color:var(--gold)}.hero{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;grid-gap:86px;gap:86px;padding:86px 0 64px}.hero-copy{position:relative}.tiny-star{margin-right:8px;font-size:1rem}.hero h1{font-size:clamp(3.1rem,4.9vw,4.4rem);letter-spacing:-.035em;margin-top:24px;max-width:570px}.hero h1 em{color:var(--gold);font-weight:400}.hero-description{margin-top:25px;font-size:.95rem;max-width:450px;line-height:1.85}.hero-description,.journey{color:var(--text-secondary)}.journey{display:flex;align-items:center;flex-wrap:wrap;gap:11px;margin-top:30px;font-size:.68rem}.journey b{color:var(--gold);font-weight:400;margin-right:5px}.journey i{color:#66728a;font-style:normal}.celestial-seal{position:relative;width:132px;height:116px;margin:26px 0 0 90px;color:var(--gold)}.seal-orbit{position:absolute;inset:10px 21px 16px;border:1px solid #dfc39740;border-radius:50%}.seal-orbit--inner{inset:25px 5px 30px;transform:rotate(-32deg);border-color:#c5b4ed45}.seal-star{position:absolute;inset:0;display:grid;place-items:center;font-size:4.5rem;font-family:Georgia,serif;line-height:1}.seal-caption{position:absolute;bottom:-5px;left:-24px;width:180px;text-align:center;font-size:.46rem;letter-spacing:.17em;color:var(--text-tertiary)}.seal-spark{position:absolute;font-size:.7rem}.seal-spark--one{left:0;top:17px}.seal-spark--two{right:0;bottom:13px}.birth-card{border:1px solid #dfc3973a;border-radius:22px;padding:34px;background:linear-gradient(145deg,#1b2437,#121c2d 65%);box-shadow:0 25px 90px #00000024;text-align:center;position:relative}.birth-card:before{content:"";position:absolute;height:1px;top:-1px;left:15%;right:15%;background:linear-gradient(90deg,transparent,#dfc397a6,transparent)}.card-symbol{width:58px;height:58px;border:1px solid #dfc39736;border-radius:50%;display:grid;place-items:center;font-size:1.5rem;color:var(--gold);margin:0 auto 24px;background:#dfc39707}.birth-card h2{font-size:2.25rem;margin:12px 0 10px;letter-spacing:-.015em}.birth-card>.text-secondary{font-size:.83rem}.birth-card form{margin-top:30px;text-align:left}.birth-date-fields{display:grid;grid-template-columns:1fr 1fr 1.3fr;grid-gap:12px;gap:12px}.birth-date-field{min-width:0}.birth-date-field label{display:block;font-size:.75rem;color:var(--text-secondary);margin-bottom:9px}.birth-date-field input{width:100%;min-width:0;min-height:57px;padding:10px 4px;text-align:center;border:1px solid #667189;border-radius:9px;background:#0c1524;color:var(--text-primary);font-size:1.05rem;letter-spacing:.05em}.birth-date-field input::placeholder{color:#8f9ab0}.birth-date-field input[aria-invalid=true]{border-color:#f4a6a3}.field-hint{color:var(--text-tertiary);font-size:.66rem;margin-top:10px}.primary-action-button{display:inline-flex;width:100%;justify-content:center;align-items:center;gap:16px;background:var(--gold);border:1px solid var(--gold);color:#202331;border-radius:9px;min-height:52px;padding:12px 18px;font-size:.88rem;font-weight:600;transition:background .15s ease}.primary-action-button:hover{background:#eed5ad}.birth-card .primary-action-button{margin-top:24px}.primary-action-button svg{font-size:1.2rem}.privacy-note{display:flex;align-items:center;justify-content:center;gap:5px;color:var(--text-secondary);font-size:.65rem;margin-top:17px}.privacy-note svg{flex-shrink:0}.card-bottom-note{border-top:1px solid #ffffff0d;padding-top:22px;margin-top:26px;font-size:.7rem;color:var(--text-tertiary);line-height:1.75}.card-bottom-note span{display:block;color:var(--gold);font-size:1.15rem;margin-bottom:5px}.error-text{color:#ffc0ba;font-size:.83rem;margin-top:10px}.discovery-section{border-top:1px solid #ffffff12;padding:44px 0 70px}.section-intro{text-align:center}.section-intro h2{font-size:2.25rem;margin:13px 0 12px}.section-intro>p:last-child{font-size:.85rem}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:35px;gap:35px;margin-top:36px}.feature{padding:0 24px;border-left:1px solid #ffffff12}.feature:first-child{padding-left:0;border-left:0}.feature-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.feature-top span:first-child{color:var(--gold);font-size:1.7rem}.feature-top span:last-child{color:var(--text-tertiary);font-size:.65rem;letter-spacing:.12em}.feature h3{font-size:.94rem;margin-bottom:9px}.feature p{font-size:.81rem;color:var(--text-secondary);line-height:1.8}.footer{max-width:1216px;width:calc(100% - 80px);margin:auto;display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #ffffff12;padding:25px 0;color:var(--text-tertiary);font-size:.7rem}.footer-brand{font-size:1rem;color:var(--text-primary);display:inline-flex;align-items:center;min-height:44px}.footer>span{font-size:.65rem}.recent-section{padding:5px 0 45px}.section-heading-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.section-heading-row h2{font-size:1.8rem}.recent-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));grid-gap:14px;gap:14px}.recent-card{background:var(--surface-card);border:1px solid var(--surface-card-border);border-radius:12px;padding:14px 16px}.recent-meta{display:flex;justify-content:space-between;align-items:center}.icon-button{display:inline-grid;place-items:center;min-height:44px;min-width:44px;font-size:1.2rem;color:var(--text-secondary);border-radius:8px}.icon-button:hover{background:#ffffff0a;color:#ffc0ba}.recent-open{display:flex;align-items:center;justify-content:space-between;width:100%;text-align:left;padding:12px 0 4px;min-height:44px}.recent-open small{display:block;color:var(--text-secondary);font-size:.75rem}.recent-open strong{font-weight:500}.recent-open>svg{color:var(--gold)}.element-badge{display:inline-flex;gap:7px;align-items:center;background:var(--element-glow);color:var(--element-color);border:1px solid;border-radius:30px;padding:3px 11px;font-size:.75rem;width:-moz-fit-content;width:fit-content}.element-badge--lg{font-size:1rem;padding:7px 16px}.reading-container{width:100%;max-width:816px;padding:32px 32px 64px;margin:auto}.reading-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:22px}.text-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:8px 12px;color:var(--text-secondary);font-size:.8rem;border-radius:8px}.text-button:hover{background:#ffffff08;color:var(--gold)}.reading-summary{border:1px solid #dfc3973a;background:linear-gradient(155deg,#1b2539,#131d2e 60%);border-radius:20px;padding:30px 40px 36px;text-align:center}.reading-date{display:flex;align-items:center;justify-content:space-between;gap:12px}.reading-date>span:last-child{font-size:.75rem;color:var(--text-secondary)}.element-emblem{display:grid;place-items:center;width:86px;height:86px;border:1px solid #dfc39744;outline:1px solid #dfc39715;outline-offset:8px;border-radius:50%;margin:34px auto 24px;font-size:2.5rem;background:#dfc39705}.reading-summary h1{font-size:4rem;margin:6px 0 10px}.element-personality{color:var(--primary-purple);font-size:.88rem}.reading-meaning{margin:28px auto 24px;border-top:1px solid #ffffff12;padding-top:26px}.reading-meaning h2{font-size:2rem;margin-bottom:14px}.reading-meaning p{color:var(--text-secondary);font-size:.91rem;line-height:1.85}.takeaway{display:flex;gap:15px;text-align:left;padding:20px;background:#dfc39709;border:1px solid #dfc3972e;border-radius:10px}.takeaway>span{color:var(--gold);font-size:1.6rem;line-height:1.3}.takeaway h3,.takeaway h4{color:var(--gold);font-size:.78rem;margin-bottom:5px}.takeaway p{color:var(--text-primary);font-size:.86rem;line-height:1.75}.reading-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;padding-top:20px}.secondary-button,.share-btn{display:inline-flex;gap:8px;align-items:center;justify-content:center;border:1px solid var(--surface-card-border);background:var(--surface-card);color:var(--text-primary);border-radius:8px;min-height:44px;padding:8px 17px;font-size:.8rem}.secondary-button:hover,.share-btn:hover{background:#26314a;border-color:var(--primary-purple)}.sharing-section{margin-bottom:24px}.share-panel{border:1px solid var(--surface-card-border);background:var(--surface-card);border-radius:12px;padding:20px;margin-top:16px;text-align:center}.share-panel>p{font-size:.85rem;color:var(--text-secondary);margin-bottom:14px}.share-buttons{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.copy-fallback{display:block;text-align:left;margin-top:16px;font-size:.8rem}.copy-fallback input{display:block;width:100%;background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--surface-card-border);padding:12px;border-radius:6px}.status-text{font-size:.78rem;color:var(--text-secondary);text-align:center;margin-top:9px}.status-text:empty{margin:0}.disclosure{background:var(--surface-card);border:1px solid var(--surface-card-border);border-radius:12px;margin-top:14px}summary{cursor:pointer;min-height:44px}.disclosure>summary{list-style:none;display:flex;align-items:center;gap:18px;padding:22px 24px}summary::-webkit-details-marker{display:none}.disclosure-icon{font-size:1.7rem;color:var(--primary-purple);width:26px;flex-shrink:0;text-align:center}.disclosure summary strong{font-size:.95rem;font-weight:500;display:block}.disclosure summary small{font-size:.78rem;color:var(--text-secondary);display:block;margin-top:4px}.disclosure-chevron{margin-left:auto;color:var(--gold);font-size:1.4rem}.disclosure[open]>summary .disclosure-chevron{transform:rotate(45deg)}.disclosure[open]>summary{border-bottom:1px solid var(--surface-card-border)}.disclosure-content{padding:26px}.disclosure-content h2{font-size:2rem;margin-bottom:12px}.disclosure-content .eyebrow{margin-bottom:10px}.compatibility-checker>p,.disclosure-content>div>p.text-secondary{font-size:.88rem}.details-stack{display:flex;flex-direction:column;gap:24px}.detail-heading{font-size:1.15rem;margin-bottom:12px}.explanation-list{margin-top:16px}.inner-disclosure{border-top:1px solid var(--surface-card-border)}.inner-disclosure>summary{display:flex;justify-content:space-between;gap:12px;list-style:none;padding:16px 4px;font-size:.87rem}.inner-disclosure>summary>span:last-child{color:var(--gold)}.inner-disclosure>div{padding:0 4px 22px;font-size:.88rem}.inner-disclosure p+p{margin-top:10px}.star-chart-wrapper{border:1px solid var(--surface-card-border);background:var(--bg-primary);border-radius:12px;padding:20px 4px}.star-chart-svg{display:block;width:100%;max-width:500px;height:auto;margin:auto}.comparison-fields{display:grid;grid-template-columns:1fr 1fr;grid-gap:22px;gap:22px;margin:24px 0}fieldset{min-width:0;border:0;padding:0;margin:0}legend{padding:0;font-size:.86rem;font-weight:500;margin-bottom:15px}.comparison-fields .birth-date-fields{gap:8px}.comparison-fields input{font-size:.95rem}.comparison-result{margin-top:32px;border-top:1px solid var(--surface-card-border);padding-top:28px}.comparison-result h3{font-family:var(--font-heading);font-size:1.8rem;margin-bottom:20px;line-height:1.2}.comparison-result h4{margin-bottom:6px}.comparison-people{display:flex;flex-wrap:wrap;gap:22px;padding-bottom:20px}.comparison-people>div{display:flex;flex-direction:column;gap:8px;font-size:.75rem}.connection-summary{margin-bottom:24px;font-size:.95rem}.comparison-result .details-stack{font-size:.88rem}.shared-cta{text-align:center;margin:52px 0 0}.empty-symbol,.shared-cta>span{color:var(--gold);font-size:2.5rem}.shared-cta h2{font-size:2.25rem;margin:14px 0}.shared-cta p{font-size:.9rem}.empty-state .primary-action-button,.shared-cta .primary-action-button{max-width:320px;margin-top:26px}.empty-state{text-align:center;padding:50px 0 70px}.empty-state h1{font-size:3rem;margin:18px 0}.empty-state p:not(.eyebrow){max-width:440px;margin:auto}[data-motion=paused] *,[data-motion=paused] :after,[data-motion=paused] :before{animation:none!important;transition:none!important;scroll-behavior:auto!important}@media (prefers-reduced-motion:reduce){*,:after,:before{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media (max-width:1000px){.hero{gap:40px}.birth-card{padding:28px 24px}.hero h1{font-size:3.5rem}.journey{gap:8px}}@media (max-width:760px){.container{padding:0 24px}.navbar-inner{padding:15px 24px}.nav-caption{display:none}.hero{grid-template-columns:1fr;gap:30px;padding:40px 0;max-width:500px;margin:auto}.hero-copy{text-align:center}.hero h1{font-size:3.1rem;max-width:450px;margin:18px auto 0}.hero-description{margin:18px auto 0;font-size:.88rem}.hero .eyebrow{font-size:.58rem}.journey{justify-content:center;font-size:.64rem;margin-top:22px}.celestial-seal{display:none}.birth-card{padding:26px}.card-symbol{width:45px;height:45px;margin-bottom:16px;font-size:1.2rem}.birth-card h2{font-size:2.1rem}.birth-card form{margin-top:23px}.card-bottom-note{padding-top:16px;margin-top:20px}.card-bottom-note span{display:inline;margin-right:6px}.discovery-section{padding:35px 0 45px}.section-intro h2{font-size:2rem}.feature-grid{grid-template-columns:1fr;gap:22px}.feature,.feature:first-child{padding:0 0 22px;border-left:0;border-bottom:1px solid #ffffff12}.feature:last-child{border-bottom:0;padding-bottom:0}.feature-top{margin-bottom:8px}.feature p{max-width:450px}.footer{width:calc(100% - 48px);flex-wrap:wrap;justify-content:center;gap:8px 18px;padding:22px 0;text-align:center}.footer>span{width:100%}.particle:nth-child(n+13){display:none}.section-heading-row{align-items:flex-start;flex-direction:column;gap:8px}.recent-grid{grid-template-columns:1fr}.reading-container{padding:20px 20px 42px}.reading-summary{padding:22px}.reading-meaning h2{font-size:1.8rem}.reading-toolbar>.eyebrow{font-size:.57rem}.reading-toolbar .text-button{font-size:.75rem;padding-right:0}.reading-date{flex-wrap:wrap;justify-content:center;gap:4px 16px}.reading-date .eyebrow{font-size:.56rem}.takeaway{padding:16px;gap:10px}.disclosure>summary{padding:18px 16px;gap:12px}.disclosure summary small{font-size:.73rem}.disclosure-content{padding:20px 16px}.comparison-fields{grid-template-columns:1fr;gap:26px}.comparison-fields input{font-size:1rem}}@media (max-width:360px){.container{padding:0 16px}.navbar-inner{padding:12px 16px}.hero h1{font-size:2.7rem}.journey{gap:5px;font-size:.58rem}.birth-card{padding:22px 18px}.birth-card h2{font-size:1.9rem}.reading-container{padding-left:12px;padding-right:12px}.reading-summary{padding:20px 16px}.reading-toolbar>.eyebrow{letter-spacing:.1em}}#connection-title:focus,#reading-title:focus{outline:none}@media (max-width:760px){.hero{padding-top:24px;gap:24px}.hero h1,.hero-description{margin-top:14px}.birth-card .card-symbol{display:none}}