.price-period{margin-bottom:1.5rem;color:var(--pewter);font-size:var(--text-label);letter-spacing:.14em;text-transform:uppercase}
.plan-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.75rem,1.5vw,1.25rem)}
.plan{display:flex;flex-direction:column;padding:clamp(1.5rem,2vw,2rem);border-radius:20px;background:linear-gradient(170deg,#2a2b30,#1f2024);box-shadow:inset 0 1px 0 #ffffff14,0 30px 60px -40px #000;transition:box-shadow var(--duration-normal)}
.plan:has(.select-plan[aria-pressed=true]){box-shadow:inset 0 0 0 1px #ffffff40,0 30px 60px -40px #000}
@media (hover:hover) and (prefers-reduced-motion:no-preference){.plan{transition:transform var(--duration-normal) var(--ease),box-shadow var(--duration-normal)}.plan:hover{transform:translateY(-4px)}}
.plan-featured{background:linear-gradient(170deg,#3a2f2e,#231f20);box-shadow:inset 0 0 0 1px #ed978766,0 40px 80px -40px #ed978744}
.plan-featured:has(.select-plan[aria-pressed=true]){box-shadow:inset 0 0 0 1px #ffffff40,0 40px 80px -40px #ed978744}
.plan h3{font-size:1.125rem;font-weight:600}
.plan-description{margin-top:.4rem;color:var(--mist);font-size:var(--text-small)}
.price{display:flex;align-items:baseline;gap:.4rem;margin-top:1.75rem}
.price strong{font-size:clamp(2.5rem,1.5rem + 2.5vw,3.5rem);font-weight:300;letter-spacing:-.04em;line-height:1}
.price span{color:var(--pewter);font-size:var(--text-small)}
.plan-details{display:grid;gap:.6rem;margin:1.75rem 0;color:var(--mist);font-size:var(--text-small)}
.plan-details strong{color:var(--silver);font-weight:600}
.select-plan{min-height:48px;margin-top:auto;border:0;border-radius:var(--radius-control);background:#ffffff12;color:var(--silver);font-size:var(--text-small);font-weight:500;transition:background var(--duration-fast),box-shadow var(--duration-fast)}
.select-plan:hover{background:#ffffff21}
.select-plan[aria-pressed=true]{box-shadow:inset 0 0 0 1px var(--silver)}
.plan-featured .select-plan{background:var(--ember);color:var(--ink)}
.plan-featured .select-plan:hover{background:#f3ab9e}
.plan-featured .select-plan[aria-pressed=true]{box-shadow:0 0 0 2px var(--silver)}
.enterprise{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-top:1.25rem;padding:1.25rem 0;border-block:1px solid var(--hairline)}
.enterprise h3{font-size:1.125rem;font-weight:600}
.enterprise p{color:var(--mist);font-size:var(--text-small)}
.enterprise-price{display:flex;align-items:center;gap:1rem}
.enterprise-price strong{font-size:1.25rem;font-weight:400}
.planner-toggle{display:flex;align-items:center;gap:.6rem;min-height:48px;margin:2rem auto 0;padding:0 1.4rem;border:0;border-radius:var(--radius-control);background:transparent;color:var(--silver);box-shadow:inset 0 0 0 1px var(--edge);font-size:var(--text-small)}
.planner-toggle[hidden]{display:none}
.planner-toggle:hover{background:#ffffff0f}
.icon-chevron{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:transform var(--duration-normal) var(--ease)}
.planner-toggle[aria-expanded=true] .icon-chevron{transform:rotate(180deg)}

.capacity{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(2rem,5vw,5rem);margin-top:3rem}
.capacity[hidden]{display:none}
.capacity h3{font-size:var(--text-h3);font-weight:300;letter-spacing:-.03em}
.capacity-copy>p{margin-top:.75rem;color:var(--mist)}
.capacity-values{display:grid;margin:1.5rem 0}
.capacity-values div{display:flex;justify-content:space-between;gap:1rem;padding:.75rem 0;border-bottom:1px solid var(--hairline)}
.capacity-values dt{color:var(--pewter)}
.capacity-instrument{padding:clamp(1.25rem,3vw,2rem);border-radius:20px;background:#16171a;box-shadow:inset 0 1px 0 #ffffff12}
.capacity-instrument-head{display:flex;justify-content:space-between;gap:1rem;color:var(--pewter);font-size:var(--text-small)}
.capacity-instrument h4{color:var(--silver);font-size:var(--text-small);font-weight:500}
.capacity-equation{display:flex;align-items:center;justify-content:space-around;gap:1rem;margin:2rem 0}
.capacity-number{font-size:clamp(3rem,2rem + 3vw,4.5rem);font-weight:300;letter-spacing:-.04em;line-height:1}
.capacity-number small{margin-left:.15em;color:var(--pewter);font-size:.4em}
.capacity-equation p{margin-top:.4rem;color:var(--pewter);font-size:var(--text-small)}
.capacity-equation-symbol::before{content:"×";color:var(--ember);font-size:1.5rem}
.capacity-slider-head,.capacity-range-labels,.capacity-calculation{display:flex;justify-content:space-between;gap:1rem;color:var(--pewter);font-size:var(--text-small)}
.capacity-range{width:100%;height:44px;margin:.5rem 0;background:transparent;accent-color:var(--ember)}
.capacity-calculation{margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--hairline)}
.capacity-calculation strong{color:var(--silver);font-family:var(--font-mono);font-weight:400}
.capacity-explanation{margin-top:.75rem;color:var(--mist);font-size:var(--text-small)}

/* 4 cards wrap descriptions unevenly at ~1024, so go 2-up below 1100px. */
@media (max-width:1100px){.plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:899.98px){.capacity{grid-template-columns:1fr}}
@media (max-width:600px){.plan-grid{grid-template-columns:1fr}.capacity .segmented{display:grid;grid-template-columns:repeat(2,1fr);border-radius:24px;width:100%}}
