
:root { --price-accent: #8b4b18; }
.budget em { color: var(--price-accent); }
.price-cards { min-width: 0; }
.price-cards article, .price-cards strong, .price-note, .included div { min-width: 0; overflow-wrap: normal; }
.price-cards strong { display: block; white-space: nowrap; font-variant-numeric: lining-nums tabular-nums; }
.price-cards { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 1rem; align-content: start; background: transparent; }
.price-cards article { padding: 1.25rem; background: #f8f5ee; min-height: 0; }
.price-cards article:first-child { grid-column: 1 / -1; }
.price-cards article span { display: block; font-size: .68rem; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; }
.price-cards strong { font: 500 clamp(2rem,3.2vw,3.5rem)/1.1 "Cormorant Garamond",Georgia,serif; margin: .6rem 0; }
.price-cards article p, .price-note { font-size: .82rem; line-height: 1.55; }
.price-cards .button { justify-self: start; }
.price-note { grid-column: 1 / -1; }
.legal { max-width: 900px; min-width: 0; overflow-wrap: anywhere; }
.legal h1 { font-size: clamp(3.1rem,9vw,6.7rem); line-height: 1; }
.legal h2 { font-size: clamp(2rem,6vw,2.8rem); line-height: 1.08; }
.legal section { min-width: 0; }
[id] { scroll-margin-top: 2rem; }
.field-hint { display: block; font-size: .7rem; font-weight: 400; margin-top: .25rem; }
.skip-link { top: 1rem; transform: translateY(-200vh); }
.skip-link:focus-visible { transform: none; }
noscript .button { display: inline-block; text-decoration: none; }
@media(max-width:900px) and (min-width:761px) {
  .budget { display: block; }
  .budget-intro { margin-bottom: 3rem; }
}
@media(max-width:760px) {
  .legal.section { padding-inline: max(1.25rem,env(safe-area-inset-left)) max(1.25rem,env(safe-area-inset-right)); }
  .legal h1 { font-size: clamp(3rem,12vw,5rem); }
  .price-cards { grid-template-columns: 1fr; }
  .price-cards article:first-child { grid-column: auto; }
  .price-note { grid-column: auto; }
  .price-cards strong { font-size: clamp(2.5rem,11vw,3.3rem); }
  .final-cta { padding-bottom: calc(7rem + env(safe-area-inset-bottom)); }
  .hero-actions noscript .button { display: inline-block; }
  .price-cards > .button { display: none; }
}
@media(max-width:390px) { .legal h1 { font-size: clamp(2.75rem,11vw,4rem); } }
