/* ============================================================================
   .p-industries-roofing - /industries/roofing
   The page consumes the shared industry components (components.css).
   Only genuine per-page deltas live here. Cycle 10: ledger design fixes
   (hero trailing space, contained qualification checks, lime lead-in,
   full-height ownership rule).
   ========================================================================== */

/* the industry headline reads best one step tighter than the component default */
.p-industries-roofing .c-hero__title{ max-width:22ch; }

/* the mono note now closes the hero under the CTA pair, so the band no longer
   needs a full --sec-y of empty ink underneath it (ledger: ~156px trailing) */
.p-industries-roofing #ir-hero{ padding-bottom:clamp(28px,3vw,48px); }
.p-industries-roofing .c-hero__note{ margin-top:clamp(24px,3vw,36px); }

/* ---- qualification checks: a hairline-ruled peer element, not loose copy ---- */
.p-industries-roofing .ir-checks{
  margin-top:clamp(48px,6vw,72px); padding-top:clamp(32px,4vw,48px);
  border-top:1px solid rgba(245,245,245,.18);
  text-align:left;
}
.p-industries-roofing .ir-checks__label{
  font-size:var(--t-label); letter-spacing:.1em; text-transform:uppercase; opacity:.72;
}
.p-industries-roofing .ir-checks__lede{
  margin-top:var(--s-3); max-width:52ch; font-size:var(--t-note); line-height:1.6;
}
.p-industries-roofing .ir-checks__list{
  margin-top:clamp(28px,3.4vw,40px);
  display:grid; grid-template-columns:1fr; gap:0 clamp(36px,4.4vw,64px);
}
/* cycle-12 dFix (layout defect): the key column was hard-set to 7.4ch, so the longest
   caps labels ("insurance", "property", "interest") ran past it and collided with their
   value text. The row is a grid now: the label stacks above its value on narrow screens
   and, from 480 up, takes a column sized to the longest label with room to spare. */
.p-industries-roofing .ir-checks__item{
  display:grid; grid-template-columns:1fr; gap:6px;
  padding-block:clamp(12px,1.5vw,16px); border-bottom:1px solid rgba(245,245,245,.12);
  font-size:var(--t-note); line-height:1.5;
}
.p-industries-roofing .ir-checks__key{
  color:var(--lime); min-width:0;
  font-size:var(--t-label); letter-spacing:.06em; text-transform:uppercase;
}
@media (min-width:480px){
  .p-industries-roofing .ir-checks__item{
    grid-template-columns:minmax(11ch,auto) minmax(0,1fr);
    column-gap:clamp(16px,2vw,24px); align-items:baseline;
  }
}
@media (min-width:768px){
  .p-industries-roofing .ir-checks__list{ grid-template-columns:1fr 1fr; }
}

/* ---- one lane link at the band foot, not five in the right-hand rag ---- */
.p-industries-roofing .ir-lanes__foot{ margin-top:clamp(32px,4vw,48px); }

/* ---- ownership columns share one full-height rule instead of a ragged edge ---- */
@media (min-width:768px){
  .p-industries-roofing .c-own{ align-items:stretch; gap:0; }
  .p-industries-roofing .c-own__col + .c-own__col{
    padding-left:clamp(28px,4vw,56px);
    border-left:1px solid var(--ink-40);
  }
}

/* ---- the colour break should land on ink, not on 146px of empty lime ---- */
.p-industries-roofing #ir-cta{ padding-top:clamp(56px,6vw,92px); }
