/* Midnight, champagne, platinum, and polished gold. */
:root{--platinum:#d4e0e4;--midnight:#0c1922;--sapphire:#183344;--champagne:#f0e2c8}
.sky-event-bar{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:9px 19px;padding:12px 5%;border-block:1px solid #b6c9d322;background:linear-gradient(100deg,#10222f,#0c141b 50%,#1c251f);font-size:.73rem;color:var(--platinum)}
.sky-event-bar>span:first-child{font-size:1.2rem;color:var(--gold-pale)}.sky-event-bar strong{font-weight:500;color:var(--champagne)}.sky-event-bar time{font-size:.65rem;color:#b6c9d3}.sky-event-bar a{color:var(--gold-pale);border-bottom:1px solid #d7b66966;padding-bottom:2px}.sky-event-count{font-variant-numeric:tabular-nums;color:var(--gold-pale);letter-spacing:.06em}
.home-calendar-door{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:22px;padding:20px 24px;border:1px solid #9eb2bd55;background:linear-gradient(115deg,#142d3e,#101920)}.home-calendar-door>span:first-child{font-size:2.3rem;color:var(--gold-pale)}.home-calendar-door div{margin-right:auto}.home-calendar-door h2{font:400 1.7rem var(--serif);margin-bottom:8px}.home-calendar-door p{font-size:.79rem;line-height:1.7;color:var(--platinum)}.home-calendar-door>span:last-child{color:var(--gold-pale);font-size:.85rem;white-space:nowrap}.home-calendar-door:hover{border-color:var(--gold)}
.calendar-page .page-intro{margin-bottom:25px}.calendar-controls{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;margin-bottom:18px;align-items:end}.calendar-controls label{display:block;color:var(--platinum);font-size:.76rem}.calendar-controls input,.calendar-controls select{margin-top:9px;width:100%;background:#102430;border:1px solid #758d9a;color:var(--cream);padding:12px 13px;min-height:45px;font:inherit;font-size:.8rem;border-radius:2px;min-width:0}.calendar-year-row{display:flex;gap:8px}.calendar-year-row input{min-width:80px}.calendar-year-row button{background:var(--metal);color:#211503;padding:10px 18px;margin-top:9px;white-space:nowrap;font-size:.76rem}.calendar-zone-note{color:#bacbd3;font-size:.73rem;line-height:1.8}.calendar-status{color:var(--gold-pale);font-size:.8rem;min-height:24px;margin-top:12px}.calendar-year-count{color:var(--gold-pale);font-size:.7rem;letter-spacing:.05em}
.calendar-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:32px;align-items:start;margin-top:18px}.calendar-months{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px}.calendar-months button{background:#10212d;border:1px solid #7a949d55;padding:9px 5px;font-size:.76rem;color:var(--platinum)}.calendar-months small{display:block;margin-top:5px;font-size:.62rem;color:#9cbbc9}.calendar-months button[aria-pressed=true]{background:var(--metal);color:#211503;border-color:var(--gold)}.calendar-months button[aria-pressed=true] small{color:#573d0b}.calendar-list-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:24px 0 17px}.calendar-list-heading h2{font:400 1.8rem var(--serif)}.calendar-list-heading p{font-size:.65rem;color:#c1d1d8;text-align:right}
.calendar-events{max-height:480px;overflow-y:auto;padding-right:9px;scrollbar-color:#bda067 #10212d;scrollbar-width:thin}.calendar-event{display:grid;grid-template-columns:52px minmax(0,1fr) 32px;align-items:center;gap:14px;width:100%;text-align:left;padding:15px 12px;background:#0f1d27;border:1px solid #667e8c55;color:var(--cream);margin-bottom:9px}.calendar-event:hover,.calendar-event[aria-pressed=true]{border-color:var(--gold)}.calendar-event[aria-pressed=true]{background:linear-gradient(110deg,#243748,#1f271f)}.calendar-day{font:400 1.8rem/1 var(--serif);color:var(--gold-pale);text-align:center}.calendar-day small{font-size:.9rem;display:block;margin-top:5px}.calendar-event strong{font-weight:400;font-size:.84rem;line-height:1.4;display:block}.calendar-event>span:nth-child(2)>small{display:block;color:#bbced7;font-size:.66rem;margin-top:6px;line-height:1.5}.calendar-event-state{font-size:.65rem;text-align:right;color:#b0c4ce}.calendar-empty{padding:24px;border:1px dashed #7c959b;font-size:.85rem;color:var(--platinum);line-height:1.8}
.celestial-detail{position:sticky;top:20px;text-align:center;min-height:480px;background:radial-gradient(ellipse at 50% 0,#3e6e8a30,transparent 65%),#101f2a;border:1px solid #c1ab735c;padding:27px 30px 25px;border-radius:110px 110px 4px 4px}.celestial-detail>.event-symbol{font:400 3rem var(--serif);color:var(--gold-pale);display:block;line-height:1;margin:12px 0 18px}.celestial-detail .eyebrow{font-size:.6rem;line-height:1.6}.celestial-detail h2{font:400 2.4rem/1.05 var(--serif);margin:14px 0}.celestial-detail time{display:block;font-size:.76rem;color:#d1e1e7;line-height:1.6}.celestial-detail .event-clock{font-size:clamp(.85rem,1.7vw,1.1rem);color:var(--gold-pale);font-variant-numeric:tabular-nums;letter-spacing:.06em;padding:16px 6px;margin:17px 0;border-block:1px solid var(--line)}.event-fact{font-size:.82rem;line-height:1.8;color:var(--platinum)}.event-reflection{font:italic 1.14rem/1.55 var(--serif);color:var(--champagne);margin-top:17px}.event-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:14px;margin-top:20px}.event-actions button,.event-actions a{background:transparent;color:var(--gold-pale);font-size:.73rem;border-bottom:1px solid #bfa05b66;padding:5px 0}.calendar-next{background:transparent;color:var(--platinum);font-size:.73rem;margin-top:18px;border-bottom:1px solid #8ca1ad;padding:5px 0}.calendar-export{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:25px;padding-top:20px;border-top:1px solid var(--line)}.calendar-export p{font-size:.73rem;line-height:1.7;max-width:650px;color:#bdced6}.calendar-export .button{font-size:.76rem;min-width:180px}.calendar-page .chart-method{margin-top:24px}.calendar-page .chart-method a{color:var(--gold-pale);text-decoration:underline}.calendar-retry{font-size:.7rem;background:transparent;color:var(--platinum);text-decoration:underline;margin-left:12px}
.custom-number-callout{display:flex;align-items:center;gap:19px;padding:19px 23px;margin:23px 0;border:1px solid #e4c36a88;background:linear-gradient(110deg,#173246,#17201e);color:var(--champagne)}.custom-number-callout>span{font:400 2.3rem var(--serif);color:var(--gold-pale)}.custom-number-callout h2{font:400 1.55rem/1.2 var(--serif)}.custom-number-callout p{font-size:.79rem;line-height:1.7;margin-top:7px;color:var(--platinum)}.angel-result-number{overflow-wrap:anywhere}
/* An invitation with visible benefits, immediate sparkle, and a clear way back. */
.newsletter-dialog{background:radial-gradient(ellipse at 50% 0,#b0803552,transparent 48%),linear-gradient(145deg,#183548,#101c26 65%);border:2px solid #f6d584;max-width:590px}.newsletter-dialog::backdrop{background:#04101bbb}.newsletter-dialog h2{font-size:3.1rem}.newsletter-dialog>.eyebrow{color:#ffeab7}.newsletter-dialog .newsletter-intro{color:#dae5e8;font-size:.86rem}.signup-benefits{display:flex;justify-content:center;flex-wrap:wrap;gap:7px;list-style:none;padding:0;margin-top:17px}.signup-benefits li{border:1px solid #efd18b88;background:#eac16116;padding:7px 10px;border-radius:20px;font-size:.66rem;color:#ffe9b4}.newsletter-form>.button{background:var(--metal);min-height:52px;letter-spacing:.03em;font-size:.9rem;box-shadow:0 7px 28px #f5c04444}.newsletter-later{color:#c1d4df}.newsletter-form .check-label{color:#c9dce5}.newsletter-form input[type=email]{border-color:#9db6c4;background:#071722}.newsletter-dialog #newsletter-success{background:#cda95314;color:#ffedc5}
.hero-signup{max-width:460px;padding:17px 21px;background:var(--metal);border:1px solid #ffeab5;box-shadow:0 8px 32px #cf9a2840;color:#211503;display:grid;grid-template-columns:30px 1fr;text-align:left;gap:4px 12px}.hero-signup>span:first-child{grid-row:1/3;font-size:2rem}.hero-signup strong{font-size:.88rem;font-weight:600}.hero-signup>span:last-child{max-width:none;border:0;padding:0;color:#493612;grid-column:2;font-size:.67rem;line-height:1.6}.hero-signup:hover{box-shadow:0 9px 34px #deb34760;border-color:#fff1cb}
.signup-ribbon{position:fixed;z-index:14;left:50%;bottom:18px;transform:translateX(-50%);width:min(950px,calc(100% - 36px));display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 18px 15px 24px;background:linear-gradient(110deg,#17394e,#112433 55%,#24312c);border:1px solid #f2d18e;border-radius:6px;box-shadow:0 12px 40px #000a,0 0 0 4px #e8b7550c;color:var(--champagne);animation:ribbon-arrives .5s ease-out both}.signup-ribbon[hidden]{display:none}.signup-ribbon>span{font-size:1.8rem;color:var(--gold-pale)}.signup-ribbon-copy{margin-right:auto;min-width:0}.signup-ribbon-copy strong{font:400 1.3rem/1.15 var(--serif);display:block}.signup-ribbon-copy p{font-size:.69rem;color:#d5e1e7;line-height:1.5;margin-top:5px}.signup-ribbon .button{font-size:.77rem;padding:12px 18px;white-space:nowrap}.ribbon-close{background:transparent;color:#eed8a1;font-size:1.6rem;padding:0 8px;min-height:40px}.has-signup-ribbon{padding-bottom:120px}.has-signup-ribbon .cart-toast{bottom:130px}.site-footer .newsletter-open{color:#ffe6a2;border:1px solid #d8b36899;padding:10px 13px;background:#17303f;font-size:.78rem}
@keyframes ribbon-arrives{from{opacity:0;translate:0 18px}to{opacity:1;translate:0 0}}
@media(max-width:850px){.calendar-layout{gap:23px}.celestial-detail{padding-inline:20px;border-radius:80px 80px 4px 4px}.celestial-detail h2{font-size:2rem}.calendar-controls{grid-template-columns:.75fr 1.25fr}.calendar-controls>label:last-child{grid-column:1/-1}.sky-event-bar time{width:100%;text-align:center;order:5}.home-calendar-door{gap:20px}}
@media(max-width:650px){.calendar-layout{grid-template-columns:1fr}.celestial-detail{position:static;grid-row:1;min-height:0;border-radius:60px 60px 4px 4px;padding:22px 24px}.celestial-detail>.event-symbol{font-size:2.5rem;margin:0 0 10px}.celestial-detail h2{font-size:2rem}.event-clock{margin:12px 0!important}.calendar-controls{gap:12px}.calendar-events{max-height:430px}.calendar-export{flex-direction:column;align-items:start}.calendar-export .button{width:100%}.home-calendar-door{flex-wrap:wrap}.home-calendar-door div{flex:1}.home-calendar-door>span:last-child{width:100%;padding-left:50px}.sky-event-bar{gap:8px 12px;padding:10px 5%;font-size:.64rem}.sky-event-bar>a{font-size:.65rem}.signup-ribbon{width:calc(100% - 20px);bottom:10px;padding:13px 12px;gap:9px;flex-wrap:wrap}.signup-ribbon>span{display:none}.signup-ribbon-copy{flex:1}.signup-ribbon-copy strong{font-size:1.15rem}.signup-ribbon-copy p{font-size:.64rem;max-width:250px}.signup-ribbon .button{order:4;width:100%;padding:10px 12px}.signup-ribbon .ribbon-close{order:3}.has-signup-ribbon{padding-bottom:155px}.has-signup-ribbon .cart-toast{bottom:155px}.newsletter-dialog{padding:22px 25px 25px;max-height:calc(100dvh - 30px)}.newsletter-dialog h2{font-size:2.5rem}.signup-magic{height:77px;width:140px}.newsletter-logo{width:74px;height:74px}.signup-orbit{width:95px;height:95px}.signup-benefits{gap:5px}.signup-benefits li{font-size:.62rem}.custom-number-callout{padding:18px;gap:12px}.custom-number-callout h2{font-size:1.4rem}}
@media(prefers-reduced-motion:reduce){.signup-ribbon{animation:none}}
