.visually-hidden { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.knowledge-intro-bottom { justify-content:flex-start; }
.knowledge-collection { margin-top:30px; }
.partner-community { background:#eaf0e5; padding:76px 0; }
.partner-community-grid { display:grid; grid-template-columns:1.07fr 1fr; align-items:start; gap:75px; }
.partner-community h2 { font-size:46px; margin-bottom:24px; }
.partner-community h2 em { font-style:italic; }
.partner-community-copy > p:not(.eyebrow) { font-size:15px; line-height:1.85; max-width:510px; }
.partner-community-actions { display:flex; gap:20px; align-items:center; flex-wrap:wrap; margin-top:27px; }
.partner-community-actions .text-button { font-size:12px; }
.partners-grid .button { margin-top:15px; }
.partner-directory-intro { background:var(--paper); padding:35px 0 49px; }
.partner-directory-intro h1 { font-size:57px; line-height:1.14; max-width:850px; margin-bottom:22px; }
.partner-directory-intro > .wrap > p:not(.eyebrow) { font-size:16px; max-width:730px; line-height:1.85; }
.partner-directory-intro .knowledge-back { margin-bottom:32px; }
.partner-directory-toolbar { display:flex; justify-content:space-between; align-items:center; gap:24px; margin-top:27px; }
.partner-directory-toolbar .text-button { font-size:12px; }
.partner-directory-section { padding-top:43px; }
.ip-partner-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.ip-partner-card { border:1px solid var(--line); border-radius:9px; background:#fffefa; padding:25px; display:flex; flex-direction:column; align-items:flex-start; min-width:0; }
.ip-partner-monogram { display:grid; place-items:center; width:47px; height:47px; border-radius:50%; background:#e8eee0; color:var(--green); font:400 21px Georgia,serif; margin-bottom:21px; }
.ip-partner-card:nth-child(3n+2) .ip-partner-monogram { background:#f2e7de; color:#996e52; }
.ip-partner-card:nth-child(3n+3) .ip-partner-monogram { background:#ede8f0; color:#826d8a; }
.ip-partner-card h3 { font:400 23px/1.3 Georgia,serif; letter-spacing:-.025em; margin-bottom:15px; overflow-wrap:anywhere; }
.ip-partner-location { font-size:12px; line-height:1.6; margin-bottom:20px; }
.ip-partner-cert { font-size:10px; padding:5px 8px; background:#edf2e9; color:#52734f; border-radius:4px; margin-bottom:22px; }
.ip-partner-links { display:flex; flex-wrap:wrap; gap:13px; align-items:center; margin-top:auto; }
.ip-partner-links a { font-size:12px; color:var(--green); text-decoration:underline; text-underline-offset:4px; }
.partner-directory-source { border-top:1px solid var(--line); margin-top:37px; padding-top:24px; font-size:12px; line-height:1.8; }
.partner-directory-source a { color:var(--green); text-decoration:underline; }
@media(max-width:1180px) {
  .partner-community-grid { gap:45px; }
  .partner-community h2 { font-size:42px; }
}
@media(max-width:940px) {
  .partner-community-grid { gap:32px; }
  .partner-community h2 { font-size:37px; }
  .ip-partner-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:760px) {
  .partner-community { padding:49px 0; }
  .partner-community-grid { grid-template-columns:1fr; gap:31px; }
  .partner-community h2 { font-size:35px; }
  .partner-community-copy > p:not(.eyebrow) { font-size:14px; }
  .partner-community-actions { gap:19px; }
  .partner-community-actions .button { font-size:12px; }
  .partner-directory-intro { padding:24px 0 35px; }
  .partner-directory-intro h1 { font-size:37px; }
  .partner-directory-intro > .wrap > p:not(.eyebrow) { font-size:14px; }
  .partner-directory-toolbar { flex-direction:column; align-items:flex-start; gap:15px; }
  .partner-directory-section { padding-top:35px; }
  .ip-partner-list { grid-template-columns:1fr; gap:17px; }
  .ip-partner-card { padding:24px; }
  .ip-partner-card h3 { font-size:25px; }
  .partner-directory-source { font-size:11px; }
}
