/* Pricing page — a field guide for choosing the right route. */
.pricing-page {
  --pr-north: #13261f;
  --pr-deep: #0b1d17;
  --pr-moss: #516b46;
  --pr-sage: #a4b49a;
  --pr-cream: #f4f1e6;
  --pr-beige: #e7dcc3;
  --pr-orange: #e4572e;
  --pr-ink-soft: #536159;
  --pr-line: rgba(19, 38, 31, .18);
  --pr-shadow: 0 22px 48px rgba(19, 38, 31, .14);
  --pr-rail: var(--nn-site-rail, 92rem);
  color: var(--pr-north);
  background: var(--pr-cream);
  font-family: var(--wp--preset--font-family--inter, Inter, sans-serif);
  font-size: 16px;
  overflow: clip;
}
.pricing-page * { box-sizing: border-box; }
.pricing-page :where(h1,h2,h3,p,ul,dl,dd) { margin: 0; }
.pricing-page :where(h1,h2,h3) { font-family: var(--wp--preset--font-family--arvo, "VS Sunday Sauce", Georgia, serif); font-weight: 400; text-wrap: balance; }
.pricing-page a { color: inherit; }
.pricing-page img { display: block; max-width: 100%; }
.pricing-page :where(a,summary) { touch-action: manipulation; }
.pricing-page [id] { scroll-margin-top: 7rem; }
.pr-band { position: relative; padding: clamp(4.5rem, 6vw, 6.5rem) 0; isolation: isolate; }
.pr-band + .pr-band { border-top: 1px solid rgba(19,38,31,.12); }
.pr-rail { position: relative; z-index: 2; width: var(--nn-site-rail-width, min(calc(100% - clamp(2.25rem, 5vw, 6rem)), var(--pr-rail))); max-width: var(--pr-rail); margin-inline: auto; }
.pr-eyebrow,.pr-kicker,.pr-list-label { color: var(--pr-moss); font-size: .76rem; font-weight: 800; letter-spacing: .11em; line-height: 1.3; text-transform: uppercase; }
.pr-eyebrow { display: flex; align-items: center; gap: .6rem; }
.pr-eyebrow::before { width: .62rem; height: .62rem; flex: none; border-radius: 50%; background: var(--pr-orange); content: ""; }
.pr-section-intro { max-width: 50rem; margin-bottom: clamp(2.3rem, 4vw, 4rem); }
.pr-section-intro h2 { max-width: 18ch; margin-top: .75rem; font-size: clamp(2.6rem, 4.65vw, 4.9rem); letter-spacing: -.038em; line-height: .95; }
.pr-section-intro > p:last-child,.pr-section-intro > div + p { max-width: 45rem; margin-top: 1.25rem; color: var(--pr-ink-soft); font-size: 1.05rem; line-height: 1.68; }
.pr-section-intro--split { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(23rem, .65fr); gap: 2rem clamp(3rem, 7vw, 7.5rem); align-items: end; max-width: none; }
.pr-section-intro--split > p { margin-bottom: .35rem; padding-left: 1.25rem; border-left: 3px solid var(--pr-orange); }
.pr-section-intro--light :where(h2,p) { color: var(--pr-cream) !important; }
.pr-section-intro--light .pr-eyebrow { color: var(--pr-sage); }
.pr-button { display: inline-flex; min-height: 3.3rem; align-items: center; justify-content: center; gap: .7rem; padding: .9rem 1.25rem; border: 1px solid var(--pr-orange); border-radius: 4px; background: var(--pr-orange); color: var(--pr-cream) !important; font-weight: 800; line-height: 1.1; text-align: center; text-decoration: none; box-shadow: 0 12px 26px rgba(228,87,46,.2); transition: transform 180ms ease, background 180ms ease, border-color 180ms ease, box-shadow 180ms ease; }
.pr-button:hover { transform: translateY(-2px); border-color: var(--pr-north); background: var(--pr-north); box-shadow: 0 16px 30px rgba(19,38,31,.24); }
.pr-button--dark { border-color: var(--pr-north); background: var(--pr-north); box-shadow: none; }
.pr-button--dark:hover { border-color: var(--pr-orange); background: var(--pr-orange); }
.pr-button:focus-visible,.pricing-page a:focus-visible,.pricing-page summary:focus-visible { outline: 3px solid var(--pr-orange); outline-offset: 4px; }
.pr-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 1.5rem; }
.pr-text-link { display: inline-flex; min-height: 2.75rem; align-items: center; gap: .55rem; color: var(--pr-cream); font-weight: 800; text-underline-offset: .26rem; }
.pr-text-link:hover,.pr-route-choice a:hover,.pr-service-card > a:hover,.pr-terms > a:hover,.pr-care-reference > a:hover { color: var(--pr-orange); }

/* Hero */
.pr-hero { min-height: 46rem; padding-top: clamp(10rem, 13vw, 13rem); padding-bottom: clamp(5rem, 8vw, 8rem); color: var(--pr-cream); background: var(--pr-moss) url("../images/backgrounds/background-sage-green-new.png") center/cover no-repeat; }
.pr-hero__grid { display: grid; grid-template-columns: minmax(0, 1.16fr) minmax(22rem, .84fr); gap: clamp(3rem, 8vw, 9rem); align-items: center; }
.pr-hero__copy { max-width: 56rem; }
.pr-hero .pr-eyebrow { color: var(--pr-sage); }
.pr-hero h1 { max-width: 15ch; margin-top: .9rem; color: var(--pr-cream); font-size: clamp(3.25rem, 5.7vw, 6rem); letter-spacing: -.045em; line-height: .91; }
.pr-lede { max-width: 47rem; margin-top: 1.5rem !important; color: rgba(244,241,230,.84); font-size: clamp(1.05rem, 1.35vw, 1.22rem); line-height: 1.68; }
.pr-hero .pr-actions { margin-top: 1.8rem; }
.pr-hero__reassurance { max-width: 43rem; margin-top: 1.3rem !important; color: var(--pr-cream); font-weight: 700; line-height: 1.55; }
.pr-tax-note { margin-top: .45rem !important; color: var(--pr-sage); font-size: .83rem; line-height: 1.5; }
.pr-trailhead { position: relative; min-height: 29rem; padding: clamp(2rem, 3.6vw, 3.3rem); overflow: hidden; border: 1px solid rgba(244,241,230,.27); border-radius: 9px; background: rgba(244,241,230,.94) url("../images/patterns/topo-pattern-light-2.png") center/cover; color: var(--pr-north); box-shadow: 0 34px 70px rgba(5,22,16,.38); }
.pr-trailhead::before { position: absolute; inset: 0 auto 0 0; width: 4px; background: var(--pr-orange); content: ""; }
.pr-trailhead__route { position: absolute; inset: 0; width: 100%; height: 100%; opacity: .28; }
.pr-trailhead__route path { fill: none; stroke: var(--pr-moss); stroke-width: 3; stroke-dasharray: 7 8; }
.pr-trailhead__route circle { fill: var(--pr-cream); stroke: var(--pr-moss); stroke-width: 3; }
.pr-trailhead__route .pr-route-start,.pr-trailhead__route .pr-route-destination { fill: var(--pr-orange); stroke: var(--pr-north); }
.pr-trailhead > :not(svg) { position: relative; z-index: 1; }
.pr-trailhead__label { display: flex; align-items: center; justify-content: space-between; gap: 1rem; color: var(--pr-moss); font-size: .7rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.pr-trailhead__label span { padding: .48rem .65rem; background: var(--pr-orange); color: var(--pr-cream); }
.pr-trailhead__price { margin-top: 5rem !important; color: var(--pr-north); font-family: var(--wp--preset--font-family--arvo, Georgia,serif); font-size: clamp(5.5rem, 8vw, 8.5rem); letter-spacing: -.06em; line-height: .75; }
.pr-trailhead h2 { margin-top: 1.2rem; font-size: clamp(2rem, 3vw, 3.1rem); line-height: 1; }
.pr-trailhead > p:not(.pr-trailhead__price) { max-width: 28rem; margin-top: .8rem; color: var(--pr-ink-soft); line-height: 1.55; }
.pr-trailhead > a { display: inline-flex; min-height: 2.75rem; align-items: center; gap: .5rem; margin-top: 1.25rem; font-weight: 800; text-underline-offset: .24rem; }
.has-pricing-js .pr-trailhead__route path { stroke-dasharray: 1; stroke-dashoffset: 1; transition: stroke-dashoffset 1400ms cubic-bezier(.2,.7,.2,1) 180ms; }
.has-pricing-js .pr-trailhead__route circle { opacity: 0; transition: opacity 250ms ease; }
.has-pricing-js .pr-trailhead.is-route-active path { stroke-dashoffset: 0; }
.has-pricing-js .pr-trailhead.is-route-active circle { opacity: 1; }
.has-pricing-js .pr-trailhead.is-route-active .pr-route-start { transition-delay: 180ms; }.has-pricing-js .pr-trailhead.is-route-active .pr-route-waypoint--one { transition-delay: 550ms; }.has-pricing-js .pr-trailhead.is-route-active .pr-route-waypoint--two { transition-delay: 900ms; }.has-pricing-js .pr-trailhead.is-route-active .pr-route-destination { transition-delay: 1320ms; }

/* Purchase routes */
.pr-routes { background: var(--pr-beige) url("../images/backgrounds/background-earthy-route-desktop.png") center/cover; }
.pr-routes .pr-section-intro,.pr-routes .pr-section-intro h2,.pr-routes .pr-section-intro > p { width: 100%; max-width: none; }
.pr-route-choice { position: relative; display: grid; grid-template-columns: 1fr 1fr; gap: 1.25rem; }
.pr-route-choice::before { position: absolute; top: 2.1rem; right: calc(25% - .8rem); left: calc(25% - .8rem); height: 2px; background: var(--pr-moss); opacity: .4; content: ""; }
.pr-route-choice article { position: relative; min-height: 19rem; padding: 2.1rem 2.15rem 2rem 5.75rem; border: 1px solid var(--pr-line); border-radius: 8px; background: rgba(244,241,230,.94); box-shadow: 0 16px 36px rgba(19,38,31,.09); }
.pr-route-choice article:first-child { border-top: 4px solid var(--pr-moss); }
.pr-route-choice article:last-child { border-top: 4px solid var(--pr-orange); }
.pr-route-choice__marker { position: absolute; top: 1.45rem; left: 1.5rem; display: grid; width: 3rem; height: 3rem; place-items: center; border: 3px solid var(--pr-moss); border-radius: 50%; background: var(--pr-cream); color: var(--pr-north); font-weight: 800; }
.pr-route-choice article:last-child .pr-route-choice__marker { border-color: var(--pr-orange); background: var(--pr-orange); color: var(--pr-cream); }
.pr-route-choice h3 { margin-top: .65rem; font-size: clamp(2rem, 3vw, 3rem); line-height: 1; }
.pr-route-choice article > p:not(.pr-kicker) { max-width: 34rem; margin-top: 1rem; color: var(--pr-ink-soft); line-height: 1.67; }
.pr-route-choice a { display: inline-flex; min-height: 2.75rem; align-items: center; gap: .5rem; margin-top: 1.35rem; font-weight: 800; text-underline-offset: .25rem; }
.pr-route-note { max-width: 61rem; margin: 1.35rem auto 0 !important; padding: .95rem 1.2rem; border: 1px solid rgba(81,107,70,.2); background: rgba(244,241,230,.62); color: var(--pr-ink-soft); font-size: .9rem; line-height: 1.55; text-align: center; }

/* Website packages */
.pr-websites { background: var(--pr-cream) url("../images/backgrounds/background-cream-desktop.png") center/cover; }
.pr-websites .pr-section-intro--split { position: relative; grid-template-columns: minmax(0,1fr) minmax(22rem,28rem); column-gap: clamp(1rem,2vw,2rem); align-items: end; }
.pr-websites .pr-section-intro--split h2 { max-width: none; }
.pr-websites .pr-section-intro--split::after { display: none; }
.pr-package-journey { position: relative; }
.pr-package-route { color: var(--pr-moss); pointer-events: none; }
.pr-package-route svg { display: block; width: 100%; overflow: visible; }
.pr-package-route--desktop { height: 5.6rem; margin-bottom: -.35rem; padding-inline: 1rem; }
.pr-package-route--desktop svg { height: 100%; }
.pr-package-route--mobile { display: none; }
.pr-package-route__line { fill: none; stroke: currentColor; stroke-width: 2.6; vector-effect: non-scaling-stroke; }
.pr-package-route__marker--start { fill: var(--pr-orange); stroke: var(--pr-cream); stroke-width: 3; }
.pr-package-route__marker--middle { fill: var(--pr-cream); stroke: var(--pr-moss); stroke-width: 4; }
.pr-package-route__marker--pin { fill: var(--pr-cream); stroke: var(--pr-north); stroke-width: 2; }
.has-pricing-js .pr-package-route__line { stroke-dasharray: 1; stroke-dashoffset: 1; transition: stroke-dashoffset 1200ms cubic-bezier(.2,.7,.2,1); }
.has-pricing-js .pr-package-route__marker { opacity: 0; transition: opacity 180ms ease; }
.has-pricing-js .pr-package-route.is-route-active .pr-package-route__line { stroke-dashoffset: 0; }
.has-pricing-js .pr-package-route.is-route-active .pr-package-route__marker { opacity: 1; }
.has-pricing-js .pr-package-route.is-route-active .pr-package-route__marker--start { transition-delay: 80ms; }
.has-pricing-js .pr-package-route.is-route-active .pr-package-route__marker--middle { transition-delay: 570ms; }
.has-pricing-js .pr-package-route.is-route-active .pr-package-route__marker--pin { transition-delay: 1050ms; }
.pr-package-cards { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1.25rem; align-items: stretch; }
.pr-package-card { position: relative; display: flex; min-width: 0; flex-direction: column; padding: 1.65rem; border: 1px solid rgba(19,38,31,.22); border-top: 4px solid var(--pr-moss); border-radius: 8px; background: rgba(244,241,230,.94); box-shadow: 0 18px 40px rgba(19,38,31,.11); }
.pr-package-card--starter { border: 2px solid var(--pr-orange); border-top-width: 4px; box-shadow: 0 23px 46px rgba(19,38,31,.17); }
.pr-package-card--growth { background: rgba(220,228,213,.94); }
.pr-package-card--custom { background: rgba(244,241,230,.92) url("../images/patterns/map-grid-overlay.png") center/40rem auto; }
.pr-package-card__badge { position: absolute; top: 1rem; right: 1rem; max-width: 8.8rem; padding: .48rem .62rem; background: var(--pr-orange); color: var(--pr-cream); font-size: .64rem; font-weight: 800; letter-spacing: .09em; line-height: 1.25; text-align: center; text-transform: uppercase; }
.pr-package-card__stage { padding-right: 7.8rem; color: var(--pr-moss); font-size: .7rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.pr-package-card:not(.pr-package-card--starter) .pr-package-card__stage { padding-right: 0; }
.pr-package-card h3 { max-width: 11ch; margin-top: .65rem; font-size: clamp(2.25rem,3vw,3.45rem); line-height: .94; }
.pr-package-card__price,.pr-package-detail__price { margin-top: 1rem !important; color: var(--pr-orange); font-family: var(--wp--preset--font-family--arvo,Georgia,serif); font-size: clamp(3.2rem,4.4vw,4.6rem); font-variant-numeric: tabular-nums; letter-spacing: -.055em; line-height: .88; }
.pr-package-card__price--custom { min-height: 3.8rem; max-width: 10ch; font-size: clamp(2.15rem,2.8vw,3rem); line-height: .96; }
.pr-package-card__description { min-height: 6rem; margin-top: 1rem; color: var(--pr-ink-soft); font-size: .96rem; line-height: 1.58; }
.pr-sitemap { width: 100%; height: 8.2rem; margin: 1.1rem 0 .9rem; padding: .6rem; border: 1px solid rgba(19,38,31,.13); background: rgba(255,255,255,.36); }
.pr-sitemap path:not(.pr-map-node) { fill: none; stroke: rgba(81,107,70,.62); stroke-width: 2; vector-effect: non-scaling-stroke; }
.pr-sitemap .pr-map-node { fill: var(--pr-cream); stroke: var(--pr-moss); stroke-width: 2.5; transform-box: fill-box; transform-origin: center; }
.pr-sitemap--starter .pr-map-node--one,.pr-sitemap--custom .pr-map-node--one { fill: var(--pr-orange); stroke: var(--pr-orange); }
.pr-sitemap--growth .pr-map-node--one { fill: var(--pr-moss); stroke: var(--pr-moss); }
.pr-sitemap--custom .pr-map-node--five,.pr-sitemap--custom .pr-map-node--six { fill: rgba(228,87,46,.14); stroke: var(--pr-orange); }
.has-pricing-js .pr-package-card .pr-map-node { opacity: 0; transform: scale(.45); transition: opacity 180ms ease,transform 180ms ease; }
.has-pricing-js .pr-package-card.is-visible .pr-map-node { opacity: 1; transform: scale(1); }
.has-pricing-js .pr-package-card.is-visible .pr-map-node:nth-of-type(2n) { transition-delay: 90ms; }
.has-pricing-js .pr-package-card.is-visible .pr-map-node:nth-of-type(3n) { transition-delay: 160ms; }
.pr-package-facts { display: grid; grid-template-columns: 1fr 1fr; gap: 0 .85rem; margin: 0; padding: 0; list-style: none; }
.pr-package-facts li { position: relative; padding: .65rem 0 .65rem 1rem; border-top: 1px solid rgba(19,38,31,.14); color: var(--pr-north); font-size: .83rem; font-weight: 700; line-height: 1.4; }
.pr-package-facts li::before { position: absolute; top: .75rem; left: 0; color: var(--pr-orange); content: "•"; }
.pr-package-card__actions { display: grid; gap: .55rem; margin-top: auto; padding-top: 1.35rem; }
.pr-package-card__actions .pr-button { width: 100%; justify-content: center; padding-inline: .9rem; text-align: center; }
.pr-package-detail-link { display: inline-flex; min-height: 2.75rem; align-items: center; justify-content: center; gap: .45rem; color: var(--pr-north); font-size: .9rem; font-weight: 800; text-underline-offset: .25rem; }
.pr-package-subhead { display: grid; grid-template-columns: minmax(0,.8fr) minmax(18rem,1.2fr); gap: .35rem 3rem; align-items: end; margin-bottom: 1.4rem; }
.pr-package-subhead .pr-kicker { grid-column: 1/-1; color: var(--pr-moss); }
.pr-package-subhead h3 { font-size: clamp(2.2rem,3.7vw,4rem); line-height: .96; }
.pr-package-subhead > p:last-child { max-width: 42rem; color: var(--pr-ink-soft); line-height: 1.6; }
.pr-package-comparison { margin-top: clamp(4rem,7vw,7rem); }
.pr-compare-board { overflow: hidden; border: 1px solid rgba(19,38,31,.22); border-radius: 8px; background: rgba(244,241,230,.9); box-shadow: 0 16px 38px rgba(19,38,31,.09); }
.pr-compare-board table { width: 100%; border-collapse: collapse; table-layout: fixed; }
.pr-compare-board :where(th,td) { padding: .9rem 1rem; border-right: 1px solid rgba(19,38,31,.13); border-bottom: 1px solid rgba(19,38,31,.13); color: var(--pr-ink-soft); font-size: .88rem; line-height: 1.45; text-align: left; vertical-align: top; }
.pr-compare-board tr > :last-child { border-right: 0; }
.pr-compare-board tbody tr:last-child > * { border-bottom: 0; }
.pr-compare-board thead th { background: var(--pr-north); color: var(--pr-cream); font-size: .75rem; letter-spacing: .08em; text-transform: uppercase; }
.pr-compare-board thead th:first-child { width: 18%; }
.pr-compare-board thead th:not(:first-child) { width: 27.333%; }
.pr-compare-board th[scope="row"] { color: var(--pr-north); font-weight: 800; }
.pr-compare-board .is-recommended { background: rgba(228,87,46,.08); }
.pr-compare-board thead .is-recommended { background: var(--pr-orange); }
.pr-compare-board thead span { display: block; margin-top: .25rem; font-size: .59rem; letter-spacing: .05em; opacity: .86; }
.pr-compare-cards { display: none; }
.pr-package-details { margin-top: clamp(4rem,7vw,7rem); }
.pr-package-details .pr-package-subhead { grid-template-columns: minmax(0,1fr) minmax(15rem,26rem); }
.pr-package-details .pr-package-subhead h3 { width: 100%; max-width: none; }
.pr-package-details .pr-package-subhead > p:last-child { width: 100%; max-width: none; justify-self: end; }
.pr-package-detail { margin-top: .85rem; border: 1px solid rgba(19,38,31,.22); border-radius: 8px; background: rgba(244,241,230,.88); }
.pr-package-detail > summary { position: relative; min-height: 4.4rem; padding: 1.25rem 4rem 1.25rem 1.35rem; color: var(--pr-north); font-weight: 800; line-height: 1.35; cursor: pointer; list-style: none; }
.pr-package-detail > summary::-webkit-details-marker { display: none; }
.pr-package-detail > summary::after { position: absolute; top: 50%; right: 1.15rem; display: grid; width: 2.1rem; height: 2.1rem; place-items: center; border: 1px solid rgba(19,38,31,.32); border-radius: 50%; color: var(--pr-orange); font-size: 1.3rem; content: "+"; transform: translateY(-50%); }
.pr-package-detail[open] > summary::after { content: "−"; }
.pr-package-detail[open] > summary { border-bottom: 1px solid rgba(19,38,31,.18); }
.pr-package-detail__panel { display: grid; grid-template-columns: minmax(15rem,.68fr) minmax(0,1.32fr); gap: 2rem 4rem; padding: clamp(1.7rem,4vw,3.5rem); }
.pr-package-detail__intro h4 { margin-top: .6rem; font-size: clamp(2.5rem,4vw,4.5rem); line-height: .94; }
.pr-package-detail__intro > p:last-of-type { margin-top: 1rem; line-height: 1.62; }
.pr-package-detail__intro .pr-button { margin-top: 1.4rem; }
.pr-package-detail__price--custom { font-size: clamp(2.2rem,3.2vw,3.25rem); line-height: .98; }
.pr-list-label { margin-bottom: .8rem !important; }
.pr-check-list { padding: 0; list-style: none; }
.pr-check-list li { position: relative; padding: .58rem 0 .58rem 1.55rem; border-top: 1px solid rgba(19,38,31,.12); color: var(--pr-ink-soft); font-size: .93rem; line-height: 1.47; }
.pr-check-list li::before { position: absolute; top: .67rem; left: .1rem; color: var(--pr-orange); font-weight: 900; content: "✓"; }
.pr-package-detail__list { display: grid; grid-template-columns: 1fr 1fr; gap: 0 1.5rem; }
.pr-package-detail__best { margin-top: 1.25rem; padding: 1rem 1.1rem; border-left: 3px solid var(--pr-orange); background: rgba(81,107,70,.12); }
.pr-package-detail__best strong { display: block; margin-bottom: .35rem; font-size: .72rem; letter-spacing: .1em; text-transform: uppercase; }
.pr-package-detail__best p,.pr-package-detail__note { font-size: .88rem; line-height: 1.58; }
.pr-package-detail__note { margin-top: 1rem !important; opacity: .82; }
.pr-package-detail--starter .pr-package-detail__panel { background: linear-gradient(rgba(19,38,31,.9),rgba(19,38,31,.9)), url("../images/patterns/topo-pattern-dark-2.png") center/cover; color: var(--pr-cream); }
.pr-package-detail--starter .pr-package-detail__panel :where(h4,.pr-list-label,.pr-package-detail__best strong,.pr-package-detail__note strong) { color: var(--pr-cream); }
.pr-package-detail--starter .pr-package-detail__panel :where(.pr-package-detail__intro > p:last-of-type,.pr-check-list li,.pr-package-detail__best p,.pr-package-detail__note) { color: rgba(244,241,230,.88); }
.pr-package-detail--starter .pr-check-list li { border-color: rgba(244,241,230,.18); }
.pr-package-detail--starter .pr-package-detail__best { border-top: 1px solid rgba(244,241,230,.14); border-right: 1px solid rgba(244,241,230,.12); border-bottom: 1px solid rgba(244,241,230,.14); background: rgba(244,241,230,.11); }
.pr-package-detail--growth .pr-package-detail__panel { color: var(--pr-cream); background: linear-gradient(rgba(81,107,70,.86),rgba(81,107,70,.86)), url("../images/patterns/topo-pattern-moss.png") center/cover; }
.pr-package-detail--growth .pr-package-detail__panel :where(h4,.pr-list-label,.pr-package-detail__best strong) { color: var(--pr-cream); }
.pr-package-detail--growth .pr-package-detail__panel :where(.pr-package-detail__intro > p:last-of-type,.pr-check-list li,.pr-package-detail__best p) { color: rgba(244,241,230,.9); }
.pr-package-detail--growth .pr-check-list li { border-color: rgba(244,241,230,.2); }
.pr-package-detail--growth .pr-package-detail__best { background: rgba(19,38,31,.24); }
.pr-package-detail--custom .pr-package-detail__panel { background: rgba(244,241,230,.88) url("../images/backgrounds/background-field-guide-desktop.png") center/cover; }

/* Partnerships */
.pr-partnerships { color: var(--pr-cream); background: var(--pr-deep) url("../images/local-seo/background-local-seo-night-desktop.png") center/cover; }
.pr-partnerships .pr-section-intro,.pr-partnerships .pr-section-intro h2,.pr-partnerships .pr-section-intro > p { max-width: none; }
.pr-partnership-grid { position: relative; display: grid; grid-template-columns: 1fr 1fr; gap: 1.35rem; padding-bottom: 2.5rem; }
.pr-partnership-grid::after { position: absolute; right: 1rem; bottom: .45rem; left: 1rem; height: 3px; border-radius: 2px; background: var(--pr-sage); content: ""; }
.pr-partnership-card { position: relative; z-index: 1; display: flex; min-height: 34rem; flex-direction: column; padding: clamp(1.8rem, 3.2vw, 2.75rem); border: 1px solid rgba(244,241,230,.28); border-radius: 9px; background: rgba(11,29,23,.9); box-shadow: 0 28px 60px rgba(5,22,16,.32); }
.pr-partnership-card:last-child { border-color: rgba(228,87,46,.55); background: rgba(52,78,48,.9); }
.pr-partnership-card::after { position: absolute; bottom: -2.4rem; left: 1rem; width: .85rem; height: .85rem; border: 2px solid var(--pr-cream); border-radius: 50%; background: var(--pr-orange); content: ""; }
.pr-partnership-card:last-child::after { right: .6rem; left: auto; width: 1.2rem; height: 1.2rem; bottom: -2.55rem; }
.pr-partnership-card .pr-kicker { color: var(--pr-sage); }
.pr-partnership-card h3 { margin-top: .8rem; }
.pr-partnership-card h3 span { display: block; color: var(--pr-cream); font-size: clamp(2.8rem, 4vw, 4.3rem); letter-spacing: -.045em; line-height: .9; }
.pr-partnership-card h3 small { display: block; margin-top: .85rem; color: var(--pr-sage); font-family: var(--wp--preset--font-family--inter,Inter,sans-serif); font-size: clamp(1rem,1.5vw,1.25rem); font-weight: 800; line-height: 1.3; }
.pr-plan-connection { margin-top: 1.2rem !important; padding: .8rem 1rem; border: 1px solid rgba(228,87,46,.45); background: rgba(228,87,46,.12); color: var(--pr-cream); font-size: .9rem; }
.pr-partnership-card .pr-check-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); align-content: start; gap: 0 1.35rem; margin: 1.15rem 0 1.35rem; }
.pr-partnership-card .pr-check-list li { padding-block: .5rem; border-color: rgba(244,241,230,.13); color: rgba(244,241,230,.82); }
.pr-partnership-card .pr-button { align-self: flex-start; margin-top: auto; }
.pr-emphasis { display: inline-flex; margin-top: 1.1rem !important; padding: .65rem .85rem; border-left: 3px solid var(--pr-orange); background: rgba(244,241,230,.08); color: var(--pr-cream) !important; font-size: .9rem !important; font-weight: 800; }
.pr-terms { display: grid; grid-template-columns: .75fr 1.25fr; gap: 1.5rem 4rem; margin-top: 2rem; padding: clamp(1.7rem,3.3vw,3rem); border: 1px solid rgba(244,241,230,.24); border-radius: 8px; background: var(--pr-cream) url("../images/backgrounds/background-field-guide-desktop.png") center/cover; color: var(--pr-north); }
.pr-terms__intro h3 { margin-top: .6rem; font-size: clamp(2rem,3vw,3.25rem); line-height: .98; }
.pr-terms__intro > p:last-child { margin-top: 1rem; color: var(--pr-ink-soft); line-height: 1.62; }
.pr-terms ul { margin: 0; padding: 0; list-style: none; }
.pr-terms li { position: relative; padding: .64rem 0 .64rem 1.6rem; border-top: 1px solid var(--pr-line); color: var(--pr-ink-soft); font-size: .9rem; line-height: 1.48; }
.pr-terms li::before { position: absolute; left: 0; color: var(--pr-orange); font-weight: 900; content: "•"; }
.pr-terms > a { grid-column: 2; display: inline-flex; width: fit-content; min-height: 2.75rem; align-items: center; gap: .5rem; font-weight: 800; text-underline-offset: .25rem; }
.pr-care-reference { display: grid; grid-template-columns: minmax(13rem,.7fr) minmax(31rem,1.55fr) auto; gap: 1.5rem 2rem; align-items: center; margin-top: 1rem; padding: 1.4rem 1.6rem; overflow: hidden; border: 1px solid rgba(244,241,230,.24); border-radius: 8px; background: rgba(11,29,23,.95); box-shadow: 0 20px 46px rgba(5,22,16,.24); }
.pr-care-reference > p strong,.pr-care-reference > p span { display: block; }.pr-care-reference > p strong { color: var(--pr-cream); font-size: 1rem; }.pr-care-reference > p span { max-width: 17rem; margin-top: .35rem; color: var(--pr-sage); font-size: .78rem; line-height: 1.45; }
.pr-care-reference dl { display: grid; width: 100%; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; }.pr-care-reference dl div { min-width: 0; padding: .15rem 0 .15rem 1rem; border-left: 2px solid var(--pr-orange); }.pr-care-reference dt { color: var(--pr-sage); font-size: .72rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }.pr-care-reference dd { margin-top: .3rem; color: var(--pr-cream); font-weight: 800; line-height: 1.35; }.pr-care-reference > a { display: inline-flex; min-height: 2.75rem; align-items: center; justify-self: end; color: var(--pr-cream); font-weight: 800; text-underline-offset: .25rem; white-space: nowrap; }

/* Add-ons */
.pr-addons { background: #dce4d5 url("../images/patterns/map-grid-overlay.png") center/50rem auto; }
.pr-footnote { max-width: 61rem; margin-top: 1.25rem !important; color: var(--pr-ink-soft); font-size: .84rem; line-height: 1.55; }

/* Visibility services */
.pr-visibility { background: #c8d2bf url("../images/backgrounds/background-sage-alpine-desktop.png") center bottom/cover; }
.pr-visibility .pr-section-intro,.pr-visibility .pr-section-intro h2,.pr-visibility .pr-section-intro > p:last-child { width: 100%; max-width: none; }
.pr-visibility-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 1.25rem; align-items: stretch; }
.pr-service-card { display: flex; min-height: 0; flex-direction: column; padding: 1.7rem; border: 1px solid var(--pr-line); border-radius: 8px; background: rgba(244,241,230,.94); box-shadow: 0 18px 40px rgba(19,38,31,.1); transition: translate 280ms ease,box-shadow 280ms ease,border-color 280ms ease; }
.pr-service-card:nth-child(1) { border-top: 4px solid var(--pr-orange); }.pr-service-card:nth-child(2) { border-top: 4px solid var(--pr-moss); }.pr-service-card:nth-child(3) { border-top: 4px solid var(--pr-north); }
.pr-service-card:hover { translate: 0 -5px; box-shadow: var(--pr-shadow); }
.pr-service-card > img { width: 3.5rem; height: 3.5rem; margin-bottom: 1.25rem; object-fit: contain; }
.pr-service-card h3 { min-height: 4.5rem; margin-top: .55rem; font-size: clamp(1.85rem,2.5vw,2.5rem); line-height: .98; }
.pr-service-price { margin-top: .8rem !important; color: var(--pr-orange); font-family: var(--wp--preset--font-family--arvo,Georgia,serif); font-size: 2.8rem; line-height: .9; }
.pr-service-card > div > p:last-child { min-height: 4.8rem; margin-top: 1rem; color: var(--pr-ink-soft); line-height: 1.55; }
.pr-service-card .pr-check-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 1rem; margin: 1rem 0; }
.pr-card-note { margin-top: auto !important; padding-top: .9rem; border-top: 1px solid var(--pr-line); color: var(--pr-ink-soft); font-size: .75rem; line-height: 1.5; }
.pr-service-card > a { display: inline-flex; min-height: 2.75rem; align-items: center; gap: .5rem; margin-top: auto; padding-top: 1rem; font-weight: 800; text-underline-offset: .25rem; }

/* FAQ and final */
.pr-faq { color: var(--pr-north); background: var(--pr-beige) url("../images/backgrounds/background-field-guide-desktop.png") center/cover; }
.pr-faq__layout { display: grid; grid-template-columns: minmax(18rem,.72fr) minmax(0,1.28fr); gap: 3rem clamp(3rem,7vw,8rem); align-items: start; }
.pr-faq .pr-section-intro { position: sticky; top: 2rem; margin: 0; }
.pr-faq .pr-section-intro--light :where(h2,p) { color: var(--pr-north) !important; }
.pr-faq .pr-section-intro--light .pr-eyebrow { color: var(--pr-moss); }
.pr-faq__list { border-top: 1px solid rgba(19,38,31,.28); background: rgba(244,241,230,.48); }
.pr-faq details { border-bottom: 1px solid rgba(19,38,31,.2); }
.pr-faq details[open] { background: rgba(244,241,230,.72); }
.pr-faq summary { position: relative; min-height: 4.25rem; padding: 1.15rem 3.25rem 1.15rem 1rem; color: var(--pr-north); font-weight: 800; line-height: 1.35; cursor: pointer; list-style: none; }
.pr-faq summary::-webkit-details-marker { display: none; }
.pr-faq summary:hover { background: rgba(244,241,230,.5); }
.pr-faq summary::after { position: absolute; top: .85rem; right: .8rem; display: grid; width: 2rem; height: 2rem; place-items: center; border: 1px solid rgba(19,38,31,.32); border-radius: 50%; color: var(--pr-orange); font-size: 1.25rem; content: "+"; transition: transform 180ms ease,background 180ms ease; }
.pr-faq details[open] summary::after { transform: rotate(45deg); background: rgba(81,107,70,.12); }
.pr-faq details p { max-width: 47rem; padding: 0 3.25rem 1.35rem 1rem; color: var(--pr-ink-soft); line-height: 1.65; }
.pr-final { position: relative; min-height: 36rem; display: grid; align-items: center; color: var(--pr-cream); background: var(--pr-deep) url("../images/backgrounds/background-night-ridge-desktop.png") center 62%/cover; }
.pr-final::after { position: absolute; z-index: 0; right: 0; bottom: 0; left: 0; height: clamp(7rem,14vw,12rem); background: linear-gradient(to bottom,rgba(6,31,24,0),rgba(6,31,24,.68) 52%,#061f18 100%); content: ""; pointer-events: none; }
.pr-final > .pr-rail { position: relative; z-index: 1; }
.pr-final__card { position: relative; width: 100%; max-width: none; margin-inline: auto; padding: clamp(2.2rem,5vw,4.5rem); overflow: hidden; border: 1px solid rgba(244,241,230,.28); border-radius: 9px; background: rgba(19,38,31,.7); box-shadow: 0 30px 64px rgba(5,22,16,.34); text-align: center; }
.pr-final__card > :not(svg) { position: relative; z-index: 1; }
.pr-final__card .pr-eyebrow { justify-content: center; color: var(--pr-sage); }
.pr-final__card h2 { width: 90%; max-width: none; margin: .8rem auto 0; color: var(--pr-cream); font-size: clamp(2.8rem,5vw,5.3rem); letter-spacing: -.04em; line-height: .94; }
.pr-final__card > p:not(.pr-eyebrow) { width: 90%; max-width: none; margin: 1.2rem auto 0; color: rgba(244,241,230,.82); font-size: 1.05rem; line-height: 1.67; }
.pr-final__card .pr-actions { justify-content: center; margin-top: 1.7rem; }
.pr-final__route { position: absolute; bottom: 1rem; left: 50%; width: 72%; height: 7rem; opacity: .38; transform: translateX(-50%); }
.pr-final__route path { fill: none; stroke: var(--pr-sage); stroke-width: 3; stroke-dasharray: 8 8; }.pr-final__route circle { fill: var(--pr-orange); stroke: var(--pr-cream); stroke-width: 2; }
.has-pricing-js .pr-final__route path { stroke-dasharray: 1; stroke-dashoffset: 1; transition: stroke-dashoffset 1100ms ease; }.has-pricing-js .pr-final__route circle { opacity: 0; transition: opacity 220ms ease; }.has-pricing-js .pr-final__card.is-route-active .pr-final__route path { stroke-dashoffset: 0; }.has-pricing-js .pr-final__card.is-route-active .pr-final__route circle { opacity: 1; transition-delay: 900ms; }
body.page-id-117 .nn-site-footer { position: relative; }
body.page-id-117 .nn-site-footer::before { position: absolute; z-index: 0; top: 0; right: 0; left: 0; height: clamp(6rem,11vw,9rem); background: linear-gradient(to bottom,#061f18 0%,rgba(6,31,24,.72) 48%,rgba(6,31,24,0) 100%); content: ""; pointer-events: none; }
body.page-id-117 .nn-site-footer > * { position: relative; z-index: 1; }

/* Hover choreography for pricing components. */
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .pr-trailhead,.pr-route-choice article,.pr-package-card,.pr-compare-board,.pr-compare-card,.pr-package-detail,.pr-partnership-card,.pr-terms,.pr-care-reference,.pr-final__card { transition: translate 320ms cubic-bezier(.2,.7,.2,1),border-color 320ms ease,box-shadow 320ms ease,background-color 320ms ease; }
  .pr-trailhead:hover,.pr-trailhead:focus-within,.pr-package-card:hover,.pr-package-card:focus-within,.pr-partnership-card:hover,.pr-partnership-card:focus-within,.pr-final__card:hover,.pr-final__card:focus-within { translate: 0 -6px; box-shadow: 0 34px 68px rgba(5,22,16,.3); }
  .pr-route-choice article:hover,.pr-route-choice article:focus-within,.pr-terms:hover,.pr-terms:focus-within,.pr-care-reference:hover,.pr-care-reference:focus-within { translate: 0 -4px; border-color: rgba(228,87,46,.55); box-shadow: 0 24px 46px rgba(19,38,31,.16); }
  .pr-compare-board:hover,.pr-compare-card:hover,.pr-package-detail:hover,.pr-package-detail:focus-within { translate: 0 -3px; border-color: rgba(81,107,70,.52); box-shadow: 0 20px 42px rgba(19,38,31,.14); }
  .pr-trailhead__route,.pr-final__route { transition: opacity 320ms ease,filter 320ms ease; }
  .pr-trailhead:hover .pr-trailhead__route,.pr-trailhead:focus-within .pr-trailhead__route { opacity: .48; filter: drop-shadow(0 3px 5px rgba(81,107,70,.22)); }
  .pr-final__card:hover .pr-final__route,.pr-final__card:focus-within .pr-final__route { opacity: .58; filter: drop-shadow(0 3px 6px rgba(177,194,166,.2)); }
  .pr-route-choice__marker,.pr-package-card__badge { transition: scale 280ms cubic-bezier(.2,.7,.2,1),box-shadow 280ms ease; }
  .pr-route-choice article:hover .pr-route-choice__marker,.pr-route-choice article:focus-within .pr-route-choice__marker { scale: 1.08; box-shadow: 0 10px 20px rgba(19,38,31,.16); }
  .pr-package-card:hover .pr-package-card__badge,.pr-package-card:focus-within .pr-package-card__badge { scale: 1.04; box-shadow: 0 10px 20px rgba(228,87,46,.2); }
  .pr-sitemap { transition: translate 320ms cubic-bezier(.2,.7,.2,1),border-color 320ms ease,background-color 320ms ease; }
  .pr-package-card:hover .pr-sitemap,.pr-package-card:focus-within .pr-sitemap { translate: 0 -4px; border-color: rgba(81,107,70,.38); background-color: rgba(255,255,255,.52); }
  .pr-compare-board tbody tr > * { transition: background-color 220ms ease,box-shadow 220ms ease; }
  .pr-compare-board tbody tr:hover > * { background-color: rgba(81,107,70,.12); box-shadow: inset 0 1px rgba(81,107,70,.12),inset 0 -1px rgba(81,107,70,.12); }
  .pr-package-detail > summary { transition: padding-left 240ms ease,background-color 240ms ease,color 240ms ease; }
  .pr-package-detail > summary::after { transition: transform 280ms cubic-bezier(.2,.7,.2,1),background-color 280ms ease,border-color 280ms ease; }
  .pr-package-detail:hover > summary,.pr-package-detail > summary:focus-visible { padding-left: 1.7rem; background: rgba(81,107,70,.08); }
  .pr-package-detail:hover > summary::after { transform: translateY(-50%) rotate(90deg); border-color: var(--pr-orange); background: rgba(228,87,46,.1); }
  .pr-package-detail[open]:hover > summary::after { transform: translateY(-50%) rotate(180deg); }
  .pr-partnership-card .pr-check-list li,.pr-terms li { transition: padding-left 220ms ease,color 220ms ease,border-color 220ms ease; }
  .pr-partnership-card:hover .pr-check-list li { padding-left: 1.75rem; border-color: rgba(244,241,230,.22); color: var(--pr-cream); }
  .pr-terms:hover li { padding-left: 1.85rem; color: var(--pr-north); }
  .pr-care-reference dl div { transition: translate 240ms ease,border-color 240ms ease; }
  .pr-care-reference:hover dl div { translate: 3px 0; border-color: var(--pr-cream); }
  .pr-service-card:hover,.pr-service-card:focus-within { border-color: rgba(81,107,70,.45); }
  .pr-service-card > img { transition: translate 300ms cubic-bezier(.2,.7,.2,1),scale 300ms cubic-bezier(.2,.7,.2,1); }
  .pr-service-card:hover > img,.pr-service-card:focus-within > img { translate: 0 -3px; scale: 1.08; }
  .pricing-page a > span[aria-hidden="true"] { display: inline-block; transition: translate 200ms ease; }
  .pricing-page a:hover > span[aria-hidden="true"],.pricing-page a:focus-visible > span[aria-hidden="true"] { translate: 4px 0; }
}

/* Reveal enhancement: content remains visible without JavaScript. */
.has-pricing-js .pr-reveal { opacity: 0; transform: translateY(16px); transition: opacity 520ms ease,transform 520ms ease,translate 320ms cubic-bezier(.2,.7,.2,1),border-color 320ms ease,box-shadow 320ms ease,background-color 320ms ease; transition-delay: var(--pr-delay,0ms); }
.has-pricing-js .pr-reveal.is-visible { opacity: 1; transform: none; }

@media (max-width: 1100px) {
  .pr-hero__grid { grid-template-columns: 1fr .75fr; gap: 3rem; }.pr-hero h1 { font-size: clamp(3.1rem,6vw,5rem); }.pr-trailhead__price { margin-top: 6rem !important; }
  .pr-package-cards { grid-template-columns: 1fr 1fr; }.pr-package-card--custom { grid-column: 1/-1; }.pr-package-card--custom .pr-package-card__description { min-height: 0; }.pr-package-card--custom .pr-sitemap { max-width: 46rem; }.pr-compare-board { display: none; }.pr-compare-cards { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; }.pr-compare-card { padding: 1.25rem; border: 1px solid rgba(19,38,31,.2); border-top: 4px solid var(--pr-moss); border-radius: 8px; background: rgba(244,241,230,.9); }.pr-compare-card--starter { border-top-color: var(--pr-orange); }.pr-compare-card h4 { font-size: 2rem; line-height: 1; }.pr-compare-card h4 span { display: block; margin-top: .45rem; color: var(--pr-orange); font-family: var(--wp--preset--font-family--inter,Inter,sans-serif); font-size: .62rem; letter-spacing: .08em; text-transform: uppercase; }.pr-compare-card dl { margin-top: 1rem; }.pr-compare-card dl div { padding: .7rem 0; border-top: 1px solid rgba(19,38,31,.14); }.pr-compare-card dt { color: var(--pr-moss); font-size: .68rem; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }.pr-compare-card dd { margin-top: .28rem; color: var(--pr-north); font-size: .86rem; line-height: 1.45; }
  .pr-visibility-grid { grid-template-columns: 1fr 1fr; }.pr-service-card:last-child { grid-column: 1/-1; min-height: 0; }.pr-service-card:last-child h3,.pr-service-card:last-child > div > p:last-child { min-height: 0; }
  .pr-care-reference { grid-template-columns: 1fr; }.pr-care-reference > a { min-height: 2.75rem; display: inline-flex; align-items: center; justify-self: start; }
}
@media (max-width: 900px) {
  .pr-section-intro--split,.pr-websites .pr-section-intro--split { grid-template-columns: 1fr; gap: .5rem; }.pr-section-intro--split > p { max-width: 44rem; }.pr-websites .pr-section-intro--split::after { display: none; }
  .pr-hero__grid { grid-template-columns: 1fr; }.pr-trailhead { width: min(100%,42rem); min-height: 25rem; }.pr-trailhead__price { margin-top: 4rem !important; }
  .pr-route-choice { grid-template-columns: 1fr; }.pr-route-choice::before { top: 4rem; bottom: 4rem; left: 3rem; width: 2px; height: auto; }.pr-route-choice article { min-height: 0; }
  .pr-package-journey { padding-left: 2.8rem; }.pr-package-route--desktop { display: none; }.pr-package-route--mobile { position: absolute; top: 0; bottom: 0; left: 0; display: block; width: 2.2rem; }.pr-package-route--mobile svg { height: 100%; }.pr-package-cards { grid-template-columns: 1fr; gap: 1.2rem; }.pr-package-card--custom { grid-column: auto; }.pr-package-card__description { min-height: 0; }.pr-compare-cards { grid-template-columns: 1fr; }.pr-package-subhead,.pr-package-details .pr-package-subhead { grid-template-columns: 1fr; gap: .6rem; }.pr-package-detail__panel { grid-template-columns: 1fr; gap: 2rem; }.pr-package-detail__intro { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: .5rem 1.5rem; align-items: end; }.pr-package-detail__intro :where(.pr-kicker,h4,.pr-package-detail__price) { grid-column: 1; }.pr-package-detail__intro > p:last-of-type { grid-column: 1/-1; }.pr-package-detail__intro .pr-button { grid-column: 2; grid-row: 1/5; align-self: end; }
  .pr-partnership-grid { grid-template-columns: 1fr; }.pr-partnership-grid::after { top: 1rem; bottom: 1rem; left: 1.25rem; width: 3px; height: auto; }.pr-partnership-card { min-height: 0; margin-left: 2rem; }.pr-partnership-card::after,.pr-partnership-card:last-child::after { top: 1rem; bottom: auto; right: auto; left: -2.65rem; }
  .pr-terms { grid-template-columns: 1fr; }.pr-terms > a { grid-column: auto; }
  .pr-faq { background-image: url("../images/backgrounds/background-field-guide-mobile.png"); }.pr-faq__layout { grid-template-columns: 1fr; }.pr-faq .pr-section-intro { position: static; }
}
@media (max-width: 700px) {
  .pr-band { padding-block: 4rem; }.pr-rail { width: min(calc(100% - 2rem),var(--pr-rail)); }
  .pr-section-intro h2 { font-size: clamp(2.5rem,12vw,3.4rem); }.pr-section-intro--split > p { padding-left: 1rem; }
  .pr-button { width: 100%; }.pr-actions { align-items: stretch; }.pr-text-link { justify-content: center; }
  .pr-hero { min-height: 0; padding-top: 8.25rem; background-image: url("../images/backgrounds/background-sage-green-web.png"); }.pr-hero h1 { font-size: clamp(3rem,14vw,4.15rem); }.pr-lede { font-size: 1rem; }.pr-trailhead { min-height: 23rem; padding: 1.45rem; }.pr-trailhead__label b { display: none; }.pr-trailhead__price { margin-top: 5rem !important; font-size: 5.7rem; }
  .pr-routes { background-image: url("../images/backgrounds/background-earthy-route-mobile.png"); }.pr-route-choice article { padding: 5.2rem 1.35rem 1.5rem; }.pr-route-choice::before { display: none; }.pr-route-choice__marker { top: 1.2rem; left: 1.3rem; }
  .pr-websites { background-image: url("../images/backgrounds/background-cream-mobile.png"); }.pr-package-journey { padding-left: 2rem; }.pr-package-card { padding: 1.25rem; }.pr-package-card__badge { position: static; align-self: flex-start; margin-bottom: .9rem; }.pr-package-card__stage { padding-right: 0; }.pr-package-card h3 { font-size: 2.55rem; }.pr-package-card__price { font-size: 3.5rem; }.pr-package-card__price--custom { font-size: 2.25rem; }.pr-package-card__description { font-size: 1rem; }.pr-sitemap { height: 7.2rem; }.pr-package-facts { grid-template-columns: 1fr; }.pr-package-facts li { font-size: .9rem; }.pr-package-card__actions .pr-button { white-space: normal; }.pr-package-subhead h3 { font-size: 2.65rem; }.pr-compare-card { padding: 1.1rem; }.pr-compare-card dd { font-size: .92rem; }.pr-package-detail > summary { padding-right: 3.6rem; }.pr-package-detail__panel { padding: 1.25rem; }.pr-package-detail__intro { display: block; }.pr-package-detail__intro .pr-button { width: 100%; }.pr-package-detail__list { grid-template-columns: 1fr; }.pr-package-detail--custom .pr-package-detail__panel { background-image: url("../images/backgrounds/background-field-guide-mobile.png"); }
  .pr-partnerships { background-image: url("../images/local-seo/background-local-seo-night-mobile.png"); }.pr-partnership-card { margin-left: 1rem; padding: 1.5rem; }.pr-partnership-card::after,.pr-partnership-card:last-child::after { left: -1.6rem; }.pr-partnership-card h3 span { font-size: 3rem; }.pr-partnership-card .pr-check-list { grid-template-columns: 1fr; }.pr-partnership-card .pr-button { align-self: stretch; }.pr-terms { padding: 1.4rem; background-image: url("../images/backgrounds/background-field-guide-mobile.png"); }.pr-care-reference dl { grid-template-columns: 1fr; }.pr-care-reference dl div { padding-block: .45rem; }.pr-care-reference > a { white-space: normal; }
  .pr-visibility { background-image: url("../images/backgrounds/background-sage-alpine-mobile.png"); }.pr-visibility-grid { grid-template-columns: 1fr; }.pr-service-card,.pr-service-card:last-child { grid-column: auto; min-height: 0; }.pr-service-card h3,.pr-service-card > div > p:last-child { min-height: 0; }.pr-service-card .pr-check-list { grid-template-columns: 1fr; }
  .pr-faq summary { min-height: 4.5rem; padding-right: 3rem; }.pr-faq details p { padding-right: 1rem; }.pr-final { min-height: 0; background-image: url("../images/backgrounds/background-night-ridge-mobile.png"); }.pr-final__card { padding: 1.65rem; }.pr-final__route { bottom: 1rem; left: 50%; width: 86%; }.pr-final__card h2 { width: 100%; font-size: 3rem; }.pr-final__card > p:not(.pr-eyebrow) { width: 100%; }
}
@media (max-width: 380px) {
  .pr-rail { width: calc(100% - 1.5rem); }.pr-hero h1 { font-size: 2.85rem; }.pr-section-intro h2 { font-size: 2.45rem; }.pr-package-card h3 { font-size: 2.25rem; }.pr-partnership-card h3 span { font-size: 2.65rem; }.pr-final__card h2 { font-size: 2.55rem; }
}
@media (prefers-reduced-motion: reduce) {
  .pricing-page * { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
  .pr-service-card:hover { translate: none; }
  .has-pricing-js .pr-reveal { opacity: 1; transform: none; }.has-pricing-js :where(.pr-trailhead__route path,.pr-final__route path,.pr-package-route__line) { stroke-dashoffset: 0; }.has-pricing-js :where(.pr-trailhead__route circle,.pr-final__route circle,.pr-package-route__marker,.pr-map-node) { opacity: 1; transform: none; }
}

/* Final refinement pass — larger decision tools, quieter motion, clearer terrain changes. */
.pr-band { padding-block: clamp(5rem,7vw,7.5rem); }
.pr-section-intro { margin-bottom: clamp(2.8rem,4.5vw,4.5rem); }
.pr-section-intro > p:last-child,.pr-section-intro > div + p { font-size: clamp(1.05rem,1.25vw,1.18rem); }

/* Purchase routes: a clearly forked decision with stronger reading scale. */
.pr-routes { box-shadow: inset 0 1px rgba(244,241,230,.8),inset 0 -1px rgba(19,38,31,.16); }
.pr-route-choice { gap: clamp(1.25rem,2vw,2rem); }
.pr-route-choice article { min-height: 21rem; padding: 2.5rem 2.6rem 2.35rem 6.25rem; }
.pr-route-choice h3 { font-size: clamp(2.5rem,3.4vw,3.5rem); }
.pr-route-choice article > p:not(.pr-kicker) { font-size: 1.05rem; }
.pr-route-choice a { font-size: 1rem; }
.pr-route-note { max-width: 68rem; font-size: .96rem; }

/* Package journey: one continuous mapped progression. */
.pr-package-route--desktop { position: relative; height: 7.4rem; margin-bottom: .25rem; }
.pr-package-route__line { stroke-width: 2.65; }
.pr-package-route__labels { position: absolute; inset: auto 0 .2rem; display: grid; grid-template-columns: repeat(3,1fr); color: var(--pr-moss); font-size: .72rem; font-weight: 800; letter-spacing: .1em; text-align: center; text-transform: uppercase; }
.pr-package-route--desktop .pr-package-route__labels span:nth-child(1) { transform: translateX(-16%); }
.pr-package-route--desktop .pr-package-route__labels span:nth-child(3) { transform: translateX(16%); }
.pr-package-card { padding: clamp(1.8rem,2.3vw,2.35rem); }
.pr-package-card h3 { max-width: 12ch; font-size: clamp(2.65rem,3.4vw,3.8rem); }
.pr-package-card__price { font-size: clamp(3.75rem,4.8vw,5.1rem); }
.pr-package-card__price--custom { max-width: none; white-space: nowrap; font-size: clamp(2.2rem,2.55vw,2.85rem); }
.pr-package-card__description { min-height: 6.6rem; font-size: 1.04rem; line-height: 1.62; }
.pr-sitemap { height: 9.6rem; margin-block: 1.35rem 1.05rem; }
.pr-package-facts li { padding-block: .78rem; font-size: .92rem; }
.pr-package-detail-link { font-size: .96rem; }
.pr-package-card__badge { top: 1.25rem; right: 1.25rem; }

/* Comparison: a field-guide board rather than a small spreadsheet. */
.pr-package-comparison { padding: clamp(2.5rem,4vw,4rem); border: 1px solid rgba(19,38,31,.14); border-radius: 12px; background: rgba(231,220,195,.5); box-shadow: inset 0 0 0 8px rgba(244,241,230,.32); }
.pr-compare-board { border-radius: 10px; box-shadow: 0 22px 50px rgba(19,38,31,.12); }
.pr-compare-board :where(th,td) { padding: 1.22rem 1.3rem; font-size: 1rem; line-height: 1.55; }
.pr-compare-board thead th { padding-block: 1.35rem; font-size: .82rem; }
.pr-compare-board tbody tr:nth-child(even) > * { background-color: rgba(81,107,70,.045); }
.pr-compare-board .is-recommended { background: rgba(228,87,46,.11); }

/* Package disclosures: substantial closed-state summaries. */
.pr-package-detail { margin-top: 1rem; overflow: hidden; background: rgba(244,241,230,.94); box-shadow: 0 14px 30px rgba(19,38,31,.07); }
.pr-package-detail > summary { display: grid; min-height: 7.4rem; grid-template-columns: minmax(12rem,.75fr) minmax(10rem,.45fr) minmax(18rem,1.2fr) auto; gap: .55rem 1.5rem; align-items: center; padding: 1.55rem 5rem 1.55rem 1.75rem; }
.pr-detail-summary__name { font-family: var(--wp--preset--font-family--arvo,"VS Sunday Sauce",Georgia,serif); font-size: clamp(1.65rem,2vw,2.25rem); font-weight: 400; line-height: 1; }
.pr-detail-summary__price { color: var(--pr-orange); font-size: 1.08rem; font-weight: 800; }
.pr-detail-summary__preview { color: var(--pr-ink-soft); font-size: 1rem; font-weight: 500; line-height: 1.5; }
.pr-detail-summary__action { color: var(--pr-moss); font-size: .76rem; letter-spacing: .08em; text-transform: uppercase; }
.pr-package-detail > summary::after { right: 1.5rem; width: 2.55rem; height: 2.55rem; }
.pr-package-detail__panel { gap: 2.5rem 5rem; }
.pr-package-detail__intro > p:last-of-type,.pr-package-detail__list li { font-size: 1rem; }
.pr-package-detail__best p,.pr-package-detail__note { font-size: .95rem; }

/* Partnerships: price first, then the four things buyers need to understand. */
.pr-partnerships { background-position: center top; }
.pr-partnership-grid { gap: clamp(1.3rem,2vw,2rem); }
.pr-partnership-card { min-height: 0; padding: clamp(2.1rem,3vw,3.1rem); }
.pr-partnership-card h3 span { font-size: clamp(3.6rem,5vw,5.3rem); }
.pr-partnership-card h3 small { font-size: clamp(1.12rem,1.5vw,1.35rem); }
.pr-plan-connection { display: inline-flex; width: fit-content; margin-top: 1.35rem !important; border-color: rgba(164,180,154,.45); background: rgba(244,241,230,.07); font-size: 1rem; }
.pr-partnership-highlights { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .65rem; margin: 1.4rem 0 .55rem; padding: 0; list-style: none; }
.pr-partnership-highlights li { min-width: 0; padding: .95rem .8rem; border-top: 2px solid var(--pr-orange); background: rgba(244,241,230,.08); }
.pr-partnership-highlights strong,.pr-partnership-highlights span { display: block; }
.pr-partnership-highlights strong { color: var(--pr-cream); font-size: .88rem; line-height: 1.3; }
.pr-partnership-highlights span { margin-top: .2rem; color: var(--pr-sage); font-size: .73rem; line-height: 1.35; }
.pr-partnership-card .pr-check-list { grid-template-columns: 1fr 1fr; gap: 0 1.75rem; margin-block: .65rem 1.5rem; }
.pr-partnership-card .pr-check-list li { font-size: .96rem; }

/* Commitment: a four-stage route with the legal detail kept quiet but complete. */
.pr-terms { grid-template-columns: minmax(17rem,.6fr) minmax(0,1.4fr); gap: 2rem 4rem; }
.pr-commitment-route { position: relative; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1rem; margin: 0; padding: 2.25rem 0 0; list-style: none; }
.pr-commitment-route::before { position: absolute; top: .65rem; right: 6%; left: 6%; height: 3px; background: var(--pr-moss); content: ""; }
.pr-commitment-route li { position: relative; padding: 1rem; border: 1px solid var(--pr-line); border-top: 3px solid var(--pr-moss); background: rgba(244,241,230,.78); }
.pr-commitment-route li::before { position: absolute; top: -2.15rem; left: 50%; width: .9rem; height: .9rem; border: 3px solid var(--pr-moss); border-radius: 50%; background: var(--pr-cream); content: ""; transform: translateX(-50%); }
.pr-commitment-route li:first-child::before { border-color: var(--pr-orange); background: var(--pr-orange); }
.pr-commitment-route li:last-child::before { width: 1.15rem; height: 1.15rem; border-color: var(--pr-north); }
.pr-commitment-route strong,.pr-commitment-route span { display: block; }
.pr-commitment-route strong { font-size: .9rem; }
.pr-commitment-route span { margin-top: .35rem; color: var(--pr-ink-soft); font-size: .8rem; line-height: 1.45; }
.pr-terms__notes { grid-column: 2; display: grid; grid-template-columns: 1fr 1fr; gap: 0 1.5rem; }
.pr-terms > a { grid-column: 2; }
.pr-care-reference { margin-top: 1.25rem; padding: 1.65rem 1.8rem; }
.pr-care-reference dt { font-size: .78rem; }.pr-care-reference dd { font-size: 1.04rem; }

/* Add-ons: three grouped field-guide boards. */
.pr-addons { background-color: #dce4d5; background-image: linear-gradient(rgba(220,228,213,.88),rgba(220,228,213,.88)),url("../images/patterns/map-grid-dots.png"); background-size: auto,40rem auto; }
.pr-addon-groups { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1.25rem; }
.pr-addon-group { padding: clamp(1.5rem,2.2vw,2.25rem); border: 1px solid rgba(19,38,31,.2); border-top: 4px solid var(--pr-moss); border-radius: 8px; background: rgba(244,241,230,.94); box-shadow: 0 16px 34px rgba(19,38,31,.09); }
.pr-addon-group:nth-child(2) { border-top-color: var(--pr-orange); }.pr-addon-group:nth-child(3) { border-top-color: var(--pr-north); }
.pr-addon-group h3 { margin-top: .55rem; font-size: clamp(2rem,2.7vw,2.8rem); line-height: .98; }
.pr-addon-group dl { margin-top: 1.4rem; }
.pr-addon-group dl div { display: grid; min-height: 5rem; grid-template-columns: minmax(0,1fr) auto; gap: 1rem; align-items: center; padding: 1rem 0; border-top: 1px solid var(--pr-line); }
.pr-addon-group dt { font-size: .98rem; font-weight: 700; line-height: 1.4; }
.pr-addon-group dd { max-width: 9rem; color: var(--pr-moss); font-size: .94rem; font-weight: 800; line-height: 1.35; text-align: right; }
.pr-footnote { font-size: .9rem; }

/* Visibility: four key deliverables first, remaining approved scope on demand. */
.pr-visibility-grid { gap: 1.5rem; }
.pr-service-card { padding: clamp(1.9rem,2.5vw,2.6rem); }
.pr-service-card > img { width: 4.2rem; height: 4.2rem; }
.pr-service-card h3 { min-height: 0; font-size: clamp(2.15rem,2.7vw,3rem); }
.pr-service-price { font-size: 3.35rem; }
.pr-service-card > div > p:last-child { min-height: 5.2rem; font-size: 1.02rem; }
.pr-service-card .pr-check-list { grid-template-columns: 1fr; margin-block: 1.15rem .25rem; }
.pr-service-card .pr-check-list li { font-size: .95rem; }
.pr-service-more { margin-top: .3rem; border-top: 1px solid var(--pr-line); }
.pr-service-more > summary { position: relative; min-height: 3.2rem; padding: .85rem 2.25rem .85rem 0; color: var(--pr-moss); font-size: .82rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; cursor: pointer; list-style: none; }
.pr-service-more > summary::-webkit-details-marker { display: none; }
.pr-service-more > summary::after { position: absolute; top: .7rem; right: 0; color: var(--pr-orange); font-size: 1.25rem; content: "+"; }
.pr-service-more[open] > summary::after { content: "−"; }
.pr-service-more .pr-check-list { margin-top: 0; }
.pr-card-note { margin-top: 1rem !important; font-size: .82rem; }

/* FAQ: full-width introduction, then a wide reading column. */
.pr-faq { background-color: #e7dcc3; background-position: center top; }
.pr-faq__layout { display: block; }
.pr-faq .pr-section-intro { position: static; max-width: none; margin-bottom: 2.5rem; }
.pr-faq .pr-section-intro h2 { max-width: 17ch; }
.pr-faq .pr-section-intro > p:last-child { max-width: 58rem; }
.pr-faq__list { width: min(100%,78rem); margin-inline: auto; border: 1px solid rgba(19,38,31,.22); border-radius: 10px; overflow: hidden; background: rgba(244,241,230,.72); box-shadow: 0 20px 44px rgba(19,38,31,.1); }
.pr-faq summary { min-height: 5.2rem; padding: 1.4rem 4.5rem 1.4rem 1.6rem; font-size: 1.06rem; }
.pr-faq summary::after { top: 1.1rem; right: 1.25rem; width: 2.35rem; height: 2.35rem; }
.pr-faq details p { max-width: 66rem; padding: 0 4.5rem 1.6rem 1.6rem; font-size: 1rem; }

/* Final destination: strong inner panel and a route that resolves at a pin. */
.pr-final { min-height: 42rem; padding-block: clamp(6rem,9vw,9rem); }
.pr-final__card { padding: clamp(3rem,6vw,6rem); border: 1px solid rgba(244,241,230,.46); background: rgba(11,29,23,.82); box-shadow: 0 34px 80px rgba(5,22,16,.5),inset 0 1px rgba(244,241,230,.08); }
.pr-final__card h2 { width: min(100%,18ch); font-size: clamp(3.5rem,6vw,6.5rem); }
.pr-final__card > p:not(.pr-eyebrow) { width: min(100%,70rem); font-size: 1.18rem; }
.pr-final__card .pr-actions { margin-top: 2.1rem; }
.pr-final__card .pr-button { min-height: 3.8rem; padding-inline: 1.75rem; font-size: 1.05rem; }
.pr-final__route { bottom: 1.5rem; width: 78%; height: 8.5rem; opacity: .56; }
.pr-final__route path { stroke-width: 3.4; stroke-dasharray: none; }
.pr-final__route .pr-final__destination { fill: var(--pr-cream); stroke: var(--pr-orange); stroke-width: 2.5; }
.pr-final__route path.pr-final__destination { stroke-dasharray: none; stroke-dashoffset: 0; }
.pr-final__route .pr-final__start { fill: var(--pr-orange); }

@media (min-width:901px) {
  .pr-hero__grid { transform: translateY(clamp(1.25rem,2vw,2rem)); }
}

/* Refined hover: local feedback, no large card jumps or checklist shifts. */
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
  .pr-trailhead:hover,.pr-trailhead:focus-within,.pr-package-card:hover,.pr-package-card:focus-within,.pr-partnership-card:hover,.pr-partnership-card:focus-within,.pr-final__card:hover,.pr-final__card:focus-within { translate: 0 -3px; }
  .pr-partnership-card:hover .pr-check-list li,.pr-terms:hover li { padding-left: 1.55rem; }
  .pr-addon-group { transition: border-color 220ms ease,box-shadow 220ms ease; }
  .pr-addon-group:hover,.pr-addon-group:focus-within { border-color: rgba(228,87,46,.55); box-shadow: 0 22px 44px rgba(19,38,31,.14); }
  .pr-service-more > summary:hover { color: var(--pr-orange); }
}

@media (max-width:1200px) {
  .pr-package-card__price--custom { white-space: normal; }
  .pr-detail-summary__preview { font-size: .92rem; }
  .pr-partnership-highlights { grid-template-columns: 1fr 1fr; }
  .pr-commitment-route { grid-template-columns: 1fr 1fr; gap: 1rem; padding-top: 0; }
  .pr-commitment-route::before,.pr-commitment-route li::before { display: none; }
  .pr-addon-groups { grid-template-columns: 1fr 1fr; }
  .pr-addon-group:last-child { grid-column: 1/-1; }
}

@media (max-width:1100px) {
  .pr-package-comparison { padding: 2rem; }
  .pr-compare-card { padding: 1.5rem; }
  .pr-compare-card dd { font-size: .96rem; }
  .pr-package-detail > summary { grid-template-columns: minmax(10rem,.8fr) minmax(9rem,.45fr) minmax(0,1.3fr); }
  .pr-detail-summary__action { display: none; }
  .pr-visibility-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width:900px) {
  .pr-route-choice article { padding: 5.3rem 2rem 2rem; }
  .pr-package-route--mobile .pr-package-route__labels { inset: 0 auto 0 2.25rem; display: flex; width: 5rem; height: 100%; flex-direction: column; justify-content: space-between; padding-block: 1.4rem; text-align: left; }
  .pr-package-route--mobile .pr-package-route__labels span { writing-mode: vertical-rl; transform: rotate(180deg); }
  .pr-package-card { padding: 2rem; }
  .pr-package-card__description { min-height: 0; }
  .pr-package-detail > summary { min-height: 8.2rem; grid-template-columns: minmax(0,1fr) auto; gap: .35rem 1rem; }
  .pr-detail-summary__preview { grid-column: 1/-1; }
  .pr-package-detail__panel { gap: 2rem; }
  .pr-terms { grid-template-columns: 1fr; }
  .pr-commitment-route,.pr-terms__notes { grid-column: auto; }
  .pr-terms > a { grid-column: auto; }
  .pr-addon-groups { grid-template-columns: 1fr; }
  .pr-addon-group:last-child { grid-column: auto; }
  .pr-faq__list { width: 100%; }
}

@media (max-width:700px) {
  .pr-band { padding-block: 4.5rem; }
  .pr-route-choice article { min-height: 0; padding: 5.2rem 1.4rem 1.7rem; }
  .pr-package-journey { padding-left: 2.65rem; }
  .pr-package-route--mobile { left: .1rem; }
  .pr-package-route--mobile .pr-package-route__labels { left: -.2rem; width: .8rem; align-items: center; font-size: .55rem; }
  .pr-package-card { padding: 1.45rem; }
  .pr-package-card__price--custom { white-space: normal; font-size: 2.35rem; }
  .pr-sitemap { height: 8.6rem; }
  .pr-package-comparison { margin-inline: -1rem; padding: 1.15rem; border-radius: 0; }
  .pr-compare-card { padding: 1.35rem; }
  .pr-package-detail > summary { display: block; min-height: 10rem; padding: 1.4rem 4rem 1.4rem 1.25rem; }
  .pr-detail-summary__name,.pr-detail-summary__price,.pr-detail-summary__preview { display: block; }
  .pr-detail-summary__price { margin-top: .55rem; }
  .pr-detail-summary__preview { margin-top: .7rem; font-size: .9rem; }
  .pr-package-detail__panel { padding: 1.4rem; }
  .pr-partnership-card { margin-left: 0; padding: 1.55rem; }
  .pr-partnership-grid::after,.pr-partnership-card::after { display: none; }
  .pr-partnership-highlights,.pr-partnership-card .pr-check-list { grid-template-columns: 1fr; }
  .pr-partnership-highlights li { display: grid; grid-template-columns: 1fr 1fr; gap: .7rem; }
  .pr-commitment-route,.pr-terms__notes { grid-template-columns: 1fr; }
  .pr-care-reference { padding: 1.35rem; }
  .pr-addon-group { padding: 1.35rem; }
  .pr-addon-group dl div { min-height: 4.6rem; }
  .pr-visibility-grid { grid-template-columns: 1fr; }
  .pr-service-card { padding: 1.55rem; }
  .pr-service-card > div > p:last-child { min-height: 0; }
  .pr-faq summary { min-height: 5.5rem; padding: 1.3rem 3.8rem 1.3rem 1.2rem; font-size: 1rem; }
  .pr-faq details p { padding: 0 1.2rem 1.4rem; }
  .pr-final { padding-block: 5rem 7rem; }
  .pr-final__card { padding: 2rem 1.4rem 7rem; }
  .pr-final__card h2 { font-size: clamp(3rem,14vw,4.2rem); }
  .pr-final__card > p:not(.pr-eyebrow) { font-size: 1rem; text-align: left; }
  .pr-final__route { bottom: 1rem; width: 92%; height: 6.5rem; }
}

@media (prefers-reduced-motion:reduce) {
  .has-pricing-js .pr-package-route__line,.has-pricing-js .pr-final__route path { stroke-dashoffset: 0 !important; }
  .has-pricing-js .pr-package-route__marker,.has-pricing-js .pr-final__route :where(circle,path.pr-final__destination) { opacity: 1 !important; }
}
