/* Rates page (Figma 119:9). Owner: Rates agent. Tokens from site.css; page-local sizes below. */
.rates {
  --rates-inset: 0.0625rem;          /* rows start at x316 inside the 315 container */
  --rates-col-meta: 25.25rem;        /* 404: right column starts at x720 */
  --rates-row-y: 2.71875rem;
  --rates-price-gap: 0.5rem;
  --fs-duration: 1rem;
  --lh-price: 2.25rem;               /* 36 */
  --lh-text: 2rem;                   /* 32 */
  padding-block: 4.90625rem 6.34375rem;
}
.rates--extended { --rates-row-y: 3.21875rem; padding-block: 7.4375rem 3.75rem; }

.rate-list { list-style: none; margin: 0; padding: 0; }
.rate {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: var(--gap-grid);
  padding-block: var(--rates-row-y);
  padding-inline-start: var(--rates-inset);
}
.rate__meta { flex: 0 0 auto; width: calc(var(--rates-col-meta) - var(--gap-grid)); padding-top: 0.375rem; }
.rate__body { flex: 1 1 0%; min-width: 0; }

.rate__duration { margin: 0 0 var(--space-2); font-size: var(--fs-duration); line-height: 1.75rem; font-weight: 400; color: var(--c-accent-ink); }
.rate__prices { margin: 0; }
.rate__price { display: flex; font-family: var(--ff-serif); font-weight: 500; font-size: var(--fs-h3); line-height: var(--lh-price); letter-spacing: var(--ls-h3); text-transform: uppercase; color: var(--c-black); }
.rate__price dt { margin-inline-end: calc(var(--rates-price-gap) * 2); }
.rate__price dd { margin: 0; }

.rate__title { margin: 0; }
.rate__quote { margin: var(--space-1) 0 0; font-style: italic; }
.rate__text { margin: var(--space-4) 0 0; line-height: var(--lh-text); }
.rate__quote + .rate__text { margin-top: var(--space-5); }

.rates .divider-ornament { margin-bottom: 3.125rem; }
.rates .divider-ornament::before, .rates .divider-ornament::after { max-width: 13.75rem; }
.rates__note { margin: 0; padding-inline-start: var(--rates-col-meta); font-size: var(--fs-caps); line-height: 1.75; color: var(--c-body); }

.cta-band--short .watermark { top: 50%; transform: translate(-50%, -78%); }

@media (max-width: 1280px) {
  .rates { --rates-col-meta: 20rem; --rates-row-y: 2.25rem; padding-block: 3.5rem 4rem; }
  .rates--extended { padding-block: 4.5rem 3.5rem; }
  .rates .divider-ornament { margin-bottom: 1.5rem; }
}
@media (max-width: 991px) {
  .rates { --rates-col-meta: 15rem; --rates-row-y: 1.75rem; }
}
@media (max-width: 767px) {
  .rates { --rates-row-y: 1.5rem; --lh-text: 1.75rem; padding-block: 2.5rem 3rem; }
  .rates--extended { padding-block: 3rem 2.5rem; }
  .rate { flex-direction: column; gap: var(--space-4); padding-inline-start: 0; border-bottom: 1px solid var(--c-line-soft); }
  .rate:last-child { border-bottom: 0; }
  .rate__meta { width: 100%; padding-top: 0; }
  .rate__prices { display: flex; flex-wrap: wrap; column-gap: var(--space-6); }
  .rates__note { padding-inline-start: 0; }
}
