
/* services-page sections (page-specific; the shared shell lives in site/site.css) */
.svc-price{margin-top:1.4rem;font-family:var(--serif);font-weight:600;font-size:1.6rem;letter-spacing:var(--track-h3);white-space:nowrap}
.svc-price span{font-size:var(--t-small);font-weight:var(--w-4);color:var(--lt-3);letter-spacing:0;margin-left:0.4rem}
.svc-link{margin-top:2.2rem}
.lede a,.prose a:not(.tlink):not(.btn){color:var(--peri)}   /* round 70: :not(.btn) scopes the pill out, so a .btn inside .prose keeps its own paper text and its --btn-hover fill (the round-69 Buy the Audit pill inherited periwinkle text here). The in-lede link ink; round 47's audit-section Included-in-every-Growth-service link rides the same rule (folded back from its body block in round 49, head writes accepted again) */
.svc-steps{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:2rem 2.4rem;margin-top:2.4rem}
.svc-steps li{border-top:1px solid var(--hair-strong);padding-top:1.1rem}
.svc-steps h3,.steps4 h3{font-family:var(--serif);font-weight:600;font-size:1.15rem;letter-spacing:var(--track-h3)}
.svc-steps li>p:last-child,.steps4 li>p:last-child{margin-top:0.6rem;color:var(--lt-2)}
.tiers{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.6rem;margin-top:3rem}
.tier{border:1px solid var(--hair-strong);padding:2rem 1.9rem;display:flex;flex-direction:column}   /* round 69: a flex column, as pricing's .tier, so the description takes the free height and the three Stripe buttons share one baseline */
.tier h3{font-family:var(--serif);font-weight:600;font-size:1.3rem;letter-spacing:var(--track-h3)}
.tier-price{margin-top:0.9rem;font-family:var(--serif);font-weight:600;font-size:1.6rem;white-space:nowrap}
.tier-price span{font-size:var(--t-small);font-weight:var(--w-4);color:var(--lt-3)}
.tier-min{font-size:var(--t-small);font-weight:var(--w-4);color:var(--lt-3)}   /* round 75 (Max): the commitment line directly under the price, in the price lockup's unit register (.tier-price span: --t-small, 400, --lt-3); verbatim twin of services.html/pricing.html on Growth/Accelerate/Dominate; pricing's All-In carries it too (under its words line, so the four 4-up header zones match and the taglines share one top) */
.tier-tag{margin-top:0.9rem;font-weight:var(--w-5)}
.tier>p.tier-body{margin-top:0.6rem;color:var(--lt-2);flex:1 1 auto}   /* round 69: was .tier>p:last-child; the CTA block is now the last child, so the body takes pricing's class and pricing's rule */
.tier-cta{margin-top:auto;padding-top:1.6rem}   /* round 69: pricing's CTA block rule verbatim (the three tier cards; since round 70 the Audit and Clean-Up blocks carry their pill and tlink on one .cta-row instead) */
.tier-alt{margin-top:1.2rem;color:var(--lt-2)}   /* round 69: pricing's round-57 alt line verbatim (body size, --lt-2, in-prose link grammar) */
.tier-alt a{color:var(--peri)}
/* round 72: the tier matrix replaces the round-7 comparison table (round 74: it is the one full comparison under the cards, 16 rows, with no heading and no checklist above it; the header cells carry the tier name at the card-title size over its price in the body register). The row labels ride the muted label register; values stay in the body register, centered under their tier heads. .ck is the check glyph (ink, SVG mask, so it takes currentColor); .cmp-no is the CSS-drawn not-included mark. Below 600 each row restacks: its label on its own line, the three values beneath, each captioned by its tier name from data-tier */
.cmp{margin-top:3rem;border:1px solid var(--hair)}   /* round 74: 3rem under the cards, the step the round-73 checklist held */
.cmp-table{width:100%;table-layout:fixed;border-collapse:collapse;text-align:left}   /* fixed: the label column takes 34% and the three tier columns split the rest evenly, whatever their copy length */
.cmp-table th,.cmp-table td{padding:0.9rem 1.2rem;border-bottom:1px solid var(--hair);font-weight:var(--w-4);font-size:var(--t-body);vertical-align:top}
.cmp-table thead th{font-family:var(--serif);font-size:1.3rem;font-weight:600;letter-spacing:0;vertical-align:bottom}   /* round 73: the tier names at the .tier h3 size and weight, sentence case, no tracking */
.cmp-table thead th:first-child{width:34%}
.cmp-table thead th:not(:first-child),.cmp-table td{text-align:center}   /* round 74: values centered under their tier heads */
.cmp-price{display:block;margin-top:0.2rem;font-size:var(--t-body);font-weight:var(--w-4);color:var(--lt-2)}   /* round 74: the header's second line, the price in the body register (not the small label style) */
.cmp-table tbody th{color:var(--lt-3);font-size:var(--t-small)}
.cmp-table tbody th,.cmp-table td{line-height:1.6rem}
.cmp-table tr:last-child th,.cmp-table tr:last-child td{border-bottom:0}
.ck{display:inline-block;width:1rem;height:1rem;vertical-align:-0.15rem;color:var(--lt);background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M2.5 8.5l3.5 3.5 7.5-8' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M2.5 8.5l3.5 3.5 7.5-8' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat}
.cmp-no{display:inline-block;width:0.75rem;height:1.5px;vertical-align:0.3rem;background:var(--lt-3);opacity:0.6}
@media (forced-colors:active){.ck,.cmp-no{background:CanvasText;forced-color-adjust:none}}
.sec-fact{margin-top:1.4rem;font-weight:var(--w-5);color:var(--lt)}   /* round 73: pricing's round-55 fact-line register (body size, 500 weight, full ink), back on /services under the head lede; rule and copy are verbatim twins of pricing.html */
@media (max-width:600px){
  .cmp-table,.cmp-table tbody,.cmp-table tr{display:block}
  .cmp-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .cmp-table tbody tr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0.3rem 1rem;padding:1rem 1.1rem;border-bottom:1px solid var(--hair)}
  .cmp-table tbody tr:last-child{border-bottom:0}
  .cmp-table tbody th,.cmp-table td{display:block;padding:0;border-bottom:0;text-align:left}
  .cmp-table tbody th{grid-column:1/-1;margin-bottom:0.3rem}
  .cmp-table td::before{content:attr(data-tier);display:block;font-size:var(--t-label);font-weight:var(--w-6);letter-spacing:0.14em;text-transform:uppercase;color:var(--lt-3);line-height:var(--lh-sub);margin-bottom:0.2rem}   /* 0.14em, not --track: ACCELERATE at the full 0.22em nearly met DOMINATE in a 390 third */
}
/* round 14: the All-In band steps up to the section's destination: the
   name takes the section-head register, the frame is a full periwinkle
   hairline (--peri on light per the two-home rule), the copy steps one
   size to the lede register, and the band carries its /pricing tlink
   beside the consultation CTA */
.allin-band{border:1px solid var(--peri);background:var(--field-2);padding:3rem;display:flex;justify-content:space-between;align-items:center;gap:2.5rem;flex-wrap:wrap}
.allin-h{font-family:var(--serif);font-weight:600;font-size:var(--t-disp2);letter-spacing:var(--track-serif);line-height:var(--lh-disp)}
.allin-sub{margin-top:1rem;font-size:var(--t-lede);color:var(--lt-2);max-width:34em}
.allin-band .svc-link{margin-top:1.4rem}
.steps4{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2.2rem;margin-top:3rem}
.steps4 li{border-top:1px solid var(--hair-strong);padding-top:1.1rem}
.step-num{font-size:var(--t-idx);font-weight:var(--w-5);color:var(--peri);margin-bottom:0.5rem}
@media (max-width:991px){.tiers{grid-template-columns:1fr}.steps4{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.svc-steps{grid-template-columns:1fr}.steps4{grid-template-columns:1fr}}
