/* ============================================================================
   /partnerships - page-scoped CSS. Everything under .p-partnerships.
   Compact: hero (black) -> the six models (blue, numbered row-list echoing
   revenue-infrastructure's component rows) -> operating boundary (black,
   echoes how-it-works boundary band) -> closing CTA (lime). No card-grid
   walls; rows are flowing typographic lines separated by hairlines.
   Round/smooth per FEEL.md: rows nudge right, nothing snaps.
   ========================================================================== */

/* ---------------------------------------------------------------------------
   HERO
--------------------------------------------------------------------------- */
/* hero is the shared c-hero component (centered, like every sibling page);
   the only page delta is the closing hairline */
.pp-hero{ border-bottom:1px solid var(--ink-40); }

/* ---------------------------------------------------------------------------
   THE SIX MODELS - numbered row-list on the blue stage
--------------------------------------------------------------------------- */
.pp-models__wrap{ max-width:1000px; }
.pp-models__head{ max-width:680px; }

.pp-models__h2{ margin-top:var(--gap-heading-body); }
.pp-models__deck{ margin-top:var(--s-5); }

.pp-models__list{ margin-top:clamp(32px,4vw,52px); }

.pp-models__row{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:clamp(16px,2.4vw,28px);
  padding-block:clamp(22px,2.8vw,30px);
  border-top:1px solid rgba(255,255,255,.16);
}
.pp-models__row:first-child{ border-top:none; }

.pp-models__num{
  font-size:var(--t-note);
  color:var(--lime);
  opacity:.9;
  min-width:2ch;
}

.pp-models__body{ display:flex; flex-direction:column; gap:var(--s-2); min-width:0; }

.pp-models__name{
  font-family:var(--f-display);
  font-weight:650;
  font-size:clamp(20px,2.1vw,26px);
  letter-spacing:var(--track-h3);
  color:var(--text-on-blue);
  text-transform:lowercase;
}

.pp-models__line{
  font-size:var(--t-body);
  line-height:1.5;
  color:var(--text-on-blue-muted);
  max-width:58ch;
}

.pp-models__fit{
  font-size:var(--t-label);
  letter-spacing:.01em;
  color:rgba(255,255,255,.5);
  max-width:58ch;
}

/* the worked-example line under the six models (cycle 6, operator-approved copy) */
.pp-models__example{
  margin-top:clamp(28px,3.6vw,40px); max-width:66ch;
  font-size:var(--t-eyebrow); line-height:1.6; letter-spacing:.02em;
  color:var(--text-on-blue-muted);
}

/* ---------------------------------------------------------------------------
   OPERATING BOUNDARY
--------------------------------------------------------------------------- */
.pp-boundary__wrap{ max-width:760px; }

.pp-boundary__line{
  margin-top:var(--gap-heading-body);
  font-family:var(--f-display);
  font-weight:650;
  font-size:var(--t-h2);
  line-height:var(--lh-h2);
  letter-spacing:var(--track-h2);
  color:var(--paper-full);
  text-transform:lowercase;
}

.pp-boundary__body{
  margin-top:var(--s-5);
  font-size:var(--t-body-lg);
  line-height:1.6;
  color:var(--paper);
  max-width:64ch;
}

.pp-boundary__links{
  margin-top:var(--gap-body-cta);
  display:flex;
  flex-wrap:wrap;
  gap:var(--s-6);
}

/* ---------------------------------------------------------------------------
   CLOSING CTA
--------------------------------------------------------------------------- */
/* the closing band is the shared c-cta component (c-cta__title/__deck/__note
   + c-btn-row); only the deltas below remain page-scoped */
.pp-cta{ text-align:center; }
.pp-cta__wrap{ display:flex; flex-direction:column; align-items:center; }

.pp-cta .eyebrow{ justify-content:center; }

/* c-btn-row carries no top offset of its own; the closing band needs one */
.pp-cta .c-btn-row{ margin-top:var(--gap-body-cta); }

/* focus ring is lime-on-lime on this band -> keep it visible */
.pp-cta :where(a,button):focus-visible{ outline-color:var(--lime-ink); }

/* ---------------------------------------------------------------------------
   RESPONSIVE
--------------------------------------------------------------------------- */
@media (max-width:639px){
  .pp-models__row{ grid-template-columns:1fr; }
}
