/* ASTRO 7.3 — shared reading scale and deliberately varied section widths. */
:root{--layout-base:1000px;--layout-wide:1200px;--reading-width:70ch;--text-secondary:#c3cce5;--text-soft:#b9c4df;--control-bg:#242d49;--control-hover:#364363;--control-active:#635089;--control-ink:#fff8ec}

html{scroll-padding-top:24px}
body{font-size:17px;line-height:1.7}
.container{width:min(var(--layout-base),calc(100% - 64px))}
.container.container-wide{width:min(var(--layout-wide),calc(100% - 64px))}
.narrow{max-width:780px}
a,button,input,select{scroll-margin-top:24px}
a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:3px solid #e6cf93;outline-offset:4px}
.eyebrow{font-size:12px;line-height:1.6;letter-spacing:.11em;color:#d1b9f3}
.text-link{font-size:15px;line-height:1.6}
.button{font-size:16px;line-height:1.5;min-height:48px;padding:13px 22px;gap:16px;border-radius:12px}
.button-dark{background:#7755b1;color:#fff}
.button-dark:hover{background:#8965c1;color:#fff}
.button-gold{background:#e6cf93;color:#181b2e}
.button-gold:hover{background:#f1dda9;color:#181b2e}
.button-ghost:hover{background:#303b58;color:#fff}
.menu a{font-size:15px;padding-block:15px}
.main-nav .menu{gap:23px}
.masthead{gap:25px;min-height:96px}
.brand{font-size:31px}
.nav-cta{font-size:14px;padding:12px 16px}
.menu-toggle{font-size:16px;min-height:44px}
.breadcrumb{font-size:13px;line-height:1.7;gap:10px}
.breadcrumb a{padding-block:6px}
.cosmic-hero{padding:54px 0 45px}
.cosmic-hero p{font-size:17px;line-height:1.8;max-width:720px}
.hero-date{font-size:13px;margin-top:23px}
.cosmic-panel{padding:30px;margin-bottom:26px}
.panel-heading{gap:20px}
.panel-heading h2{font-size:25px;line-height:1.35}
.panel-heading>span,.panel-heading>.text-link,.panel-note{font-size:14px;line-height:1.7}
.panel-note{margin-top:18px;color:var(--text-secondary)}
.sign-card strong,.choose-panel .sign-card strong{font-size:16px;line-height:1.4}
.sign-card small,.choose-panel .sign-card small{font-size:12px;line-height:1.6}
.sign-element{font-size:12px}
.sign-card,.choose-panel .sign-card{min-width:0;justify-content:center;padding:22px 10px}
.choose-panel .sign-grid{gap:12px}
.sign-card>.zodiac,.choose-panel .sign-card>.zodiac{width:60px;height:60px;font-size:36px;color:#efdaa1;flex-shrink:0}
.sign-card>.zodiac .zodiac-icon{width:70%;height:70%}
.sign-card:hover,.choose-panel .sign-card:hover{background:#35405e;border-color:#a69ac6;color:#fff}
.experience-card{min-height:194px;padding:28px;display:flex;align-items:center}
.experience-card .eyebrow{font-size:12px;line-height:1.5}
.experience-card h3{font-size:25px;line-height:1.3}
.experience-card p{font-size:16px;line-height:1.65;max-width:330px;color:#e1d8ed}
.experience-symbol{opacity:.25}
.guide-card h3{font-size:20px;line-height:1.4}
.guide-card p{font-size:15px;line-height:1.7;color:var(--text-secondary)}
.guide-card .eyebrow,.guide-card .text-link{font-size:13px;line-height:1.6}
.guide-card>div{padding:23px}
.knowledge-banner h2{font-size:28px;line-height:1.3}
.knowledge-banner p{font-size:16px;line-height:1.8}
.knowledge-banner .button{font-size:15px}
.home-disclaimer,.disclaimer{font-size:13px;line-height:1.8;color:var(--text-soft)}
.muted-date,.date-label{font-size:14px}
.daily-section .panel-heading .eyebrow{font-size:12px}
.period-nav{gap:8px;overflow-x:auto;scrollbar-width:thin}
.period-nav a{padding:14px 16px;margin:0;font-size:16px;line-height:1.5;min-height:50px}
.period-nav [aria-current=page]:after{right:16px;left:16px}
.daily-tabs{border-radius:15px;background:transparent;border:0;gap:10px;grid-template-columns:repeat(6,minmax(0,1fr));overflow:visible}
.daily-tab{min-width:0;min-height:92px;padding:14px 7px;font-size:15px;line-height:1.4;gap:9px;background:var(--control-bg);color:#e5e9f7;border:1px solid #4f5c7b;border-radius:12px;justify-content:center;text-align:center}
.daily-tab .zodiac{display:flex;justify-content:center;align-items:center;font-size:30px;line-height:1;color:#dec9ff}
.daily-tab:hover,.daily-tab:focus-visible{background:var(--control-hover);color:#fff;border-color:#c2afd9}
.daily-tab:hover .zodiac,.daily-tab:focus-visible .zodiac{color:#f4df9f}
.daily-tab.is-active,.daily-tab[aria-selected=true]{background:var(--control-active);color:var(--control-ink);border-color:#e6cf93;box-shadow:inset 0 0 0 1px #e6cf93}
.daily-tab.is-active .zodiac,.daily-tab[aria-selected=true] .zodiac{color:#ffe7a4}
.daily-panel{max-width:780px;margin-inline:auto;padding-top:30px}
.daily-reading-heading{gap:18px;align-items:center}
.daily-reading-heading>.zodiac{font-size:44px;display:flex;align-items:center;justify-content:center}
.daily-reading-heading .eyebrow{font-size:13px;line-height:1.5}
.daily-reading-heading h3{font-size:27px;line-height:1.3}
.reading-copy,.article-body{font-size:18px;line-height:1.8;color:#d4dbef;overflow-wrap:break-word}
.reading-copy{max-width:var(--reading-width)}
.article-body h2{font-size:29px;line-height:1.3}
.article-body h3{font-size:23px;line-height:1.4}
.article-body p+p,.reading-copy p+p{margin-top:18px}
.content-layout{gap:40px;grid-template-columns:minmax(0,1fr) 230px}
.article-body{min-width:0}
.article-body a{color:#dbceff;text-decoration-thickness:1px;text-underline-offset:4px}
.profile-toc{font-size:16px;line-height:1.7;padding:24px}
.article-body .profile-toc a{color:#dfd1ff}
.sign-facts{gap:30px;flex-wrap:wrap}
.sign-facts dt{font-size:12px;line-height:1.5;letter-spacing:.08em}
.sign-facts dd{font-size:18px;line-height:1.5}
.sign-hero{padding-block:35px;margin-bottom:30px}
.sign-hero-symbol{width:200px;height:200px}
.sign-hero h1{font-size:68px}
.lead,.page-heading p{font-size:18px;line-height:1.75}
.page-heading{padding-block:28px 30px}
.page-heading h1{font-size:clamp(35px,4.6vw,58px);line-height:1.15}
.sticky-aside{padding:24px;top:24px}
.sticky-aside h2{font-size:23px;line-height:1.35}
.sticky-aside>a{font-size:15px;line-height:1.6;padding-block:15px;min-height:48px}
.knowledge-layout{grid-template-columns:230px minmax(0,1fr);gap:40px}
.knowledge-nav .eyebrow{font-size:12px}
.knowledge-nav>a{font-size:15px;line-height:1.6;padding-block:14px}
.element-grid p{font-size:16px;line-height:1.75}
.planet-list>div{font-size:17px;line-height:1.8}
.article-card h2{font-size:23px}
.article-card p{font-size:16px;line-height:1.75}
.article-card .eyebrow,.article-meta{font-size:13px;line-height:1.6}
.article-card .article-meta a{padding:7px}
.article-byline{font-size:14px;line-height:1.7}
.footer-grid h2{font-size:15px;line-height:1.5}
.footer-grid>div>a:not(.brand),.site-footer p,.footer-menu{font-size:14px;line-height:1.9}
.footer-bottom{font-size:13px;line-height:1.8}
.footer-bottom>a{padding-block:10px}
.compat-fields label{font-size:15px}
.compat-fields select{font-size:17px;min-height:48px}
.compat-sections p{font-size:18px;line-height:1.8}
.segmented button{min-height:46px;font-size:16px}
.empty-state p{font-size:17px;line-height:1.8}
.empty-state .text-link{font-size:15px}

/* Sign selection has explicit normal, hover, focus and current-page colors. */
.sign-jump{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;padding:16px 0 0}
.sign-jump>a{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:9px;min-width:0;min-height:96px;padding:15px 8px;font-size:16px;font-weight:600;line-height:1.35;background:var(--control-bg);color:#eef0ff;border:1px solid #526080;border-radius:13px;text-decoration:none}
.sign-jump .zodiac{display:flex;align-items:center;justify-content:center;width:34px;height:34px;font-size:32px;line-height:1;color:#ddc6ff}
.sign-jump a:hover,.sign-jump a:focus-visible{background:var(--control-hover);color:#fff;border-color:#c7b4e2}
.sign-jump a:hover .zodiac,.sign-jump a:focus-visible .zodiac{color:#f4df9f}
.sign-jump a[aria-current=page],.sign-jump a[aria-current=location]{background:var(--control-active);color:var(--control-ink);border-color:#e6cf93;box-shadow:inset 0 0 0 1px #e6cf93}
.sign-jump a[aria-current] .zodiac{color:#ffe7a4}
.sign-jump a[aria-current]:hover{background:#715c99;color:#fff8ec}
.forecast-selection{padding:24px;border:1px solid #424d70;border-radius:22px;background:linear-gradient(120deg,#202740,#192038);margin-top:0;margin-bottom:35px}
.forecast-date{font-size:15px;line-height:1.7;display:flex;flex-wrap:wrap;gap:10px 25px;justify-content:space-between;margin-bottom:4px}
.forecast-page-heading{padding-top:16px}
.forecast-page-heading h1{font-size:clamp(34px,4.4vw,54px)}
.forecast-page-heading p a{font-size:16px;color:#d7c3fb}
.forecast-summaries{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-bottom:32px}
.forecast-summary{min-width:0;background:#1e2740;border:1px solid #424e71;border-radius:18px;padding:27px;scroll-margin-top:25px;display:flex;flex-direction:column;align-items:flex-start}
.forecast-summary header{display:flex;align-items:center;gap:17px;margin-bottom:20px}
.forecast-summary header>.zodiac{display:flex;align-items:center;justify-content:center;color:#e4ccff;font-size:38px}
.forecast-summary h2{font-size:27px;line-height:1.25;margin-bottom:5px}
.forecast-summary header div>span{font-size:13px;color:#bdc9e1}
.forecast-summary>p{font-size:17px;line-height:1.8;color:#d4dcef;margin-bottom:20px}
.forecast-summary>.text-link{margin-top:auto;color:#dfcafa}
.forecast-reader{background:linear-gradient(135deg,#202842,#192137);border:1px solid #4b5676;border-radius:22px;padding:38px 42px;max-width:850px;margin:0 auto 28px}
.forecast-reading-header{display:flex;align-items:center;gap:20px;margin-bottom:28px}
.forecast-reading-header>.zodiac{display:flex;align-items:center;justify-content:center;color:#e8d4ff;font-size:46px;flex-shrink:0}
.forecast-reading-header h2{font-size:27px;line-height:1.35;margin-bottom:8px}
.forecast-reading-header time{font-size:15px;line-height:1.65;color:#c6d0e8}
.forecast-reader .reading-copy{margin-inline:auto}
.forecast-reader .disclaimer{margin-top:26px}
.forecast-next{display:flex;justify-content:space-between;flex-wrap:wrap;gap:15px;font-size:15px;line-height:1.7;max-width:850px;margin-inline:auto;color:#dec8fb}
.forecast-next a{padding-block:10px}
.profile-forecast-access{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:25px 28px;margin-bottom:36px;border:1px solid #76639d;border-radius:18px;background:linear-gradient(100deg,#332c4f,#222b45)}
.profile-forecast-access h2{font-size:25px;line-height:1.35;margin-top:6px}
.profile-forecast-links{display:flex;gap:10px;flex-wrap:wrap;flex-shrink:0;max-width:55%}
.forecast-empty{padding:32px;text-align:left;margin-bottom:28px}
.forecast-empty .button-row{margin-top:24px}
.profile-forecast-access .eyebrow{font-size:12px}
.search-form button{min-height:48px;font-size:16px}
.search-form input{min-height:48px;font-size:17px}

@media(max-width:1100px){.main-nav .menu{gap:14px}
.menu a{font-size:14px}
.nav-cta{font-size:13px}
.masthead{gap:20px}
.brand{font-size:28px}
.content-layout{grid-template-columns:minmax(0,1fr) 210px;gap:30px}
.profile-forecast-access{align-items:flex-start}
.profile-forecast-links{max-width:50%}
}

@media(max-width:950px){.masthead{flex-wrap:wrap;min-height:80px}
.menu-toggle{display:flex;align-items:center;margin-left:auto;color:#f3ecff}
.nav-cta{display:none}
.main-nav{width:100%;margin:15px 0 0;order:3}
.js .main-nav{display:none}
.js .main-nav.is-open{display:block}
.main-nav .menu{display:flex;flex-wrap:wrap;gap:0 24px}
.main-nav .menu>li{width:calc(33.333% - 16px)}
.menu a{font-size:16px;min-height:48px;padding-block:12px}
.menu .sub-menu{position:static;display:block;border:0;padding-left:12px;min-width:0}
.content-layout{display:block}
.sticky-aside{margin-top:32px;position:static}
.knowledge-layout{grid-template-columns:1fr;gap:30px}
.knowledge-nav{position:static}
.knowledge-nav>a{display:block}
.guide-grid{gap:14px}
.guide-card>div{padding:18px}
.guide-card h3{font-size:19px}
.profile-forecast-access{flex-direction:column;gap:18px}
.profile-forecast-links{max-width:100%;flex-shrink:1}
.forecast-reader{padding:30px}
.experience-card{padding:25px}
.experience-card h3{font-size:23px}
}

@media(max-width:650px){.container,.container.container-wide{width:calc(100% - 32px)}
body{font-size:16px}
.masthead{min-height:78px;padding-block:16px}
.brand{font-size:27px}
.menu-toggle{padding:8px 13px}
.main-nav .menu>li{width:calc(50% - 12px)}
.cosmic-hero{padding:28px 0 30px}
.cosmic-hero .eyebrow{font-size:11px;line-height:1.8;letter-spacing:.07em}
.cosmic-hero h1{font-size:clamp(32px,8.2vw,42px);line-height:1.18;margin:21px 0}
.cosmic-hero p{font-size:16px;line-height:1.75;max-width:100%}
.hero-date{font-size:12px;margin-top:18px}
.cosmic-panel{padding:21px 16px;border-radius:19px;margin-bottom:22px}
.panel-heading h2{font-size:23px;line-height:1.35}
.panel-heading>.text-link,.panel-heading>span,.panel-note{font-size:14px}
.choose-panel .sign-grid,.sign-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.sign-card,.choose-panel .sign-card,.inner-main .sign-card{padding:18px 5px;min-height:116px}
.sign-card strong,.choose-panel .sign-card strong{font-size:14px}
.sign-card small{font-size:12px}
.sign-card>.zodiac,.choose-panel .sign-card>.zodiac{width:48px;height:48px;font-size:30px;margin-bottom:10px}
.experience-grid{grid-template-columns:1fr}
.experience-card{min-height:164px;padding:23px}
.experience-card h3{font-size:24px}
.experience-card .eyebrow{font-size:12px}
.experience-card p{font-size:16px;max-width:90%}
.experience-symbol{right:20px;top:25px;font-size:75px}
.guide-grid{grid-template-columns:1fr}
.guide-art{height:130px}
.guide-card>div{padding:22px}
.guide-card h3{font-size:21px}
.guide-card p{font-size:16px}
.guide-card .eyebrow,.guide-card .text-link{font-size:14px}
.knowledge-banner{padding:24px}
.knowledge-banner h2{font-size:27px}
.knowledge-banner p{font-size:16px}
.knowledge-banner .button{font-size:16px;white-space:normal}
.period-nav{gap:0;margin-bottom:24px}
.period-nav a{padding:12px 13px;font-size:15px}
.period-nav a span{display:none}
.period-nav [aria-current=page]:after{left:13px;right:13px}
.daily-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.daily-tab{font-size:14px;min-height:86px;padding:12px 4px}
.daily-tab .zodiac{font-size:28px}
.daily-panel{padding:26px 2px 3px}
.daily-reading-heading h3{font-size:24px}
.daily-reading-heading .eyebrow{font-size:12px}
.reading-copy,.article-body,.compat-sections p{font-size:17px;line-height:1.8}
.daily-panel>.text-link{font-size:16px}
.article-body h2{font-size:27px;line-height:1.3}
.article-body h3{font-size:23px}
.lead,.page-heading p{font-size:17px}
.page-heading h1{font-size:36px;line-height:1.2;overflow-wrap:break-word}
.breadcrumb{font-size:13px;flex-wrap:wrap}
.sign-hero{padding:28px 0;margin-bottom:24px}
.sign-hero h1{font-size:48px;max-width:calc(100% - 85px)}
.sign-hero-symbol{width:78px;height:78px;top:35px}
.sign-facts{gap:16px 24px;margin-top:25px}
.sign-facts dt{font-size:12px}
.sign-facts dd{font-size:16px}
.profile-toc{padding:21px 19px;font-size:16px}
.sticky-aside{padding:23px}
.sticky-aside>a{font-size:16px}
.knowledge-nav>a{font-size:16px}
.planet-list>div,.element-grid p{font-size:16px}
.article-card h2{font-size:21px}
.article-card p{font-size:16px}
.article-meta{font-size:13px}
.article-card .article-image{min-height:160px}
.footer-grid h2{font-size:16px}
.footer-grid>div>a:not(.brand),.site-footer p{font-size:15px}
.footer-bottom{font-size:13px;gap:14px}
.footer-bottom>a{display:inline-block}
.sign-jump{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding-top:12px}
.sign-jump>a{font-size:14px;min-height:85px;padding:12px 3px;gap:8px}
.sign-jump .zodiac{width:30px;height:30px;font-size:29px}
.forecast-selection{padding:17px 13px;border-radius:18px;margin-bottom:26px}
.forecast-date{font-size:14px;gap:4px;display:block}
.forecast-date time{display:block}
.forecast-summaries{grid-template-columns:1fr;gap:17px}
.forecast-summary{padding:23px}
.forecast-summary>p{font-size:17px}
.forecast-reader{padding:26px 21px;border-radius:18px}
.forecast-reading-header{gap:13px;align-items:flex-start}
.forecast-reading-header h2{font-size:24px}
.forecast-reading-header time{font-size:14px}
.forecast-reading-header>.zodiac{font-size:36px}
.forecast-next{font-size:16px}
.profile-forecast-access{padding:23px 20px;margin-bottom:27px}
.profile-forecast-access h2{font-size:24px}
.profile-forecast-links{width:100%}
.profile-forecast-links .button{width:100%;font-size:16px;justify-content:space-between}
.forecast-empty{padding:26px 22px}
.forecast-page-heading h1{font-size:36px}
.home-disclaimer,.disclaimer{font-size:13px}
}

@media(max-width:360px){.container,.container.container-wide{width:calc(100% - 24px)}
.cosmic-panel{padding:19px 12px}
.sign-jump>a{font-size:13px}
.sign-card strong,.choose-panel .sign-card strong{font-size:13px}
.daily-tab{font-size:13px}
.forecast-reader{padding:23px 17px}
.period-nav a{font-size:14px;padding-inline:10px}
.profile-toc{padding-inline:16px}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
*{scroll-behavior:auto;transition:none!important}
}

@media print{.forecast-selection,.profile-forecast-access,.forecast-next,.sign-period-nav{display:none}
.forecast-reader,.forecast-summary{background:white;color:black;border-color:#aaa}
.reading-copy,.article-body{color:black}
}

