/* Phase 6C29 — site-wide typography rhythm + exact 4.5-card desktop Team rail */

/* Core Team: exactly four complete cards plus half of the fifth on wide desktop. */
@media (min-width:1200px){
  .ozb-team-section .ozb-team-grid{
    grid-auto-columns:calc(22.2222% - 16px)!important;
    gap:18px!important;
    padding-left:0!important;
    padding-right:0!important;
    margin-right:0!important;
  }
  .ozb-team-section .ozb-team-card{
    width:100%!important;
    min-width:0!important;
  }
  .ozb-team-section .ozb-team-photo{
    aspect-ratio:4/3.05!important;
  }
  .ozb-team-section .ozb-team-content{
    padding:19px 19px 20px!important;
  }
  .ozb-team-section .ozb-leadership-title-row h4{
    font-size:clamp(20px,1.42vw,25px)!important;
    line-height:1.12!important;
  }
  .ozb-team-section .ozb-leadership-designation{
    line-height:1.45!important;
  }
}

/* Global readable rhythm. Display headlines retain their editorial tight leading; body copy gets breathing room. */
main p:not(.ozb-eyebrow):not(.ozb-launch__kicker):not(.ozb-leadership-designation):not(.ozb-meta-label),
.ozb-footer p,
.ozb-footer li,
main li{
  line-height:1.72;
}

/* Standard paragraph spacing inside article/content areas without disturbing badges, stats or hero labels. */
.ozb-single-premium-content p,
.entry-content p,
.ozb-page-content p,
.ozb-contact-copy p,
.ozb-volunteer-copy p,
.ozb-report-copy p,
.ozb-impact-copy p{
  margin-block:0 1.05em;
}

.ozb-single-premium-content :is(h2,h3,h4),
.entry-content :is(h2,h3,h4),
.ozb-page-content :is(h2,h3,h4){
  margin-top:1.35em;
  margin-bottom:.55em;
  line-height:1.16;
}

/* Descriptive copy across premium sections. */
.ozb-team-head>p,
.ozb-leadership-group-head>p,
.ozb-p6-partner-panel p,
.ozb-social-follow-panel p,
.ozb-hero-v2__lead,
.ozb-footer-brand>p{
  line-height:1.72!important;
}

/* Lists and form helper text should not feel compressed. */
main :is(ul,ol):not([class*="menu"]):not([class*="social"]){
  line-height:1.7;
}
main :is(ul,ol):not([class*="menu"]):not([class*="social"]) li + li{
  margin-top:.42em;
}

/* Mobile/tablet: slightly more reading space without inflating the layout. */
@media (max-width:1024px){
  main p:not(.ozb-eyebrow):not(.ozb-launch__kicker):not(.ozb-leadership-designation):not(.ozb-meta-label),
  .ozb-footer p,
  .ozb-footer li,
  main li{
    line-height:1.68;
  }
}
