.pr-plans { max-width: var(--pr-content); margin: 0 auto; padding: var(--pr-band) var(--pr-gutter) 0; }
.pr-plans__sheet { display: grid; gap: 1.25rem; }
.pr-plan { position: relative; display: grid; grid-template-columns: minmax(0, 1fr); gap: .75rem 1rem; padding: clamp(1.5rem, 3vw, 2.25rem); border: 2px solid var(--pr-joint); background: linear-gradient(var(--pr-asphalt), var(--pr-asphalt)) 0 0 / 100% 6px no-repeat, var(--pr-white); }
.pr-plan::before, .pr-plan::after { content: ""; position: absolute; top: .9rem; width: .6rem; height: .6rem; border: 2px solid var(--pr-joint); border-radius: 50%; }
.pr-plan::before { left: .9rem; }
.pr-plan::after { right: .9rem; }
.pr-plan__who, .pr-plan__action, .pr-plan__items { grid-column: 1 / -1; }
.pr-plan--featured { border-color: var(--pr-asphalt); background: linear-gradient(var(--pr-tip-yellow), var(--pr-tip-yellow)) 0 0 / 100% 6px no-repeat, var(--pr-white); box-shadow: 8px 8px 0 var(--pr-asphalt); }
.pr-plan__name { margin: 0 0 .25rem; font-family: var(--pr-display); font-size: clamp(2rem, 1.5rem + 1.5vw, 2.75rem); font-weight: 800; letter-spacing: .03em; line-height: 1; text-transform: uppercase; }
.pr-plan__pitch { margin: 0; max-width: 28rem; color: var(--pr-ink-muted); }
.pr-plan__crews, .pr-plan__price { display: flex; align-items: baseline; gap: .45rem; margin: 0; color: var(--pr-ink-muted); font-size: .8rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; flex-wrap: wrap; }
.pr-plan__count, .pr-plan__amount { color: var(--pr-asphalt); font-family: var(--pr-display); font-size: clamp(2rem, 1.5rem + 2vw, 3.5rem); font-weight: 800; letter-spacing: 0; line-height: 1; font-variant-numeric: tabular-nums; }
.pr-plan__count { font-size: clamp(1.5rem, 1.5vw, 2rem); }
.pr-plan__action { justify-self: start; padding: .8rem 1.25rem .7rem; border: 2px solid var(--pr-asphalt); background: var(--pr-asphalt); color: var(--pr-on-dark); font-weight: 800; text-decoration: none; white-space: nowrap; }
.pr-plan__action:hover { background: var(--pr-tip-yellow); color: var(--pr-asphalt); }
.pr-plan--featured .pr-plan__action { background: var(--pr-tip-yellow); color: var(--pr-asphalt); }
.pr-plan--featured .pr-plan__action:hover { background: var(--pr-asphalt); color: var(--pr-tip-yellow); }
.pr-plan__items { display: grid; gap: .25rem 1.5rem; margin: .5rem 0 0; padding: .75rem 0 0; border-top: 1px dashed var(--pr-joint); list-style: none; font-size: var(--pr-size-small); }
.pr-plan__items li { display: flex; align-items: center; gap: .5rem; padding: .25rem 0; }
.pr-plan__items li.pr-soon { flex-wrap: nowrap; padding: .25rem .6rem; border-width: 1px; }
.pr-plan__items .pr-glyph { color: var(--pr-tip-green); }
.pr-plan__items .pr-soon .pr-glyph { color: var(--pr-asphalt); }

.pr-start { position: relative; display: grid; gap: 2rem; margin-top: var(--pr-band); padding: clamp(3rem, 7vw, 6rem) var(--pr-inset); overflow: hidden; background: var(--pr-tip-yellow); color: var(--pr-asphalt); }
.pr-start__fans { width: min(100%, 34rem); height: auto; overflow: visible; }
.pr-fan { stroke: var(--pr-asphalt); stroke-width: .5; stroke-linejoin: round; }
.pr-fan--soap { fill: var(--pr-asphalt); }
.pr-fan--white { fill: var(--pr-white); }
.pr-fan--green { fill: var(--pr-tip-green); }
.pr-fan--yellow { fill: var(--pr-tip-yellow); }
.pr-fan--red { fill: var(--pr-tip-red); }
.pr-fan__nozzle { fill: var(--pr-asphalt); }
.pr-start h2 { max-width: 12ch; font-size: var(--pr-size-hero); line-height: .9; }
.pr-start p { max-width: 34rem; font-size: var(--pr-size-lede); }
.pr-start__actions { display: flex; flex-wrap: wrap; gap: .75rem; margin: .75rem 0 0; }

.pr-pricing-hero { display: grid; gap: 2rem; padding: clamp(2.5rem, 5vw, 4.5rem) var(--pr-inset) 0; }
.pr-pricing-hero__copy { display: grid; gap: 1rem; align-content: end; }
.pr-pricing-hero h1 { max-width: 11ch; margin: 0 0 .2em; font-size: var(--pr-size-hero); line-height: .9; }
.pr-pricing-hero__copy p { max-width: 34rem; margin: 0; color: var(--pr-ink-muted); font-size: var(--pr-size-lede); line-height: 1.55; }
.pr-pricing-hero__art { display: block; margin: 0 calc(-1 * var(--pr-inset)); }
.pr-pricing-hero__art img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; object-position: 50% 70%; }

.pr-fineprint { max-width: var(--pr-content); margin: 0 auto; padding: var(--pr-band) var(--pr-gutter) 0; }
.pr-fineprint h2 { padding-top: 1.25rem; border-top: var(--pr-rule); }
.pr-fineprint__list { display: grid; margin: 0 0 2rem; border-bottom: var(--pr-rule); }
.pr-fineprint__item { padding: 1.5rem 0; border-top: 1px solid var(--pr-joint); }
.pr-fineprint__item dt { display: flex; align-items: center; gap: .6rem; margin-bottom: .5rem; font-size: 1.125rem; font-weight: 800; }
.pr-fineprint__item dd { margin: 0; color: var(--pr-ink-muted); }

@media (min-width: 52rem) {
  .pr-plan { grid-template-columns: minmax(0, 2fr) minmax(7rem, .8fr) minmax(8rem, 1fr) auto; align-items: center; }
  .pr-plan__who, .pr-plan__action { grid-column: auto; }
  .pr-plan__items { grid-column: 1 / -1; display: flex; flex-wrap: wrap; }
  .pr-start { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); align-items: center; }
  .pr-pricing-hero { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); }
  .pr-pricing-hero__art { order: 2; margin: 0 calc(-1 * var(--pr-inset)) 0 0; }
  .pr-fineprint__list { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 3rem; }
}
