.service-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(280px, .55fr);
  gap: 1rem;
  padding: 1rem;
  background: #e7dfd2;
  border-inline: 1px solid var(--line);
}
.service-panel { background: var(--card); border: 1px solid var(--line); padding: 1.25rem; }
.service-panel h3 { margin: .2rem 0 1rem; font: 1.5rem Georgia, "Songti SC", serif; }
.service-panel h4 { margin: 1.3rem 0 .35rem; color: var(--red); }
.service-panel p { white-space: pre-line; }
.panel-kicker { margin: 0; color: var(--red); font-weight: 850; }
.compare-scroll { overflow-x: auto; border: 1px solid var(--line); }
.compare-table { width: 100%; min-width: 680px; border-collapse: collapse; background: #fff; }
.compare-table th, .compare-table td { padding: .75rem .8rem; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; white-space: pre-line; }
.compare-table thead th { background: var(--red2); color: #fff; text-align: center; }
.compare-table tbody th { width: 25%; background: #eee7dc; color: #303638; }
.compare-table td { text-align: center; }
.compare-table tr:last-child th, .compare-table tr:last-child td { border-bottom: 0; }
.compare-table th:last-child, .compare-table td:last-child { border-right: 0; }
.service-link a { color: var(--red); font-weight: 750; }
.service-callout { padding: .8rem 1rem; background: #ead8a8; border-left: 4px solid var(--gold); }
.price-copy { white-space: pre-line; padding: 1rem; background: #f2eee7; border-left: 4px solid var(--red); font-weight: 700; }
.experience-panel { grid-column: 1 / -1; }
.experience-panel p { margin: 0; white-space: pre-line; }
.service-gallery { border-top: 1px solid var(--line); }
@media (max-width: 950px) {
  .service-layout { grid-template-columns: 1fr; }
  .experience-panel { grid-column: auto; }
}
