/* Reusable service card; legacy class aliases preserve existing saved blocks. */
.c-card,
body.home .p-front-document :is(#front-contents, #front-service) .p-front-item { position: relative; min-width: 0; padding: var(--space-3); border: 1px solid var(--color-line); background: var(--color-bg); }
.c-card:hover,
body.home .p-front-document :is(#front-contents, #front-service) .p-front-item:hover { border-color: var(--color-muted); }
.c-card__link,
body.home .p-front-document :is(#front-contents, #front-service) .p-front-item .p-front-item__link { padding-block-end: var(--space-3); }
.c-card__link a::after,
body.home .p-front-document :is(#front-contents, #front-service) .p-front-item .p-front-item__link a::after { content: ""; position: absolute; inset: 0; }
.c-card::after,
body.home .p-front-document :is(#front-contents, #front-service) .p-front-item::after { content: "→"; position: absolute; right: var(--space-3); bottom: var(--space-2); color: var(--color-muted); pointer-events: none; }
.c-card__link a:focus-visible,
body.home .p-front-document :is(#front-contents, #front-service) .p-front-item .p-front-item__link a:focus-visible { outline: none; }
.c-card__link a:focus-visible::after,
body.home .p-front-document :is(#front-contents, #front-service) .p-front-item .p-front-item__link a:focus-visible::after { outline: 3px solid var(--color-text); outline-offset: 4px; }
body.home .p-front-document :is(#front-contents, #front-service) .p-front-item + .p-front-item { margin-block-start: 0; padding-block-start: var(--space-3); border-block-start: 1px solid var(--color-line); }
.c-card-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); align-items: stretch; }
.c-card-grid > .wp-block-group__inner-container { display: contents; }
.c-card-grid > *, .c-card-grid > .wp-block-group__inner-container > * { margin-block: 0; }
.c-card { box-sizing: border-box; color: var(--color-text); font-family: var(--font-base); font-size: var(--font-size-base); line-height: var(--line-height-base); overflow-wrap: anywhere; }
.c-card > .wp-block-group__inner-container { display: contents; }
.c-card :where(h2,h3,p) { margin: 0; }
.c-card > * + *, .c-card > .wp-block-group__inner-container > * + * { margin-block-start: var(--space-2); }
.c-card .c-card__label { margin-block: 0 var(--space-1); color: var(--color-muted); font-size: var(--font-size-small); }
.c-card .c-card__title { margin-block: 0; font-size: var(--font-size-h3); font-weight: var(--font-weight); line-height: var(--line-height-heading); }
.c-card .c-card__body > * + * { margin-block-start: var(--space-2); }
.c-card__link a { display: inline-block; padding-block: var(--space-1); color: inherit; font-weight: var(--font-weight); text-underline-offset: .22em; }
.editor-styles-wrapper .c-card__link a::after { pointer-events: none; }
@media (max-width: 47.99rem) {
 .c-card-grid { grid-template-columns: minmax(0, 1fr); }
.c-card, body.home .p-front-document :is(#front-contents, #front-service) .p-front-item { padding: var(--space-2); }
body.home .p-front-document :is(#front-contents, #front-service) .p-front-item + .p-front-item { padding-block-start: var(--space-2); }
}

/* Shared section layout: same tracks and spacing as the homepage. */
.c-card-section__layout,
.p-front-document .p-front-section__wrap { display: grid; grid-template-columns: minmax(240px, 0.5fr) minmax(0,1fr); gap: var(--space-6); }
.c-card-section__title,
.p-front-document .c-section-heading__title { font-size: calc(var(--font-size-h2)); line-height: var(--line-height-heading); font-weight: var(--font-weight); word-break: keep-all;}
.c-card-section__subtitle,
.p-front-document .c-section-heading__subtitle { margin-block-start: var(--space-1); font-size: var(--font-size-small); color: var(--color-muted); }
.c-card-section { width: 100%; max-width: var(--width-site); margin-inline: auto; padding-block: var(--section-space); border-block-start: 1px solid var(--color-line); }
.c-card-section__layout > .wp-block-group__inner-container { display: contents; }
.c-card-section__layout > *, .c-card-section__layout > .wp-block-group__inner-container > * { min-width: 0; margin-block: 0; }
.c-card-section__heading > .wp-block-group__inner-container { display: contents; }
.c-card-section .c-card-section__title { margin-block: 0; }
.c-card-section .c-card-section__subtitle { margin-block-end: 0; }
@media (max-width: 47.99rem) {
 .c-card-section__layout,
 .p-front-document .p-front-section__wrap { grid-template-columns: minmax(0,1fr); gap: var(--space-4); }
}
