/* Only the general homepage: the clinic layout remains in styles.css. */
.projects-page .hero {
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(240px, 0.65fr);
  gap: 56px;
  align-items: center;
}

.project-portrait img {
  width: 100%;
  height: 370px;
  object-fit: cover;
  object-position: center 24%;
  border-radius: 24px;
}

.project-portrait figcaption { margin-top: 16px; color: var(--petrol); }
.project-portrait strong { display: block; font-size: 20px; }
.project-portrait span { display: block; margin-top: 6px; color: var(--muted); font-size: 14px; line-height: 1.5; }
.projects-page .hero-actions { flex-wrap: wrap; }
.projects-page .section-heading h2 { max-width: 850px; }
.projects-page .approach-section .step-row { grid-template-columns: 40px minmax(0, 0.7fr) minmax(0, 1.3fr); }
.project-working-notes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px; margin-top: 32px; padding: 28px; border-radius: 20px; background: var(--sage); }
.project-working-notes h3 { margin: 0 0 12px; color: var(--petrol); font-size: 18px; }
.project-working-notes p, .project-agreement { color: var(--muted); font-size: 15px; line-height: 1.65; }
.project-agreement { max-width: 850px; margin-top: 24px; }
.projects-page .testimonial-section { width: 100%; padding: 40px 0 0; }

.projects-page .project-services .problem-card h3 { margin-top: 0; }
.projects-page .project-staff-task .card-cta { position: static; display: block; margin-top: 16px; }
.projects-page .project-staff-task p { padding-bottom: 0; }

.project-benefits-list { max-width: 950px; margin: 0; padding: 0; list-style: none; }
.project-benefits-list > li { display: grid; grid-template-columns: 22px minmax(0, 1fr); gap: 16px; padding: 22px 0; border-top: 1px solid var(--line); }
.project-benefits-list > li:last-child { padding-bottom: 0; }
.benefit-icon { width: 22px; height: 22px; margin-top: 2px; color: var(--muted); fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.project-benefits-list h3 { margin: 0; color: var(--petrol); font-size: 18px; line-height: 1.4; text-wrap: pretty; }
.project-benefits-list p { margin: 0; color: var(--muted); font-size: 16px; line-height: 1.65; }

.delay-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr); gap: 48px; align-items: start; }
.delay-copy, .delay-example { color: var(--muted); font-size: 16px; line-height: 1.65; }
.delay-copy p { margin: 0 0 18px; }
.delay-copy p:last-child { margin-bottom: 0; }
.delay-questions { margin: 0 0 18px; padding-left: 22px; }
.delay-questions li + li { margin-top: 8px; }
.delay-example { padding: 28px; border-radius: 20px; background: var(--sage); }
.delay-example h3 { margin: 0; color: var(--petrol); font-size: 20px; }
.delay-case h3 { line-height: 1.35; text-wrap: pretty; }
.delay-case h4 { margin: 24px 0 12px; color: var(--petrol); font-size: 16px; }
.delay-case p { margin: 16px 0 0; }
.delay-case .section-kicker { margin: 0 0 16px; }
.delay-case ul { margin: 0; padding-left: 22px; }
.delay-case li + li { margin-top: 10px; }
.delay-estimate { margin-top: 24px; padding-top: 24px; border-top: 1px solid var(--line); }
.delay-estimate h4 { margin-top: 0; }
.delay-formula { color: var(--petrol); font-weight: 700; }
.delay-case .delay-source { margin-top: 24px; font-size: 13px; }
.delay-example .delay-metric { margin: 18px 0; color: var(--petrol); font-family: Georgia, 'Times New Roman', serif; font-size: 28px; line-height: 1.25; }
.delay-link, .project-motivation-copy a { color: var(--petrol); text-decoration: underline; text-underline-offset: 4px; }
.project-motivation-copy .project-training { margin-top: 16px; font-size: 13px; }

.project-motivation-copy, .project-pricing-copy { max-width: 850px; color: var(--muted); font-size: 16px; line-height: 1.65; }
.project-motivation-copy p, .project-pricing-copy p { margin: 0 0 18px; }
.project-pricing-copy p:last-child { margin-bottom: 0; }
.project-pricing-copy strong { color: var(--petrol); }
.project-motivation-copy .project-motivation-goal { margin: 24px 0 0; padding-left: 20px; border-left: 3px solid var(--sand); color: var(--petrol); }
.project-motivation-goal + p { margin-top: 24px; }
.project-motivation .project-pricing { margin-top: 36px; }
.project-motivation .project-pricing h3 { margin: 0 0 24px; color: var(--petrol); font-family: Georgia, 'Times New Roman', serif; font-size: 24px; font-weight: 500; line-height: 1.3; }

@media (max-width: 900px) {
  .projects-page .hero { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .project-portrait { display: flex; align-items: center; gap: 18px; }
  .project-portrait img { width: 88px; height: 104px; flex: none; border-radius: 16px; }
  .project-portrait figcaption { margin: 0; }
  .projects-page .main-nav { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .projects-page .main-nav a { grid-column: span 2; padding-inline: 4px; }
  .projects-page .main-nav a:nth-child(-n + 2) { grid-column: span 3; }
}

@media (max-width: 720px) {
  .projects-page .approach-section .step-row { grid-template-columns: 32px minmax(0, 1fr); gap: 12px; }
  .projects-page .approach-section .step-row p { grid-column: 2; }
  .project-working-notes { grid-template-columns: minmax(0, 1fr); gap: 24px; padding: 24px; }
  .delay-layout { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .delay-example { padding: 24px; }
  .projects-page .hero-lead { margin-top: 20px; }
  .projects-page .hero-actions { margin-top: 24px; }
}
