/* ============================================================================
   .p-data-infrastructure - /data-infrastructure
   REGENERATED (cycle 6): the page consumes the shared component layer
   (components.css c-hero/c-center+c-head/c-body/c-prose/c-steps/c-cta).
   Nothing here re-declares a component property (no grid-template-columns,
   gap, max-width or text-align on a c-* element) - only genuine per-page
   deltas and the two page-only blocks the component set does not cover:
   the display-face "close" statement line and the mono stage-role label.
   ========================================================================== */

.p-data-infrastructure{ overflow-x:clip }

/* the platform-component hero opens without a breadcrumb, so it carries the
   extra top air the lane/industry heroes get from .c-crumb */
.di-hero{ padding-top:calc(var(--sec-y) + 44px) }

/* ---------------------------------------------------------------------------
   page-only: the display-face closing statement that ends a section
   (reveal-mask line; centred block, no component equivalent)
--------------------------------------------------------------------------- */
.di-close{
  margin-top:clamp(32px,4vw,48px); margin-inline:auto;
  max-width:34ch; text-align:center;
  font-family:var(--f-display); font-size:var(--t-h3); line-height:1.2;
}
.section--blue .di-close{ color:var(--text-on-blue) }

/* ---------------------------------------------------------------------------
   2. HOW A RECORD GETS BUILT - mono provenance/role label inside a step body
--------------------------------------------------------------------------- */
.di-process__role{ font-size:var(--t-label); letter-spacing:.04em; text-transform:uppercase }

/* ---------------------------------------------------------------------------
   3. PROVENANCE & COMPLIANCE - the provenance sentence is the one display
   element in the band (ledger di-prov), so it carries a step of extra size
   over the standard head; the arrow-link is a flex child of .c-body
--------------------------------------------------------------------------- */
.di-provenance__claim{ font-size:var(--t-h1) }
.di-provenance__link{ align-self:center }

/* ---------------------------------------------------------------------------
   4. THE GUARANTEE - the boundary sits under a hairline. Ledger di-guar: it is
   the legally load-bearing sentence, so it reads in body type at deck size and
   mono is kept only for the short label above it (measure comes from .c-center)
--------------------------------------------------------------------------- */
.di-guarantee{ margin-top:clamp(32px,4vw,48px); padding-top:var(--s-6);
  border-top:1px solid rgba(255,255,255,.18) }
.di-guarantee__label{
  font-size:var(--t-label); letter-spacing:.08em; text-transform:uppercase;
  color:var(--text-on-blue); opacity:.7;
}
.di-guarantee__boundary{
  margin-top:var(--s-3);
  font-size:var(--t-body-lg); line-height:1.6; color:var(--text-on-blue);
}

/* ---------------------------------------------------------------------------
   5. FINAL CTA - ledger di-cta: the lime band opens closer to the blue edge
   above it, so the top pad drops roughly one 80px step
--------------------------------------------------------------------------- */
.di-cta{ padding-top:calc(var(--sec-y) - clamp(40px,5vw,80px)) }
