/* The site chrome, lifted from the homepage master.
 *
 * Ten of fourteen page types carried the chrome CLASSES and none of the RULES,
 * so a standard chrome injected into them rendered as unstyled links.
 *
 * MEDIA QUERIES MUST SURVIVE. A first extraction flattened them and emitted
 * @media(max-width:1020px){.navlinks,.nav-cta{display:none}} as an
 * unconditional rule — last in the file, so it won everywhere and the desktop
 * menu vanished at every width on every page that linked this. The assertion
 * below exists so that cannot ship again.
 */
/* ---------- HEADER ---------- */
header.nav{position:sticky;top:0;z-index:80;background:rgba(243,234,214,.96);backdrop-filter:blur(8px);border-bottom:1px solid var(--copper-line)}
.nav-inner{max-width:1180px;margin:0 auto;padding:12px 32px;display:flex;align-items:center;gap:26px}
.brand{display:flex;align-items:center;gap:10px;font-family:'Cormorant SC',serif;font-weight:700;font-size:22px;color:var(--maroon-deep);text-decoration:none;flex-shrink:0}
.navlinks{display:flex;gap:4px;list-style:none;margin:0 auto;padding:0;font-family:'Karla',sans-serif;font-size:13.5px;font-weight:600}
.navlinks>li{position:relative}
.navlinks>li>a,.navlinks>li>button{display:flex;align-items:center;gap:5px;padding:10px 13px;text-decoration:none;background:none;border:none;font:inherit;color:var(--ash);cursor:pointer;opacity:.8}
.navlinks>li>a:hover,.navlinks>li>button:hover,.navlinks>li:focus-within>button{opacity:1;color:var(--vermillion)}
.caret{font-size:10.5px;transition:transform .2s}
li:hover .caret,li:focus-within .caret{transform:rotate(180deg)}
.nav-utils{display:flex;align-items:center;gap:14px;flex-shrink:0}
.icon-btn{background:none;border:none;cursor:pointer;padding:6px;color:var(--maroon-deep);display:flex}
.nav-cta{font-family:'Karla',sans-serif;font-weight:700;font-size:13.5px;background:var(--vermillion);color:var(--ivory-light);padding:11px 22px;text-decoration:none;border:1px solid var(--vermillion);white-space:nowrap}
.nav-cta:hover{background:#8f281c}
.burger{display:none}
/* dropdown + mega */
.drop{position:absolute;top:100%;left:0;background:var(--ivory-light);border:1px solid var(--copper-line);box-shadow:var(--shadow);min-width:250px;padding:14px 0;opacity:0;visibility:hidden;transform:translateY(6px);transition:all .18s}
li:hover>.drop,li:focus-within>.drop{opacity:1;visibility:visible;transform:translateY(0)}
.drop a{display:block;padding:8px 22px;text-decoration:none;font-weight:500;color:#3a2f27}
.drop a:hover{background:var(--ivory);color:var(--vermillion)}
.drop .drop-label{display:block;padding:8px 22px 4px;font-size:11.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--copper)}
.mega{left:50%;transform:translate(-50%,6px);width:min(920px,92vw);display:grid;grid-template-columns:repeat(4,1fr);gap:0;padding:24px 26px 20px}
li:hover>.mega,li:focus-within>.mega{transform:translate(-50%,0)}
.mega .col{padding:0 14px;border-left:1px solid var(--copper-line)}
.mega .col:first-child{border-left:none;padding-left:0}
.mega a{padding:5.5px 0;font-size:13px}
.mega a small{color:#8a7a68;font-weight:400}
.mega-foot{grid-column:1/-1;margin-top:16px;padding-top:14px;border-top:1px solid var(--copper-line);display:flex;gap:22px;flex-wrap:wrap}
.mega-foot a{font-weight:700;color:var(--vermillion);padding:0}
@media(max-width:1020px){.navlinks,.nav-cta{display:none}.burger{display:flex}.nav-inner{justify-content:space-between}}
/* mobile drawer */
.drawer{position:fixed;inset:0;z-index:90;background:rgba(42,33,28,.4);opacity:0;visibility:hidden;transition:.2s}
.drawer.open{opacity:1;visibility:visible}
.drawer-panel{position:absolute;top:0;right:0;bottom:0;width:min(340px,88vw);background:var(--ivory-light);padding:22px;overflow-y:auto;transform:translateX(100%);transition:.25s}
.drawer.open .drawer-panel{transform:none}
.drawer-panel h4{font-family:'Karla',sans-serif;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--copper);margin:18px 0 6px}
.drawer-panel a{display:block;padding:8px 0;text-decoration:none;font-family:'Karla',sans-serif;font-size:14.5px;font-weight:600;color:#3a2f27}
.drawer-close{background:none;border:none;font-size:26px;color:var(--maroon-deep);cursor:pointer;float:right}
.foot-brand{font-family:'Cormorant SC',serif;font-size:24px;color:var(--ivory-light);margin-bottom:10px}
.foot-brand-note{font-size:13px;line-height:1.7;opacity:.85;margin:0 0 18px}
/* ---------- astrology mega dropdown + all-tools listing ---------- */
.astro-mega{min-width:940px}
.astro-mega .col a{font-size:13px}
.drop-cta{display:block;margin-top:14px;padding-top:12px;border-top:1px solid var(--copper-line)}
.drop-cta a{display:block;font-family:'Karla',sans-serif;font-size:13px;font-weight:700;color:var(--vermillion);text-decoration:none;padding:4px 0}
.drop-cta a.paid{color:var(--maroon-deep);font-weight:600;font-size:12px;line-height:1.5}
@media(max-width:1240px){.astro-mega{min-width:0;width:calc(100vw - 64px);max-width:940px}}
.nav-utils .icon-btn{position:relative}
.cart-count{position:absolute;top:-4px;right:-4px;min-width:16px;height:16px;
  padding:0 4px;border-radius:9px;background:var(--vermillion,#AD3323);color:#fff;
  font-family:'Karla',sans-serif;font-size:10px;font-weight:700;line-height:16px;
  text-align:center}
.signin-link{width:auto;padding:0 10px;font-family:'Karla',sans-serif;
  font-size:12.5px;font-weight:600;white-space:nowrap}
