/* ============================================================
   /imel-concept/group/ — Group interior, scoped to body.imel-group
   Reuses /imel-concept/ chrome, type, facts strip and box language.
   Does not alter /, /group/, or the homepage.

   Desktop type:
     H1              56px (clamp 38–56)
     H2              38px (clamp 30–38)
     Founder name    28px
     History years   32px
     Body            17.5px
     Lead            19px
     Panel titles    20px
     Labels          12px
   ============================================================ */

body.imel-group .ig-open,
body.imel-group .ig-founder,
body.imel-group .ig-history,
body.imel-group .ig-today,
body.imel-group .ig-close{padding:76px 0}

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

/* ---------- Opening ---------- */
body.imel-group .ig-open{
  background:var(--im-white);
}
body.imel-group .ig-open-grid{
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
  gap:40px 56px;
  align-items:start;
}
body.imel-group .ig-open-photo{margin:0}
body.imel-group .ig-open-photo img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:4 / 3;
  object-fit:cover;
  object-position:58% 50%;
}
body.imel-group .ig-open-copy h1{
  margin:0 0 16px;
  font-size:clamp(38px,4vw,56px);
  line-height:1.16;
}
body.imel-group .ig-open-copy > p:not(.im-label){
  margin:0;
  max-width:42em;
  font-size:19px;
  line-height:1.55;
}

/* ---------- Founder ---------- */
body.imel-group .ig-founder{
  background:#EDE9E1;
}
body.imel-group .ig-founder-grid{
  display:grid;
  grid-template-columns:minmax(0,.2fr) minmax(0,.8fr);
  gap:28px 48px;
  align-items:start;
}
body.imel-group .ig-founder-aside{
  padding-top:6px;
}
body.imel-group .ig-founder-aside img{
  display:block;
  width:100%;
  max-width:260px;
  height:auto;
  aspect-ratio:3 / 4;
  object-fit:cover;
  object-position:50% 20%;
  margin:0 0 16px;
}
body.imel-group .ig-founder-year{
  margin:0;
  font-family:var(--serif);
  font-size:clamp(28px,2.4vw,34px);
  font-weight:400;
  line-height:1;
  color:var(--gold);
}
body.imel-group .ig-founder-place{
  margin:8px 0 0;
  font-size:12px;
  font-weight:600;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--im-muted);
}
body.imel-group .ig-founder-copy{
  max-width:46em;
}
body.imel-group .ig-founder h2{
  margin:0 0 16px;
  font-size:clamp(30px,3vw,38px);
  line-height:1.18;
}
body.imel-group .ig-founder-copy > p{
  margin:0 0 18px;
  font-size:17.5px;
  line-height:1.58;
}
body.imel-group .ig-founder-copy > h3.ig-founder-name,
body.imel-group h3.ig-founder-name{
  margin:28px 0 4px;
  font-family:var(--serif);
  font-size:clamp(26px,2.2vw,28px);
  font-weight:400;
  line-height:1.2;
  letter-spacing:0;
  color:var(--im-ink);
}
body.imel-group .ig-founder-copy > p.ig-founder-role{
  margin:0 0 12px;
  font-size:13px;
  font-weight:600;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--gold);
}
body.imel-group .ig-founder-copy > p:last-child{margin:0}

/* ---------- History ledger ---------- */
body.imel-group .ig-history{
  background:var(--im-white);
}
body.imel-group .ig-history h2{
  margin:0 0 28px;
  font-size:clamp(30px,3vw,38px);
  line-height:1.18;
}
body.imel-group .ig-ledger{
  max-width:none;
}
body.imel-group .ig-row{
  display:grid;
  grid-template-columns:minmax(10.5rem,.2fr) minmax(0,.8fr);
  gap:16px 32px;
  align-items:start;
  padding:16px 0;
  border-top:1px solid var(--im-line);
}
body.imel-group .ig-row:last-child{border-bottom:1px solid var(--im-line)}
body.imel-group .ig-row time{
  font-family:var(--serif);
  font-size:clamp(28px,2.2vw,32px);
  font-weight:400;
  line-height:1.15;
  white-space:nowrap;
  color:var(--im-ink);
}
body.imel-group .ig-row > p{
  margin:0;
  max-width:42em;
  padding-top:6px;
  font-size:17.5px;
  line-height:1.5;
  color:var(--im-ink);
}
body.imel-group .ig-row-next{
  background:transparent;
}
body.imel-group .ig-next-lbl{
  margin:0 0 4px;
  font-size:11px;
  font-weight:600;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--gold);
}
body.imel-group .ig-row-next time{color:var(--gold)}

/* ---------- The Group today ---------- */
body.imel-group .ig-today{
  background:#F3F1EA;
}
body.imel-group .ig-today h2{
  margin:0 0 10px;
  font-size:clamp(30px,3vw,38px);
  line-height:1.18;
}
body.imel-group .ig-today-lead{
  margin:0 0 28px;
  max-width:40em;
  font-size:19px;
  line-height:1.5;
  color:var(--im-muted);
}
body.imel-group .ig-today-boxes{
  gap:14px;
  grid-template-columns:repeat(3,minmax(0,1fr));
}
body.imel-group .ig-today-boxes article{
  padding:22px 20px 20px;
}
body.imel-group .ig-today-boxes h3{
  margin:0 0 8px;
  font-family:var(--sans);
  font-size:20px;
  font-weight:600;
  letter-spacing:0;
  text-transform:none;
  line-height:1.25;
}
body.imel-group .ig-today-boxes p{
  font-size:17px;
  line-height:1.5;
}

/* ---------- Close ---------- */
body.imel-group .ig-close{
  background:var(--im-white);
  padding:56px 0;
  border-top:1px solid var(--im-line);
}
body.imel-group .ig-close-inner{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:24px 36px;
}
body.imel-group .ig-close h2{
  margin:0 0 8px;
  font-size:clamp(28px,2.6vw,36px);
  line-height:1.18;
}
body.imel-group .ig-close p{
  margin:0;
  max-width:42em;
  font-size:17.5px;
  line-height:1.5;
  color:var(--im-muted);
}

@media (max-width:1024px){
  body.imel-group .ig-open,
  body.imel-group .ig-founder,
  body.imel-group .ig-history,
  body.imel-group .ig-today{padding:64px 0}
  body.imel-group .ig-open-grid{
    grid-template-columns:1fr;
    gap:28px;
  }
  body.imel-group .ig-open-photo{max-width:480px}
  body.imel-group .ig-founder-grid{
    grid-template-columns:1fr;
    gap:16px;
  }
  body.imel-group .ig-row{
    grid-template-columns:minmax(10.5rem,.22fr) minmax(0,.78fr);
  }
}

@media (max-width:768px){
  body.imel-group .ig-open,
  body.imel-group .ig-founder,
  body.imel-group .ig-history,
  body.imel-group .ig-today{padding:48px 0}
  body.imel-group .ig-close{padding:40px 0}
  body.imel-group .ig-close-inner{
    flex-direction:column;
    align-items:flex-start;
  }
  body.imel-group .ig-row{
    grid-template-columns:1fr;
    gap:6px;
    padding:14px 0;
  }
  body.imel-group .ig-row p{padding-top:0}
  body.imel-group .ig-today-boxes{grid-template-columns:1fr}
}

@media (max-width:640px){
  body.imel-group .ig-open-photo{max-width:100%}
}
