.almanac-main{overflow:hidden}
.almanac-library-hero{max-width:1160px;margin:0 auto;padding:3.4rem 2.5rem 2.8rem;border-bottom:var(--rule);text-align:center}.almanac-library-hero h1{font-size:clamp(3.2rem,7vw,6.2rem);line-height:.9}.almanac-library-hero p{max-width:650px;margin:1rem auto 0;font-family:Georgia,serif;font-size:1.08rem;text-align:center}
.almanac-library-shell{display:grid;grid-template-columns:288px minmax(0,1fr);gap:38px;align-items:start;max-width:1160px;margin:0 auto;padding:2.2rem 2.5rem 4rem}.almanac-side{position:sticky;top:1rem}.almanac-side-card{border:2px solid var(--ink);background:var(--paper-light);box-shadow:4px 4px 0 var(--ink);padding:1.2rem}.almanac-side-card section+section{margin-top:1.5rem;padding-top:1.2rem;border-top:1px solid var(--faint)}.side-label{display:block;margin-bottom:.75rem;font-family:"Arial Narrow",Arial,sans-serif;font-size:.68rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.side-current{display:flex;align-items:center;gap:.8rem}.side-current>b{font-size:2.2rem;color:var(--blue)}.side-current span{font-family:Georgia,serif;line-height:1.25}.side-current small{font-family:"Arial Narrow",Arial,sans-serif;font-size:.68rem;letter-spacing:.06em;text-transform:uppercase}.almanac-side ul{margin:0;padding:0;list-style:none}.almanac-side li{border-bottom:1px solid var(--faint);font-family:Georgia,serif;font-size:.92rem}.almanac-side li>a{display:flex;justify-content:space-between;gap:.6rem;padding:.45rem 0}.almanac-side li>a:hover{color:var(--plum)}.almanac-side li small{flex:none;font-family:"Arial Narrow",Arial,sans-serif;font-size:.64rem;letter-spacing:.04em;color:var(--soft);text-transform:uppercase}.side-chart p{font-family:Georgia,serif;font-size:.9rem;line-height:1.55}.side-chart a{font-family:"Arial Narrow",Arial,sans-serif;font-size:.72rem;font-weight:900;letter-spacing:.07em;text-decoration:underline;text-underline-offset:4px;text-transform:uppercase}
.almanac-feed{min-width:0}.feed-section{margin-bottom:2.2rem}.feed-section>header{margin-bottom:1rem}.feed-section h2{margin:.3rem 0 0;font-size:clamp(1.7rem,3vw,2.5rem)}.almanac-card{display:flex;gap:1.25rem;border:2px solid var(--ink);background:var(--paper-light);box-shadow:3px 3px 0 var(--ink);padding:1.35rem;color:var(--ink);text-decoration:none}.almanac-card.featured{align-items:stretch;background:#fff3df}.card-glyph{display:flex;align-items:center;justify-content:center;width:150px;min-height:190px;flex:none;background:var(--blue);color:var(--paper-light);font-size:5.5rem}.card-glyph.small{width:72px;min-height:120px;font-size:2.7rem}.card-meta{font-family:"Arial Narrow",Arial,sans-serif;font-size:.65rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.almanac-card h3{margin:.45rem 0 .55rem;font-size:clamp(1.35rem,2.5vw,2rem)}.almanac-card p{margin:0;font-family:Georgia,serif;font-size:.96rem;line-height:1.6}.card-link{display:inline-block;margin-top:1rem;font-family:"Arial Narrow",Arial,sans-serif;font-size:.7rem;font-weight:900;letter-spacing:.07em;text-decoration:underline;text-underline-offset:4px;text-transform:uppercase}.article-status{display:inline-block;margin-top:.75rem;padding:.25rem .5rem;border:1px solid var(--ink);font-family:"Arial Narrow",Arial,sans-serif;font-size:.62rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.almanac-card-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.almanac-card-grid .almanac-card{box-shadow:none}.almanac-links{border-top:2px solid var(--ink)}.almanac-links a{display:grid;grid-template-columns:minmax(190px,.7fr) 1fr;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--ink)}.almanac-links b{font-family:"Playfair Display",Georgia,serif}.almanac-links span{font-family:Georgia,serif;font-size:.9rem}
.almanac-index-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:clamp(2rem,7vw,7rem);align-items:end;max-width:1440px;margin:0 auto;padding:clamp(4rem,8vw,8rem) clamp(1rem,5vw,5rem);border-bottom:var(--rule);background:var(--mustard)}
.almanac-index-hero h1{max-width:980px;font-size:clamp(3.5rem,7vw,7.5rem)}
.almanac-index-hero>p{margin:0;font-family:Georgia,serif;font-size:clamp(1.05rem,1.6vw,1.3rem);line-height:1.65}
.transit-library{max-width:1440px;margin:0 auto;padding:clamp(3.5rem,7vw,6rem) clamp(1rem,4vw,4rem);border-bottom:var(--rule)}
.transit-library>header{margin-bottom:2rem}.transit-library>header h2{margin-top:.5rem}
.transit-feature{display:grid;grid-template-columns:minmax(220px,.45fr) minmax(0,1.55fr);border:var(--rule);background:var(--paper-light);color:var(--ink);text-decoration:none;box-shadow:var(--shadow)}
.transit-symbol{display:flex;align-items:center;justify-content:center;min-height:430px;border-right:var(--rule);background:var(--blue);color:var(--paper-light);font-family:"Noto Sans Symbols 2","Segoe UI Symbol",sans-serif;font-size:clamp(7rem,15vw,14rem)}
.transit-feature-copy{padding:clamp(1.8rem,5vw,4.5rem)}
.transit-status{font-family:"Arial Narrow",Arial,sans-serif;font-size:.72rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.transit-feature h3{max-width:900px;margin:.7rem 0 1rem;font-size:clamp(2.7rem,5.5vw,5.7rem)}
.transit-feature p{max-width:850px;font-family:Georgia,serif;font-size:1.1rem;line-height:1.65}
.transit-feature dl{display:grid;grid-template-columns:1fr 1fr;max-width:850px;margin:2rem 0;border-top:var(--rule);border-bottom:var(--rule)}
.transit-feature dl div{padding:1rem 1rem 1rem 0}.transit-feature dl div+div{border-left:var(--rule);padding-left:1rem}
.transit-feature dt{font-family:"Arial Narrow",Arial,sans-serif;font-size:.68rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.transit-feature dd{margin:.35rem 0 0;font-family:Georgia,serif}
.article-link{font-family:"Arial Narrow",Arial,sans-serif;font-size:.76rem;font-weight:900;letter-spacing:.08em;text-decoration:underline;text-underline-offset:5px;text-transform:uppercase}
.transit-feature:hover .article-link,.transit-feature:focus-visible .article-link{color:var(--plum)}
.almanac-how{max-width:1440px;margin:0 auto;padding:clamp(3.5rem,7vw,6rem) clamp(1rem,4vw,4rem);border-bottom:var(--rule)}
.almanac-how ol{display:grid;grid-template-columns:repeat(3,1fr);margin:2.5rem 0 0;padding:0;border-top:var(--rule);border-bottom:var(--rule);list-style:none}.almanac-how li{padding:1.5rem;border-right:var(--rule)}.almanac-how li:first-child{padding-left:0}.almanac-how li:last-child{border-right:0;padding-right:0}.almanac-how b{font-family:"Arial Narrow",Arial,sans-serif;font-size:.7rem;letter-spacing:.12em}.almanac-how h3{margin:2.5rem 0 .7rem}.almanac-how p{font-family:Georgia,serif;line-height:1.65}
.article-breadcrumb{display:flex;gap:.8rem;max-width:1440px;margin:0 auto;padding:1rem clamp(1rem,4vw,4rem);border-bottom:var(--rule);font-family:"Arial Narrow",Arial,sans-serif;font-size:.7rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.article-breadcrumb span:before{content:"/";margin-right:.8rem;color:var(--faint)}
.planet-guide{max-width:1440px;margin:0 auto}.planet-guide-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);border-bottom:var(--rule)}.planet-guide-hero>div{padding:clamp(3.5rem,7vw,7rem) clamp(1rem,5vw,5rem)}.planet-guide-hero h1{max-width:900px;font-size:clamp(3.8rem,7.5vw,8rem)}.planet-guide-hero>div>p{max-width:820px;font-family:Georgia,serif;font-size:clamp(1.1rem,2vw,1.4rem);line-height:1.6}.planet-guide-hero>aside{display:flex;flex-direction:column;justify-content:space-between;min-height:560px;border-left:var(--rule);padding:clamp(2rem,4vw,4rem);background:var(--blue);color:var(--paper-light)}.planet-guide-hero>aside>span{font-size:clamp(7rem,13vw,13rem);line-height:.8}.planet-guide-hero dl{margin:2rem 0 0}.planet-guide-hero dl div{padding:.9rem 0;border-top:1px solid currentColor}.planet-guide-hero dt{font-family:"Arial Narrow",Arial,sans-serif;font-size:.67rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.planet-guide-hero dd{margin:.3rem 0 0;font-family:Georgia,serif;font-size:.9rem}.planet-overview,.degree-guide{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.75fr);gap:clamp(2rem,6vw,6rem);padding:clamp(3.5rem,7vw,6rem) clamp(1rem,4vw,4rem);border-bottom:var(--rule)}.planet-overview p,.degree-guide p{margin:0;font-family:Georgia,serif;font-size:1.08rem;line-height:1.72}.event-overview>div:last-child{font-family:Georgia,serif;font-size:1.08rem;line-height:1.72;text-align:justify;hyphens:none}.event-overview>div:last-child p+p{margin-top:1rem}.rising-sign-picker{padding:clamp(3.5rem,7vw,6rem) clamp(1rem,4vw,4rem);border-bottom:var(--rule);background:#cde9e4}.rising-sign-picker>header{display:grid;grid-template-columns:1fr minmax(300px,.7fr);gap:2rem;align-items:end}.rising-sign-picker>header p{font-family:Georgia,serif;line-height:1.6}.rising-sign-picker nav{display:grid;grid-template-columns:repeat(6,1fr);margin-top:2rem;border-top:var(--rule);border-left:var(--rule)}.rising-sign-picker nav a{display:flex;flex-direction:column;align-items:center;gap:.35rem;padding:.85rem;border-right:var(--rule);border-bottom:var(--rule);background:var(--paper-light);font-family:"Arial Narrow",Arial,sans-serif;font-size:.68rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.rising-sign-picker nav a:hover{background:var(--mustard)}.rising-sign-picker nav span{font-size:1.7rem}.rising-guide-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;padding:clamp(3.5rem,7vw,6rem) clamp(1rem,4vw,4rem);border-bottom:var(--rule)}.rising-card{scroll-margin-top:1rem;border:2px solid var(--ink);padding:1.5rem;background:var(--paper-light);box-shadow:3px 3px 0 var(--ink)}.rising-card header{display:flex;gap:1rem;align-items:center;margin-bottom:1rem}.rising-glyph{display:flex;align-items:center;justify-content:center;width:58px;height:58px;flex:none;background:var(--orange);font-size:2rem}.rising-card small{font-family:"Arial Narrow",Arial,sans-serif;font-size:.65rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.rising-card h2{margin:.15rem 0 0;font-size:1.65rem}.rising-card p{font-family:Georgia,serif;line-height:1.68}.rising-card>a{font-family:"Arial Narrow",Arial,sans-serif;font-size:.65rem;font-weight:900;letter-spacing:.08em;text-decoration:underline;text-underline-offset:4px;text-transform:uppercase}.degree-guide{align-items:start;background:var(--orange)}.degree-guide .button{grid-column:2;justify-self:start}
.almanac-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);max-width:1440px;margin:0 auto;border-bottom:var(--rule)}
.almanac-hero-copy{padding:clamp(3.5rem,7vw,7rem) clamp(1rem,5vw,5rem)}
.almanac-hero h1{max-width:900px;font-size:clamp(3.8rem,7.5vw,8.3rem)}
.almanac-hero-copy>p{max-width:760px;font-family:Georgia,serif;font-size:clamp(1.12rem,2vw,1.48rem);line-height:1.48}
.jump-link{display:inline-block;margin-top:1rem;font-family:"Arial Narrow",Arial,sans-serif;font-size:.78rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;text-underline-offset:5px}
.station-card{display:flex;flex-direction:column;justify-content:space-between;min-height:560px;border-left:var(--rule);padding:clamp(2rem,4vw,4rem);background:var(--blue);color:var(--paper-light)}
.station-glyph{font-family:"Noto Sans Symbols 2","Segoe UI Symbol",sans-serif;font-size:clamp(6rem,12vw,12rem);line-height:.8}
.station-card small,.station-card dt{display:block;font-family:"Arial Narrow",Arial,sans-serif;font-size:.68rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase}
.station-card strong{display:block;margin-top:.45rem;font-family:"Cooper Black",Georgia,serif;font-size:clamp(2rem,3.4vw,3.8rem);line-height:.92}
.station-card dl{margin:2rem 0 0}
.station-card dl div{display:flex;justify-content:space-between;gap:1rem;padding:.85rem 0;border-top:1px solid currentColor}
.station-card dd{margin:0;font-family:Georgia,serif;font-size:.9rem;text-align:right}
.sign-check{max-width:1440px;margin:0 auto;padding:clamp(3.5rem,7vw,6rem) clamp(1rem,4vw,4rem);border-bottom:var(--rule)}
.sign-check>header{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.7fr);align-items:end;gap:2rem;margin-bottom:2.5rem}
.sign-check>header p{margin:0;font-family:Georgia,serif;font-size:1.07rem;line-height:1.55}
.sign-check>header .rising-prompt{margin-top:1rem;border-left:7px solid var(--orange);padding:.8rem 1rem;background:#fff1df;font-size:1rem}.rising-prompt a{font-family:"Arial Narrow",Arial,sans-serif;font-size:.78rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase;text-underline-offset:4px}
.sign-buttons{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));border-top:var(--rule);border-left:var(--rule)}
.sign-buttons button{min-height:105px;border:0;border-right:var(--rule);border-bottom:var(--rule);padding:.85rem;background:var(--paper-light);color:var(--ink);cursor:pointer}
.sign-buttons button:hover,.sign-buttons button:focus-visible{background:#ffd8bf}
.sign-buttons button.active{background:var(--mustard)}
.sign-buttons span{display:block;font-family:"Noto Sans Symbols 2","Segoe UI Symbol",sans-serif;font-size:2rem;line-height:1}
.sign-buttons b{display:block;margin-top:.6rem;font-family:"Arial Narrow",Arial,sans-serif;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase}
.sign-result{display:grid;grid-template-columns:190px minmax(0,1fr);margin-top:2.5rem;border:var(--rule);background:var(--paper-light);box-shadow:var(--shadow);scroll-margin-top:1rem}
.result-stamp{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100%;border-right:var(--rule);padding:2rem 1rem;background:var(--orange)}
.result-stamp span{font-family:"Noto Sans Symbols 2","Segoe UI Symbol",sans-serif;font-size:6rem;line-height:1}
.result-stamp small{margin-top:1rem;font-family:"Arial Narrow",Arial,sans-serif;font-size:.72rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.result-copy{padding:clamp(1.7rem,4vw,3.5rem)}
.result-eyebrow{font-family:"Arial Narrow",Arial,sans-serif;font-size:.7rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.result-copy>h2{max-width:920px;margin:.65rem 0 1.2rem;font-size:clamp(2.4rem,4.8vw,5rem)}
.result-lede{max-width:900px;font-family:Georgia,serif;font-size:1.18rem;line-height:1.65}
.result-columns{display:grid;grid-template-columns:1fr 1fr;margin-top:2rem;border-top:var(--rule);border-bottom:var(--rule)}
.result-columns section{padding:1.5rem 1.5rem 1.5rem 0}
.result-columns section+section{border-left:var(--rule);padding-right:0;padding-left:1.5rem}
.result-columns h3{font-size:1.35rem}
.result-columns p{margin-bottom:0;font-family:Georgia,serif;line-height:1.65}
.degree-note{margin-top:1.5rem;border-left:8px solid var(--plum);padding:1rem 1.15rem;background:#ead7e6;font-family:Georgia,serif;line-height:1.55}
.degree-note strong{font-family:"Helvetica Neue",Arial,sans-serif}
.result-actions{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;margin-top:1.5rem}
.share-result{border:0;background:transparent;color:var(--ink);cursor:pointer;font-family:"Arial Narrow",Arial,sans-serif;font-size:.75rem;font-weight:900;letter-spacing:.08em;text-decoration:underline;text-underline-offset:5px;text-transform:uppercase}
.almanac-explainer{max-width:1440px;margin:0 auto;padding:clamp(3.5rem,7vw,6rem) clamp(1rem,4vw,4rem);border-bottom:var(--rule)}
.almanac-explainer>div{max-width:940px}
.almanac-explainer ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:2.5rem 0 0;padding:0;border-top:var(--rule);border-bottom:var(--rule);list-style:none}
.almanac-explainer li{min-height:275px;padding:1.5rem;border-right:var(--rule)}
.almanac-explainer li:first-child{padding-left:0}
.almanac-explainer li:last-child{border-right:0;padding-right:0}
.almanac-explainer li>span{font-family:"Arial Narrow",Arial,sans-serif;font-size:.7rem;font-weight:900;letter-spacing:.12em}
.almanac-explainer h3{margin:3rem 0 .8rem;font-size:clamp(1.7rem,2.7vw,2.6rem)}
.almanac-explainer li p{margin:0;font-family:Georgia,serif;line-height:1.65}
.almanac-rule{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.75fr);gap:clamp(2rem,6vw,6rem);max-width:1440px;margin:0 auto;padding:clamp(3.5rem,7vw,6rem) clamp(1rem,4vw,4rem);border-bottom:var(--rule);background:#cde9e4}
.almanac-rule p{margin:0;font-family:Georgia,serif;font-size:1.1rem;line-height:1.7}
.almanac-next{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2rem;align-items:center;max-width:1440px;margin:0 auto;padding:clamp(3.5rem,7vw,6rem) clamp(1rem,4vw,4rem);border-bottom:var(--rule);background:var(--orange)}
.almanac-next p{max-width:800px;margin:1.2rem 0 0;font-family:Georgia,serif;font-size:1.08rem}
@media(max-width:900px){.almanac-hero,.sign-check>header,.almanac-rule,.almanac-next{grid-template-columns:1fr}.station-card{min-height:440px;border-top:var(--rule);border-left:0}.sign-buttons{grid-template-columns:repeat(4,minmax(0,1fr))}.sign-result{grid-template-columns:1fr}.result-stamp{min-height:210px;border-right:0;border-bottom:var(--rule)}.almanac-explainer ol{grid-template-columns:1fr}.almanac-explainer li,.almanac-explainer li:first-child,.almanac-explainer li:last-child{min-height:auto;padding:1.5rem 0;border-right:0;border-bottom:var(--rule)}.almanac-explainer li:last-child{border-bottom:0}.almanac-explainer h3{margin:1.2rem 0 .7rem}.almanac-next{justify-items:start}}
@media(max-width:900px){.almanac-index-hero,.transit-feature{grid-template-columns:1fr}.transit-symbol{min-height:300px;border-right:0;border-bottom:var(--rule)}.almanac-how ol{grid-template-columns:1fr}.almanac-how li,.almanac-how li:first-child,.almanac-how li:last-child{padding:1.4rem 0;border-right:0;border-bottom:var(--rule)}.almanac-how li:last-child{border-bottom:0}.almanac-how h3{margin:1rem 0 .6rem}}
@media(max-width:900px){.almanac-library-shell{grid-template-columns:1fr;padding:1.5rem 1rem 3rem}.almanac-side{position:static}.almanac-side-card{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.almanac-side-card section+section{margin:0;padding:0;border-top:0}.almanac-side-card .side-chart{grid-column:1/-1;padding-top:1rem;border-top:1px solid var(--faint)}}
@media(max-width:900px){.planet-guide-hero,.planet-overview,.degree-guide,.rising-sign-picker>header{grid-template-columns:1fr}.planet-guide-hero>aside{min-height:430px;border-top:var(--rule);border-left:0}.rising-sign-picker nav{grid-template-columns:repeat(4,1fr)}.degree-guide .button{grid-column:auto}.rising-guide-grid{grid-template-columns:1fr}}
@media(max-width:620px){.transit-feature dl{grid-template-columns:1fr}.transit-feature dl div+div{border-top:var(--rule);border-left:0;padding-left:0}.sign-buttons{grid-template-columns:repeat(3,minmax(0,1fr))}.sign-buttons button{min-height:92px}.result-columns{grid-template-columns:1fr}.result-columns section,.result-columns section+section{padding:1.25rem 0;border-left:0;border-bottom:var(--rule)}.result-columns section:last-child{border-bottom:0}.result-actions{align-items:flex-start;flex-direction:column}}
@media(max-width:620px){.almanac-library-hero{padding:2.5rem 1rem 2rem;text-align:left}.almanac-library-hero p{text-align:left;margin-left:0}.almanac-side-card,.almanac-card-grid{grid-template-columns:1fr}.almanac-side-card .side-chart{grid-column:auto}.almanac-card{flex-direction:column}.card-glyph,.card-glyph.small{width:100%;min-height:120px}.almanac-links a{grid-template-columns:1fr;gap:.25rem}}
@media(max-width:620px){.rising-sign-picker nav{grid-template-columns:repeat(3,1fr)}.rising-guide-grid{padding-left:1rem;padding-right:1rem}}
.almanac-side{max-height:calc(100vh - 2rem);overflow:auto;scrollbar-width:thin}.almanac-side li>a,.almanac-side li>.side-event{display:block;gap:0;padding:.5rem 0}.almanac-side li small{display:block;margin-top:.12rem;line-height:1.35}.almanac-side li>.side-event{cursor:default}.almanac-side li>.side-event small{color:var(--soft)}
@media(max-width:900px){.almanac-side{max-height:none;overflow:visible}}
.rising-sign-picker nav a{justify-content:center;min-height:105px}
.rising-sign-picker nav span,.rising-glyph,.sign-buttons button span,.result-stamp span{font-family:"Noto Sans Symbols 2","Segoe UI Symbol",sans-serif;font-size:2rem;font-variant-emoji:text;font-style:normal;font-weight:400;line-height:1}
.rising-glyph{font-size:2rem}.result-stamp span{font-size:6rem}
@media(max-width:620px){.rising-sign-picker nav a{min-height:92px}}
.planet-guide-hero>aside>span,.station-glyph,.card-glyph{font-family:"Noto Sans Symbols 2","Segoe UI Symbol",sans-serif;font-variant-emoji:text;font-style:normal;font-weight:400}
.planet-guide-hero>div>p,.planet-overview p,.rising-sign-picker>header p,.rising-card p,.degree-guide p{text-align:justify;hyphens:none}

/* Compact editorial scale, shared by the hub and all transit guides. */
.almanac-main{--rule:1px solid var(--ink)}
.almanac-main h1{font-size:clamp(2.25rem,4.5vw,4rem);line-height:1.08}
.almanac-main h2{font-size:clamp(1.55rem,2.6vw,2.25rem);line-height:1.2}
.almanac-main h3{font-size:1.35rem;line-height:1.3}
.almanac-main p,.almanac-main .event-overview>div:last-child{font-size:1rem;line-height:1.7}
.almanac-library-hero{padding:2.25rem 1.5rem}
.planet-guide-hero>div,.almanac-hero-copy{padding:2.5rem clamp(1rem,3vw,2.5rem)}
.planet-guide-hero,.almanac-hero{grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr)}
.planet-guide-hero>aside,.station-card{min-height:0;padding:1.5rem;justify-content:flex-start;background:var(--paper-light);color:var(--ink);border-top:4px solid var(--blue)}
.planet-guide-hero>aside>span,.station-glyph{font-size:4rem;line-height:1.1;color:var(--blue)}
.station-card strong{font-size:1.65rem;line-height:1.2}
.planet-guide-hero dl,.station-card dl{margin:1rem 0 0}
.planet-guide-hero dl div,.station-card dl div{padding:.65rem 0}
.planet-guide-hero dt,.station-card dt,.station-card small{font-size:.75rem;letter-spacing:.05em}
.planet-guide-hero dd,.station-card dd{font-size:.9375rem;line-height:1.5}
.planet-overview,.degree-guide,.rising-sign-picker,.rising-guide-grid,.sign-check,.almanac-explainer,.almanac-rule,.almanac-next,.almanac-how,.transit-library{padding:2.25rem clamp(1rem,3vw,2.5rem);gap:1.5rem}
.rising-sign-picker,.degree-guide,.almanac-rule,.almanac-next{background:transparent}
.rising-sign-picker,.almanac-rule{border-top:3px solid var(--blue)}
.degree-guide,.almanac-next{border-top:3px solid var(--orange)}
.rising-sign-picker nav{margin-top:1.25rem}
.rising-sign-picker nav a,.sign-buttons button{min-height:78px;padding:.7rem .3rem}
.rising-sign-picker nav span,.sign-buttons button span{font-size:1.6rem}
.rising-sign-picker nav a,.sign-buttons b{font-size:.75rem;letter-spacing:.04em}
.rising-card,.almanac-card,.almanac-side-card{border-width:1px;box-shadow:none;padding:1.15rem}
.rising-card h2{font-size:1.4rem}
.rising-glyph{width:42px;height:42px;font-size:1.6rem;background:transparent;color:var(--ink)}
.sign-check>header{margin-bottom:1.25rem}
.sign-result{grid-template-columns:100px minmax(0,1fr);margin-top:1.5rem;box-shadow:none}
.result-stamp{min-height:0;padding:1rem .5rem;background:var(--paper-light);border-top:3px solid var(--orange)}
.result-stamp span{font-size:3rem}
.result-copy{padding:1.5rem}
.result-copy>h2{font-size:clamp(1.6rem,2.6vw,2.25rem)}
.degree-note{background:transparent;border-left-width:3px;padding:.75rem 1rem}
.almanac-explainer li{min-height:0}
.almanac-explainer h3{margin:1rem 0 .65rem;font-size:1.4rem}
.almanac-card.featured{background:var(--paper-light)}
.card-glyph,.card-glyph.small{width:52px;min-height:64px;align-self:flex-start;background:transparent;color:var(--blue);font-size:2.5rem}
.almanac-card h3{font-size:1.4rem}
.almanac-card>div,.rising-card header>div{min-width:0}
.article-breadcrumb{flex-wrap:wrap;font-size:.75rem}
.almanac-main .button{white-space:normal;max-width:100%;text-align:center}
.almanac-main section,.almanac-main aside{min-width:0}
@media(max-width:900px){
 .planet-guide-hero,.almanac-hero{grid-template-columns:1fr}
 .planet-guide-hero>aside,.station-card{border-left:0;min-height:0}
 .planet-guide-hero dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1.25rem}
 .sign-result{grid-template-columns:1fr}
 .result-stamp{flex-direction:row;gap:1rem;justify-content:flex-start;padding:.75rem 1rem;border-right:0}
 .result-stamp small{margin:0}
 .result-stamp span{font-size:2rem}
 .almanac-card-grid{grid-template-columns:1fr}
}
@media(max-width:560px){
 .almanac-main h1{font-size:2.25rem}
 .planet-guide-hero>div,.almanac-hero-copy,.almanac-library-hero{padding:1.5rem 1rem}
 .planet-overview,.degree-guide,.rising-sign-picker,.rising-guide-grid,.sign-check,.almanac-explainer,.almanac-rule,.almanac-next{padding:1.5rem 1rem}
 .planet-guide-hero dl{grid-template-columns:1fr}
 .rising-sign-picker nav,.sign-buttons{grid-template-columns:repeat(3,minmax(0,1fr))}
 .rising-sign-picker nav a,.sign-buttons button{min-height:76px}
 .almanac-card{flex-direction:row;gap:.75rem}
 .card-glyph,.card-glyph.small{width:36px;min-height:44px;font-size:2rem}
 .result-copy,.rising-card{padding:1rem}
 .station-card dl div{display:block}
 .station-card dd{text-align:left;margin-top:.3rem}
 .almanac-main p{hyphens:none;overflow-wrap:break-word}
 .article-breadcrumb{letter-spacing:.03em}
}

/* Balanced celestial masthead, including narrow screens. */
.almanac-library-hero{display:grid;grid-template-columns:clamp(42px,10vw,120px) minmax(0,1fr) clamp(42px,10vw,120px);align-items:center;gap:clamp(.5rem,2vw,2rem);text-align:center}
.almanac-library-hero .almanac-heading-copy{min-width:0}
.almanac-library-hero h1{max-width:none;margin:0 auto 1rem;text-align:center}
.almanac-library-hero .kicker{text-align:center;line-height:1.6}
.almanac-library-hero p{max-width:65ch;margin:0 auto;text-align:center;hyphens:none}
.almanac-ornament{display:block;width:100%;height:auto;max-height:140px}
.almanac-sun{color:#a15b25;transform:rotate(-8deg)}
.almanac-orbit{color:var(--blue);transform:rotate(8deg)}
@media(max-width:560px){.almanac-library-hero{grid-template-columns:1fr 1fr;gap:.75rem 2rem}.almanac-library-hero .almanac-heading-copy{grid-column:1/-1;grid-row:2}.almanac-ornament{width:48px;height:56px}.almanac-sun{justify-self:end;grid-column:1;grid-row:1}.almanac-orbit{justify-self:start;grid-column:2;grid-row:1}.almanac-library-hero .kicker{font-size:.6875rem;letter-spacing:.08em}}

/* Boxed Almanac hub, matching the Learn and Research collections. */
.almanac-hub .almanac-library-hero{max-width:1112px;width:calc(100% - 3rem);margin:1.5rem auto 0;border:1px solid var(--ink);box-shadow:4px 4px 0 var(--ink);background:#f7d9bd}
.almanac-hub .almanac-side-card{border:1px solid var(--ink);box-shadow:3px 3px 0 var(--ink);background:#f7edcb}
.almanac-hub .feed-section{border:1px solid var(--ink);box-shadow:3px 3px 0 var(--ink);padding:1.25rem;background:#fff9ea;margin-bottom:1.5rem}
.almanac-hub .feed-section:nth-child(even){background:#f7d9bd}
.almanac-hub .almanac-card{--card-accent:#eb7a3e;border:1px solid var(--ink);border-top:4px solid var(--card-accent);box-shadow:3px 3px 0 var(--ink);background:#fff9ea;padding:1rem;gap:.75rem}
.almanac-hub .almanac-card-grid{gap:1.25rem}
.almanac-hub .almanac-card-grid .almanac-card:nth-child(3n+2){--card-accent:#2ca7a0;background:#e5efdf}
.almanac-hub .almanac-card-grid .almanac-card:nth-child(3n){--card-accent:#5275a8;background:#e7ecf1}
.almanac-hub .almanac-card.featured{--card-accent:#d4a720;background:#f7edcb}
.almanac-hub .card-glyph{color:var(--card-accent)}
.almanac-hub .almanac-card:focus-visible{outline:2px solid var(--ink);outline-offset:5px}
.almanac-hub .almanac-card:hover .card-link{color:#b74732}
@media(max-width:560px){.almanac-hub .almanac-library-hero{width:calc(100% - 2rem);margin-top:1rem}.almanac-hub .almanac-library-shell{padding-left:1rem;padding-right:1rem}.almanac-hub .feed-section{padding:1rem}.almanac-hub .almanac-card{padding:.85rem}}

/* Place grid-card copy below its symbol instead of in a narrow side column. */
.almanac-hub .almanac-card-grid .almanac-card{flex-direction:column;align-items:stretch;gap:.65rem}
.almanac-hub .almanac-card-grid .card-glyph{justify-content:flex-start;align-self:flex-start;width:auto;min-height:0;line-height:1.2}
.almanac-hub .almanac-card-grid .almanac-card>div:last-child{width:100%}
.almanac-hub .almanac-card-grid .almanac-card p{text-align:left;hyphens:none}

/* Reuse the Learn chart artwork in the same location on every transit header. */
.planet-guide-hero>aside,.station-card{position:relative}
.transit-header-art{position:absolute;right:1.5rem;top:1rem;width:90px;height:110px;object-fit:contain;pointer-events:none}
.planet-guide-hero>aside>span,.station-card>.station-glyph{padding-right:105px}
@media(max-width:560px){.transit-header-art{width:72px;height:88px;right:1rem}.planet-guide-hero>aside>span,.station-card>.station-glyph{padding-right:85px}}

/* Shared transit components: empty states and lower-page editorial rhythm. */
.almanac-main .sign-result[hidden]{display:none!important}
.almanac-main:not(.almanac-hub) .almanac-explainer,
.almanac-main:not(.almanac-hub) .almanac-rule,
.almanac-main:not(.almanac-hub) .almanac-next{width:calc(100% - 5rem);max-width:1360px;margin:1.5rem auto;padding:1.5rem;border:1px solid var(--ink);box-shadow:3px 3px 0 var(--ink);background:var(--paper-light)}
.almanac-main .almanac-explainer ol{gap:0;margin:1.25rem 0 0;border-bottom:0}
.almanac-main .almanac-explainer li{min-height:0;padding:1.25rem;border-right:1px solid #1113}
.almanac-main .almanac-explainer li:first-child{padding-left:0}
.almanac-main .almanac-explainer li:last-child{padding-right:0;border-right:0}
.almanac-main .almanac-explainer h3{margin:.65rem 0 .75rem;font-size:1.3rem;line-height:1.3}
.almanac-main:not(.almanac-hub) .almanac-rule{display:block;border-top:4px solid var(--teal)}
.almanac-main .almanac-rule h2{font-size:clamp(1.45rem,2.2vw,1.9rem);line-height:1.25;margin:0 0 1rem}
.almanac-main .almanac-rule p{margin:0 0 1rem}
.almanac-main .almanac-rule p:last-child{margin-bottom:0}
.almanac-main:not(.almanac-hub) .almanac-next{background:#f7edcb;border-top:4px solid var(--orange)}
.almanac-reading-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;width:calc(100% - 5rem);max-width:1360px;margin:1.5rem auto}
.almanac-main .almanac-reading-grid .almanac-rule{width:auto;margin:0;min-width:0}
.almanac-main .almanac-reading-grid .almanac-rule:nth-child(3n+2){background:#e7ecf1;border-top-color:var(--blue)}
.almanac-main .almanac-reading-grid .almanac-rule:nth-child(3n){background:#f4e6eb;border-top-color:var(--plum)}
.almanac-reading-card>div:first-child{max-width:none}
@media(max-width:900px){.almanac-main .almanac-explainer li,.almanac-main .almanac-explainer li:first-child,.almanac-main .almanac-explainer li:last-child{padding:1rem 0;border-right:0}.almanac-reading-grid{grid-template-columns:1fr}}
@media(max-width:560px){.almanac-main:not(.almanac-hub) .almanac-explainer,.almanac-main:not(.almanac-hub) .almanac-rule,.almanac-main:not(.almanac-hub) .almanac-next,.almanac-reading-grid{width:calc(100% - 2rem);padding:1.25rem;margin:1.25rem auto}.almanac-reading-grid{padding:0}.almanac-main .almanac-reading-grid .almanac-rule{width:100%;margin:0}}

.transit-aspect-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:1.25rem;margin:1.25rem 0}
.transit-aspect-box{border:1px solid #111;padding:1.25rem;background:#e7ecf1}
.transit-aspect-box:nth-child(2){background:#f4e6eb}
.transit-aspect-box h3{font-size:1.2rem;margin:0 0 1rem}
.transit-aspect-box dl{margin:0;font-family:var(--llz-body-font);font-size:.9375rem}
.transit-aspect-box dl>div{display:grid;grid-template-columns:7rem 1fr;gap:.75rem;padding:.65rem 0;border-top:1px solid #1113}
.transit-aspect-box dt{font-weight:600}.transit-aspect-box dd{margin:0}

/* All transit articles share the compact selector and editorial sizing. */
.almanac-main:not(.almanac-hub)>.sign-check{width:calc(100% - 5rem);max-width:1360px;margin:1.5rem auto;padding:1.5rem;border:1px solid var(--ink);border-top:4px solid var(--blue);background:var(--paper-light);box-shadow:3px 3px 0 var(--ink)}
.almanac-main:not(.almanac-hub) .sign-check h2,.almanac-main:not(.almanac-hub) .almanac-next h2,.almanac-main:not(.almanac-hub) .almanac-explainer h2{font-size:clamp(1.45rem,2.2vw,1.9rem);line-height:1.25;margin:0 0 1rem}
.almanac-main:not(.almanac-hub) .sign-check>header{grid-template-columns:1fr 1fr;gap:1.5rem;align-items:start}
.almanac-main .sign-check>header p,.almanac-main .result-copy p,.almanac-main .almanac-rule p,.almanac-main .almanac-next p{font-family:var(--llz-body-font,"IBM Plex Mono",monospace);font-size:.9375rem;line-height:1.7}
.almanac-main .sign-result{border-width:1px;grid-template-columns:100px minmax(0,1fr)}
.almanac-main .result-copy{min-width:0;padding:1.25rem}
.almanac-main .result-stamp{min-height:0;border-right-width:1px}
.almanac-main .result-stamp span{font-size:3rem}
.almanac-main .sign-buttons{border-width:1px}
.almanac-main .sign-buttons button{border-width:1px;min-height:78px}
.almanac-main .sign-buttons b{font-family:var(--llz-body-font,"IBM Plex Mono",monospace);font-weight:500}
.transit-aspect-link{font-family:var(--llz-body-font,"IBM Plex Mono",monospace);font-size:.8125rem;text-underline-offset:4px;display:inline-block;margin-top:.5rem}
@media(max-width:760px){.almanac-main:not(.almanac-hub) .sign-check>header{grid-template-columns:1fr}.almanac-main .sign-buttons{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:560px){.almanac-main:not(.almanac-hub)>.sign-check{width:calc(100% - 2rem);margin:1.25rem auto;padding:1.25rem}.almanac-main .sign-result{grid-template-columns:1fr}.almanac-main .result-stamp{flex-direction:row;gap:.75rem;padding:.75rem;border-right:0;border-bottom:1px solid var(--ink)}.almanac-main .result-stamp span{font-size:1.75rem}.almanac-main .result-stamp small{margin:0}}

/* Shared long-form copy stays readable inside the established transit boxes. */
.almanac-main .almanac-rule>div:last-child{max-width:100%}
.almanac-main .almanac-rule h3{font-size:1.25rem;line-height:1.3;margin:1.5rem 0 .65rem}
.almanac-main .almanac-rule h3:first-child{margin-top:0}
.almanac-main .almanac-rule .transit-phase-links{border-top:1px solid #1113;margin-top:1.25rem;padding-top:1rem}
.almanac-main .transit-phase-links a{text-underline-offset:4px}

/* Planet symbols and titles share a row on every Almanac card. */
.almanac-hub .card-heading{display:flex;align-items:center;gap:.65rem;margin:.6rem 0 .7rem;min-width:0}
.almanac-hub .card-heading .card-glyph{display:flex;align-items:center;justify-content:center;align-self:center;flex:0 0 1.75rem;width:1.75rem;min-height:0;font-size:1.8rem;line-height:1}
.almanac-hub .card-heading h3{margin:0;line-height:1.3;min-width:0}
.almanac-hub .almanac-card>div{width:100%}
.almanac-hub [hidden]{display:none!important}

/* Date-based library groups retain the same cards and avoid a wall of archives. */
.almanac-year{border-top:1px solid var(--ink);padding:.9rem 0}
.almanac-year summary{cursor:pointer;font-family:var(--llz-body-font);font-size:.9rem;font-weight:600;padding:.25rem 0}
.almanac-year summary:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
.almanac-year>.almanac-card-grid{margin-top:1rem}

.almanac-archive>summary{cursor:pointer;padding:1rem 0;font-family:"IBM Plex Mono",monospace;font-size:.875rem;line-height:1.5;text-underline-offset:4px}
.almanac-archive>summary:focus-visible{outline:2px solid #111;outline-offset:3px}
.almanac-archive[open]>.almanac-card-grid{margin-top:.5rem}
