/* Four service pages, composed from the existing Paak roles and media rhythm. */
.inner-page--service-detail {
  --service-media-ratio: 16 / 9;
  --service-panel: #f5f5f5;
}
.service-opening {
  padding-bottom: var(--paak-lower-heading-gap);
}
.service-breadcrumb a {
  text-decoration: underline;
}
.service-definition {
  grid-column: 7 / -1;
  max-width: var(--paak-lower-copy-measure);
}
.service-section {
  padding: 0 var(--paak-lower-gutter) var(--paak-lower-section-space);
}
.service-section-head {
  align-items: start;
  margin-bottom: var(--paak-lower-heading-gap);
}
.service-section-head h2 {
  grid-column: 1 / span 5;
}
.service-section-head > p {
  grid-column: 7 / -1;
  max-width: var(--paak-lower-copy-measure);
}
.inner-page--service-detail h2 {
  letter-spacing: var(--paak-tracking-statement);
}
.service-showcase {
  padding: 0 var(--paak-lower-gutter) var(--paak-lower-section-space);
  align-items: start;
}
.service-showcase > .service-media {
  grid-column: 1 / span 8;
}
.service-showcase-note {
  grid-column: 9 / -1;
  margin-top: var(--paak-lower-section-compact);
}
.inner-page--service-detail .service-showcase-note h2 {
  font-size: var(--paak-type-heading);
  letter-spacing: var(--paak-tracking-heading);
}
.service-showcase-note > p {
  margin-top: var(--paak-lower-copy-gap);
  max-width: var(--paak-lower-copy-measure);
}
.service-media > :is(img, video) {
  width: 100%;
  height: auto;
  aspect-ratio: var(--service-media-ratio);
  object-fit: cover;
  object-position: center top;
  background: var(--service-panel);
}
.service-media figcaption {
  margin-top: var(--paak-lower-copy-gap);
  color: var(--paak-muted-on-light);
}
.service-media {
  min-width: 0;
}
.service-media-placeholder {
  width: 100%;
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: var(--paak-lower-copy-gap);
  padding: var(--paak-lower-row-space);
  background: var(--service-panel);
  border: 1px solid var(--paak-border-on-light);
  text-align: center;
}
.service-media-format {
  color: var(--paak-muted-on-light);
}
.service-media-slot-title {
  font-size: var(--paak-type-heading);
  line-height: var(--paak-leading-heading);
  letter-spacing: var(--paak-tracking-heading);
}
.service-media-slot-note {
  max-width: 32ch;
  color: var(--paak-muted-on-light);
}
.service-media-placeholder > * {
  max-width: 100%;
}
.service-needs > h2 {
  grid-column: 1 / span 4;
}
.service-needs-copy {
  grid-column: 7 / -1;
}
.service-needs-copy > p {
  max-width: var(--paak-lower-copy-measure);
}
.service-needs-copy ul {
  margin-top: var(--paak-lower-row-space);
  padding-left: 1em;
}
.service-needs-copy li + li {
  margin-top: 1rem;
}
.service-capabilities {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--paak-lower-heading-gap) var(--paak-lower-row-space);
  margin-left: 25.35%;
}
.service-capabilities--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-left: 0;
}
.service-capability {
  border-top: 1px solid var(--paak-border-on-light);
  padding-top: var(--paak-lower-copy-gap);
}
.service-capability-number {
  display: block;
  margin-bottom: var(--paak-lower-row-space);
}
.service-capability > p {
  margin-top: var(--paak-lower-copy-gap);
  max-width: 36ch;
}
.service-capability ul {
  list-style: none;
  padding: 0;
  margin-top: var(--paak-lower-copy-gap);
  color: var(--paak-muted-on-light);
  font-size: var(--paak-type-label);
  line-height: var(--paak-leading-body);
  letter-spacing: var(--paak-tracking-body);
}
.service-gallery {
  align-items: start;
}
.service-gallery > .service-media:first-child {
  grid-column: 1 / span 8;
}
.service-gallery > .service-media:last-child {
  grid-column: 9 / -1;
  margin-top: var(--paak-lower-section-compact);
}
.service-handover {
  align-items: start;
}
.service-handover-heading {
  grid-column: 1 / span 5;
}
.service-handover-heading > p {
  margin-top: var(--paak-lower-row-space);
  max-width: var(--paak-lower-copy-measure);
}
.service-handover-list {
  grid-column: 7 / -1;
}
.service-handover-list ul {
  padding: 0;
  list-style: none;
  margin-block: var(--paak-lower-row-space);
}
.service-handover-list li {
  border-top: 1px solid var(--paak-border-on-light);
  padding-block: var(--paak-lower-copy-gap);
}
.service-handover-list > p {
  color: var(--paak-muted-on-light);
  max-width: var(--paak-lower-copy-measure);
}
.service-approach ol {
  list-style: none;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: var(--paak-lower-gap);
}
.service-approach li {
  padding-top: var(--paak-lower-copy-gap);
  border-top: 1px solid var(--paak-border-on-light);
}
.service-approach li > span {
  display: block;
  margin-bottom: var(--paak-lower-row-space);
}
.service-approach li > p {
  margin-top: var(--paak-lower-copy-gap);
}
.service-examples {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: var(--paak-lower-gap);
  align-items: start;
}
.service-examples > .service-media {
  grid-column: 1 / -1;
}
.service-example:nth-child(2) {
  margin-top: var(--paak-lower-section-compact);
}
.service-example a {
  display: block;
  text-decoration: none;
}
.service-example a:hover h3 {
  text-decoration: underline;
}
.service-example img {
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  object-position: center top;
}
.service-example-caption {
  display: grid;
  grid-template-columns: minmax(0, 4fr) minmax(0, 6fr);
  gap: var(--paak-lower-gap);
  margin-top: var(--paak-lower-copy-gap);
}
.service-example-caption > p {
  color: var(--paak-muted-on-light);
}
.service-distinction {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--paak-lower-row-space);
}
.service-distinction article {
  padding-top: var(--paak-lower-copy-gap);
  border-top: 1px solid var(--paak-border-on-light);
}
.service-distinction article > p {
  margin-top: var(--paak-lower-row-space);
  max-width: var(--paak-lower-copy-measure);
}
.service-source {
  grid-column: 1 / -1;
}
.service-faq h2 {
  margin-bottom: var(--paak-lower-heading-gap);
}
.service-faq ol {
  list-style: none;
  padding: 0;
}
.service-faq li {
  border-top: 1px solid var(--paak-border-on-light);
}
.service-faq li:last-child {
  border-bottom: 1px solid var(--paak-border-on-light);
}
.service-faq summary {
  display: grid;
  grid-template-columns: var(--paak-lower-grid);
  gap: var(--paak-lower-gap);
  position: relative;
  min-height: var(--paak-hit-target);
  padding-block: var(--paak-lower-copy-gap);
  list-style: none;
  cursor: pointer;
  font-size: var(--paak-type-conversation);
  line-height: var(--paak-leading-emphasis);
  letter-spacing: var(--paak-tracking-emphasis);
}
.service-faq summary::-webkit-details-marker {
  display: none;
}
.service-faq-number {
  grid-column: 1 / span 3;
}
.service-faq summary > span:last-child {
  grid-column: 4 / -1;
  padding-right: var(--paak-hit-target);
}
.service-faq summary::before,
.service-faq summary::after {
  content: "";
  position: absolute;
  right: 0;
  top: calc(var(--paak-lower-copy-gap) + 0.55em);
  width: 18px;
  height: 1.5px;
  background: currentColor;
}
.service-faq summary::after {
  transform: rotate(90deg);
}
.service-faq details[open] summary::after {
  transform: rotate(0deg);
}
.service-faq summary:hover > span:last-child {
  text-decoration: underline;
}
.service-faq-answer {
  display: grid;
  grid-template-columns: var(--paak-lower-grid);
  gap: var(--paak-lower-gap);
  padding-bottom: var(--paak-lower-row-space);
}
.service-faq-answer p {
  grid-column: 4 / span 8;
  max-width: var(--paak-inner-article-measure);
  font-size: var(--paak-type-conversation);
  line-height: var(--paak-leading-emphasis);
  letter-spacing: var(--paak-tracking-emphasis);
}
.service-next {
  border-top: 1px solid var(--paak-border-on-light);
  padding-top: var(--paak-lower-heading-gap);
}
.service-next > div {
  grid-column: 1 / span 5;
}
.service-next > div > p {
  margin-top: var(--paak-lower-row-space);
  max-width: var(--paak-lower-copy-measure);
}
.service-next > nav {
  grid-column: 9 / -1;
}
.service-next ul {
  list-style: none;
  padding: 0;
  margin-top: var(--paak-lower-row-space);
}
.service-next li + li {
  margin-top: var(--paak-lower-copy-gap);
}
@media (width < 1024px) {
  .service-capabilities {
    margin-left: 0;
  }
  .service-approach ol {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    row-gap: var(--paak-lower-heading-gap);
  }
  .service-example-caption {
    grid-template-columns: minmax(0, 1fr);
    gap: 1rem;
  }
}
@media (width < 768px) {
  .service-definition,
  .service-section-head h2,
  .service-section-head > p,
  .service-showcase > .service-media,
  .service-showcase-note,
  .service-needs > h2,
  .service-needs-copy,
  .service-gallery > .service-media:first-child,
  .service-gallery > .service-media:last-child,
  .service-handover-heading,
  .service-handover-list,
  .service-next > div,
  .service-next > nav {
    grid-column: 1 / -1;
  }
  .service-section-head,
  .service-needs,
  .service-handover,
  .service-next {
    row-gap: var(--paak-lower-row-space);
  }
  .service-showcase-note,
  .service-gallery > .service-media:last-child {
    margin-top: var(--paak-lower-row-space);
  }
  .service-capabilities,
  .service-capabilities--3,
  .service-distinction,
  .service-examples {
    grid-template-columns: minmax(0, 1fr);
  }
  .service-gallery {
    row-gap: var(--paak-lower-row-space);
  }
  .service-gallery > .service-media:last-child {
    width: 75%;
    justify-self: end;
    margin-top: 0;
  }
  .service-media-placeholder {
    min-height: 26rem;
    padding: var(--paak-lower-copy-gap);
  }
  .service-approach ol {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: var(--paak-lower-gap);
  }
  .service-approach li:last-child {
    grid-column: 1 / -1;
    max-width: 42ch;
  }
  .service-example:nth-child(2) {
    margin-top: var(--paak-lower-row-space);
  }
  .service-faq-number {
    grid-column: 1;
  }
  .service-faq summary > span:last-child,
  .service-faq-answer p {
    grid-column: 2 / -1;
  }
}

/* Match current Home type roles; the older inner-page defaults predate this scale. */
@media (width >= 1024px) {
  .inner-page--service-detail {
    --paak-home-type-progress: calc((100vw - 1512px) / 1048px);
    --paak-type-section: clamp(
      33px,
      calc(40px + 16px * var(--paak-home-type-progress)),
      56px
    );
    --paak-type-feature: var(--paak-type-section);
    --paak-type-heading: clamp(
      22px,
      calc(26px + 8px * var(--paak-home-type-progress)),
      34px
    );
    --paak-type-caption: clamp(
      22px,
      calc(23.5px + 6.5px * var(--paak-home-type-progress)),
      30px
    );
  }
}
@media (width >= 1651px) {
  .inner-page--service-detail {
    --paak-services-heading-size: calc(64px * 100vw / 1512px);
    --paak-home-composition-scale: calc(100vw / 1651px);
    --paak-type-statement: calc(64px * 100vw / 1512px);
    --paak-type-section: calc(
      42.1221374px * var(--paak-home-composition-scale)
    );
    --paak-type-feature: var(--paak-type-section);
    --paak-type-heading: calc(
      27.0610687px * var(--paak-home-composition-scale)
    );
    --paak-type-caption: calc(
      24.36211832px * var(--paak-home-composition-scale)
    );
  }
}
@media (width >= 1024px) {
  .inner-page--service-detail :is(.paak-contact-close, .paak-contact-footer) {
    --paak-type-statement: clamp(
      60px,
      calc(77.6992px + 24.3008px * var(--paak-home-type-progress)),
      102px
    );
  }
}
@media (width >= 1651px) {
  .inner-page--service-detail :is(.paak-contact-close, .paak-contact-footer) {
    --paak-type-statement: calc(
      80.92287557px * var(--paak-home-composition-scale)
    );
    --paak-lower-section-space: calc(
      131.0894px * var(--paak-home-composition-scale)
    );
  }
}

/* Website correction: use the current About opening and information band. */
.service-opening--about {
  --service-about-display: clamp(
    27.0434px,
    calc(27.0434px + (65.1067 - 27.0434) * (100vw - 390px) / 1122),
    65.1067px
  );
  --service-about-indent: 16.1329%;
  min-height: 90svh;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: var(--paak-inner-header-height) var(--paak-lower-gutter) 100px;
}
.inner-page--service-detail .service-opening--about h1 {
  font-size: var(--service-about-display);
  line-height: 1.0806;
  letter-spacing: -0.01905em;
  text-indent: var(--service-about-indent);
  text-wrap: wrap;
}
.service-about-info {
  margin: 0 var(--paak-lower-gutter);
  padding: 16px 0 140px;
  border-top: 1px solid var(--paak-border-on-light);
  align-items: start;
}
.service-about-label {
  grid-column: 1 / span 6;
}
.inner-page--service-detail .service-about-label h2 {
  font-size: var(--paak-type-label);
  line-height: 1.2;
  letter-spacing: var(--paak-tracking-body);
}
.service-about-label .service-breadcrumb {
  margin-top: var(--paak-lower-copy-gap);
}
.service-about-info .service-definition {
  grid-column: 7 / span 4;
  line-height: 1.2;
}
.service-about-context {
  margin-top: 64px;
}

/* Website process: the existing Home title-left / explanation-right chapter. */
.service-process-home {
  align-items: start;
}
.service-process-home > h2 {
  grid-column: 1 / span 4;
}
.service-process-home-detail {
  grid-column: 5 / -1;
}
.service-process-home-intro {
  max-width: 42ch;
  font-size: var(--paak-type-heading);
  line-height: var(--paak-leading-heading);
  letter-spacing: var(--paak-tracking-heading);
}
.service-process-home ol {
  list-style: none;
  padding: 0;
  margin-top: var(--paak-lower-heading-gap);
}
.service-process-home li {
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: var(--paak-lower-gap);
  border-top: 1px solid var(--paak-border-on-light);
  padding-top: var(--paak-approach-row-top);
  padding-bottom: var(--paak-approach-row-bottom);
}
.service-process-home li > h3 {
  grid-column: 1 / span 2;
  font-size: var(--paak-type-body);
  line-height: var(--paak-leading-body);
  letter-spacing: var(--paak-tracking-body);
}
.service-process-home li > p {
  grid-column: 3 / -1;
  max-width: 42ch;
  color: var(--paak-surface-dark);
}
@media (width >= 1512px) {
  .service-opening--about {
    --service-about-display: calc(65.1067px * var(--scale));
  }
}
@media (width < 1024px) {
  .service-process-home {
    grid-template-columns: minmax(0, 1fr);
    row-gap: var(--paak-lower-row-space);
  }
  .service-process-home > h2,
  .service-process-home-detail {
    grid-column: 1;
  }
}
@media (width < 768px) {
  .service-opening--about {
    --service-about-indent: 0%;
    padding-bottom: 62.4078px;
  }
  .service-about-info {
    padding-bottom: 100px;
  }
  .service-about-label {
    grid-column: 1 / span 3;
  }
  .service-about-info .service-definition {
    grid-column: 4 / -1;
  }
  .service-about-context {
    margin-top: 40px;
  }
  .service-process-home {
    row-gap: var(--paak-lower-copy-gap);
  }
  .service-process-home li {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
  .service-process-home li > h3,
  .service-process-home li > p {
    grid-column: 1 / -1;
  }
}

/* Quiet canvas with the main-page opening cut and a centred service title. */
.inner-page--service-detail {
  --service-section-space: 24rem;
  --service-heading-space: 8rem;
}
.service-section {
  padding-bottom: var(--service-section-space);
}
.service-section-head {
  margin-bottom: var(--service-heading-space);
}
.service-opening--canvas {
  position: relative;
  isolation: isolate;
  display: grid;
  place-items: center;
  min-height: 90svh;
  border-bottom: 1px solid var(--paak-border-on-light);
  padding: var(--paak-inner-header-height) var(--paak-lower-gutter);
}
.service-hero-background {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
}
.inner-page--service-detail .service-opening--canvas h1 {
  position: relative;
  z-index: 1;
  max-width: 100%;
  font-size: clamp(52px, 8.83333vw, 226px);
  line-height: 1.1;
  letter-spacing: -0.03em;
  text-align: center;
  text-wrap: balance;
}
.service-opening--canvas + .service-scope,
.service-opening--canvas + .service-distinction {
  padding-top: max(10svh, var(--paak-lower-section-compact));
}
.service-scope--featured .service-section-head h2 {
  grid-column: 1 / span 6;
  font-size: var(--paak-type-statement);
  line-height: var(--paak-leading-statement);
  letter-spacing: var(--paak-tracking-statement);
  text-indent: 15.278vw;
  text-wrap: wrap;
}
.service-scope--featured .service-definition {
  grid-column: 7 / -1;
  padding-top: var(--paak-lower-copy-gap);
}
.service-scope--featured .service-capabilities {
  display: block;
  margin-left: 0;
}
.service-scope--featured .service-capability {
  display: grid;
  grid-template-columns: var(--paak-lower-grid);
  gap: var(--paak-lower-copy-gap) var(--paak-lower-gap);
  padding-block: var(--paak-lower-row-space);
  align-items: start;
}
.service-scope--featured .service-capability:last-child {
  border-bottom: 1px solid var(--paak-border-on-light);
}
.service-scope--featured .service-capability-number {
  grid-column: 1 / span 4;
  grid-row: 1 / span 2;
  margin: 0;
  font-size: var(--paak-type-section);
  line-height: var(--paak-leading-heading);
  letter-spacing: var(--paak-tracking-heading);
}
.service-scope--featured .service-capability h3 {
  grid-column: 5 / span 2;
  grid-row: 1 / span 2;
  min-width: 0;
  font-size: var(--paak-type-body);
  overflow-wrap: break-word;
  line-height: var(--paak-leading-body);
  letter-spacing: var(--paak-tracking-body);
}
.service-capability-title-line {
  display: inline;
  white-space: normal;
}
.service-nobr {
  white-space: nowrap;
}
@media (width >= 1512px) {
  .service-capability-title-line--balanced {
    display: block;
  }
}
.service-scope--featured .service-capability > p {
  grid-column: 7 / -1;
  grid-row: 1;
  margin: 0;
}
.service-scope--featured .service-capability ul {
  grid-column: 7 / -1;
  grid-row: 2;
  margin: 0;
  color: var(--paak-surface-dark);
}

/* Handover and process share the same title, intro and detail anchors. */
.service-handover--aligned > h2 {
  grid-column: 1 / span 4;
}
.service-chapter-detail {
  grid-column: 5 / -1;
}
.service-chapter-intro {
  max-width: 42ch;
  font-size: var(--paak-type-heading);
  line-height: var(--paak-leading-heading);
  letter-spacing: var(--paak-tracking-heading);
}
.service-chapter-detail > ul {
  list-style: none;
  padding: 0;
  margin-top: var(--paak-lower-heading-gap);
}
.service-chapter-detail > ul > li {
  border-top: 1px solid var(--paak-border-on-light);
  padding-block: var(--paak-lower-copy-gap);
}
.service-handover-note {
  margin-top: var(--paak-lower-row-space);
  max-width: 42ch;
  color: var(--paak-muted-on-light);
}
@media (width < 1024px) {
  .service-scope--featured .service-section-head h2 {
    text-indent: 0;
  }
  .service-handover--aligned {
    grid-template-columns: minmax(0, 1fr);
    row-gap: var(--paak-lower-row-space);
  }
  .service-handover--aligned > h2,
  .service-handover--aligned > .service-chapter-detail {
    grid-column: 1;
  }
}
@media (width < 1200px) {
  .service-scope--featured .service-section-head h2,
  .service-scope--featured .service-definition {
    grid-column: 1 / -1;
  }
  .service-scope--featured .service-definition {
    padding-top: 0;
  }
  .service-scope--featured .service-capability {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    padding-block: var(--paak-lower-row-space);
  }
  .service-scope--featured .service-capability-number {
    grid-column: 1;
    grid-row: 1;
    font-size: var(--paak-type-body);
  }
  .service-scope--featured .service-capability h3 {
    grid-column: 2 / -1;
    grid-row: 1;
    font-size: var(--paak-type-body);
    line-height: var(--paak-leading-body);
    letter-spacing: var(--paak-tracking-body);
  }
  .service-scope--featured .service-capability > p {
    grid-column: 2 / -1;
    grid-row: 2;
  }
  .service-scope--featured .service-capability ul {
    grid-column: 2 / -1;
    grid-row: 3;
  }
}
@media (width < 768px) {
  .inner-page--service-detail {
    --service-section-space: 12rem;
    --service-heading-space: 6rem;
  }
  .service-handover--aligned {
    row-gap: var(--paak-lower-copy-gap);
  }
}

/* Lower chapters use the scope's label and copy anchors. */
.service-title-line {
  display: block;
  white-space: nowrap;
}
.service-handover--aligned > h2,
.service-process-home > h2,
.service-evidence .service-section-head h2,
.service-next > h2 {
  grid-column: 1 / span 4;
}
.service-chapter-detail,
.service-process-home > .service-chapter-intro,
.service-next > div,
.service-next > nav {
  grid-column: 7 / -1;
}
.service-process-home {
  row-gap: var(--paak-lower-heading-gap);
}
.service-process-home > ol {
  grid-column: 5 / -1;
  margin-top: 0;
}
.service-process-home li > h3 {
  font-size: var(--paak-type-body);
  line-height: var(--paak-leading-body);
  letter-spacing: var(--paak-tracking-body);
}
.service-next > div > p {
  margin-top: 0;
}
.service-next > nav {
  margin-top: var(--paak-lower-heading-gap);
}
.service-faq-number {
  grid-column: 1 / span 4;
}
.service-faq summary > span:last-child {
  grid-column: 5 / -1;
}
.service-faq-answer {
  margin-left: 0;
}
.service-faq-answer p {
  grid-column: 7 / -1;
  font-size: var(--paak-type-conversation);
  line-height: var(--paak-leading-emphasis);
  letter-spacing: var(--paak-tracking-emphasis);
}
@media (width < 1200px) {
  .service-handover--aligned,
  .service-process-home,
  .service-next {
    row-gap: var(--paak-lower-row-space);
  }
  .service-handover--aligned > h2,
  .service-handover--aligned > .service-chapter-detail,
  .service-process-home > h2,
  .service-process-home > .service-chapter-intro,
  .service-process-home > ol,
  .service-evidence .service-section-head h2,
  .service-evidence .service-section-head > p,
  .service-next > h2,
  .service-next > div,
  .service-next > nav {
    grid-column: 1 / -1;
  }
  .service-next > nav {
    margin-top: 0;
  }
}
@media (width < 768px) {
  .service-process-home li {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
  .service-process-home li > h3,
  .service-process-home li > p {
    grid-column: 1 / -1;
  }
  .service-faq-number {
    grid-column: 1;
  }
  .service-faq summary > span:last-child {
    grid-column: 2 / -1;
  }
  .service-faq-answer {
    margin-left: 0;
  }
  .service-faq-answer p {
    grid-column: 2 / -1;
    font-size: var(--paak-type-conversation);
    line-height: var(--paak-leading-emphasis);
    letter-spacing: var(--paak-tracking-emphasis);
  }
}

/* Project context uses the existing body role beneath the retained captions. */
.service-example-description {
  margin-top: var(--paak-lower-copy-gap);
  max-width: var(--paak-lower-copy-measure);
}
.service-example-caption:has(+ .service-example-description) {
  border-bottom: 1px solid var(--paak-border-on-light);
  padding-bottom: var(--paak-lower-copy-gap);
}

/* V9: balanced chapter copy and Home's caption hierarchy. */
.service-chapter-intro {
  text-wrap: balance;
}
.service-example-caption {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 1.6rem;
  margin-top: 1.4rem;
  font-size: var(--paak-type-project-label, var(--paak-type-small));
}
.inner-page--service-detail .service-example-caption h3 {
  flex: 0 0 auto;
  font-size: var(--paak-type-project-label, var(--paak-type-small));
  line-height: var(--paak-leading-heading);
  letter-spacing: var(--paak-tracking-heading);
}
.service-example-caption > p {
  min-width: 0;
  text-align: right;
  font-size: var(--paak-type-project-label, var(--paak-type-small));
  line-height: 1.4;
  letter-spacing: -0.01em;
  color: var(--paak-muted-on-light);
}
.service-next > .service-related {
  grid-column: 7 / -1;
  display: block;
  margin-top: var(--paak-lower-section-space);
}
.service-related > h3 {
  font: inherit;
  font-size: var(--paak-type-body);
  line-height: var(--paak-leading-body);
  letter-spacing: var(--paak-tracking-body);
  margin-bottom: var(--paak-lower-copy-gap);
}
.service-related > ul {
  margin: 0;
}
.service-related li + li {
  margin-top: 0;
}
.service-related a {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: var(--paak-lower-gap);
  min-height: var(--paak-hit-target);
  padding-block: 0;
  text-decoration: none;
}
.service-related a:hover > span:first-child {
  text-decoration: underline;
  text-underline-offset: 0.18em;
}
.service-related-arrow {
  flex: 0 0 auto;
}
@media (width < 1200px) {
  .service-next > .service-related {
    grid-column: 1 / -1;
  }
  .service-related > h3,
  .service-related > ul {
    grid-column: 1 / -1;
  }
  .service-related > h3 {
    margin-bottom: var(--paak-lower-copy-gap);
    font-size: var(--paak-type-body);
    line-height: var(--paak-leading-body);
    letter-spacing: var(--paak-tracking-body);
  }
}
@media (width < 768px) {
  .service-example-caption {
    gap: 12px;
    margin-top: 12px;
  }
}

/* Search feedback: keep the indented composition clear of the copy rail. */
.service-scope--featured
  .service-section-head
  h2.service-scope-title--balanced {
  text-indent: 0;
}
.service-scope-title--balanced .service-scope-title-line {
  display: block;
}
.service-scope-title--balanced .service-scope-title-line:first-child {
  padding-left: 15.278vw;
}
.service-distinction .service-source {
  grid-column: 1;
  align-self: center;
}
.service-audit-action {
  grid-column: 2;
  justify-self: start;
  display: inline-flex;
  align-items: center;
  min-height: 48px;
  padding: 0.75em 1.25em;
  border: 1px solid #111;
  font-size: var(--paak-type-body);
  line-height: var(--paak-leading-body);
  letter-spacing: var(--paak-tracking-body);
  transition:
    color 160ms,
    background 160ms;
}
.service-audit-action:hover {
  background: #111;
  color: #fff;
}
.service-audit-action:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 5px;
}
.service-handover-note:has(.service-note-line + .service-note-line) {
  max-width: none;
}
.service-note-line + .service-note-line {
  display: block;
}
@media (width < 1024px) {
  .service-scope-title--balanced .service-scope-title-line:first-child {
    padding-left: 0;
  }
}
@media (width < 768px) {
  .service-scope-title--balanced .service-scope-title-line {
    display: inline;
  }
  .service-distinction .service-source,
  .service-audit-action {
    grid-column: 1 / -1;
  }
}
@media (prefers-reduced-motion: reduce) {
  .service-audit-action {
    transition: none;
  }
}

@media (width >= 768px) {
  .service-gallery--balanced > .service-media:first-child {
    grid-column: 1 / span 6;
  }
  .service-gallery--balanced > .service-media:last-child {
    grid-column: 7 / -1;
  }
}
@media (width < 768px) {
  .service-gallery--balanced > .service-media:last-child {
    width: 100%;
  }
}

/* Brand work needs a full-size canvas rather than padded thumbnails. */
.service-gallery--full {
  row-gap: var(--paak-lower-gap);
}
.service-gallery--full > .service-media:is(:first-child, :last-child) {
  grid-column: 1 / -1;
  width: 100%;
  margin-top: 0;
}
