/* ============================================================
   /imel-concept/partnerships/ — selected distribution partners
   Scoped to body.imel-ptn. Reuses IMEL chrome and type.
   Does not alter /, /partnerships/, or other concept bodies.

   Desktop type:
     H1              40–48px
     Brand name      26px
     Body            17.5px
     Relationship    12px
     Territory       12px
     CTA             13px
   ============================================================ */

body.imel-ptn h1,
body.imel-ptn h2{
  font-weight:400;
  letter-spacing:0;
}

/* ---------- Intro ---------- */
body.imel-ptn .ip-open{
  background:#FCFBF8;
  padding:60px 0 56px;
  border-bottom:1px solid var(--im-line);
}
body.imel-ptn .ip-open h1{
  margin:0 0 12px;
  max-width:16em;
  font-size:clamp(32px,3.6vw,48px);
  line-height:1.18;
}
body.imel-ptn .ip-lead{
  margin:0 0 10px;
  max-width:38em;
  font-size:18px;
  line-height:1.5;
  color:var(--im-ink);
}
body.imel-ptn .ip-note{
  margin:0;
  max-width:38em;
  font-size:17.5px;
  line-height:1.55;
  color:var(--im-muted);
}

/* ---------- Partner rows ---------- */
body.imel-ptn .ip-partners{
  background:var(--im-white);
  padding:0;
}
body.imel-ptn .ip-partner{
  display:grid;
  grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);
  grid-template-areas:"logo copy";
  gap:40px 64px;
  align-items:center;
  padding:80px 0;
}
body.imel-ptn .ip-partner + .ip-partner{
  border-top:1px solid var(--im-line);
}
body.imel-ptn .ip-partner-alt{
  grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);
  grid-template-areas:"copy logo";
}
body.imel-ptn .ip-logo{
  grid-area:logo;
  margin:0;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#FFFFFF;
  padding:8px 12px;
}
body.imel-ptn .ip-logo img{
  display:block;
  width:auto;
  height:auto;
  max-width:280px;
}
body.imel-ptn .ip-logo-rocky img{max-width:280px}
body.imel-ptn .ip-logo-casa img{max-width:320px}

body.imel-ptn .ip-copy{
  grid-area:copy;
  min-width:0;
  max-width:34em;
}
body.imel-ptn .ip-rel{
  margin:0 0 8px;
  font-family:var(--sans);
  font-size:12px;
  font-weight:600;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--gold);
  line-height:1.3;
}
body.imel-ptn .ip-copy h2{
  margin:0 0 14px;
  font-size:clamp(22px,2.1vw,26px);
  line-height:1.25;
}
body.imel-ptn .ip-copy p{
  margin:0 0 12px;
  font-size:17.5px;
  line-height:1.55;
  color:var(--im-ink);
}
body.imel-ptn .ip-territory{
  margin:16px 0 14px;
  font-family:var(--sans);
  font-size:12px;
  font-weight:600;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--im-muted);
  line-height:1.35;
}
body.imel-ptn .ip-copy .im-textlink{
  font-size:13px;
  letter-spacing:.06em;
  text-transform:uppercase;
}

/* ---------- Compact enquiry ---------- */
body.imel-ptn .ip-contact{
  background:#FCFBF8;
  padding:42px 0;
  border-top:1px solid var(--im-line);
}
body.imel-ptn .ip-contact-inner{
  display:flex;
  justify-content:space-between;
  align-items:baseline;
  gap:16px 32px;
}
body.imel-ptn .ip-contact-copy{
  min-width:0;
  max-width:42em;
}
body.imel-ptn .ip-contact-q{
  margin:0;
  font-size:17px;
  line-height:1.4;
  color:var(--im-ink);
}
body.imel-ptn .ip-contact-note{
  margin:6px 0 0;
  font-size:15px;
  line-height:1.45;
  color:var(--im-muted);
}
body.imel-ptn .ip-contact-inner .im-textlink{
  font-size:13px;
  letter-spacing:.06em;
  text-transform:uppercase;
  white-space:nowrap;
}

/* ---------- 1024 ---------- */
@media (max-width:1024px){
  body.imel-ptn .ip-open{padding:52px 0 48px}
  body.imel-ptn .ip-partner{
    gap:32px 40px;
    padding:72px 0;
  }
  body.imel-ptn .ip-logo-rocky img{max-width:240px}
  body.imel-ptn .ip-logo-casa img{max-width:280px}
  body.imel-ptn .ip-contact-inner{
    flex-direction:column;
    align-items:flex-start;
    gap:10px;
  }
}

/* ---------- 768 / 390 ---------- */
@media (max-width:768px){
  body.imel-ptn .ip-open{padding:44px 0 36px}
  body.imel-ptn .ip-partner,
  body.imel-ptn .ip-partner-alt{
    grid-template-columns:1fr;
    grid-template-areas:
      "logo"
      "copy";
    gap:20px;
    padding:56px 0;
    align-items:start;
  }
  body.imel-ptn .ip-logo{
    justify-content:flex-start;
    padding:0 0 4px;
  }
  body.imel-ptn .ip-logo img{max-width:200px}
  body.imel-ptn .ip-logo-rocky img{max-width:188px}
  body.imel-ptn .ip-logo-casa img{max-width:220px}
  body.imel-ptn .ip-copy{max-width:none}
  body.imel-ptn .ip-contact{padding:36px 0}
  body.imel-ptn .ip-contact-inner{
    flex-direction:column;
    align-items:flex-start;
    gap:10px;
  }
}
