/* Final-pass refinements within the existing Pointfares visual system. */
.hero-copy .hero-price-note { color: var(--sky); font-size: 14px; line-height: 1.6; margin-top: 18px; }
.hero-copy .hero-fare-note { color: var(--sky); font-size: 12px; line-height: 1.55; max-width: 430px; margin: 8px 0 0; }
.value-proof { display: grid; grid-template-columns: 1fr 1fr; align-items: start; gap: 64px; margin-top: 64px; padding-top: 48px; border-top: 1px solid #bfc9bd; }
.time-promise h3 { font-size: clamp(30px, 3vw, 42px); line-height: 1.12; margin-bottom: 20px; }
.time-promise>p { font-size: 18px; line-height: 1.65; color: #526154; max-width: 46ch; }
.time-promise ul { list-style: none; padding: 0; margin: 28px 0 0; }
.time-promise li { padding: 16px 0; border-top: 1px solid #cbd2c7; }
.time-promise li strong { display: block; font-size: 18px; font-weight: 500; margin-bottom: 4px; }
.time-promise li span { display: block; font-size: 16px; line-height: 1.55; color: #526154; }
.cash-example { background: #e3eadb; padding: 32px; }
.cash-example h3 { font-size: 27px; line-height: 1.15; }
.cash-example-route { margin-top: 12px; font-size: 13px; color: #526154; }
.cash-example-costs { margin: 24px 0 0; }
.cash-example-costs>div { display: flex; align-items: baseline; justify-content: space-between; gap: 20px; padding-block: 16px; border-top: 1px solid #b9c6b2; }
.cash-example-costs dt { font-size: 15px; max-width: 15ch; }
.cash-example-costs dd { margin: 0; font-size: 21px; font-weight: 500; text-align: right; white-space: nowrap; }
.cash-example-costs dd span { display: block; font-size: 27px; }
.cash-example-fees { font-size: 13px; line-height: 1.5; color: #526154; text-align: right; }
.cash-example-result { display: flex; align-items: center; gap: 20px; padding-block: 24px; margin-top: 20px; border-block: 1px solid #b9c6b2; }
.cash-example-result strong { font-size: clamp(44px, 4.4vw, 62px); letter-spacing: -.04em; line-height: 1; font-weight: 500; font-variant-numeric: tabular-nums; }
.cash-example-result span { font-size: 15px; line-height: 1.45; }
.cash-example-note { margin-top: 18px; font-size: 13px; line-height: 1.6; color: #526154; }
.cash-example .text-button { margin-top: 16px; font-size: 15px; }
.wordmark { min-height: 44px; }
.sample-read-link { display: inline-flex; align-items: center; min-height: 44px; text-decoration: underline; text-underline-offset: 5px; font-size: 15px; }
.sample-read-link:hover { color: #725b17; }
.portal-summary { width: 51%; }
.portal-card .value-card-bottom { flex-direction: column; align-items: flex-start; gap: 7px; margin-top: 16px; }
.portal-card .value-card-bottom>p { text-align: left; }
.portal-card .value-bar { margin-bottom: 0; }
.how-section { padding-bottom: 88px; }
.process-stack { gap: 10svh; }
.how-intro>p.process-example-note { margin-top: 24px; padding-top: 16px; }
.sample-preview-copy>p { margin-top: 22px; }
.plan-contents { margin-block: 24px; }
.plan-contents li { padding-block: 12px; }
.pricing-section { position: relative; z-index: 8; background: #f7f6f2; padding: 96px 0; }
.pricing-heading { display: grid; grid-template-columns: 1.1fr .9fr; align-items: end; gap: 64px; margin-bottom: 48px; }
.pricing-heading h2 { font-size: clamp(42px, 4.8vw, 64px); letter-spacing: -.04em; }
.pricing-heading>p { max-width: 400px; font-size: 19px; color: #526154; line-height: 1.6; }
.pricing-tiers { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0; border-block: 1px solid #bfc9bd; }
.pricing-tiers>div { padding: 28px 32px 32px; }
.pricing-tiers>div+div { border-left: 1px solid #bfc9bd; }
.pricing-tiers .pricing-business { background: #e3eadb; }
.pricing-tiers dt { font-size: 23px; font-weight: 500; }
.pricing-tiers dd { margin: 12px 0 0; font-variant-numeric: tabular-nums; }
.pricing-tiers strong { display: block; font-size: clamp(54px, 5.4vw, 72px); font-weight: 500; line-height: 1.1; letter-spacing: -.04em; }
.pricing-tiers dd>span { display: block; font-size: 15px; margin-top: 8px; color: #526154; }
.pricing-included { padding-block: 28px 32px; }
.service-pricing h3 { font-size: 20px; font-weight: 500; letter-spacing: -.02em; line-height: 1.35; }
.pricing-included ul { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; padding: 0; margin: 20px 0 0; list-style: none; font-size: 16px; color: #526154; }
.pricing-included li { padding-top: 12px; border-top: 1px solid #d7ded3; }
.pricing-terms { display: grid; grid-template-columns: .85fr 1.15fr; gap: 64px; padding-block: 28px; border-block: 1px solid #bfc9bd; }
.pricing-terms p { font-size: 14px; line-height: 1.65; color: #526154; max-width: 68ch; }
.pricing-terms p+p { margin-top: 12px; }
.pricing-next { display: grid; grid-template-columns: 1.15fr .85fr; align-items: start; gap: 40px; margin-top: 32px; }
.pricing-next>div { display: flex; align-items: center; flex-wrap: wrap; gap: 16px 28px; }
.pricing-next .text-button { min-height: 44px; font-size: 15px; }
.pricing-support-note { font-size: 12px; line-height: 1.65; color: #526154; }
.pricing-support-note strong { font-weight: 500; }
.trip-pricing-link { margin-top: 28px; min-height: 44px; font-size: 16px; }
html:not([data-motion='full']) .portal-summary { width: 100%; }
@media (max-width: 1000px) and (min-width: 601px) {
  .portal-summary { width: 45%; }
  .portal-card .value-amount { font-size: clamp(38px, 5.5vw, 60px); }
  .portal-summary .value-card-top { font-size: 14px; }
}
@media (max-width: 600px) {
  /* The bottom of the portal sheet may overlap; its facts must not. */
  .portal-summary { width: 100%; padding-bottom: 18px; }
  html[data-motion='full'] .value-panels { grid-template-columns: 1fr; }
  html[data-motion='full'] .portal-card { grid-area: 1 / 1; }
  html[data-motion='full'] .award-card { grid-area: 2 / 1; margin-top: -16px; }
  .portal-card .value-card-bottom { flex-direction: row; align-items: center; gap: 12px; }
  .portal-card .value-card-bottom>p { max-width: 160px; }
  .portal-card .value-bar { display: none; }
  .how-section { padding-bottom: 64px; }
  .process-stack { gap: 8svh; }
  .hero-copy .hero-price-note { font-size: 13px; }
}
@media (max-width: 850px) {
  .value-proof { gap: 32px; }
  .cash-example { padding: 24px; }
  .cash-example-costs>div { flex-direction: column; gap: 8px; }
  .cash-example-costs dt { max-width: none; }
  .cash-example-costs dd, .cash-example-fees { text-align: left; }
  .cash-example-result { flex-direction: column; align-items: start; gap: 12px; }
  .pricing-heading { gap: 32px; }
  .pricing-heading>p { font-size: 17px; }
  .pricing-tiers>div { padding-inline: 24px; }
  .pricing-tiers dt { font-size: 20px; }
  .pricing-terms { gap: 32px; }
  .pricing-next { grid-template-columns: 1fr; gap: 24px; }
  .pricing-support-note { max-width: 65ch; }
}
@media (max-width: 600px) {
  .value-proof { grid-template-columns: 1fr; gap: 32px; margin-top: 40px; padding-top: 32px; }
  .time-promise>p { font-size: 17px; }
  .cash-example-result { flex-direction: row; align-items: center; gap: 16px; }
  .cash-example-result span { font-size: 13px; }
  .pricing-section { padding-block: 64px; }
  .pricing-heading { grid-template-columns: 1fr; gap: 20px; margin-bottom: 32px; }
  .pricing-heading h2 { font-size: 44px; }
  .pricing-tiers { grid-template-columns: 1fr; }
  .pricing-tiers>div { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 24px 20px; }
  .pricing-tiers>div+div { border-left: 0; border-top: 1px solid #bfc9bd; }
  .pricing-tiers dd { margin: 0; text-align: right; }
  .pricing-tiers strong { font-size: 48px; }
  .pricing-tiers dd>span { font-size: 13px; margin-top: 4px; }
  .pricing-included { padding-block: 28px; }
  .pricing-included ul { grid-template-columns: 1fr; gap: 12px; margin-top: 20px; }
  .pricing-terms { grid-template-columns: 1fr; gap: 16px; padding-block: 24px; }
  .pricing-next>div { align-items: stretch; flex-direction: column; }
  .pricing-next .button { font-size: 16px; gap: 16px; }
  .pricing-next .text-button { align-self: start; }
}
