@import "https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700;800;900&family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&family=Inter:wght@400;500;600;700&display=swap";:root,[data-theme=light]{--bg-deep:#f8f7f4;--bg-surface:#fff;--bg-card:#fff;--bg-card2:#f3f1ec;--gold:#c28e18;--gold-light:#d9a426;--gold-muted:#c28e181f;--gold-border:#c28e1852;--accent:#4338ca;--accent-light:#6366f1;--accent-muted:#4338ca1a;--purple:#4338ca;--purple-light:#6366f1;--purple-dark:#312e81;--cyan:#0284c7;--cyan-light:#0ea5e9;--pink:#db2777;--text:#0f172a;--text-muted:#475569;--text-dim:#64748b;--muted:#64748b;--border:#0f172a1a;--border-glow:#c28e1866;--glow-gold:0 0 25px #c28e1833;--glow-purple:0 0 25px #4338ca2e;--glow-cyan:0 0 25px #0284c72e;--glass-bg:#fffffff5;--glass-shadow:0 10px 32px #0f172a14, 0 1px 3px #0f172a0a;--input-bg:#f8fafc;--select-option-bg:#fff;--select-option-text:#0f172a;--success:#15803d;--warning:#d97706;--error:#b91c1c;--info:#1d4ed8;--radius-sm:8px;--radius:14px;--radius-lg:22px;--radius-xl:32px;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--space-3xl:64px;--space-4xl:96px;--container-max:1240px;--container-padding:clamp(1rem, 5vw, 2rem);--nav-height:72px;--font-heading:"Outfit", system-ui, -apple-system, sans-serif;--font-body:"Plus Jakarta Sans", "Inter", system-ui, -apple-system, sans-serif;--font-brand:"Outfit", sans-serif;--transition:.22s cubic-bezier(.4, 0, .2, 1);--transition-slow:.4s cubic-bezier(.4, 0, .2, 1)}[data-theme=dark]{--bg-deep:#040611;--bg-surface:#090d20;--bg-card:#0e142b;--bg-card2:#151c3b;--gold:#f59e0b;--gold-light:#fbbf24;--gold-muted:#f59e0b26;--gold-border:#f59e0b52;--accent:#6366f1;--accent-light:#818cf8;--accent-muted:#6366f129;--purple:#818cf8;--purple-light:#a5b4fc;--purple-dark:#6366f1;--cyan:#06b6d4;--cyan-light:#22d3ee;--pink:#ec4899;--text:#f8fafc;--text-muted:#94a3b8;--text-dim:#64748b;--muted:#64748b;--border:#ffffff14;--border-glow:#f59e0b73;--glow-gold:0 0 35px #f59e0b47;--glow-purple:0 0 30px #6366f147;--glow-cyan:0 0 30px #06b6d447;--glass-bg:#0e142bc7;--glass-shadow:0 14px 44px #0000007a, inset 0 1px 0 #ffffff0f;--input-bg:#ffffff0b;--select-option-bg:#0e142b;--select-option-text:#f8fafc;--success:#22c55e;--warning:#f59e0b;--error:#ef4444;--info:#3b82f6}@media (width>=992px){.hide-desktop{display:none!important}}@media (width<=991px){.hide-mobile{display:none!important}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;max-width:100%;overflow-x:hidden}body{font-family:var(--font-body);background:var(--bg-deep);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:radial-gradient(at 50% 0,#d4a84b0f 0%,#0000 55%),radial-gradient(at 100% 100%,#6366f10a 0%,#0000 50%);background-attachment:fixed;max-width:100%;min-height:100vh;line-height:1.65;transition:background .3s,color .3s;overflow-x:hidden}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}input,select,textarea{font-family:inherit}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);letter-spacing:-.02em;color:var(--text);line-height:1.2}h1{font-size:clamp(2.25rem,5vw,3.5rem);font-weight:700}h2{font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:700}h3{font-size:clamp(1.25rem,2vw,1.5rem);font-weight:600}h4{font-size:1.125rem;font-weight:600}h5{font-size:1rem;font-weight:600}h6{font-size:.875rem;font-weight:600}p{line-height:1.7}.text-gradient-gold,.gradient-text{background:linear-gradient(135deg, var(--gold) 0%, var(--gold-light) 50%, wheat 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}#starfield{pointer-events:none;z-index:0;opacity:.7;width:100%;height:100%;transition:opacity .3s;position:fixed;top:0;left:0}#root{z-index:1;flex-direction:column;max-width:100%;min-height:100vh;display:flex;position:relative;overflow-x:hidden}.page-container{padding:calc(var(--nav-height) + var(--space-xl)) var(--container-padding) var(--space-3xl);max-width:var(--container-max);flex:1;width:100%;margin:0 auto}.container{max-width:var(--container-max);padding:0 var(--container-padding);width:100%;margin:0 auto}.section{padding:var(--space-4xl) 0}.divider{background:var(--border);height:1px;margin:var(--space-2xl) 0;border:none}.glass-card{background:var(--glass-bg);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-lg);box-shadow:var(--glass-shadow);transition:border-color var(--transition), box-shadow var(--transition), transform var(--transition), background .3s ease}.glass-card:hover{border-color:var(--gold-border);box-shadow:0 16px 40px #00000026}.btn{border-radius:var(--radius);transition:all var(--transition);white-space:nowrap;letter-spacing:.01em;font-size:.925rem;font-weight:600;font-family:var(--font-body);cursor:pointer;border:none;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;display:inline-flex}.btn-primary{background:linear-gradient(135deg, var(--accent) 0%, #4338ca 100%);color:#fff;box-shadow:0 4px 16px #6366f14d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 24px #6366f173}.btn-gold{background:linear-gradient(135deg, var(--gold) 0%, #c4922a 100%);color:#fff;text-shadow:0 1px 2px #00000026;box-shadow:0 4px 16px #d4a84b4d}.btn-gold:hover{transform:translateY(-2px);box-shadow:0 8px 24px #d4a84b73}.btn-outline{border:1px solid var(--border);color:var(--text);background:0 0}.btn-outline:hover{border-color:var(--gold-border);color:var(--gold-light);background:var(--gold-muted)}.btn-ghost{color:var(--text-muted);background:0 0;padding:.5rem 1rem}.btn-ghost:hover{color:var(--text);background:#ffffff0f}.btn-sm{border-radius:var(--radius-sm);padding:.5rem 1.1rem;font-size:.85rem}.btn-lg{border-radius:var(--radius);padding:1rem 2.25rem;font-size:1rem}.btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none!important;transform:none!important}.badge{letter-spacing:.05em;text-transform:uppercase;border-radius:999px;align-items:center;gap:.3rem;padding:.25rem .7rem;font-size:.72rem;font-weight:600;display:inline-flex}.badge-gold{background:var(--gold-muted);color:var(--gold-light);border:1px solid var(--gold-border)}.badge-purple{background:var(--accent-muted);color:var(--accent-light);border:1px solid #6366f140}.badge-cyan{color:var(--cyan);background:#06b6d41a;border:1px solid #06b6d440}.badge-free{color:var(--text-muted);background:#94a3b81a;border:1px solid #94a3b833}.form-group{flex-direction:column;gap:.4rem;display:flex}.form-label{color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase;font-size:.8rem;font-weight:600}.form-input{background:var(--input-bg);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);transition:all var(--transition);width:100%;padding:.75rem 1rem;font-size:.95rem}.form-input:focus{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-muted);outline:none}.form-input::placeholder{color:var(--muted);opacity:.7}select option{padding:10px 14px;background-color:var(--select-option-bg)!important;color:var(--select-option-text)!important}select option:hover,select option:focus,select option:active,select option:checked{background-color:var(--gold)!important;color:#fff!important}.tabs{border-radius:var(--radius);border:1px solid var(--border);background:#ffffff08;gap:.3rem;padding:.3rem;display:flex}.tab-btn{border-radius:var(--radius-sm);color:var(--text-muted);transition:all var(--transition);cursor:pointer;background:0 0;border:none;flex:1;justify-content:center;align-items:center;gap:.4rem;padding:.6rem 1rem;font-size:.875rem;font-weight:600;display:flex}.tab-btn:hover{color:var(--text);background:#ffffff0d}.tab-btn.active{background:var(--gold-muted);color:var(--gold-light);border:1px solid var(--gold-border);box-shadow:0 2px 12px #d4a84b26}[data-theme=light] body{background-image:radial-gradient(at 50% 0,#b8942e0a 0%,#0000 55%),radial-gradient(at 100% 100%,#4f46e508 0%,#0000 50%)}[data-theme=light] #starfield{opacity:.15}[data-theme=light] .navbar.scrolled{background:#fafaf8eb;box-shadow:0 1px 16px #0000000d}[data-theme=light] .birth-form-centered{border-color:var(--gold-border)!important;background:#fffffff5!important;box-shadow:0 12px 32px #0000000f!important}[data-theme=light] .place-suggestions{border-color:var(--gold-border)!important;background:#fff!important;box-shadow:0 8px 24px #0000001a!important}[data-theme=light] .place-suggestion{color:#1a1a2e!important;border-bottom-color:#0000000d!important}[data-theme=light] .place-suggestion:hover{background:var(--gold-muted)!important;color:var(--gold)!important}.navbar{height:var(--nav-height);z-index:1000;transition:all var(--transition);background:0 0;position:fixed;top:0;left:0;right:0}.navbar.scrolled{-webkit-backdrop-filter:blur(24px);border-bottom:1px solid var(--gold-border);background:#050714eb}:root[data-theme=light] .navbar.scrolled{background:#fafaf8eb}.nav-inner{max-width:var(--container-max);justify-content:space-between;align-items:center;height:100%;margin:0 auto;padding:0 1.5rem;display:flex}.nav-logo{font-family:var(--font-brand);align-items:center;gap:8px;font-size:1.5rem;font-weight:700;text-decoration:none;display:flex}.logo-text{background:linear-gradient(135deg, var(--gold), var(--gold-light));color:#0000;-webkit-background-clip:text;background-clip:text}.logo-icon{color:var(--gold);animation:3s ease-in-out infinite pulse;display:inline-block}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.nav-links{align-items:center;gap:2rem;display:flex}.nav-link{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);transition:color var(--transition);font-size:.8rem;font-weight:600;text-decoration:none;position:relative}.nav-link:hover{color:var(--text)}.nav-link.active{color:var(--gold)}.nav-link:after{content:"";background-color:var(--gold);width:4px;height:4px;transition:transform var(--transition);border-radius:50%;position:absolute;bottom:-8px;left:50%;transform:translate(-50%)scale(0)}.nav-link.active:after{transform:translate(-50%)scale(1)}.nav-right{align-items:center;gap:1rem;display:flex}.theme-toggle{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;width:32px;height:32px;transition:all var(--transition);background:0 0;border-radius:16px;justify-content:center;align-items:center;display:flex}.theme-toggle:hover{border-color:var(--gold-border);color:var(--gold)}.hamburger{cursor:pointer;z-index:1001;background:0 0;border:none;flex-direction:column;justify-content:space-between;width:24px;height:18px;padding:0;display:flex}.hamburger span{background-color:var(--gold);width:100%;height:2px;transition:transform var(--transition), opacity var(--transition);border-radius:2px;display:block}.hamburger.open span:first-child{transform:translateY(8px)rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:translateY(-8px)rotate(-45deg)}.mobile-menu{z-index:999;opacity:0;pointer-events:none;transition:opacity var(--transition);background:#050714f7;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}:root[data-theme=light] .mobile-menu{background:#fafaf8f7}.mobile-menu.open{opacity:1;pointer-events:auto}.mobile-menu-inner{flex-direction:column;align-items:center;gap:2rem;display:flex}.mobile-link{font-family:var(--font-heading);color:var(--text-muted);opacity:0;transition:all var(--transition);font-size:1.5rem;text-decoration:none;transform:translateY(20px)}.mobile-link.active{color:var(--gold)}.mobile-menu.open .mobile-link{opacity:1;transition-delay:var(--delay);transform:translateY(0)}.hide-desktop{display:none}@media (width<=768px){.hide-desktop{display:flex}.hide-mobile{display:none}}.footer{background:var(--bg-card,#0f1225);border-top:1px solid var(--border,#ffffff0f);z-index:10;width:100%;padding:64px 0 0;position:relative}.footer-inner{max-width:var(--container-max,1200px);padding:0 var(--container-padding,24px);box-sizing:border-box;grid-template-columns:2fr repeat(4,1fr);gap:32px;margin:0 auto;display:grid}.footer-brand{flex-direction:column;display:flex}.footer-logo{font-family:var(--font-brand,"Cinzel", serif);background:linear-gradient(135deg, var(--gold-light,#e8c36a), var(--gold,#d4a84b));-webkit-text-fill-color:transparent;color:var(--gold,#d4a84b);-webkit-background-clip:text;background-clip:text;align-items:center;font-size:1.25rem;font-weight:700;text-decoration:none;display:inline-flex}.logo-icon{color:var(--gold,#d4a84b);-webkit-text-fill-color:var(--gold,#d4a84b);margin-right:6px;display:inline-block}.logo-text{background:linear-gradient(135deg, var(--gold-light,#e8c36a), var(--gold,#d4a84b));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.footer-tagline{color:var(--text-muted);margin-top:8px;font-size:.88rem;line-height:1.5}.footer-col{flex-direction:column;display:flex}.footer-col h4,.footer h4{font-family:var(--font-body,"Inter", sans-serif);color:var(--text-muted,#7c8db5);text-transform:uppercase;letter-spacing:.1em;margin-top:0;margin-bottom:16px;font-size:.75rem;font-weight:700}.footer-links{flex-direction:column;display:flex}.footer-link,.footer-col a{color:var(--text-muted);transition:color var(--transition,.25s ease), transform var(--transition,.25s ease);font-size:.88rem;line-height:2.2;text-decoration:none;display:block}.footer-link:hover,.footer-col a:hover{color:var(--gold-light,#e8c36a);transform:translate(2px)}.footer-bottom{border-top:1px solid var(--border,#ffffff0f);max-width:var(--container-max,1200px);box-sizing:border-box;justify-content:space-between;align-items:center;gap:16px;margin-top:48px;margin-left:auto;margin-right:auto;padding:24px;display:flex}.footer-copyright,.footer-disclaimer,.footer-bottom p{color:var(--text-dim,#4a5578);margin:0;font-size:.8rem;line-height:1.5}@media (width<=1024px){.footer-inner{grid-template-columns:1fr 1fr;gap:32px}.footer-brand{grid-column:1/-1}}@media (width<=768px){.footer-inner{grid-template-columns:1fr;gap:32px}.footer-brand{text-align:center;align-items:center}.footer-bottom{text-align:center;flex-direction:column;gap:12px}}@media print{.no-print{display:none}}.homepage{width:100%}.container{max-width:var(--container-max,1240px);padding:0 var(--container-padding,var(--space-xl,24px));margin:0 auto}.section-header{text-align:center;margin-bottom:var(--space-3xl,48px);align-items:center;gap:var(--space-xs,8px);flex-direction:column;display:flex}.section-label{text-transform:uppercase;letter-spacing:.16em;color:var(--gold);font-size:.75rem;font-weight:700}.section-title{font-family:var(--font-heading,"Playfair Display", serif);margin-bottom:var(--space-xs,8px);color:var(--text);font-size:clamp(2rem,4vw,2.75rem);line-height:1.2}.section-subtitle{color:var(--text-muted);max-width:620px;font-size:1.05rem;line-height:1.6}.hero-section{text-align:center;min-height:92vh;padding-top:calc(var(--nav-height,72px) + var(--space-xl));padding-bottom:var(--space-4xl,64px);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.zodiac-ring{opacity:.12;pointer-events:none;z-index:0;width:520px;height:520px;animation:140s linear infinite rotateZodiac;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}[data-theme=light] .zodiac-ring{opacity:.15}@keyframes rotateZodiac{0%{transform:translate(-50%,-50%)rotate(0)}to{transform:translate(-50%,-50%)rotate(360deg)}}.zodiac-sign{color:var(--gold);transform:translate(-50%, -50%) rotate(calc(var(--i) * 30deg)) translateY(-260px) rotate(calc(var(--i) * -30deg));font-size:2rem;position:absolute;top:50%;left:50%}.hero-content{z-index:1;max-width:820px;padding:0 var(--space-xl,24px);flex-direction:column;align-items:center;display:flex;position:relative}.hero-badge{background:var(--gold-muted);color:var(--gold);border:1px solid var(--gold-border);margin-bottom:var(--space-lg);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:.4rem 1rem;font-size:.8rem;font-weight:700}.hero-title{font-family:var(--font-heading,"Playfair Display", serif);margin-bottom:var(--space-md);color:var(--text);font-size:clamp(2.8rem,6vw,4.6rem);line-height:1.1}.hero-subtitle{color:var(--text-muted);margin-bottom:var(--space-2xl);max-width:680px;font-size:clamp(1.05rem,2vw,1.25rem);line-height:1.65}.hero-cta{margin-bottom:var(--space-2xl)}.trust-strip{justify-content:center;align-items:center;gap:var(--space-md,16px);color:var(--text-dim);text-transform:uppercase;letter-spacing:.08em;flex-wrap:wrap;font-size:.8rem;font-weight:600;display:flex}.trust-strip .divider{color:var(--border);background:0 0;height:auto;margin:0}.features-section{padding:var(--space-4xl) 0}.features-grid{gap:var(--space-xl);grid-template-columns:repeat(2,1fr);display:grid}.feature-card{border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-xl);background:var(--bg-card);box-shadow:var(--glass-shadow);transition:all var(--transition);flex-direction:column;text-decoration:none;display:flex;position:relative}.feature-card:hover{border-color:var(--gold-border);transform:translateY(-4px);box-shadow:0 16px 36px #0000001f}.feature-icon{border-radius:var(--radius);background:var(--gold-muted);border:1px solid var(--gold-border);width:52px;height:52px;color:var(--gold);margin-bottom:var(--space-md);justify-content:center;align-items:center;font-size:1.6rem;display:flex}.feature-title{font-family:var(--font-heading,"Playfair Display", serif);color:var(--text);margin-bottom:var(--space-xs);justify-content:space-between;align-items:center;font-size:1.5rem;display:flex}.feature-desc{color:var(--text-muted);margin-bottom:var(--space-md);flex-grow:1;font-size:.95rem;line-height:1.65}.feature-arrow{color:var(--gold);transition:transform var(--transition);align-self:flex-start;font-size:1.25rem}.feature-card:hover .feature-arrow{transform:translate(6px)}.how-it-works-section{padding:var(--space-4xl) 0;background:var(--input-bg);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.steps-row{justify-content:space-between;align-items:flex-start;gap:var(--space-xl);margin-top:var(--space-2xl);display:flex;position:relative}.step-card{text-align:center;z-index:1;flex-direction:column;flex:1;align-items:center;display:flex;position:relative}.step-number{font-family:var(--font-heading,"Playfair Display", serif);color:var(--gold);margin-bottom:var(--space-xs);font-size:3.5rem;font-weight:700;line-height:1}.step-title{font-family:var(--font-body);color:var(--text);margin-bottom:var(--space-xs);font-size:1.2rem;font-weight:700}.step-desc{color:var(--text-muted);max-width:280px;font-size:.92rem;line-height:1.6}.step-connector{background:var(--gold-border);flex:0 0 60px;height:2px;margin-top:2rem}.observatory-section{padding:var(--space-4xl) 0}.observatory-grid{gap:var(--space-md);grid-template-columns:repeat(4,1fr);display:grid}.observatory-card{border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-lg);background:var(--bg-card);box-shadow:var(--glass-shadow);align-items:center;gap:var(--space-md);transition:all var(--transition);text-decoration:none;display:flex}.observatory-card:hover{border-color:var(--gold-border);transform:translateY(-2px)}.observatory-icon{font-size:1.6rem}.observatory-title{color:var(--text);transition:color var(--transition);font-size:.95rem;font-weight:600}.observatory-card:hover .observatory-title{color:var(--gold)}.bottom-cta-section{padding:var(--space-4xl) 0;text-align:center;flex-direction:column;align-items:center;display:flex}.bottom-cta-title{font-family:var(--font-heading,"Playfair Display", serif);color:var(--text);margin-bottom:var(--space-xs);font-size:clamp(2rem,4.5vw,3.2rem)}.bottom-cta-subtitle{color:var(--text-muted);margin-bottom:var(--space-2xl);max-width:620px;font-size:1.1rem}@media (width<=1024px){.zodiac-ring{width:420px;height:420px}.zodiac-sign{transform:translate(-50%, -50%) rotate(calc(var(--i) * 30deg)) translateY(-210px) rotate(calc(var(--i) * -30deg))}}@media (width<=768px){.features-grid{grid-template-columns:1fr}.steps-row{align-items:center;gap:var(--space-2xl);flex-direction:column}.step-connector{display:none}.step-desc{max-width:100%}.observatory-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=480px){.zodiac-ring{width:300px;height:300px}.zodiac-sign{transform:translate(-50%, -50%) rotate(calc(var(--i) * 30deg)) translateY(-150px) rotate(calc(var(--i) * -30deg));font-size:1.5rem}.observatory-grid{grid-template-columns:1fr}.trust-strip{gap:var(--space-xs);flex-direction:column}.trust-strip .divider{display:none}}
