:root { --ips-navy: #131f28; --ips-blue: #1f63a3; }
#featured-banner { background:#131f28; position:relative; padding:10px 46px; }
.featured-frame { width:860px; max-width:100%; min-height:140px; margin:0 auto; position:relative; background:#fff; }
.featured-slide { display:flex; align-items:center; gap:24px; width:100%; min-height:140px; margin:0; padding:0 28px 0 0; border:0; border-radius:0; background:#fff; text-align:left; white-space:normal; color:#111; cursor:pointer; }
.featured-slide[hidden] { display:none !important; }
.featured-photo { width:220px; height:140px; object-fit:cover; flex-shrink:0; }
.featured-copy { display:flex; flex:1 1 auto; min-width:0; flex-direction:column; gap:3px; padding:12px 0 22px; font:600 23px/1.15 'Roboto',Arial,sans-serif; white-space:normal; overflow-wrap:break-word; }
.featured-copy strong { text-transform:uppercase; color:#244d50; font-size:30px; }
.featured-copy > span { display:block; max-width:100%; white-space:normal; }
.featured-logo { width:46px; height:58px; object-fit:contain; flex:0 0 auto; margin-left:auto; }
.featured-controls { position:absolute; bottom:4px; left:50%; display:flex; align-items:center; gap:8px; transform:translateX(-50%); z-index:1; }
.featured-controls button { width:9px; height:9px; min-height:0; margin:0; padding:0; border:1px solid #32576a; background:#fff; border-radius:50%; }
.featured-controls button[aria-pressed="true"] { background:#32576a; }
.featured-controls button.featured-pause { width:22px; height:20px; border:0; border-radius:0; background:transparent; color:#32576a; font:14px/1 Arial,sans-serif; }
.featured-close { position:absolute; right:10px; top:10px; border:0; margin:0; padding:0; width:26px; height:26px; border-radius:50%; color:#d4dce1; background:#09141c; font:24px/1 Arial,sans-serif; }
.featured-slide:focus-visible,.featured-controls button:focus-visible,.featured-close:focus-visible { outline:3px solid #1f63a3; outline-offset:3px; }
.client-graphic-link { display:block; width:100%; margin:0 auto; }
.client-graphic { display:block; width:100% !important; max-width:1672px; height:auto !important; margin:0 auto; }
#details > .client-graphic-link { margin:1rem auto 3rem; }
.donation-cta { color:#1f63a3 !important; text-decoration:underline; }
#details p.fund-data-note { font:14px/1.6 'Roboto',Arial,sans-serif; color:#555; margin:12px 0 24px; }
.fund-source-notes { margin:18px 0 26px; text-align:left; color:#333; font:14px/1.6 'Roboto',Arial,sans-serif; }
.fund-source-notes summary { color:#1f63a3; cursor:pointer; margin-bottom:10px; }
.fund-source-notes dt { margin-top:10px; font-weight:600; }
.fund-source-notes dd { margin-left:0; }
.fund-source-notes a { color:#1f63a3; }
#datatable_section .row1 { overflow-x:auto; }
#table-data { min-width:1300px; }
#table-data td,#table-data th { white-space:normal; min-width:100px; }
#table-data td:first-child,#table-data th:first-child { min-width:180px; }
.partnership .row > div > img[src*="/img/client/"] { object-fit:contain; }
@media(max-width:912px) {
  #featured-banner { padding:5px 32px 5px 5px; }
  .featured-frame,.featured-slide { min-height:120px; }
  .featured-slide { gap:12px; padding-right:12px; }
  .featured-photo { width:120px; height:120px; }
  .featured-copy { font-size:17px; padding-bottom:24px; }
  .featured-copy strong { font-size:22px; }
  .featured-logo { width:34px; height:44px; }
  .featured-close { top:5px; right:3px; }
}
@media(max-width:520px) {
  .featured-slide { gap:9px; }
  .featured-photo { width:70px; }
  .featured-copy { font-size:14px; line-height:1.22; }
  .featured-copy strong { font-size:19px; }
  .featured-logo { display:none; }
  #details > .client-graphic-link { overflow:auto; }
  .client-graphic { min-width:760px; }
  .client-graphic-link { overflow-x:auto; }
  .sidebarContact { max-width:100vw; }
}
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { animation:none !important; transition:none !important; } }

.contact-interest-note { margin:0 0 18px; padding:12px 14px; border-left:3px solid var(--ips-blue); background:#f1f5f8; color:var(--ips-navy); font:16px/1.5 Roboto,Arial,sans-serif; }
.featured-slide { text-decoration:none !important; }
.featured-slide:hover .featured-copy > span,.featured-slide:focus .featured-copy > span { text-decoration:underline; }
