/* ============================================================
   PRODUCTS — Uqesh (materials). 1:1 with KMu8X. Fluid / rem. Light.
   ============================================================ */

/* Page hero */
.mpr-hero{ min-height:18.75rem; display:flex; flex-direction:column; justify-content:flex-end; background-size:cover; background-position:center; }
.mpr-hero-body{ display:flex; flex-direction:column; gap:0.75rem; max-width:40rem; padding-block:0 2.875rem; }
.mpr-crumb{ font-family:var(--font-display); font-weight:700; font-size:0.719rem; letter-spacing:.1em; color:var(--text-secondary); margin:0; }
.mpr-title{ font-family:var(--font-display); font-weight:800; font-size:3.25rem; letter-spacing:-.01em; line-height:1; color:var(--text-primary); margin:0; }
.mpr-intro{ font-size:0.9375rem; line-height:1.5; color:var(--text-secondary); max-width:35rem; margin:0; }

/* Brand story */
.mpr-story{ display:flex; gap:4.5rem; padding-block:4.5rem; align-items:flex-start; }
.mpr-statement{ flex:0 0 33.75rem; display:flex; flex-direction:column; gap:1rem; }
.mpr-eyebrow{ font-family:var(--font-display); font-weight:700; font-size:0.719rem; letter-spacing:.12em; color:var(--text-secondary); margin:0; }
.mpr-h{ font-family:var(--font-display); font-weight:800; font-size:2rem; letter-spacing:-.012em; line-height:1.12; color:var(--text-primary); margin:0; }
.mpr-p{ font-size:0.906rem; line-height:1.6; color:var(--text-secondary); margin:0; }
.mpr-creds{ flex:1 1 0; display:flex; flex-direction:column; }
.mpr-cred{ display:flex; align-items:center; gap:1.5rem; padding-block:1.125rem; border-bottom:1px solid var(--line); }
.mpr-cred:last-child{ border-bottom:0; }
.mpr-cred-k{ flex:0 0 10rem; font-family:var(--font-display); font-weight:800; font-size:0.9375rem; letter-spacing:.02em; color:var(--text-primary); }
.mpr-cred-v{ flex:1 1 0; font-size:0.844rem; color:var(--text-secondary); }

/* Product range */
.mpr-range{ display:flex; flex-direction:column; gap:5rem; padding-block:2.5rem 5.25rem; }
.mpr-range-hdr{ display:flex; align-items:flex-end; justify-content:space-between; gap:1rem; }
.mpr-range-t{ font-family:var(--font-display); font-weight:800; font-size:1.375rem; color:var(--text-primary); margin:0; }
.mpr-range-c{ font-family:var(--font-display); font-weight:700; font-size:0.75rem; letter-spacing:.08em; color:var(--text-secondary); white-space:nowrap; }

/* Shared card typography */
.mpr-no{ font-family:var(--font-display); font-weight:800; font-size:0.813rem; letter-spacing:.15em; color:var(--text-secondary); }
.mpr-cat{ font-family:var(--font-display); font-weight:700; font-size:0.719rem; letter-spacing:.12em; color:var(--text-secondary); }
.mpr-name{ font-family:var(--font-display); font-weight:800; font-size:1.875rem; letter-spacing:-.01em; color:var(--text-primary); margin:0; }
.mpr-name-sm{ font-size:1.5rem; }
.mpr-desc{ font-size:0.906rem; line-height:1.6; color:var(--text-secondary); margin:0; }
.mpr-link{ font-family:var(--font-display); font-weight:700; font-size:0.813rem; letter-spacing:.02em; color:var(--text-primary); }
.mpr-link:hover{ color:var(--brand); }
.mpr-metarow{ display:flex; flex-wrap:wrap; gap:1.75rem; font-family:var(--font-display); font-weight:600; font-size:0.719rem; letter-spacing:.03em; color:var(--text-secondary); }
.on-dark{ color:#fff; }
.mpr-no.on-dark{ color:rgba(255,255,255,.68); }
.mpr-cat.on-dark{ color:rgba(255,255,255,.8); }
.mpr-desc.on-dark{ color:rgba(255,255,255,.85); }

/* 01 — full-bleed hero card */
.mpr-01{ display:flex; align-items:flex-end; min-height:28.75rem; border-radius:0.25rem; background-size:cover; background-position:center; padding:0 0 2.625rem 2.875rem; }
.mpr-01-cap{ display:flex; flex-direction:column; gap:0.5625rem; max-width:35rem; }
.mpr-01 .mpr-name{ font-size:2.375rem; letter-spacing:-.013em; }

/* 02 / 03 — alternating rows */
.mpr-row{ display:flex; align-items:center; gap:3.5rem; }
.mpr-row-txt{ flex:1 1 0; display:flex; flex-direction:column; gap:0.8125rem; align-items:flex-start; }
.mpr-row-img{ flex:0 0 26.875rem; height:26.875rem; background-size:cover; background-position:center; border-radius:0.25rem; }
.mpr-row-rev .mpr-img-tall{ flex-basis:23.75rem; height:31.25rem; }

/* 04 + 05 — pair */
.mpr-pair{ display:flex; gap:3.5rem; }
.mpr-pcard{ flex:1 1 0; display:flex; flex-direction:column; gap:1rem; }
.mpr-pcard-img{ display:block; height:18.75rem; background-size:cover; background-position:center; border-radius:0.25rem; }
.mpr-pcard-txt{ display:flex; flex-direction:column; gap:0.5rem; align-items:flex-start; }

/* CTA */
.mpr-cta{ display:flex; flex-direction:column; align-items:center; gap:1.125rem; background:#E0E2DD; padding:4rem 3rem; text-align:center; }
.mpr-cta-eyebrow{ font-family:var(--font-display); font-weight:700; font-size:0.75rem; letter-spacing:.1em; color:var(--text-secondary); margin:0; }
.mpr-cta-h{ font-family:var(--font-display); font-weight:800; font-size:1.875rem; color:var(--text-primary); max-width:40rem; margin:0; }
.mpr-cta-btn{ margin-top:0.5rem; }

/* Responsive */
@media (max-width:900px){
  .mpr-story{ flex-direction:column; gap:2.5rem; }
  .mpr-statement{ flex-basis:auto; }
  .mpr-row{ flex-direction:column; align-items:stretch; gap:1.5rem; }
  .mpr-row-rev{ flex-direction:column-reverse; }
  .mpr-row-img{ flex-basis:auto; height:20rem; }
  .mpr-row-rev .mpr-img-tall{ height:22rem; }
  .mpr-pair{ flex-direction:column; gap:2.5rem; }
  .mpr-title{ font-size:2.5rem; }
  .mpr-statement{ flex:1 1 auto; }
}
