body{display:flex;min-height:100vh;flex-direction:column}main{flex:1}.hero{position:relative;isolation:isolate;padding:44px 0 76px;overflow:hidden;color:#fff;background:radial-gradient(circle at 50% 20%,rgba(113,91,235,.34),transparent 36%),linear-gradient(145deg,#11102e 0%,#1b1745 52%,#102d3b 100%)}.hero:after{position:absolute;z-index:-1;inset:auto 0 0;height:170px;content:"";background:linear-gradient(transparent,rgba(6,8,27,.22));pointer-events:none}.hero-glow{position:absolute;z-index:-1;border-radius:50%;filter:blur(16px);pointer-events:none}.glow-left{width:380px;height:380px;top:-230px;left:-110px;background:rgba(20,213,183,.26)}.glow-right{width:440px;height:440px;right:-230px;bottom:-220px;background:rgba(141,98,245,.28)}.breadcrumbs{display:flex;justify-content:center;gap:9px;margin-bottom:23px;color:rgba(255,255,255,.53);font-size:.8rem}.breadcrumbs a{color:#a99cff;font-weight:850}.hero-copy{text-align:center}.hero-copy .eyebrow{border-color:rgba(255,255,255,.12);color:#dcd7ff;background:rgba(255,255,255,.065);box-shadow:none;backdrop-filter:blur(10px)}.eyebrow-spark{color:#75ebd6}.hero-copy h1{max-width:920px;margin:22px auto 15px;font-size:clamp(2.8rem,7vw,5.5rem);line-height:.96;letter-spacing:-.07em}.hero-copy h1 span{color:#8af0df;text-shadow:0 0 42px rgba(117,235,214,.2)}.hero-copy>p{max-width:750px;margin:0 auto 35px;color:rgba(255,255,255,.66);font-size:clamp(.98rem,2vw,1.12rem);line-height:1.72}
.calculator-shell{max-width:1060px;margin:auto;overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:31px;background:rgba(255,255,255,.06);box-shadow:0 32px 95px rgba(0,0,0,.32);backdrop-filter:blur(22px)}.date-form{padding:27px 30px 29px;border-bottom:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.035)}.form-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:21px;text-align:left}.mini-label,.card-kicker{display:block;margin-bottom:6px;color:#70e5d1;font-size:.68rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.form-heading h2{margin:0;font-size:clamp(1.15rem,3vw,1.5rem);letter-spacing:-.03em}.surprise-button{display:inline-flex;min-height:40px;align-items:center;gap:7px;padding:0 13px;border:1px solid rgba(255,255,255,.12);border-radius:11px;color:#fff;background:rgba(255,255,255,.07);font-size:.78rem;font-weight:850;transition:.2s}.surprise-button:hover{transform:translateY(-2px);background:rgba(255,255,255,.12)}.surprise-button span{color:#7aebd8}.date-fields{display:grid;grid-template-columns:1fr 50px 1fr;gap:13px;align-items:end}.date-field{text-align:left}.date-field label{display:flex;align-items:center;gap:8px;margin-bottom:8px;color:rgba(255,255,255,.75);font-size:.8rem;font-weight:850}.date-dot{width:8px;height:8px;border-radius:50%}.dot-one{background:#8d7cff;box-shadow:0 0 13px #8d7cff}.dot-two{background:#69ead2;box-shadow:0 0 13px #69ead2}.date-field input{width:100%;height:54px;padding:0 15px;border:1px solid rgba(255,255,255,.13);border-radius:14px;color:#fff;background:rgba(7,8,30,.35);outline:none;color-scheme:dark;font-weight:750}.date-field input:focus{border-color:#74e9d4;box-shadow:0 0 0 4px rgba(116,233,212,.1)}.swap-button{display:grid;width:46px;height:46px;place-items:center;margin-bottom:4px;border:1px solid rgba(255,255,255,.13);border-radius:50%;color:#cabfff;background:rgba(255,255,255,.07);transition:.25s}.swap-button:hover{color:#fff;background:rgba(141,124,255,.25);transform:rotate(180deg)}.swap-button svg{width:22px}.form-actions{display:flex;align-items:center;gap:18px;margin-top:20px}.calculate-button{display:inline-flex;min-height:51px;align-items:center;justify-content:center;gap:13px;padding:0 20px;border:0;border-radius:14px;color:#17133d;background:linear-gradient(135deg,#9e91ff,#72ead5);box-shadow:0 14px 34px rgba(91,78,204,.25);font-weight:900;transition:.2s}.calculate-button:hover{transform:translateY(-2px);box-shadow:0 18px 38px rgba(91,78,204,.34)}.form-actions p{margin:0;color:rgba(255,255,255,.43);font-size:.74rem}.form-actions p span{color:#6ce7d1}.form-error{display:none;margin:14px 0 0;padding:10px 12px;border:1px solid rgba(255,126,143,.22);border-radius:11px;color:#ffc3ca;background:rgba(206,61,88,.13);font-size:.8rem;font-weight:800}.form-error.show{display:block}
.result{padding:14px}.constellation{position:relative;display:flex;min-height:500px;align-items:center;justify-content:center;flex-direction:column;padding:45px 20px 35px;overflow:hidden;border:1px solid rgba(255,255,255,.075);border-radius:24px;background:radial-gradient(circle at 50% 38%,rgba(117,95,235,.24),transparent 34%),rgba(4,5,25,.23)}.star-field,.star-field:before,.star-field:after{position:absolute;inset:0;content:"";background-image:radial-gradient(circle,rgba(255,255,255,.55) 1px,transparent 1.5px);background-size:74px 74px;opacity:.14;pointer-events:none}.star-field:before{transform:translate(29px,17px);background-size:121px 121px;opacity:.34}.star-field:after{transform:translate(-16px,39px);background-size:167px 167px;opacity:.3}.orbit{position:absolute;top:25px;left:50%;border:1px solid rgba(255,255,255,.09);border-radius:50%;transform:translateX(-50%);pointer-events:none}.orbit-one{width:330px;height:330px}.orbit-two{width:430px;height:430px;top:-25px;border-style:dashed;opacity:.7}.gap-orb{position:relative;z-index:2;display:grid;width:210px;height:210px;place-items:center;align-content:center;border:1px solid rgba(255,255,255,.2);border-radius:50%;background:linear-gradient(145deg,rgba(130,109,255,.97),rgba(55,194,176,.82));box-shadow:inset 0 0 0 12px rgba(255,255,255,.035),0 28px 80px rgba(65,51,181,.42)}.gap-orb:before{position:absolute;inset:12px;border:1px solid rgba(255,255,255,.13);border-radius:50%;content:""}.gap-orb span,.gap-orb small{position:relative;color:rgba(255,255,255,.67);font-size:.65rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.gap-orb strong{position:relative;max-width:185px;overflow:hidden;font-size:clamp(3.4rem,8vw,5.2rem);line-height:.94;letter-spacing:-.08em;text-overflow:ellipsis}.gap-orb small{margin-top:4px;color:#fff}.factor-node{position:absolute;z-index:2;display:grid;place-items:center;width:44px;height:44px;border:1px solid rgba(255,255,255,.17);border-radius:50%;color:#e4e0ff;background:rgba(18,15,57,.78);box-shadow:0 9px 25px rgba(0,0,0,.18),0 0 18px rgba(118,231,211,.08);font-size:.68rem;font-weight:900;animation:nodeFloat 3.8s ease-in-out infinite}.result-title{position:relative;z-index:2;margin:25px 0 6px;font-size:clamp(1.35rem,3vw,1.85rem);font-weight:900;letter-spacing:-.035em;text-align:center}.result-subtitle{position:relative;z-index:2;max-width:650px;margin:0;color:rgba(255,255,255,.56);font-size:.86rem;line-height:1.55;text-align:center}.result-actions{position:relative;z-index:2;display:flex;gap:8px;margin-top:20px}.result-actions button{min-height:40px;padding:0 14px;border:1px solid rgba(255,255,255,.13);border-radius:11px;color:#fff;background:rgba(255,255,255,.07);font-size:.76rem;font-weight:850}.result-actions button:first-child{border-color:transparent;color:#211a50;background:#fff}.result.reveal .gap-orb{animation:orbReveal .68s cubic-bezier(.2,.9,.25,1.15)}.result.reveal .factor-node{animation:nodeReveal .62s backwards,nodeFloat 3.8s .7s ease-in-out infinite}
.quick-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:9px}.quick-stats article{min-width:0;padding:16px;border:1px solid rgba(255,255,255,.075);border-radius:17px;background:rgba(255,255,255,.045)}.quick-stats span,.quick-stats strong,.quick-stats small{display:block}.quick-stats span{margin-bottom:6px;color:rgba(255,255,255,.42);font-size:.62rem;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.quick-stats strong{font-size:.83rem;line-height:1.45}.quick-stats small{margin-top:3px;color:rgba(255,255,255,.34);font-size:.63rem}.relationship-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:9px}.relationship-card{padding:22px;border:1px solid rgba(255,255,255,.075);border-radius:19px;background:rgba(255,255,255,.045)}.relationship-card h3{margin:0 0 8px;font-size:1.05rem}.relationship-card>p{margin:0;color:rgba(255,255,255,.48);font-size:.78rem;line-height:1.6}.factor-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.factor-list span{padding:6px 9px;border:1px solid rgba(112,229,209,.17);border-radius:9px;color:#8df1df;background:rgba(112,229,209,.08);font-size:.68rem;font-weight:850}.fingerprints{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin:16px 0}.fingerprints div{padding:13px;border:1px solid rgba(255,255,255,.07);border-radius:14px;background:rgba(4,5,25,.2);text-align:center}.fingerprints div span,.fingerprints div strong{display:block}.fingerprints div span{overflow:hidden;color:rgba(255,255,255,.42);font-size:.66rem;text-overflow:ellipsis;white-space:nowrap}.fingerprints div strong{margin-top:5px;color:#a99cff;font-size:1.65rem}.fingerprints div:last-child strong{color:#75ead6}.fingerprint-join{color:rgba(255,255,255,.36);font-size:.68rem;font-weight:850;text-transform:uppercase}.wide-card{grid-column:1/-1}.oddity-list{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:14px}.oddity{display:flex;align-items:flex-start;gap:11px;padding:13px;border:1px solid rgba(255,255,255,.065);border-radius:14px;background:rgba(4,5,25,.2)}.oddity-icon{display:grid;flex:0 0 34px;height:34px;place-items:center;border-radius:10px;color:#191440;background:linear-gradient(135deg,#9f92ff,#74ead6);font-size:.76rem;font-weight:950}.oddity strong,.oddity span{display:block}.oddity strong{font-size:.78rem}.oddity span{margin-top:3px;color:rgba(255,255,255,.42);font-size:.68rem;line-height:1.45}.meaning-note{margin:9px 0 0;padding:15px 17px;border:1px solid rgba(255,215,145,.1);border-radius:16px;color:rgba(255,255,255,.43);background:rgba(255,199,98,.045);font-size:.72rem;line-height:1.55}.meaning-note strong{color:#f1d59c}
.content-section{padding:75px 0}.content-section.alt{border-block:1px solid rgba(31,34,62,.06);background:rgba(255,255,255,.46)}.content{max-width:960px;margin:auto}.section-label{display:block;margin-bottom:10px;color:var(--primary);font-size:.72rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.content h2,.try-head h2{margin:0 0 14px;font-size:clamp(1.9rem,4.5vw,2.8rem);line-height:1.06;letter-spacing:-.05em}.content>p,.how-grid>div>p{color:var(--muted);line-height:1.75}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:28px}.feature-grid article,.explain-grid article{padding:24px;border:1px solid var(--border);border-radius:21px;background:#fff;box-shadow:0 13px 38px rgba(53,49,110,.055)}.feature-icon{display:grid;width:44px;height:44px;place-items:center;margin-bottom:16px;border-radius:13px;color:var(--primary);background:#f0edff;font-size:1.05rem;font-weight:950}.feature-grid h3,.explain-grid h3{margin:0 0 8px;font-size:1rem}.feature-grid p,.explain-grid p{margin:0;color:var(--muted);font-size:.86rem;line-height:1.68}.how-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:55px;align-items:center}.steps{display:grid;gap:10px;margin:0;padding:0;list-style:none}.steps li{display:flex;gap:14px;padding:17px;border:1px solid var(--border);border-radius:16px;background:#fff}.steps li>span{display:grid;flex:0 0 35px;height:35px;place-items:center;border-radius:11px;color:#fff;background:linear-gradient(135deg,var(--primary),#8f7ef2);font-size:.8rem;font-weight:900}.steps strong{font-size:.9rem}.steps p{margin:4px 0 0;color:var(--muted);font-size:.79rem;line-height:1.55}.explain-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:28px}.faq{display:grid;gap:10px;margin-top:27px}.faq details{overflow:hidden;border:1px solid var(--border);border-radius:15px;background:#fff}.faq summary{padding:18px 20px;cursor:pointer;font-weight:850}.faq p{margin:0;padding:0 20px 19px;color:var(--muted);font-size:.9rem;line-height:1.7}.try-section{padding:74px 0}.try-head{display:flex;align-items:end;justify-content:space-between;gap:25px}.try-head h2{margin-bottom:7px}.try-head p{margin:0;color:var(--muted)}.try-head>a{flex:none;color:var(--primary);font-size:.84rem;font-weight:900}.try-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:25px}.try-card{display:flex;align-items:center;gap:12px;padding:17px;border:1px solid var(--border);border-radius:18px;background:#fff;box-shadow:0 12px 35px rgba(53,49,110,.05);transition:.22s}.try-card:hover{transform:translateY(-4px);box-shadow:0 18px 42px rgba(53,49,110,.11)}.try-icon{display:grid;flex:0 0 47px;height:47px;place-items:center;border-radius:14px;color:var(--primary);background:#f0edff;font-size:.7rem;font-weight:950}.try-card strong,.try-card span span{display:block}.try-card strong{font-size:.87rem}.try-card span span{margin-top:4px;color:var(--muted);font-size:.72rem;line-height:1.4}.try-card b{margin-left:auto;color:var(--primary)}.toast{position:fixed;z-index:100;right:22px;bottom:22px;max-width:calc(100% - 44px);padding:12px 16px;border-radius:12px;color:#fff;background:#202138;box-shadow:0 15px 40px rgba(23,24,42,.24);opacity:0;pointer-events:none;transform:translateY(14px);transition:.25s}.toast.show{opacity:1;transform:none}
@keyframes orbReveal{0%{opacity:.15;transform:scale(.58) rotate(-8deg)}100%{opacity:1;transform:none}}@keyframes nodeReveal{0%{opacity:0;transform:scale(.2)}100%{opacity:1;transform:scale(1)}}@keyframes nodeFloat{50%{transform:translateY(-6px)}}@media(max-width:820px){.quick-stats{grid-template-columns:1fr 1fr}.feature-grid,.try-grid{grid-template-columns:1fr}.how-grid{grid-template-columns:1fr;gap:30px}}@media(max-width:680px){.hero{padding-top:32px}.calculator-shell{border-radius:25px}.date-form{padding:22px 17px}.form-heading{align-items:flex-start;flex-direction:column}.date-fields{grid-template-columns:1fr}.swap-button{margin:0 auto;transform:rotate(90deg)}.swap-button:hover{transform:rotate(270deg)}.form-actions{align-items:stretch;flex-direction:column}.form-actions p{text-align:center}.calculate-button{width:100%}.result{padding:9px}.constellation{min-height:460px;padding-inline:10px}.orbit-one{width:290px;height:290px;top:44px}.orbit-two{width:360px;height:360px;top:10px}.gap-orb{width:180px;height:180px}.gap-orb strong{font-size:3.8rem}.relationship-grid,.oddity-list,.explain-grid{grid-template-columns:1fr}.wide-card{grid-column:auto}.content-section,.try-section{padding:57px 0}.try-head{align-items:flex-start;flex-direction:column}}@media(max-width:430px){.hero-copy h1{font-size:clamp(2.6rem,15vw,3.8rem)}.quick-stats{grid-template-columns:1fr}.factor-node:nth-child(n+7){display:none}.result-actions{width:100%;flex-direction:column}.result-actions button{width:100%}.relationship-card{padding:18px}.fingerprints{gap:7px}.footer-inner{align-items:center;text-align:center}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important;transition:none!important}}
