/* Marketing refinement: retain the approved imagery, copy and component order. */
.live-home,
.lp-live,
.live-access,
.live-workshops {
  --marketing-space: clamp(48px, 5.5vw, 80px);
  --marketing-gap: clamp(28px, 4vw, 56px);
}

/* The architectural opening keeps a clear field for both the argument and image. */
.live-home .lh-hero-grid { min-height: 640px; padding-block: 88px 96px; }
.live-home .lh-hero-copy { width: 67%; max-width: 790px; }
.live-home .lh-hero h1 {
  max-width: 17ch;
  font-size: clamp(50px, 5.7vw, 82px);
  line-height: 1.08;
  letter-spacing: -.03em;
}
.live-home .lh-hero-deck { margin-top: 26px; font-size: 19px; }
.live-home .lh-hero-actions { margin-top: 30px; gap: 20px 32px; }
.live-home .review-press-inner { padding-block: 36px; }
.live-home .home-story { padding-block: var(--marketing-space); }
.home-story .home-story-section + .home-story-section { margin-top: 48px; padding-top: 48px; }
.home-story .home-story-layout { gap: var(--marketing-gap); grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr); }
.live-home .home-story h2 { margin-bottom: 26px; letter-spacing: -.025em; }
.live-home .home-story .home-story-copy > p { line-height: 1.8; }
.home-story .home-story-quote figcaption { border-left-width: 1px; }
.live-home :is(.lh-expertise, .review-testimonials) { padding-block: var(--marketing-space); }
.live-home .lh-practice-grid { gap: 32px; }
.live-home .lh-practice { border-radius: 16px; }
.live-home .lh-practice-copy { padding: 32px 32px 12px; }
.live-home .lh-practice h3 { font-size: clamp(29px, 2.6vw, 36px); line-height: 1.22; }
.live-home .lh-practice-lead { font-size: 14px; }
.live-home .lh-services li a { padding-block: 24px; gap: 18px; }
.live-home .lh-services p { max-width: 58ch; font-size: 15px; line-height: 1.75; }
.live-home .lh-feature-description { font-size: 15px; line-height: 1.75; }
.live-home .review-quotes { gap: 24px; }
.live-home .review-quote { padding: 32px; border-radius: 16px; }
.live-home .review-quote-featured { padding: 40px; }
.live-home .review-quote blockquote p { line-height: 1.45; }
.live-home .review-quote-featured blockquote p { font-size: clamp(30px, 3vw, 42px); line-height: 1.35; }
.live-home .review-quote figcaption { padding-top: 28px; }
.live-home .review-justice-inner { padding-block: var(--marketing-space); gap: 44px; }
.live-home .sp-pricing-teaser { padding-block: var(--marketing-space); }
.live-home .review-faq { padding-block: var(--marketing-space); gap: var(--marketing-gap); }
.live-home .lh-contact-panel { padding: 44px 48px; border-radius: 16px; }

/* Services: equal practice columns, comfortable list density and a firm conclusion. */
.services-overview .review-services-intro { padding-block: var(--marketing-space) 40px; }
.services-overview .review-services-intro h1 { font-size: clamp(48px, 5.4vw, 78px); }
.services-overview .review-services-intro p { font-size: 19px; }
.services-overview .review-services-body { padding-bottom: 56px; }
.services-overview .review-method { align-items: center; gap: var(--marketing-gap); padding-block: 44px 64px; }
.services-overview .review-method p { max-width: 65ch; font-size: 17px; }

/* Practice and operating-model pages share an editorial measure, not a smaller face. */
.lp-live h1 { font-size: clamp(44px, 5.2vw, 74px); line-height: 1.09; letter-spacing: -.025em; }
.lp-live h2 { line-height: 1.2; letter-spacing: -.02em; text-wrap: balance; }
.lp-live p { max-width: 70ch; font-size: 17px; line-height: 1.8; }
.lp-live .lp-deck { max-width: 55ch; font-size: 19px; line-height: 1.75; }
.lp-live :is(.lp-practice-hero, .lp-approach-hero) {
  grid-template-columns: minmax(0, 1.25fr) minmax(0, .85fr);
  gap: var(--marketing-gap);
  padding-block: 60px 64px;
}
.lp-live .lp-practice-opening h1 { max-width: 16ch; }
.lp-live .lp-lead-card { border-radius: 16px; }
.lp-live .lp-lead-portrait { height: 310px; }
.lp-live .lp-lead-copy { padding: 26px 28px; }
.lp-live .lp-lead-copy > p:nth-child(2) { font-size: 29px; }
.lp-live .lp-practice-intro { padding-block: 40px 48px; }
.lp-live .lp-intro-columns { gap: var(--marketing-gap); }
.lp-live .lp-service { grid-template-columns: minmax(0, .8fr) minmax(0, 1.45fr); gap: var(--marketing-gap); padding-block: 44px; }
.lp-live .lp-service-title h2 { max-width: 18ch; font-size: clamp(28px, 2.7vw, 36px); }
.lp-live .lp-service-copy ul { padding: 25px 28px; gap: 16px 28px; border-radius: 12px; }
.lp-live .lp-service-copy li { font-size: 15px; line-height: 1.7; }
.lp-live .lp-press-figure { margin-block: 32px 56px; padding: 32px 36px; border-radius: 16px; }
.lp-live .lp-testimonials { padding-block: 44px 64px; }
.lp-live .lp-testimonial-grid { gap: 24px; }
.lp-live .lp-testimonial { padding: 32px; border-radius: 16px; }
.lp-live .lp-testimonial p { font-size: 25px; line-height: 1.45; }

/* Pricing gives the guarantee room, then aligns the fee explanations below it. */
.lp-live .lp-pricing-hero.sp-pricing-hero { padding-block: 64px 56px; }
.lp-live .sp-pricing-hero > div:first-child { max-width: 940px; }
.lp-live .sp-pricing-hero h1 { max-width: 22ch; font-size: clamp(44px, 5.2vw, 74px); }
.lp-live .sp-pricing-hero > .sp-guarantee { margin-top: 40px; }
.lp-live .lp-price-explanation { gap: var(--marketing-gap); padding-block: 44px 48px; }
.lp-live .lp-fee-models { padding-block: 34px; margin-bottom: 56px; border-radius: 16px; }
.lp-live .lp-fee-models article { padding-inline: 30px; }
.lp-live .lp-fee-models h2 { font-size: 29px; }
.lp-live .lp-fee-models p { font-size: 16px; line-height: 1.8; }
.lp-live .lp-get-quote { gap: var(--marketing-gap); padding-bottom: 64px; }
.lp-live .lp-quote-instructions li { font-size: 17px; }

/* How We Work: clearer opening balance and a steady reading rhythm. */
.lp-live .lp-approach-hero h1 { max-width: 14ch; }
.lp-live .lp-judgment-panel { padding: 36px; border-radius: 16px; }
.lp-live .lp-judgment-panel h2 { font-size: 35px; max-width: 16ch; }
.lp-live .lp-judgment-panel p { font-size: 16px; }
.lp-live .lp-workflow { padding-block: 44px 48px; }
.lp-live .lp-workflow-panel { gap: 36px; padding: 36px; border-radius: 16px; align-items: start; }
.lp-live .lp-workflow-primary { padding-right: 36px; }
.lp-live .lp-workflow-panel p { font-size: 17px; }
.lp-live .lp-protections { gap: var(--marketing-gap); padding-block: 12px 56px; }
.lp-live .lp-clients { padding-block: 44px 64px; }
.lp-live .lp-client-benefits p { font-size: 17px; }

/* Access to Justice: the introductory argument, dockets and commentary share a grid. */
.live-access .live-intro { max-width: none; padding-block: 64px 48px; }
.live-access .live-intro h1 { max-width: 21ch; font-size: clamp(44px, 5.2vw, 74px); line-height: 1.1; }
.live-access .live-intro > p:last-child { max-width: 74ch; font-size: 18px; line-height: 1.8; }
.live-access .live-resource-section { margin-block: 0 60px; }
.live-access .live-resource-section > h2 { margin-bottom: 30px; }
.live-access .live-submissions-grid { gap: 28px; }
.live-access .live-submissions-grid .sp-docket { padding: 32px; }
.live-access .live-submissions-grid .sp-docket h3 { font-size: 29px; }
.live-access .live-commentary-grid { column-gap: 44px; }
.live-access .live-commentary { padding-block: 30px; }
.live-access .live-commentary blockquote { font-size: 25px; line-height: 1.5; }
.live-access .live-commentary figcaption { font-size: 14px; }

/* A short workshop page still needs a composed opening, not an empty second half. */
.live-workshops .live-workshop-grid {
  display: grid;
  min-height: 580px;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
  gap: var(--marketing-gap);
  padding-block: 64px;
}
.live-workshops .live-intro { padding: 0; }
.live-workshops h1 { max-width: 13ch; font-size: clamp(44px, 5.2vw, 74px); line-height: 1.1; }
.live-workshops .live-workshop-body { padding: 40px; border-radius: 16px; font-size: 18px; line-height: 1.8; }
.live-workshops .live-workshop-body .button { min-height: 48px; max-width: 100%; text-wrap: balance; }

@media (max-width: 1000px) {
  .live-home .lh-hero-copy { width: 80%; }
  .live-home .lh-hero-grid { min-height: 590px; padding-block: 72px; }
  .live-home .lh-practice-copy { padding-inline: 26px; }
  .live-home .review-quote-featured { padding: 32px; }
  .lp-live .lp-lead-portrait { height: 270px; }
  .lp-live .lp-fee-models article { padding-inline: 24px; }
  .lp-live .lp-fee-models h2 { font-size: 26px; }
  .lp-live .lp-workflow-panel { gap: 28px; padding: 28px; }
  .lp-live .lp-workflow-primary { padding-right: 28px; }
  .live-workshops .live-workshop-body { padding: 32px; }
}

@media (max-width: 760px) {
  .live-home .lh-hero-copy { width: 100%; max-width: 620px; }
  .live-home .lh-hero-grid { min-height: 570px; padding-block: 60px; }
  .live-home .lh-hero h1 { max-width: 17ch; font-size: clamp(40px, 7.3vw, 56px); line-height: 1.12; }
  .live-home .lh-hero-deck { font-size: 17px; }
  .live-home .home-story { padding-block: 48px; }
  .home-story .home-story-layout { grid-template-columns: 1fr; gap: 28px; }
  .home-story .home-story-layout-answer :is(.home-story-guarantee, .home-story-quote) { grid-column: auto; grid-row: auto; }
  .home-story .home-story-section + .home-story-section { margin-top: 40px; padding-top: 40px; }
  .live-home .lh-practice-copy { padding: 26px 24px 8px; }
  .live-home .lh-services p { font-size: 16px; }
  .live-home .review-quote { padding: 28px; }
  .live-home .review-quote blockquote p { font-size: 24px; }
  .live-home .review-quote-featured blockquote p { font-size: 32px; }
  .live-home .review-faq { gap: 28px; }
  .live-home .lh-contact-panel { padding: 30px 26px; }
  .services-overview .review-services-intro { padding-block: 44px 30px; }
  .services-overview .review-services-intro p { font-size: 17px; }
  .services-overview .review-method { display: block; padding-block: 34px 48px; }
  .lp-live h1,
  .lp-live .sp-pricing-hero h1 { font-size: clamp(40px, 7.5vw, 56px); }
  .lp-live :is(.lp-practice-hero, .lp-approach-hero) { grid-template-columns: 1fr; padding-block: 40px 44px; gap: 32px; }
  .lp-live .lp-practice-opening h1 { max-width: 19ch; }
  .lp-live .lp-service { grid-template-columns: 1fr; gap: 22px; padding-block: 34px; }
  .lp-live .lp-service-title h2 { max-width: none; font-size: 30px; }
  .lp-live .lp-service-copy ul { padding: 24px; gap: 16px 24px; }
  .lp-live .lp-service-copy li { font-size: 16px; }
  .lp-live .lp-testimonial { padding: 28px; }
  .lp-live .lp-testimonial p { font-size: 24px; }
  .lp-live .lp-press-figure { padding: 26px; margin-block: 28px 44px; }
  .lp-live .lp-pricing-hero.sp-pricing-hero { padding-block: 40px; }
  .lp-live .lp-fee-models { padding: 0 26px; margin-bottom: 44px; }
  .lp-live .lp-fee-models article { padding: 28px 0; }
  .lp-live .lp-fee-models h2 { font-size: 30px; }
  .lp-live .lp-get-quote { padding-bottom: 48px; }
  .lp-live .lp-judgment-panel { padding: 28px; }
  .lp-live .lp-judgment-panel h2 { max-width: 20ch; font-size: 32px; }
  .lp-live .lp-workflow-panel { grid-template-columns: 1fr; padding: 28px; gap: 24px; }
  .lp-live .lp-workflow-primary { padding: 0 0 24px; border-right: 0; }
  .lp-live .lp-protections { padding-bottom: 44px; }
  .lp-live .lp-clients { padding-block: 36px 48px; }
  .live-access .live-intro { padding-block: 42px 40px; }
  .live-access .live-intro h1,
  .live-workshops h1 { font-size: clamp(40px, 7.5vw, 56px); }
  .live-access .live-intro > p:last-child { font-size: 17px; }
  .live-access .live-submissions-grid .sp-docket { padding: 28px; }
  .live-access .live-commentary blockquote { font-size: 24px; }
  .live-access .live-resource-section { margin-bottom: 44px; }
  .live-workshops .live-workshop-grid { min-height: 0; grid-template-columns: 1fr; gap: 32px; padding-block: 42px 48px; }
  .live-workshops .live-workshop-body { padding: 28px; font-size: 17px; }
}

@media (max-width: 480px) {
  .live-home .lh-hero-grid { min-height: 570px; padding-block: 52px; }
  .live-home .lh-hero h1 { max-width: 16ch; font-size: clamp(36px, 9.2vw, 44px); }
  .live-home .lh-hero-actions { gap: 16px 24px; }
  .lp-live .lp-lead-copy { padding: 24px; }
  .lp-live .lp-service-copy ul { grid-template-columns: 1fr; }
  .lp-live .lp-service-title h2 { font-size: 28px; }
  .live-access .live-submissions-grid .sp-docket { padding: 26px 24px; }
}

/* Semantic section headings retain the approved practice-card typography. */
.services-overview .lh-practice .review-service-heading {
  margin: 0;
  color: var(--ink);
  font-family: var(--serif);
  font-size: clamp(29px, 2.6vw, 36px);
  font-weight: 400;
  line-height: 1.22;
  letter-spacing: -.03em;
}
/* The text credential follows the light attribution on the existing navy card. */
.lp-testimonial:nth-child(2) .review-credential-text { color: var(--paper); }

.services-overview .review-service-heading > a { display: flex; align-items: center; justify-content: space-between; gap: 22px; }
.services-overview .review-service-heading > a .lh-arrow { width: 25px; height: 25px; flex-basis: 25px; }
.services-overview .review-service-heading > a:hover { color: #53695f; }
.services-overview .lh-services h3 { margin: 0; font: 550 16px/1.5 var(--sans); letter-spacing: -.01em; text-wrap: pretty; }
@media (max-width: 720px) {
  .services-overview .review-service-heading > a { gap: 18px; }
  .services-overview .review-service-heading > a .lh-arrow { width: 22px; height: 22px; flex-basis: 22px; }
  .services-overview .lh-services h3 { font-size: 15px; }
}
