/* Humane Technology by Design: content below the hero, built on the shared Field Map and Currently row system. */
.htd-field,.htd-position,.htd-principles{background:#fff;color:var(--anthracite);font-family:var(--font-body)}
section.htd-field:not(.field-hero):not(.hero):not(.vh-hero):not(.page-hero){padding-top:clamp(56px,7vw,104px);padding-bottom:clamp(24px,3vw,40px)}
section.htd-position:not(.field-hero):not(.hero):not(.vh-hero):not(.page-hero){padding-block:clamp(32px,4vw,56px)}
section.htd-principles:not(.field-hero):not(.hero):not(.vh-hero):not(.page-hero){padding-top:clamp(8px,1.5vw,16px);padding-bottom:clamp(56px,7vw,104px)}

.htd-lead{font-family:var(--font-body);font-weight:500;font-size:clamp(1.9rem,3.4vw,3.4rem);line-height:1.08;letter-spacing:-.03em;max-width:18ch;margin:0 0 20px;color:var(--anthracite)}
.htd-sub{font-size:1.125rem;line-height:1.55;color:#555d5d;max-width:60ch;margin:0 0 clamp(36px,4.5vw,64px)}
.htd-section-title{font-family:var(--font-body);font-weight:500;font-size:clamp(1.5rem,2.4vw,2.25rem);line-height:1.15;letter-spacing:-.02em;margin:0 0 clamp(24px,3vw,36px);color:var(--anthracite)}

/* Stage line: shows where each service sits; linked to the rows below */
.htd-stage-line{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:2px solid var(--anthracite);margin-bottom:0}
.htd-stage-line[hidden]{display:none}
.htd-stage{appearance:none;background:none;border:0;border-right:1px solid var(--line);border-radius:0;font-family:var(--font-body);font-size:.8125rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;line-height:1.3;color:#555d5d;padding:14px 10px;cursor:pointer;text-align:center;transition:background-color .3s ease,color .3s ease}
.htd-stage:last-child{border-right:0}
.htd-stage:hover,.htd-stage.is-active{background:var(--frame);color:#fff}
.htd-stage:focus-visible{outline:2px solid var(--jade);outline-offset:-2px}

.htd-rows{border-top:1px solid var(--line)}
.htd-stage-line[hidden]+.htd-rows{border-top:2px solid var(--anthracite)}
.htd-rows .htd-row:first-child{border-top:0}
.htd-rows .htd-row:last-child,.htd-mydata-row{border-bottom:1px solid var(--line)}
.htd-row strong,.htd-mydata-row strong{display:block}
.htd-row .field-detail p,.htd-mydata-row .field-detail p{margin:0 0 14px}
.htd-row .field-detail p:last-child{margin-bottom:0}

.htd-position-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,96px);border-top:2px solid var(--anthracite);padding-top:clamp(24px,3vw,36px)}
.htd-position h3{font-family:var(--font-body);font-weight:500;font-size:clamp(1.25rem,1.8vw,1.6rem);line-height:1.2;letter-spacing:-.02em;margin:0 0 16px}
.htd-position p,.htd-practice p{font-size:1.125rem;line-height:1.55;margin:0 0 16px;max-width:62ch}
.htd-position p:last-child,.htd-practice p:last-child{margin-bottom:0}
.htd-practice{margin-top:clamp(40px,5vw,72px)}

@media(max-width:760px){
  .htd-position-grid{grid-template-columns:1fr;gap:36px}
  .htd-stage-line{display:flex;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .htd-stage-line::-webkit-scrollbar{display:none}
  .htd-stage{flex:0 0 auto;white-space:nowrap;padding:12px 14px;font-size:.75rem}
  .htd-row summary,.htd-mydata-row summary{grid-template-columns:28px minmax(0,1fr);row-gap:10px}
  .htd-row .jo-status,.htd-mydata-row .jo-status{grid-column:2;justify-self:start}
}
