/* Service-only structure. All colors, typography and cards come from site.css. */
.hmt-site.hmt-service .hmt-service__concerns { padding: 0; list-style: none; }
.hmt-site.hmt-service .hmt-service__concerns li { margin-bottom: 0; }
.hmt-site.hmt-service .hmt-service__process { margin-block: var(--hmt-space-40) var(--hmt-space-24); padding-left: var(--hmt-space-28); }
.hmt-site.hmt-service .hmt-service__process li { padding-left: var(--hmt-space-8); margin-bottom: var(--hmt-space-16); }
.hmt-site.hmt-service .hmt-service__process li::marker { color: var(--hmt-color-primary); font-weight: 700; }
.hmt-site.hmt-service .hmt-tech-panel:only-child { grid-column: 1 / -1; }
.hmt-site.hmt-service h2,
.hmt-site.hmt-service h3 { word-break: auto-phrase; text-wrap: balance; }
.hmt-site.hmt-service p,
.hmt-site.hmt-service li { word-break: auto-phrase; text-wrap: pretty; }

/* Supplementary diagrams are Desktop-only; smaller Hero layouts stay intact. */
.hmt-site.hmt-service .hmt-service__visual { display: none; }
@media (min-width: 1024px) {
    .hmt-site.hmt-service .hmt-page-hero { padding-block: var(--hmt-space-72); }
    .hmt-site.hmt-service .hmt-service__hero-grid { display: grid; grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); gap: var(--hmt-space-40); align-items: center; }
    .hmt-site.hmt-service .hmt-service__hero-copy { min-width: 0; }
    .hmt-site.hmt-service .hmt-service__visual { display: block; padding: var(--hmt-space-16); border: 1px solid var(--hmt-color-diagram-border); border-radius: var(--hmt-radius-card); background: var(--hmt-color-background); font-size: var(--hmt-font-small); text-align: center; }
    .hmt-site.hmt-service .hmt-service__visual-label { color: var(--hmt-color-diagram-label); font-size: var(--hmt-font-label-mobile); line-height: 1.5; font-weight: 700; margin-bottom: var(--hmt-space-12); }
    .hmt-site.hmt-service .hmt-service__visual-hub { padding: var(--hmt-space-10); margin-bottom: var(--hmt-space-16); border: 1px solid var(--hmt-color-primary); background: var(--hmt-color-hero-start); color: var(--hmt-color-primary-dark); font-weight: 700; }
    .hmt-site.hmt-service .hmt-service__visual-flow { display: grid; gap: var(--hmt-space-12); }
    .hmt-site.hmt-service .hmt-service__visual-node { position: relative; padding: var(--hmt-space-5) var(--hmt-space-8); border: 1px solid var(--hmt-color-node-border); border-radius: var(--hmt-radius-card); background: var(--hmt-color-surface); line-height: 1.5; }
    .hmt-site.hmt-service .hmt-service__visual-node + .hmt-service__visual-node::before { content: '↓'; position: absolute; top: calc(-1 * var(--hmt-space-12)); left: 0; width: 100%; font-size: var(--hmt-font-label-mobile); line-height: 1; color: var(--hmt-color-connector); }
    .hmt-site.hmt-service .hmt-service__visual-flow--team { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--hmt-space-8); }
    .hmt-site.hmt-service .hmt-service__visual-flow--team .hmt-service__visual-node::before { content: none; }
    .hmt-site.hmt-service .hmt-service__visual-node--next { border-style: dashed; background: var(--hmt-color-hero-start); }
    .hmt-site.hmt-service .hmt-service__visual-note { margin-top: var(--hmt-space-12); line-height: 1.5; color: var(--hmt-color-text-muted); }
}
