/* ============ SPEAKERS MID SECTION ============ */
  .speakers-mid{background:var(--parchment); padding:110px 0;}

  .speakers-group{margin-bottom:88px;}
  .speakers-group:last-child{margin-bottom:0;}
  .speakers-group-head{max-width:640px; margin-bottom:44px;}
  .speakers-group-head .eyebrow{color:var(--ember);}
  .speakers-group-head h2{font-size:clamp(28px,3.6vw,42px); color:var(--pine); margin-top:14px;}

  .speaker-grid{
    display:grid; grid-template-columns:repeat(4,1fr); gap:34px 28px;
  }
  .speaker-grid.grid-3{grid-template-columns:repeat(3,1fr);}

  .speaker-card{display:flex; flex-direction:column; gap:14px;}
  .speaker-photo{
    aspect-ratio:1/1; width:100%; border-radius:12px; overflow:hidden;
    background:var(--moss); position:relative;
  }
  .speaker-photo img{width:100%; height:100%; object-fit:cover; display:block; transition:transform .4s ease;}
  .speaker-card:hover .speaker-photo img{transform:scale(1.05);}
  .speaker-photo .initials{
    position:absolute; inset:0; display:flex; align-items:center; justify-content:center;
    font-family:var(--display); font-size:34px; font-weight:600; color:var(--parchment);
  }

  .speaker-info h3{font-size:18px; color:var(--pine); font-weight:600;}
  .speaker-info h3 a{color:inherit; text-decoration:none;}
  .speaker-info h3 a:hover{color:var(--ember);}
  .speaker-info .title{font-size:13px; color:var(--ink-soft); margin-top:3px; min-height:34px;}
  .speaker-info .company-logo{margin-top:10px; height:70px; display:flex; align-items:center;}
  .speaker-info .company-logo img{max-height:100%; width:auto; filter:grayscale(100%); opacity:.75;}

  @media (max-width:960px){
    .speaker-grid, .speaker-grid.grid-3{grid-template-columns:repeat(2,1fr);}
  }
  @media (max-width:560px){
    .speaker-grid, .speaker-grid.grid-3{grid-template-columns:repeat(2,1fr); gap:24px 16px;}
  }