/* Use the same font families as the rest of the marketing site. */
.pricing-page { font-family: var(--font-body, 'Inter', sans-serif); }
.pricing-intro h1 {
    font-family: var(--font-display, 'Manrope', sans-serif);
    font-weight: 600;
    letter-spacing: -.025em;
    line-height: 1.15;
}
.pricing-intro > p:last-child {
    font-family: var(--font-body, 'Inter', sans-serif);
    font-size: 1.125rem;
    font-weight: 400;
    max-width: 680px;
    margin-inline: auto;
}
.pricing-eyebrow { font-family: var(--font-mono, 'JetBrains Mono', monospace); }
.pricing-table h2 { font-family: var(--font-display, 'Manrope', sans-serif); font-weight: 600; }
.pricing-accordion { display: none; }

@media (max-width: 1023px), (orientation: portrait) and (max-width: 1200px) {
    .pricing-table-scroll, .pricing-scroll-hint { display: none; }
    .pricing-accordion { display: grid; gap: 1rem; }
    .pricing-mobile-plan { background: #0e1728; border: 1px solid #26354b; border-radius: 1rem; overflow: hidden; }
    .pricing-mobile-plan.pricing-complete { background: #112c31; border-color: #38bfa7; }
    .pricing-mobile-plan summary { padding: 1.25rem; cursor: pointer; position: relative; list-style: none; }
    .pricing-mobile-plan summary::-webkit-details-marker { display: none; }
    .pricing-mobile-plan summary::after { content: '+'; position: absolute; right: 1.25rem; top: 1.25rem; font-size: 1.5rem; color: #5fe0d2; }
    .pricing-mobile-plan[open] summary::after { content: '−'; }
    .pricing-mobile-plan summary:focus-visible { outline: 3px solid #5fe0d2; outline-offset: -4px; }
    .pricing-mobile-name { display: block; padding-right: 2rem; font-family: var(--font-display, 'Manrope', sans-serif); font-size: 1.4rem; font-weight: 600; }
    .pricing-mobile-plan .pricing-price { display: block; margin: .65rem 0 .4rem; font-size: 1.8rem; }
    .pricing-mobile-plan .pricing-billing { display: block; min-height: 0; }
    .pricing-mobile-body { padding: 0 1.25rem 1.25rem; }
    .pricing-mobile-inherits { color: #5fe0d2; line-height: 1.6; margin-bottom: 1rem; }
    .pricing-mobile-body ul { list-style: none; padding: 0; margin: 0 0 1.25rem; }
    .pricing-mobile-body li { display: flex; gap: 1rem; align-items: baseline; justify-content: space-between; border-bottom: 1px solid #26354b; padding: .75rem 0; font-size: .875rem; line-height: 1.5; }
    .pricing-mobile-body li > span { min-width: 0; color: #b4c2d7; }
    .pricing-mobile-body li > strong { flex-shrink: 0; max-width: 45%; text-align: right; font-weight: 500; overflow-wrap: anywhere; }
}
