/* Compact plan navigation added for the four-page A1 release. */
.plans-nav > summary { cursor: pointer; list-style: none; }
.plans-nav > summary::-webkit-details-marker { display: none; }
.plans-nav > summary::after { content: "+"; margin-left: .45rem; }
.plans-nav[open] > summary::after { content: "−"; }
.desktop-nav .plans-nav { position: relative; }
.desktop-nav .plans-nav > summary { display: flex; align-items: center; white-space: nowrap; font-family: var(--font-display); font-size: 1.375rem; font-weight: 600; }
.desktop-nav .plans-nav-menu { position: absolute; z-index: var(--z-menu); top: calc(100% + .75rem); left: 50%; min-width: 13rem; padding: var(--space-xs); transform: translateX(-50%); border: 1px solid var(--color-rule); background: var(--color-paper); color: var(--color-ink); box-shadow: 0 .5rem 1.5rem rgb(15 31 55 / .16); }
.desktop-nav .plans-nav-menu a { display: block; padding: .65rem .75rem; white-space: normal; }
.mobile-nav .plans-nav { margin-block: .15rem; }
.mobile-nav .plans-nav > summary { justify-content: flex-start; border: 0; padding: .65rem .75rem; font-size: var(--text-base); font-weight: 600; }
.mobile-nav .plans-nav[open] > summary { background: var(--color-paper-2); }
.mobile-nav .plans-nav-menu a { padding-left: 1.25rem; }
.footer-plan-links { display: flex; flex-wrap: wrap; gap: .65rem 1.5rem; margin-top: var(--space-lg); padding-block: var(--space-md); border-block: 1px solid var(--color-dark-rule); }
.footer-plan-links a { color: var(--color-light); font-size: var(--text-sm); font-weight: 600; }
