:root { --section-heading: clamp(2.5rem, 4.2vw, 4rem); }
.why h2, .lead-demo h2, .pr-title, .faq h2 { font-size: var(--section-heading); font-weight: 600; line-height: 1.08; letter-spacing: -.04em; }
.faq h2 br { display: none; }
.faq h2 { max-width: 15ch; }
.faq__inner { padding-top: 88px; padding-bottom: 88px; }
.pr-head { margin-bottom: 32px; }
.pr-title { max-width: 17ch; }
.pr-tier { padding: 30px; }
.pr-top { margin-bottom: 20px; }
.pr-name { font-size: 1.5rem; }
.pr-purpose { color: #eef1e8; font-size: 1.0625rem; font-weight: 600; line-height: 1.5; margin-bottom: 10px !important; }
.pr-line { min-height: 3.3em; max-width: none; color: #b6b8ae; }
.pr-prices { display: flex; flex-direction: column; gap: 18px; padding: 24px 0; }
.pr-cell:first-child { border: 0; padding: 0; }
.pr-cell:nth-child(2) { order: -1; }
.pr-cell:nth-child(2) .pr-num, .pr-prices.single .pr-num { font-size: clamp(2.2rem, 3.5vw, 3.2rem); font-weight: 600; letter-spacing: -.045em; }
.pr-cell:first-child .pr-num { font-size: 1.25rem; font-weight: 500; letter-spacing: -.02em; }
.pr-prices.single .pr-cell .pr-num { font-size: clamp(2.2rem, 3.5vw, 3.2rem); }
.pr-cap { color: #b6b8ae; font-size: .75rem; line-height: 1.5; }
.pr-num sub { font-size: .875rem; }
.pr-feats { margin-top: 24px; margin-bottom: 30px; gap: 12px; }
.pr-feat { color: #c4c6bf; }
.pr-foot { max-width: 72ch; margin-left: 0; }
.pr-tier.featured::before { animation-duration: 9s; }
.pr-badge::after { animation: none; display: none; }
.pr:not(.motion-visible) .pr-tier.featured::before { animation-play-state: paused; }
.booking--unified { padding-top: 88px; border-top: 1px solid rgba(246,246,242,.12); }
.booking--unified .booking__heading { max-width: 920px; margin-bottom: 40px; }
.booking--unified h2 { font-size: clamp(2.6rem, 4.8vw, 4.5rem); font-weight: 600; line-height: 1.1; }
.booking--unified h2 em { color: #7ee04a; font-family: "Instrument Serif", Georgia, serif; font-weight: 400; }
.booking--unified .booking__heading > p:last-child { max-width: 52ch; margin-left: auto; margin-right: auto; }
.booking--unified .call-preview { max-width: none; margin: 28px 0 0; padding: 0; }
.call-preview summary { cursor: pointer; list-style: none; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 24px 28px; min-height: 64px; font-size: 1rem; font-weight: 500; }
.call-preview summary::-webkit-details-marker { display: none; }
.call-preview summary > span { color: #7ee04a; font-size: 1.5rem; transition: transform .25s ease; }
.call-preview[open] summary > span { transform: rotate(45deg); }
.call-preview ol { padding: 8px 28px 0; }
.call-preview__note { margin: 24px 28px 28px; }
.pf-phone { height: 760px; aspect-ratio: auto; }
.pf-body b { font-size: 14px; }
.pf-body span, .pf-body i { font-size: 13px; line-height: 1.5; }
.pf-note { padding: 9px; }
@media (min-width: 901px) and (max-width: 1180px) {
  .site-nav { gap: 14px; font-size: .8rem; }
  .nav-cta { padding: 14px 16px; }
  .nav-cta span { margin-left: 6px; }
}
@media (max-width: 900px) {
  .pr-line { min-height: 0; }
  .booking--unified { padding-top: 72px; }
}
@media (max-width: 620px) {
  :root { --section-heading: clamp(2.25rem, 9.5vw, 3rem); }
  .pr-tier { padding: 26px 22px; }
  .pr-cell:nth-child(2) .pr-num, .pr-prices.single .pr-cell .pr-num { font-size: 2.75rem; }
  .faq__inner { padding-top: 64px; padding-bottom: 64px; }
  .booking--unified { padding-top: 64px; }
  .booking--unified h2 { font-size: 2.5rem; }
  .booking--unified h2 br { display: none; }
  .call-preview summary { padding: 20px 18px; }
  .call-preview ol { padding: 4px 18px 0; }
  .call-preview__note { margin: 24px 18px; }
  .pf-phone { height: 800px; }
  .pf-when { max-width: 42px; }
}

.pf-phone.is-offscreen *, .pf-phone.is-offscreen::before, .pf-phone.is-offscreen *::after { animation-play-state: paused !important; }
