/* Clear hierarchy in the navigation, including on narrow screens. */
.plan-links { min-width: 0; }
.plan-links > a { min-height: 48px; align-items: center; }
.plan-links > a > span { white-space: normal; overflow-wrap: normal; line-height: 1.2; }
.plan-more { display: grid; gap: 0; margin-top: 12px; border-top: 1px solid #667c8533; }
.plan-more details { border-bottom: 1px solid #667c8533; }
.plan-more summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 46px; padding: 10px 0; color: #465b65; font: 500 14px/1.35 'Manrope', Arial, sans-serif; }
.plan-more summary::-webkit-details-marker { display: none; }
.plan-more summary::after { content: '+'; font-size: 20px; font-weight: 400; }
.plan-more details[open] summary::after { content: '−'; }
.plan-more summary:focus-visible { outline: 2px solid #345e4a; outline-offset: 3px; }
.plan-more .plan-subnav { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 18px; padding: 0 0 10px; margin: 0; }
.plan-more .plan-subnav a { min-height: 42px; font-size: 13px !important; line-height: 1.4; padding: 8px 0 !important; }
@media (max-width: 600px) {
 .plan-links > a { gap: 12px; padding: 10px 0; }
 .plan-links > a > span { font-size: clamp(20px, 5.8vw, 25px); }
 .plan-more .plan-subnav { grid-template-columns: 1fr; }
 .plan-bottom { flex-wrap: wrap; gap: 8px 16px; }
}
