@import url("https://fonts.googleapis.com/css2?family=Libre+Baskerville:wght@700&family=Source+Sans+3:wght@400;500;600;700;800&display=swap");

:root{
  --ipci-navy:#071f78;
  --ipci-blue:#133f96;
  --ipci-sky:#72ccec;
  --ipci-teal:#008d78;
  --ipci-peach:#f4b28d;
  --ipci-accent-start:#133f96;
  --ipci-accent-mid:#008d78;
  --ipci-accent-end:#1f7fa3;
  --ipci-ink:#122044;
  --ipci-muted:#64728d;
  --ipci-soft:#eef6ff;
  --ipci-paper:#fbfaf8;
  --ipci-white:#ffffff;
  --ipci-border:#d9e4f2;
  --ipci-page-max:75rem;
  --ipci-content-max:100rem;
  --radius:8px;
  --shadow:0 18px 44px rgba(18,32,68,.12);
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  overflow-x:hidden;
  color:var(--ipci-ink);
  font-family:"Source Sans 3","Trebuchet MS",sans-serif;
  font-size:18px;
  line-height:1.6;
  background:
    radial-gradient(900px 420px at 84% -10%,rgba(114,204,236,.24),transparent 58%),
    radial-gradient(760px 380px at -8% 4%,rgba(244,178,141,.18),transparent 62%),
    linear-gradient(180deg,#eef6ff 0,#ffffff 470px,#f7fbff 100%);
}

h1,h2,h3,h4{
  margin-top:0;
  color:var(--ipci-ink);
  font-family:"Libre Baskerville",Georgia,serif;
  line-height:1.18;
  letter-spacing:-.025em;
}
h1{font-size:clamp(2.1rem,4.8vw,4.3rem)}
h2{font-size:clamp(1.45rem,2.8vw,2.35rem)}
h3{font-size:1.3rem}
h1,h2,h3{overflow-wrap:break-word}
p{margin-top:0}
a{color:var(--ipci-blue);text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%;height:auto}
.shell{
  width:var(--ipci-page-max);
  max-width:calc(100% - 2rem);
  margin:0 auto;
}
.shell-wide{
  width:min(var(--ipci-content-max),calc(100% - 2rem));
  max-width:none;
}

.skip-link{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0 0 0 0);
  white-space:nowrap;
  border:0;
}
.skip-link:focus-visible{
  clip:auto;
  width:auto;
  height:auto;
  margin:0;
  left:1rem;
  top:1rem;
  z-index:99;
  padding:.65rem 1rem;
  overflow:visible;
  background:var(--ipci-navy);
  color:#fff;
  border-radius:var(--radius);
}

.site-header{
  padding:1.2rem 0 0;
  background:transparent;
  border-bottom:0;
}
.masthead{
  display:flex;
  align-items:center;
  gap:1rem;
}
.brand{
  display:inline-flex;
  align-items:center;
  gap:.85rem;
  min-width:0;
  color:var(--ipci-ink);
}
.brand:hover{text-decoration:none}
.brand-emblem{
  display:grid;
  place-items:center;
  width:88px;
  height:88px;
  overflow:visible;
  background:transparent;
  border:0;
  border-radius:999px;
  box-shadow:none;
}
.brand-emblem img{
  width:88px;
  height:88px;
  object-fit:contain;
}
.masthead-note{
  margin-left:auto;
  display:flex;
  gap:.55rem;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.masthead-note a{
  display:inline-flex;
  align-items:center;
  min-height:36px;
  padding:.3rem .78rem;
  color:#223a63;
  background:
    linear-gradient(135deg,rgba(255,255,255,.94),rgba(239,247,255,.78)),
    rgba(255,255,255,.78);
  border:1px solid rgba(19,63,150,.12);
  border-radius:999px;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.95),
    0 8px 20px rgba(18,32,68,.06);
  font-size:.84rem;
  font-weight:800;
  text-decoration:none;
  transition:background-color .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease;
}
.masthead-note a:hover,
.masthead-note a:focus-visible{
  color:var(--ipci-blue);
  background:
    linear-gradient(135deg,rgba(255,255,255,1),rgba(228,246,253,.86)),
    rgba(255,255,255,.92);
  border-color:rgba(19,63,150,.22);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,1),
    0 10px 24px rgba(18,32,68,.1),
    0 0 0 3px rgba(114,204,236,.14);
  text-decoration:none;
  outline:0;
}

.menu-toggle{
  display:none;
  margin-left:auto;
  background:transparent;
  color:var(--ipci-blue);
  border:0;
  border-radius:0;
  padding:.62rem .9rem;
  font-weight:800;
  cursor:pointer;
  overflow:hidden;
  box-shadow:none;
  transition:
    color .24s ease,
    transform .24s cubic-bezier(.22,1,.36,1);
}
.menu-toggle:hover,
.menu-toggle:focus-visible{
  background:transparent;
  color:#0f3a91;
  transform:translateY(-1px);
}
.menu-toggle:focus-visible{
  outline:2px solid rgba(19,63,150,.35);
  outline-offset:3px;
}
.menu-toggle__icon{
  position:relative;
  display:block;
  width:28px;
  height:22px;
}
.menu-toggle__icon span{
  display:block;
  position:absolute;
  left:0;
  width:100%;
  height:3px;
  border-radius:0;
  background:currentColor;
  transform-origin:center;
  opacity:1;
  transform:rotate(0deg);
  transition:top .25s ease-in-out, left .25s ease-in-out, opacity .25s ease-in-out, transform .25s ease-in-out;
}
.menu-toggle__icon span:nth-child(1){top:0}
.menu-toggle__icon span:nth-child(2){top:9px}
.menu-toggle__icon span:nth-child(3){top:18px}
.menu-toggle[aria-expanded="true"] .menu-toggle__icon span:nth-child(1){
  top:9px;
  transform:rotate(135deg);
}
.menu-toggle[aria-expanded="true"] .menu-toggle__icon span:nth-child(2){
  left:-38px;
  opacity:0;
}
.menu-toggle[aria-expanded="true"] .menu-toggle__icon span:nth-child(3){
  top:9px;
  transform:rotate(-135deg);
}
.topbar-zone{margin-top:.7rem}
.main-nav{
  position:relative;
  overflow:hidden;
  margin-top:1rem;
  background:linear-gradient(90deg,var(--ipci-navy),var(--ipci-accent-start) 58%,var(--ipci-accent-end));
  border-radius:0 0 0 0;
  padding:.28rem .75rem;
  box-shadow:
    0 14px 30px rgba(7,31,120,.18),
    inset 0 1px 0 rgba(255,255,255,.16);
}
.main-nav::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(180deg,rgba(255,255,255,.14),rgba(255,255,255,0) 54%),
    radial-gradient(520px 120px at 100% 0,rgba(114,204,236,.3),transparent 68%);
}
.main-nav .mod-menu,
.main-nav .menu{
  position:relative;
  z-index:1;
  margin:0;
  padding:0;
  list-style:none;
  display:flex;
  align-items:center;
  gap:2px;
  flex-wrap:nowrap;
  overflow-x:auto;
  overflow-y:hidden;
  scrollbar-width:none;
  -ms-overflow-style:none;
}
.main-nav .mod-menu::-webkit-scrollbar,
.main-nav .menu::-webkit-scrollbar{display:none}
.main-nav .mod-menu > li,
.main-nav .menu > li{
  margin:0;
  flex:0 0 auto;
}
.main-nav .mod-menu > li > a,
.main-nav .menu > li > a{
  position:relative;
  display:block;
  isolation:isolate;
  overflow:hidden;
  white-space:nowrap;
  color:#fff;
  padding:.74rem .86rem;
  font-size:1rem;
  font-weight:800;
  letter-spacing:-.01em;
  text-decoration:none;
  transform:translateY(0);
  transition:
    transform .32s cubic-bezier(.22,1,.36,1),
    box-shadow .32s cubic-bezier(.22,1,.36,1),
    background-color .24s ease,
    border-color .24s ease,
    color .24s ease;
}
.main-nav .mod-menu > li > a::before,
.main-nav .menu > li > a::before{
  content:"";
  position:absolute;
  inset:-55% -85%;
  z-index:0;
  pointer-events:none;
  background:linear-gradient(
    120deg,
    rgba(255,255,255,0) 34%,
    rgba(255,255,255,.28) 50%,
    rgba(255,255,255,0) 66%
  );
  transform:translateX(-58%) rotate(8deg);
  transition:transform .38s cubic-bezier(.22,1,.36,1);
}
.main-nav .mod-menu > li.active > a,
.main-nav .mod-menu > li.current > a,
.main-nav .mod-menu > li > a:hover,
.main-nav .menu > li.active > a,
.main-nav .menu > li.current > a,
.main-nav .menu > li > a:hover{
  color:#fff;
  background:rgba(255,255,255,.18);
  text-decoration:none;
}
.main-nav .mod-menu > li > a:hover,
.main-nav .menu > li > a:hover{

}
.main-nav .mod-menu > li > a:hover::before,
.main-nav .menu > li > a:hover::before,
.main-nav .mod-menu > li.active > a::before,
.main-nav .mod-menu > li.current > a::before,
.main-nav .menu > li.active > a::before,
.main-nav .menu > li.current > a::before{
  transform:translateX(54%) rotate(8deg);
}
.main-nav .mod-menu > li > a:active,
.main-nav .menu > li > a:active{
  box-shadow:
    0 8px 18px rgba(8,22,74,.2),
    inset 0 1px 0 rgba(255,255,255,.08);
}
.main-nav .mod-menu > li > a:focus-visible,
.main-nav .menu > li > a:focus-visible{
  outline:none;
  box-shadow:
    0 0 0 3px rgba(255,255,255,.16),
    0 16px 30px rgba(8,22,74,.24);
}

.identity-stage{
  margin-top:.75rem;
  padding:0;
  background:transparent;
  border-top:0;
}
.identity-card{
  position:relative;
  overflow:hidden;
  background:#f5f1ef;
  border-radius:0 0 0 0;
  box-shadow:
    0 22px 48px rgba(18,32,68,.12),
    inset 0 1px 0 rgba(255,255,255,.82);
}
.identity-card::before{
  content:"";
  position:absolute;
  inset:0 auto auto 0;
  width:100%;
  height:4px;
  background:linear-gradient(90deg,rgba(7,31,120,.9),var(--ipci-accent-start),var(--ipci-accent-mid),var(--ipci-accent-end));
  z-index:1;
}
.identity-card img{
  display:block;
  width:100%;
  background:#f5f1ef;
}

.mission-strip{
  padding:2.1rem 0 1.15rem;
  background:transparent;
}
.mission-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:1.2rem;
  align-items:start;
}
.mission-copy{
  max-width:min(100%,88rem);
}
.mission-copy h1{margin:.5rem 0 .55rem;color:var(--ipci-navy)}
.lede{
  width:85%;
  max-width:88rem;
  margin:0;
  color:#344666;
  font-size:clamp(1.08rem,1.7vw,1.35rem);
}
.eyebrow{
  display:inline-flex;
  align-items:center;
  gap:.4rem;
  margin:0 0 .65rem;
  padding:.28rem .7rem;
  color:#fff;
  background:linear-gradient(90deg,var(--ipci-navy),var(--ipci-accent-start));
  border-radius:999px;
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.eyebrow.dark{
  color:var(--ipci-navy);
  background:#e8f3ff;
  border:1px solid #cfe4fb;
}
.mission-facts{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:.65rem;
}
.mission-facts span{
  min-height:84px;
  display:flex;
  align-items:flex-end;
  padding:.85rem;
  color:#fff;
  background:
    linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,0)),
    var(--ipci-accent-start);
  border-radius:var(--radius);
  font-size:.92rem;
  font-weight:800;
  box-shadow:0 12px 28px rgba(19,63,150,.16);
}
.mission-facts span:nth-child(2){
  background:
    linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,0)),
    var(--ipci-accent-mid);
}
.mission-facts span:nth-child(3){
  background:
    linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,0)),
    var(--ipci-accent-end);
}

.breadcrumbs-zone{margin-top:1.35rem}
.mod-breadcrumbs__wrapper,
.breadcrumbs,
.mod-breadcrumbs{
  color:var(--ipci-blue);
  font-size:.92rem;
  font-weight:700;
}
.mod-breadcrumbs__wrapper{
  position:relative;
  padding:1rem 1.2rem;
  background:
    linear-gradient(135deg,rgba(255,255,255,.96),rgba(246,250,255,.9)),
    var(--ipci-white);
  border:1px solid rgba(19,63,150,.12);
  border-radius:16px;
  box-shadow:0 14px 35px rgba(15,35,75,.08);
  overflow:hidden;
}
.mod-breadcrumbs__wrapper::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:5px;
  background:linear-gradient(180deg,var(--ipci-blue),var(--ipci-sky));
}
.breadcrumbs,
.mod-breadcrumbs{
  margin:0;
  padding:0;
  background:transparent;
  border:0;
}
.breadcrumbs ol,
.breadcrumbs ul,
.mod-breadcrumbs ol,
.mod-breadcrumbs ul,
ol.breadcrumb,
ul.breadcrumb{
  margin:0;
  padding:0;
  list-style:none;
  display:flex;
  gap:.46rem;
  flex-wrap:wrap;
  align-items:center;
}
.mod-breadcrumbs__here{
  min-height:36px;
  padding:.42rem .82rem;
  border-radius:999px;
  background:linear-gradient(135deg,rgba(114,204,236,.22),rgba(246,250,255,.94));
  box-shadow:inset 0 0 0 1px rgba(19,63,150,.04);
  color:var(--ipci-blue);
  font-weight:800;
  white-space:nowrap;
}
.breadcrumbs li,
.mod-breadcrumbs li,
.breadcrumb-item{
  display:inline-flex;
  align-items:center;
  gap:.46rem;
}
.breadcrumbs li:not(:last-child)::after,
.mod-breadcrumbs li:not(:last-child)::after,
.breadcrumb-item:not(:last-child)::after{
  content:"\203A";
  color:rgba(16,39,111,.34);
  font-size:1rem;
  font-weight:900;
  line-height:1;
}
.breadcrumb > li + li::before,
.breadcrumb-item + .breadcrumb-item::before{
  content:"";
  display:none;
}
.breadcrumbs a,
.mod-breadcrumbs a,
.breadcrumb-item a{
  display:inline-flex;
  align-items:center;
  min-height:36px;
  padding:.42rem .82rem;
  border-radius:999px;
  background:linear-gradient(135deg,rgba(114,204,236,.18),rgba(246,250,255,.94));
  box-shadow:inset 0 0 0 1px rgba(19,63,150,.04);
  color:var(--ipci-blue);
  font-weight:800;
  text-decoration:none;
  transition:color .2s ease,box-shadow .2s ease,transform .2s ease;
}
.breadcrumbs a:hover,
.mod-breadcrumbs a:hover,
.breadcrumb-item a:hover{
  color:var(--ipci-navy);
  text-decoration:none;
  transform:translateY(-1px);
  box-shadow:
    inset 0 0 0 1px rgba(19,63,150,.08),
    0 8px 18px rgba(18,32,68,.08);
}
.breadcrumbs li:last-child,
.mod-breadcrumbs li:last-child,
.breadcrumb-item.active{
  color:var(--ipci-ink);
  font-weight:700;
}
.breadcrumbs li:last-child span,
.mod-breadcrumbs li:last-child span,
.breadcrumb-item.active span{
  display:inline-flex;
  align-items:center;
  min-height:36px;
  padding:.42rem .82rem;
  border-radius:999px;
  background:linear-gradient(135deg,rgba(114,204,236,.18),rgba(246,250,255,.94));
  box-shadow:inset 0 0 0 1px rgba(19,63,150,.04);
  color:var(--ipci-blue);
  font-weight:800;
}
.breadcrumbs .divider,
.mod-breadcrumbs .divider,
.breadcrumb-item .divider{display:none}

.showcase-zone{margin-top:0}
.content-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:1.2rem;
  margin:0 auto 0;
}
.side:empty{display:none}
.side > *{
  background:#fff;
  border:1px solid var(--ipci-border);
  border-radius:var(--radius);
  padding:1rem;
  box-shadow:0 12px 26px rgba(18,32,68,.08);
}
.content-main{
  min-width:0;
  overflow-wrap:break-word;
}
.content-main :where(p,li,td,th,blockquote,figcaption){
  min-width:0;
  overflow-wrap:break-word;
}
.content-main :where(a){
  overflow-wrap:anywhere;
  word-break:break-word;
}
.content-main :where(ul,ol){
  max-width:100%;
}
.is-inner .content-main{
  width:100%;
  margin:0 auto;
  padding:clamp(1.4rem,3vw,2.65rem);
  background:#fff;
  border:1px solid var(--ipci-border);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
}

.home-intro,
.home-news,
.evidence-panel,
.partner-panel{
  margin-bottom:2.25rem;
  padding:1.85rem;
  background:rgba(255,255,255,.9);
  border:1px solid var(--ipci-border);
  border-radius:var(--radius);
  box-shadow:0 18px 44px rgba(18,32,68,.08);
}
.intro-head{
  max-width:none;
  margin-bottom:1.25rem;
}
.intro-head h2{margin:.25rem 0 .4rem;color:var(--ipci-navy)}
.intro-head p:last-child{color:var(--ipci-muted);font-size:1.05rem}
.quick-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1rem;
}
.quick-card{
  min-height:270px;
  display:flex;
  flex-direction:column;
  padding:1.15rem;
  background:
    linear-gradient(180deg,rgba(238,246,255,.55),rgba(255,255,255,.96)),
    #fff;
  border:1px solid #d5e4f5;
  border-top:5px solid var(--ipci-sky);
  border-radius:var(--radius);
  box-shadow:0 12px 28px rgba(18,32,68,.07);
}
.quick-card:nth-child(2){border-top-color:var(--ipci-teal)}
.quick-card:nth-child(3){border-top-color:var(--ipci-navy)}
.legacy-contact{display:grid;gap:1.4rem}
.legacy-contact__top{display:grid;grid-template-columns:minmax(18rem,.42fr) minmax(0,1fr);gap:1.2rem;align-items:stretch}
.legacy-contact__details{display:grid;gap:.85rem;padding:1.15rem;background:linear-gradient(180deg,rgba(238,246,255,.72),#fff);border:1px solid var(--ipci-border);border-radius:var(--radius);box-shadow:0 14px 34px rgba(18,32,68,.08)}
.legacy-contact__details h2{margin:0;color:var(--ipci-navy);font-size:1.35rem}
.legacy-contact-card{display:grid;grid-template-columns:2.6rem minmax(0,1fr);gap:.75rem;padding:.85rem;background:#fff;border:1px solid #d5e4f5;border-radius:var(--radius)}
.legacy-contact-card__icon{width:2.6rem;height:2.6rem;border-radius:50%;background:linear-gradient(135deg,var(--ipci-accent-start),var(--ipci-accent-mid));position:relative;box-shadow:0 10px 22px rgba(18,32,68,.14)}
.legacy-contact-card__icon::before,.legacy-contact-card__icon::after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border:2px solid #fff}
.legacy-contact-card--tel .legacy-contact-card__icon::before{width:1rem;height:.55rem;border-top:0;border-radius:0 0 1rem 1rem;transform:translate(-50%,-50%) rotate(-28deg)}
.legacy-contact-card--pin .legacy-contact-card__icon::before{width:.85rem;height:.85rem;border-radius:50% 50% 50% 0;transform:translate(-50%,-60%) rotate(-45deg)}
.legacy-contact-card--pin .legacy-contact-card__icon::after{width:.24rem;height:.24rem;border-radius:50%;background:#fff}
.legacy-contact-card--mail .legacy-contact-card__icon::before{width:1.15rem;height:.82rem;border-radius:2px}
.legacy-contact-card--mail .legacy-contact-card__icon::after{width:.82rem;height:.82rem;border-width:0 2px 2px 0;transform:translate(-50%,-66%) rotate(45deg)}
.legacy-contact-card h3{margin:0 0 .2rem;color:var(--ipci-navy);font-family:"Source Sans 3","Trebuchet MS",sans-serif;font-size:1rem;font-weight:800}
.legacy-contact-card p{margin:0;color:var(--ipci-ink);font-size:.98rem;line-height:1.45}
.legacy-contact__map{min-height:31.25rem;border:1px solid var(--ipci-border);border-radius:var(--radius);overflow:hidden;box-shadow:0 14px 34px rgba(18,32,68,.08);background:var(--ipci-soft)}
.legacy-contact__map iframe{display:block;width:100%;height:100%;min-height:31.25rem;border:0}
.quick-card span{
  color:var(--ipci-muted);
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.quick-card h3{margin:.38rem 0 .6rem;color:var(--ipci-navy)}
.quick-card p{
  color:#52617e;
  font-size:.98rem;
}
.quick-card a{
  width:max-content;
  margin-top:auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:.48rem .9rem;
  color:#fff;
  background:#079dc3;
  border-radius:6px;
  font-weight:800;
}
.quick-card a:hover{
  background:var(--ipci-navy);
  text-decoration:none;
}

.home-news{
  overflow:hidden;
  background:
    linear-gradient(135deg,rgba(242,248,255,.98),rgba(255,255,255,.98) 56%,rgba(251,247,242,.92)),
    #f6faff;
  border-color:#d6e5f5;
}
.home-news__head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:1rem;
  margin-bottom:1.15rem;
}
.home-news__head h2{
  margin:.25rem 0 0;
  color:var(--ipci-navy);
}
.home-news__archive,
.home-news__more{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:.35rem .72rem;
  color:var(--ipci-navy);
  background:#eef6ff;
  border:1px solid #c9def8;
  border-radius:6px;
  font-weight:800;
  font-size:.92rem;
  white-space:nowrap;
}
.home-news__archive:hover,
.home-news__more:hover{
  color:#fff;
  background:var(--ipci-navy);
  text-decoration:none;
}
.home-news__layout{
  display:grid;
  grid-template-columns:1fr;
  gap:1rem;
}
.home-news__item{
  background:rgba(255,255,255,.84);
  border:1px solid rgba(19,63,150,.12);
  border-radius:var(--radius);
  box-shadow:0 12px 28px rgba(18,32,68,.06);
}
.home-news__image{display:block;width:100%;overflow:hidden;background:var(--ipci-soft);border-radius:var(--radius)}
.home-news__image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease}
.home-news__image:hover img{transform:scale(1.025)}
.home-news__image.is-fallback{padding:1.25rem;background:#eef6ff}
.home-news__image.is-fallback img{object-fit:contain}
.home-news time{
  display:block;
  margin-bottom:.45rem;
  color:#5b6e8d;
  font-size:.86rem;
  font-weight:800;
}
.home-news__item h3 a{
  color:inherit;
}
.home-news__more{
  width:max-content;
  margin-top:auto;
}
.home-news__item{
  display:grid;
  grid-template-columns:13rem minmax(0,1fr);
  grid-template-rows:auto auto minmax(3rem,1fr) auto;
  column-gap:1.15rem;
  align-items:start;
  min-height:10.55rem;
  padding:1.15rem;
}
.home-news__item > :not(.home-news__image){grid-column:2}
.home-news__image--thumb{grid-column:1;grid-row:1 / span 4;width:13rem;height:100%;align-self:start}
.home-news__item h3{
  margin:0 0 .35rem;
  color:var(--ipci-navy);
  font-family:"Source Sans 3","Trebuchet MS",sans-serif;
  font-size:1.08rem;
  line-height:1.35;
}
.home-news__item p{
  max-width:72rem;
  margin:0;
  color:#5a6882;
  font-size:.94rem;
  line-height:1.5;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.home-news__item .home-news__more{align-self:end;margin-top:.7rem}

.evidence-panel{
  display:grid;
  grid-template-columns:minmax(260px,.42fr) minmax(0,1fr);
  gap:1.2rem;
  background:
    linear-gradient(135deg,rgba(244,249,255,.98),rgba(255,255,255,.98) 56%,rgba(252,248,243,.92));
}
.evidence-panel h2{margin:.3rem 0 0;color:var(--ipci-navy)}
.evidence-list{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:.85rem;
}
.evidence-list article{
  padding:1rem;
  background:#fff;
  border:1px solid var(--ipci-border);
  border-radius:var(--radius);
}
.evidence-list strong{
  display:block;
  margin-bottom:.35rem;
  color:var(--ipci-blue);
  font-size:1.02rem;
}
.evidence-list p{margin:0;color:var(--ipci-muted);font-size:.95rem}

.partner-panel{
  display:grid;
  grid-template-columns:minmax(260px,.32fr) minmax(0,1fr);
  gap:1.3rem;
  align-items:center;
  background:
    linear-gradient(135deg,rgba(242,248,255,.98),rgba(255,255,255,.98) 56%,rgba(251,247,242,.92)),
    #f6faff;
}
.partner-copy h2{margin:.3rem 0 0;color:var(--ipci-navy)}
.partner-logos{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:.8rem;
}
.partner-logo{
  min-height:116px;
  display:grid;
  place-items:center;
  padding:1rem;
  background:#fff;
  border:1px solid var(--ipci-border);
  border-radius:var(--radius);
  text-decoration:none;
  transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease;
}
.partner-logo:hover,
.partner-logo:focus-visible{
  background:#fff;
  border-color:rgba(19,63,150,.28);
  box-shadow:0 16px 34px rgba(18,32,68,.1);
  text-decoration:none;
}
.partner-logo:focus-visible{
  outline:none;
  box-shadow:0 0 0 3px rgba(19,63,150,.14),0 16px 34px rgba(18,32,68,.1);
}
.partner-logo img{
  max-width:100%;
  max-height:76px;
  object-fit:contain;
}

.content-main .moduletable,
.content-main .item-page,
.content-main article{animation:rise .45s ease-out both}
.content-main .page-header h1,
.content-main .item-page h1,
.content-main .item-page h2,
.content-main .com-content-category-blog__heading{color:var(--ipci-navy)}
.content-main img{border-radius:10px}
.content-main :where(.com-content-category-blog,.com-content-article__body,.item-content) img{
  display: inline-block;
  max-width: 100%;
  height: auto;
  overflow: hidden;
  background: #fff;
  transform: translateZ(0);
  transition: transform .28s cubic-bezier(.22, 1, .36, 1), box-shadow .28s cubic-bezier(.22, 1, .36, 1), border-color .28s ease;
  padding: 10px 0px 0px 0px;
}
.content-main :where(.item-content,.com-content-article__body) p:has(> img){
  display:flex;
  flex-wrap:wrap;
  align-items:flex-start;
  gap:1.05rem;
  margin:1.45rem 0;
  font-size:0;
  line-height:0;
}
.content-main :where(.item-content,.com-content-article__body) p:has(> img) > img{
  flex:0 1 auto;
  margin:0;
}
.content-main :where(.item-content,.com-content-article__body) p:has(> img + img) > img{
  flex:1 1 320px;
  min-width:min(100%,280px);
}
@media (hover:hover){
  .content-main :where(.com-content-category-blog,.com-content-article__body,.item-content) img:hover{
    border-color:rgba(19,63,150,.22);
    box-shadow:
      0 30px 62px rgba(18,32,68,.2),
      0 2px 0 rgba(255,255,255,.92) inset;
    transform:translateY(-2px);
  }
}
.content-main p:empty{display:none}
.project-anchor-target{
  scroll-margin-top:7rem;
}
.content-main table{
  width:100%;
  border-collapse:collapse;
}
.content-main th,
.content-main td{
  padding:.65rem;
  border:1px solid var(--ipci-border);
}
.content-main th{background:#eef6ff;color:var(--ipci-navy);text-align:left}
.content-main table:has(img[src*="/images/people/"]){
  position:relative;
  display:block;
  float:none !important;
  width:min(100%,760px) !important;
  margin:0 0 3rem !important;
  overflow:hidden;
  border:1px solid rgba(19,63,150,.13) !important;
  border-radius:24px;
  background:
    radial-gradient(circle at 92% 0,rgba(114,204,236,.22),transparent 34%),
    linear-gradient(135deg,rgba(255,255,255,.98),rgba(246,251,255,.94) 62%,rgba(244,178,141,.08));
  box-shadow:
    0 26px 58px rgba(18,32,68,.13),
    0 1px 0 rgba(255,255,255,.88) inset;
  isolation:isolate;
}
.content-main table:has(img[src*="/images/people/"])::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  z-index:0;
  width:7px;
  background:linear-gradient(180deg,var(--ipci-accent-start),var(--ipci-accent-mid),var(--ipci-accent-end));
}
.content-main table:has(img[src*="/images/people/"])::after{
  content:"";
  position:absolute;
  inset:auto -4rem -4rem auto;
  z-index:0;
  width:13rem;
  height:13rem;
  border-radius:50%;
  background:radial-gradient(circle,rgba(114,204,236,.2),transparent 68%);
  pointer-events:none;
}
.content-main table:has(img[src*="/images/people/"]) tbody{
  position:relative;
  z-index:1;
  display:block;
}
.content-main table:has(img[src*="/images/people/"]) tr{
  display:grid;
  grid-template-columns:220px minmax(0,1fr);
  min-height:238px;
}
.content-main table:has(img[src*="/images/people/"]) td{
  width:auto !important;
  min-width:0;
  border:0 !important;
  background:transparent !important;
  padding:1.35rem !important;
  vertical-align:middle;
}
.content-main table:has(img[src*="/images/people/"]) td:first-child{
  display:grid;
  place-items:center;
  border-right:1px solid rgba(19,63,150,.1) !important;
  background:linear-gradient(180deg,rgba(255,255,255,.44),rgba(235,246,255,.62)) !important;
}
.content-main table:has(img[src*="/images/people/"]) td:first-child p{
  display:block;
  margin:0;
  font-size:initial;
  line-height:normal;
}
.content-main table:has(img[src*="/images/people/"]) td:first-child img[src*="/images/people/"]{
  display:block;
  width:170px !important;
  max-width:100%;
  aspect-ratio:4/5;
  height:auto !important;
  object-fit:cover;
  object-position:center top;
  border:1px solid rgba(255,255,255,.86);
  border-radius:22px;
  box-shadow:
    0 20px 42px rgba(18,32,68,.18),
    0 0 0 7px rgba(255,255,255,.56);
}
.content-main table:has(img[src*="/images/people/"]) td:nth-child(2){
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:.48rem;
  width:auto !important;
  color:#20385d;
}
.content-main table:has(img[src*="/images/people/"]) td:nth-child(2) p{
  margin:0;
}
.content-main table:has(img[src*="/images/people/"]) td:nth-child(2) p:first-child{
  margin-bottom:.25rem;
  color:var(--ipci-navy);
  font-family:var(--ipci-serif);
  font-size:clamp(1.45rem,2vw,1.95rem);
  line-height:1.08;
}
.content-main table:has(img[src*="/images/people/"]) td:nth-child(2) p:nth-child(2){
  max-width:34rem;
  margin-bottom:.65rem;
  color:#253e62;
  font-size:clamp(1rem,1.5vw,1.18rem);
  line-height:1.45;
}
.content-main table:has(img[src*="/images/people/"]) td:nth-child(2) p:has(joomla-hidden-mail),
.content-main table:has(img[src*="/images/people/"]) td:nth-child(2) p:has(a[href^="mailto:"]),
.content-main table:has(img[src*="/images/people/"]) td:nth-child(2) p:has(a[href*="linkedin"]),
.content-main table:has(img[src*="/images/people/"]) td:nth-child(2) p:has(a[href*="researchgate"]),
.content-main table:has(img[src*="/images/people/"]) td:nth-child(2) p:has(a[href*="twitter"]){
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:.48rem;
}
.content-main table:has(img[src*="/images/people/"]) td:nth-child(2) p:has(joomla-hidden-mail) > span,
.content-main table:has(img[src*="/images/people/"]) td:nth-child(2) p:has(a[href^="mailto:"]) > span,
.content-main table:has(img[src*="/images/people/"]) td:nth-child(2) p:has(a[href*="linkedin"]) > span,
.content-main table:has(img[src*="/images/people/"]) td:nth-child(2) p:has(a[href*="researchgate"]) > span,
.content-main table:has(img[src*="/images/people/"]) td:nth-child(2) p:has(a[href*="twitter"]) > span{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:.48rem;
}
.content-main table:has(img[src*="/images/people/"]) td:nth-child(2) a[href^="mailto:"]{
  display:inline-flex;
  align-items:center;
  min-height:36px;
  padding:.16rem .55rem;
  border-radius:999px;
  background:rgba(255,255,255,.72);
  box-shadow:0 8px 18px rgba(18,32,68,.08);
  font-weight:900;
}
.content-main table:has(img[src*="/images/people/"]) td:nth-child(2) p:has(a[href*="linkedin"]),
.content-main table:has(img[src*="/images/people/"]) td:nth-child(2) p:has(a[href*="researchgate"]),
.content-main table:has(img[src*="/images/people/"]) td:nth-child(2) p:has(a[href*="twitter"]){
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:.42rem;
  margin-top:.2rem;
}
.content-main table:has(img[src*="/images/people/"]) td:nth-child(2) p:has(a[href*="linkedin"]) a,
.content-main table:has(img[src*="/images/people/"]) td:nth-child(2) p:has(a[href*="researchgate"]) a,
.content-main table:has(img[src*="/images/people/"]) td:nth-child(2) p:has(a[href*="twitter"]) a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
}
.content-main table:has(img[src*="/images/people/"]) td:nth-child(2) a img{
  display:inline-block;
  width:30px !important;
  height:30px !important;
  margin-left:0;
  padding:4px;
  object-fit:contain;
  vertical-align:middle;
  border:1px solid rgba(19,63,150,.1);
  border-radius:999px;
  background:#fff;
  box-shadow:0 10px 22px rgba(18,32,68,.14);
  transition:transform .22s ease, box-shadow .22s ease;
}
.content-main table:has(img[src*="/images/people/"]) td:nth-child(2) a:hover img{
  transform:translateY(-2px) scale(1.04);
  box-shadow:0 16px 30px rgba(18,32,68,.18);
}
.content-main table:has(img[src*="/images/people/"]) + p strong,
.content-main table:has(img[src*="/images/people/"]) ~ p strong{
  color:var(--ipci-navy);
  font-family:var(--ipci-serif);
  font-size:clamp(1.35rem,2.3vw,1.9rem);
}
.content-main p.legacy-spacer{
  display:none !important;
  margin:0 !important;
}
.people-article-header{
  position:relative;
  max-width:72rem;
  margin:0 auto 3.2rem;
  padding:0 1rem 1.7rem;
  text-align:center;
}
.people-article-header::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:0;
  width:min(18rem,42vw);
  height:5px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--ipci-accent-start),var(--ipci-accent-mid),var(--ipci-accent-end));
  transform:translateX(-50%);
  box-shadow:0 12px 28px rgba(19,63,150,.18);
}
.people-article-header__kicker{
  margin:0 0 .7rem;
  color:#2b5f8c;
  font-size:.82rem;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.people-article-header h2{
  max-width:58rem;
  margin:0 auto .9rem;
  color:var(--ipci-navy);
  font-family:var(--ipci-serif);
  font-size:clamp(2.35rem,4.3vw,4.85rem);
  line-height:.95;
}
.people-article-header__lede{
  max-width:62rem;
  margin:0 auto;
  color:#263d61;
  font-size:clamp(1.06rem,1.7vw,1.35rem);
  font-weight:650;
  line-height:1.55;
}
.content-main .btn,
.content-main button,
.content-main input[type="submit"]{
  min-height:42px;
  border:0;
  border-radius:6px;
  background:linear-gradient(90deg,var(--ipci-navy),#1645a1);
  color:#fff;
  padding:.55rem .95rem;
  font-weight:800;
}
.content-main .btn:hover,
.content-main button:hover,
.content-main input[type="submit"]:hover{
  filter:brightness(1.05);
  text-decoration:none;
}

.gantry-bridge{
  display:grid;
  grid-template-columns:1fr;
  gap:1.05rem;
  margin-top:2.4rem;
}
.gantry-bridge-section-title{
  grid-column:1/-1;
  margin:2.1rem 0 .45rem;
  padding-top:.85rem;
  border-top:1px solid rgba(19,63,150,.12);
  color:var(--ipci-navy);
}
.gantry-bridge-section-title:first-child{
  margin-top:0;
  border-top:0;
  padding-top:0;
}
.gantry-person-card{
  position:relative;
  display:grid;
  grid-template-columns:160px minmax(0,1fr);
  gap:1.05rem;
  overflow:hidden;
  min-height:190px;
  padding:1rem;
  border:1px solid rgba(19,63,150,.12);
  border-radius:22px;
  background:
    linear-gradient(145deg,rgba(255,255,255,.96),rgba(246,251,255,.9)),
    radial-gradient(circle at 100% 0,rgba(114,204,236,.2),transparent 34%);
  box-shadow:
    0 24px 54px rgba(18,32,68,.12),
    0 1px 0 rgba(255,255,255,.85) inset;
  transition:
    transform .28s cubic-bezier(.22,1,.36,1),
    box-shadow .28s cubic-bezier(.22,1,.36,1),
    border-color .28s ease;
}
.gantry-person-card::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:5px;
  background:linear-gradient(180deg,var(--ipci-accent-start),var(--ipci-accent-mid),var(--ipci-accent-end));
}
.gantry-person-media{
  position:relative;
  z-index:1;
}
.gantry-person-media img{
  display:block;
  width:100%;
  aspect-ratio:4/5;
  height:auto;
  object-fit:cover;
  object-position:center top;
  border:1px solid rgba(19,63,150,.12);
  border-radius:18px;
  background:#fff;
  box-shadow:0 16px 34px rgba(18,32,68,.16);
}
.gantry-person-body{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  align-self:stretch;
  min-width:0;
}
.gantry-person-body h3{
  margin:.08rem 0 .25rem;
  color:var(--ipci-navy);
  font-family:var(--ipci-serif);
  font-size:clamp(1.28rem,2vw,1.72rem);
  line-height:1.05;
}
.gantry-person-role{
  position:relative;
  display:inline-flex;
  align-items:center;
  align-self:flex-start;
  max-width:max-content;
  min-height:28px;
  margin:.08rem 0 .85rem;
  padding:.24rem .72rem .24rem .9rem;
  border:0;
  border-left:3px solid var(--ipci-sky);
  border-radius:0;
  background:linear-gradient(90deg,rgba(114,204,236,.16),rgba(255,255,255,0));
  color:var(--ipci-navy);
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.045em;
  line-height:1.15;
  text-transform:uppercase;
}
.gantry-person-desc{
  color:#253e62;
  font-size:.95rem;
  line-height:1.5;
}
.gantry-person-desc a{
  overflow-wrap:anywhere;
  font-weight:800;
}
.gantry-person-link{
  display:inline-flex;
  align-items:center;
  align-self:flex-start;
  margin-top:auto;
  padding:.52rem .82rem;
  border-radius:999px;
  background:linear-gradient(90deg,var(--ipci-navy),#1645a1);
  color:#fff;
  font-size:.82rem;
  font-weight:900;
  text-decoration:none;
  box-shadow:0 12px 24px rgba(19,63,150,.22);
}
.gantry-person-link:hover{
  color:#fff;
  transform:translateY(-1px);
}
@media (min-width:980px){
  .gantry-bridge-contentlist{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (hover:hover){
  .gantry-person-card:hover{
    border-color:rgba(19,63,150,.24);
    box-shadow:
      0 32px 68px rgba(18,32,68,.18),
      0 1px 0 rgba(255,255,255,.92) inset;
    transform:translateY(-3px);
  }
}

.content-main .items-more{
  position:relative;
  margin:2rem 0 1.35rem;
  padding:1.2rem;
  background:
    linear-gradient(135deg,rgba(238,246,255,.92),rgba(255,255,255,.98) 56%,rgba(244,178,141,.14)),
    #fff;
  border:1px solid var(--ipci-border);
  border-radius:var(--radius);
  box-shadow:0 14px 32px rgba(18,32,68,.08);
}
.content-main .items-more::before{
  content:"";
  position:absolute;
  inset:0 auto auto 0;
  width:100%;
  height:5px;
  background:linear-gradient(90deg,var(--ipci-navy),var(--ipci-accent-mid),var(--ipci-accent-end));
  border-radius:var(--radius) var(--radius) 0 0;
}
.content-main .com-content-blog__links{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.75rem;
  margin:0;
  padding:0;
  list-style:none;
  counter-reset:ipci-more-links;
}
.content-main .com-content-blog__link{
  margin:0;
  counter-increment:ipci-more-links;
}
.content-main .com-content-blog__link a{
  position:relative;
  min-height:100%;
  display:flex;
  align-items:center;
  gap:.75rem;
  padding:.78rem .9rem;
  color:var(--ipci-blue);
  background:#fff;
  border:1px solid rgba(19,63,150,.13);
  border-radius:8px;
  font-weight:700;
  line-height:1.25;
  box-shadow:0 8px 18px rgba(18,32,68,.06);
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease,color .22s ease;
}
.content-main .com-content-blog__link a::before{
  content:counter(ipci-more-links);
  flex:0 0 auto;
  display:grid;
  place-items:center;
  width:2rem;
  height:2rem;
  color:#fff;
  background:linear-gradient(135deg,var(--ipci-navy),var(--ipci-accent-end));
  border-radius:50%;
  font-size:.88rem;
  font-weight:800;
}
.content-main .com-content-blog__link a:hover{
  color:var(--ipci-navy);
  border-color:rgba(19,63,150,.32);
  box-shadow:0 14px 26px rgba(18,32,68,.12);
  text-decoration:none;
  transform:translateY(-2px);
}
.content-main .com-content-category-blog__navigation{
  clear:both;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  margin:1.55rem 0 0;
  padding:1rem 1.1rem;
  background:#fff;
  border:1px solid var(--ipci-border);
  border-radius:var(--radius);
  box-shadow:0 14px 32px rgba(18,32,68,.07);
}
.content-main .com-content-category-blog__counter{
  float:none !important;
  margin:0;
  padding:0 !important;
  color:var(--ipci-muted);
  font-size:.95rem;
  font-weight:800;
  white-space:nowrap;
}
.content-main .com-content-category-blog__pagination{
  margin-left:auto;
}
.content-main .pagination__wrapper{
  margin:0;
}
.content-main .pagination{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:flex-end;
  gap:.45rem;
  margin:0 !important;
  padding:0;
  list-style:none;
}
.content-main .pagination .page-item{
  margin:0;
  padding:0;
  list-style:none;
}
.content-main .pagination .page-link{
  min-width:2.35rem;
  min-height:2.35rem;
  display:inline-grid;
  place-items:center;
  padding:.35rem .7rem;
  color:var(--ipci-blue);
  background:#f7fbff;
  border:1px solid rgba(19,63,150,.16);
  border-radius:999px;
  font-size:.95rem;
  font-weight:800;
  line-height:1;
  text-decoration:none;
  box-shadow:none;
  transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .2s ease;
}
.content-main .pagination .page-link:hover{
  color:#fff;
  background:var(--ipci-blue);
  border-color:var(--ipci-blue);
  text-decoration:none;
  transform:translateY(-1px);
}
.content-main .pagination .active .page-link,
.content-main .pagination .page-link[aria-current="true"]{
  color:#fff;
  background:linear-gradient(135deg,var(--ipci-navy),var(--ipci-accent-end));
  border-color:transparent;
}
.content-main .pagination .disabled .page-link{
  color:#91a0ba;
  background:#eef3fa;
  border-color:#e1e9f3;
  cursor:not-allowed;
  opacity:.72;
  transform:none;
}
.content-main .pagination .icon-angle-double-left::before{content:"\00ab"}
.content-main .pagination .icon-angle-left::before{content:"\2039"}
.content-main .pagination .icon-angle-right::before{content:"\203a"}
.content-main .pagination .icon-angle-double-right::before{content:"\00bb"}
.content-main .pagination [class*="icon-angle"]{
  font-style:normal;
  line-height:1;
}

body.variant-projects .content-main .dataTables_wrapper{
  margin:1rem 0 1.4rem;
  padding:0;
  background:transparent;
  border:0;
  border-radius:0;
  box-shadow:none;
}
body.variant-projects .content-main .tab_top,
body.variant-projects .content-main .tab_bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  padding:0;
  margin:0 0 .85rem;
  background:transparent;
  border:0;
  color:var(--ipci-muted);
  overflow:visible;
}
body.variant-projects .content-main .tab_bottom{
  margin:.85rem 0 0;
}
body.variant-projects .content-main .tab_top_left,
body.variant-projects .content-main .tab_top_right,
body.variant-projects .content-main .tab_bottom_left,
body.variant-projects .content-main .tab_bottom_right{
  float:none;
  width:auto;
  padding:0;
}
body.variant-projects .content-main .tab_top_right,
body.variant-projects .content-main .tab_bottom_right{
  text-align:right;
}
body.variant-projects .content-main .dataTables_length,
body.variant-projects .content-main .dataTables_filter,
body.variant-projects .content-main .dataTables_info,
body.variant-projects .content-main .dataTables_paginate{
  color:var(--ipci-muted);
  font-size:.98rem;
}
body.variant-projects .content-main .dataTables_paginate{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:flex-end;
  gap:.55rem;
  overflow:visible;
  line-height:1;
  padding-block:.2rem;
}
body.variant-projects .content-main .dataTables_length label,
body.variant-projects .content-main .dataTables_filter label{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  font-weight:600;
}
body.variant-projects .content-main .dataTables_filter input,
body.variant-projects .content-main .dataTables_length select{
  min-height:42px;
  border:1px solid var(--ipci-border);
  border-radius:12px;
  background:#fff;
  color:var(--ipci-ink);
  box-shadow:none;
}
body.variant-projects .content-main .dataTables_filter input{
  width:230px;
  padding:0 .9rem;
}
body.variant-projects .content-main .dataTables_length select{
  padding:0 .65rem;
}
body.variant-projects .content-main .dataTables_filter input:focus,
body.variant-projects .content-main .dataTables_length select:focus{
  outline:none;
  border-color:var(--ipci-blue);
  box-shadow:0 0 0 3px rgba(19,63,150,.12);
}
body.variant-projects .content-main table.tabtable-rs_rewdmklm{
  width:100%;
  border:1px solid var(--ipci-border);
  border-radius:18px;
  border-collapse:separate;
  border-spacing:0;
  overflow:hidden;
  background:#fff;
  box-shadow:0 12px 30px rgba(18,32,68,.06);
}
body.variant-projects .content-main table.tabtable-rs_rewdmklm tr{
  border:0;
}
body.variant-projects .content-main table.tabtable-rs_rewdmklm tr.tr_ht1 td.tabcol{
  padding:1rem 1.1rem;
  border:0;
  color:#fff;
  font-weight:700;
  background:linear-gradient(135deg,#1f4d95,#3e77b8);
  letter-spacing:.01em;
}
body.variant-projects .content-main table.tabtable-rs_rewdmklm tr.tr_ht1 td:first-child{
  border-top-left-radius:18px;
}
body.variant-projects .content-main table.tabtable-rs_rewdmklm tr.tr_ht1 td:last-child{
  border-top-right-radius:18px;
}
body.variant-projects .content-main table.tabtable-rs_rewdmklm tr.tabrow td.tabcol{
  padding:1rem 1.1rem;
  border:0;
  border-bottom:1px solid var(--ipci-border);
  color:var(--ipci-ink);
  background:#fff;
  vertical-align:top;
}
body.variant-projects .content-main table.tabtable-rs_rewdmklm tr.tabrow td.tabcol:first-child{
  color:var(--ipci-blue);
  font-weight:700;
  white-space:nowrap;
}
body.variant-projects .content-main table.tabtable-rs_rewdmklm tbody > tr.tabrow:hover > td.tabcol{
  background:#f7fbff;
}
body.variant-projects .content-main table.tabtable-rs_rewdmklm tbody > tr:last-child > td.tabcol{
  border-bottom:0;
}
body.variant-projects .content-main .sorting,
body.variant-projects .content-main .sorting_asc,
body.variant-projects .content-main .sorting_desc{
  background-position:left .95rem center !important;
  padding-left:1.8rem !important;
}
body.variant-projects .content-main .footable.breakpoint > tbody > tr > td.expand{
  position:relative;
  padding-left:3.2rem !important;
  background:none !important;
}
body.variant-projects .content-main .footable.breakpoint > tbody > tr > td.expand::before{
  content:"+";
  position:absolute;
  left:1rem;
  top:50%;
  width:1.35rem;
  height:1.35rem;
  margin-top:-0.675rem;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:linear-gradient(135deg,var(--ipci-navy),var(--ipci-accent-end));
  color:#fff;
  font-size:.98rem;
  font-weight:700;
  line-height:1;
  box-shadow:0 8px 18px rgba(18,32,68,.15);
}
body.variant-projects .content-main .footable.breakpoint > tbody > tr.footable-detail-show > td.expand::before{
  content:"-";
}
body.variant-projects .content-main tr.footable-row-detail > td.footable-cell-detail{
  padding:0;
  border:0;
  border-bottom:1px solid var(--ipci-border);
  background:linear-gradient(180deg,#f9fcff,#f3f8ff);
}
body.variant-projects .content-main .footable-row-detail-inner{
  padding:1rem 1.15rem 1.1rem;
  color:#24385b;
  line-height:1.75;
}
body.variant-projects .content-main .footable-row-detail-inner strong{
  color:var(--ipci-blue);
  font-size:.8rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
body.variant-projects .content-main .paging_full_numbers{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:flex-end;
  gap:.55rem;
  overflow:visible;
  padding:.2rem 0;
}
body.variant-projects .content-main .paging_full_numbers a.paginate_button,
body.variant-projects .content-main .paging_full_numbers a.paginate_active,
body.variant-projects .content-main .paging_full_numbers a.paginate_enabled_previous,
body.variant-projects .content-main .paging_full_numbers a.paginate_enabled_next,
body.variant-projects .content-main .paging_full_numbers a.paginate_disabled_previous,
body.variant-projects .content-main .paging_full_numbers a.paginate_disabled_next{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:auto;
  min-height:45px;
  padding:.5rem 1.12rem;
  margin:0;
  box-sizing:border-box;
  line-height:1;
  vertical-align:middle;
  border:1px solid var(--ipci-border);
  border-radius:999px;
  color:var(--ipci-blue) !important;
  background:#fff;
  font-weight:700;
  transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease,color .18s ease,border-color .18s ease;
}
body.variant-projects .content-main .paging_full_numbers a.paginate_active{
  color:#fff !important;
  background:linear-gradient(135deg,var(--ipci-navy),var(--ipci-accent-end));
  border-color:var(--ipci-blue);
  box-shadow:0 12px 24px rgba(19,63,150,.2);
}
body.variant-projects .content-main .paging_full_numbers a.paginate_button:hover,
body.variant-projects .content-main .paging_full_numbers a.paginate_enabled_previous:hover,
body.variant-projects .content-main .paging_full_numbers a.paginate_enabled_next:hover{
  background:#eef6ff;
  text-decoration:none;
  transform:translateY(-1px);
  box-shadow:0 10px 18px rgba(18,32,68,.1);
}
body.variant-projects .content-main .paging_full_numbers a.paginate_active:hover{
  text-decoration:none;
  transform:translateY(-1px);
}
body.variant-projects .content-main .paging_full_numbers a.paginate_disabled_previous,
body.variant-projects .content-main .paging_full_numbers a.paginate_disabled_next{
  color:#8ea0ba !important;
  background:#f4f8fd !important;
  border-color:#d7e2f0;
  box-shadow:none;
  cursor:default;
}
body.variant-projects .content-main .paging_full_numbers a:focus-visible{
  outline:none;
  box-shadow:0 0 0 3px rgba(19,63,150,.14);
}

.prefooter{
  margin-top:2.6rem;
  padding:1.75rem 0 1.2rem;
  background:linear-gradient(180deg,#fff 0%,#fbfdff 100%);
  border-top:1px solid rgba(18,32,68,.08);
  border-bottom:1px solid var(--ipci-border);
}
.footer-grid{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(220px,.75fr) minmax(0,1.15fr);
  gap:2.25rem;
}
.footer-panel h2{
  margin:0 0 1rem;
  position:relative;
  display:inline-flex;
  align-items:center;
  padding-bottom:.48rem;
  color:var(--ipci-navy);
  font-family:"Source Sans 3","Trebuchet MS",sans-serif;
  font-size:1.08rem;
  font-weight:900;
  letter-spacing:.12em;
  text-shadow:0 1px 0 rgba(255,255,255,.8);
  text-transform:uppercase;
}
.footer-panel h2::after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:100%;
  height:3px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--ipci-blue),var(--ipci-accent-end));
  box-shadow:0 8px 16px rgba(19,63,150,.14);
}
.footer-panel:first-child h2{
  width:100%;
}
.footer-links{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1rem 1.75rem;
}
.footer-links--single{grid-template-columns:1fr}
.footer-links a{
  color:var(--ipci-blue);
  font-size:1rem;
  font-weight:600;
  text-decoration-thickness:1px;
  text-underline-offset:.22em;
}
.footer-links a:hover{
  color:var(--ipci-navy);
  text-decoration-color:rgba(19,63,150,.36);
}
.footer-panel--acknowledgement p{
  margin:0 0 .75rem;
  color:#55657f;
}
.footer-panel--acknowledgement p:last-child{margin-bottom:0}
.footer-module-row{
  margin-top:1.7rem;
  padding-top:1.35rem;
  border-top:1px solid var(--ipci-border);
}
.site-footer{
  padding:.9rem 0 1.15rem;
  color:#64728d;
  background:#fff;
}
.footer-module-row--bottom{
  margin-top:0;
  margin-bottom:.75rem;
  padding-top:0;
  border-top:0;
}
.footer-meta{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  gap:1rem;
  align-items:center;
}
.credits{
  margin:0;
  color:#64728d;
  font-size:1rem;
  line-height:1.45;
  text-align:center;
}
.credits a{
  color:var(--ipci-blue);
  font-weight:600;
}
.footer-toplink{
  margin:0;
  justify-self:end;
  font-size:1rem;
}
.footer-toplink a{
  display:inline-flex;
  align-items:center;
  gap:.35rem;
  color:var(--ipci-blue);
  font-weight:700;
  text-decoration:none;
  text-underline-offset:.22em;
  transition:color .18s ease,text-decoration-color .18s ease;
}
.footer-toplink a::after{
  content:"\2191";
  color:rgba(19,63,150,.55);
  font-size:.88em;
  line-height:1;
  transition:color .18s ease;
}
.footer-toplink a:hover{
  color:var(--ipci-navy);
  text-decoration:underline;
  text-decoration-color:rgba(19,63,150,.34);
}
.footer-toplink a:hover::after{
  color:var(--ipci-navy);
}

@keyframes rise{
  from{opacity:0;transform:translateY(10px)}
  to{opacity:1;transform:none}
}

@media (max-width:1120px){
  .quick-grid,
  .partner-logos{grid-template-columns:repeat(2,minmax(0,1fr))}
  .home-news__layout{grid-template-columns:1fr}
  .evidence-panel,
  .partner-panel{grid-template-columns:1fr}
  .evidence-list{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .footer-panel--acknowledgement{grid-column:1 / -1}
}
@media (min-width:60rem) and (max-width:74.99rem){
  .shell-wide,
  .shell{width:60rem}
}
@media (min-width:48rem) and (max-width:59.99rem){
  .shell-wide,
  .shell{width:48rem}
}
@media (min-width:30.01rem) and (max-width:47.99rem){
  .shell-wide,
  .shell{width:30rem}
}
@media (max-width:30rem){
  .shell-wide,
  .shell{
    width:100%;
    max-width:100%;
    padding-inline:1rem;
  }
}
@media (max-width:860px){
  body{
    font-size:17px;
    background:
      radial-gradient(520px 280px at 90% -6%,rgba(114,204,236,.28),transparent 62%),
      linear-gradient(180deg,#f0f8ff 0,#fff 360px,#f8fbff 100%);
  }
  .site-header{
    position:relative;
    z-index:20;
    padding-top:.9rem;
  }
  .shell-wide,
  .shell{
    width:100%;
    max-width:100%;
    padding-inline:clamp(.85rem,4vw,1.2rem);
  }
  .masthead{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    row-gap:.75rem;
  }
  .masthead-note{display:none}
  .brand{min-width:0}
  .topbar-zone{margin-top:.35rem}
  .menu-toggle{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:46px;
    min-height:46px;
    border-radius:0;
    padding:0;
  }
  .main-nav{
    position:absolute;
    z-index:40;
    top:calc(.9rem + 88px + .55rem);
    left:0;
    right:0;
    width:100%;
    display:block;
    max-height:0;
    margin-top:0;
    background:linear-gradient(105deg,var(--ipci-navy) 0%,#133f96 36%,#1d5f9e 68%,#2387a8 100%);
    padding:0 clamp(.9rem,4vw,1.25rem);
    border-top:1px solid rgba(255,255,255,.3);
    border-radius:0;
    opacity:0;
    pointer-events:none;
    box-shadow:
      0 28px 54px rgba(7,31,120,.28),
      inset 0 1px 0 rgba(255,255,255,.18);
    transform:translateY(-.7rem);
    transition:
      max-height .46s cubic-bezier(.22,1,.36,1),
      opacity .24s ease,
      transform .38s cubic-bezier(.22,1,.36,1),
      padding .38s cubic-bezier(.22,1,.36,1);
  }
  .main-nav::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:
      radial-gradient(460px 220px at 100% 0,rgba(114,204,236,.42),transparent 68%),
      linear-gradient(90deg,rgba(255,255,255,.08),rgba(255,255,255,0) 34%);
    opacity:.9;
  }
  .main-nav.is-open{
    max-height:38rem;
    padding:.75rem clamp(.9rem,4vw,1.25rem) .85rem;
    opacity:1;
    pointer-events:auto;
    box-shadow:
      0 24px 42px rgba(7,31,120,.22),
      0 44px 34px -24px rgba(5,17,54,.52),
      0 70px 70px -58px rgba(7,31,120,.38),
      inset 0 1px 0 rgba(255,255,255,.18);
    transform:translateY(0);
  }
  .main-nav .mod-menu,
  .main-nav .menu{
    display:grid;
    gap:5px;
    grid-auto-rows:minmax(3.45rem,auto);
  }
  .main-nav .mod-menu > li,
  .main-nav .menu > li{
    display:block;
    margin:0;
    min-height:0;
  }
  .main-nav .mod-menu > li > a,
  .main-nav .menu > li > a{
    display:flex;
    align-items:center;
    min-height:3.45rem;
    box-sizing:border-box;
    border-radius:0;
    padding:.95rem 1rem;
    background:rgba(255,255,255,.04);
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.08),
      0 10px 22px rgba(8,22,74,.08);
    opacity:0;
    transform:translateY(-.35rem);
    transition:
      opacity .24s ease,
      transform .34s cubic-bezier(.22,1,.36,1),
      background-color .24s ease,
      box-shadow .24s ease;
  }
  .main-nav.is-open .mod-menu > li > a,
  .main-nav.is-open .menu > li > a{
    opacity:1;
    transform:translateY(0);
  }
  .main-nav .mod-menu > li.active > a,
  .main-nav .mod-menu > li.current > a,
  .main-nav .menu > li.active > a,
  .main-nav .menu > li.current > a{
    background:rgba(255,255,255,.18);
  }
  .main-nav.is-open .mod-menu > li:nth-child(1) > a,
  .main-nav.is-open .menu > li:nth-child(1) > a{transition-delay:.02s}
  .main-nav.is-open .mod-menu > li:nth-child(2) > a,
  .main-nav.is-open .menu > li:nth-child(2) > a{transition-delay:.05s}
  .main-nav.is-open .mod-menu > li:nth-child(3) > a,
  .main-nav.is-open .menu > li:nth-child(3) > a{transition-delay:.08s}
  .main-nav.is-open .mod-menu > li:nth-child(4) > a,
  .main-nav.is-open .menu > li:nth-child(4) > a{transition-delay:.11s}
  .main-nav.is-open .mod-menu > li:nth-child(5) > a,
  .main-nav.is-open .menu > li:nth-child(5) > a{transition-delay:.14s}
  .main-nav.is-open .mod-menu > li:nth-child(6) > a,
  .main-nav.is-open .menu > li:nth-child(6) > a{transition-delay:.17s}
  .main-nav.is-open .mod-menu > li:nth-child(7) > a,
  .main-nav.is-open .menu > li:nth-child(7) > a{transition-delay:.2s}
  .main-nav.is-open .mod-menu > li:nth-child(8) > a,
  .main-nav.is-open .menu > li:nth-child(8) > a{transition-delay:.23s}
  .main-nav.is-open .mod-menu > li:nth-child(9) > a,
  .main-nav.is-open .menu > li:nth-child(9) > a{transition-delay:.26s}
  .identity-stage{display:none}
  .mission-strip{
    position:relative;
    isolation:isolate;
    overflow:hidden;
    margin-top:.7rem;
    padding:clamp(7.9rem,46vw,12.2rem) 0 1rem;
    background:
      linear-gradient(180deg,rgba(255,255,255,.96),rgba(246,251,255,.92) 52%,rgba(255,255,255,.98)),
      #fff;
    box-shadow:inset 0 1px 0 rgba(19,63,150,.08);
  }
  .mission-strip::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:0;
    background:
      linear-gradient(90deg,rgba(255,255,255,.82) 0%,rgba(255,255,255,.54) 36%,rgba(255,255,255,0) 100%),
      linear-gradient(180deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.08) 46%,rgba(255,255,255,.84) 80%,rgba(255,255,255,.98) 100%),
      url("../../../images/banners/mobile-hero-ipci.png") right top -5rem / min(50rem,210vw) auto no-repeat;
    opacity:.96;
    pointer-events:none;
  }
  .mission-strip::after{
    content:"";
    position:absolute;
    inset:0 0 auto 0;
    z-index:1;
    height:5px;
    background:linear-gradient(90deg,var(--ipci-navy),var(--ipci-accent-mid),var(--ipci-accent-end));
    box-shadow:0 14px 32px rgba(19,63,150,.18);
    pointer-events:none;
  }
  .mission-grid{
    position:relative;
    z-index:2;
    grid-template-columns:1fr;
    gap:1.35rem;
    align-items:start;
  }
  .mission-copy h1{
    max-width:9.5ch;
    margin:.55rem 0 .58rem;
    font-size:clamp(2.65rem,14vw,4.9rem);
    line-height:.92;
    letter-spacing:-.045em;
  }
  .lede{
    width:100%;
    max-width:28rem;
    color:#2c4163;
    font-size:clamp(1.08rem,4.7vw,1.28rem);
    line-height:1.62;
  }
  .mission-facts{
    grid-template-columns:1fr;
    gap:.72rem;
  }
  .mission-facts span{
    position:relative;
    overflow:hidden;
    min-height:4.25rem;
    align-items:center;
    padding:1rem 3.4rem 1rem 1rem;
    border-radius:14px;
    font-size:.98rem;
    box-shadow:
      0 16px 32px rgba(19,63,150,.2),
      inset 0 1px 0 rgba(255,255,255,.18);
  }
  .mission-facts span::after{
    content:"\203A";
    position:absolute;
    right:1rem;
    top:50%;
    transform:translateY(-50%);
    color:#fff;
    font-size:2rem;
    font-weight:300;
    line-height:1;
    opacity:.92;
  }
  .breadcrumbs-zone,
  .showcase-zone{
    margin-top:0;
  }
  .content-grid{
    display:block;
    margin-top:0;
  }
  .is-inner .content-main{
    padding:clamp(1rem,4vw,1.35rem);
    border-radius:18px;
    box-shadow:0 16px 40px rgba(18,32,68,.09);
  }
  .home-intro,
  .home-news,
  .evidence-panel,
  .partner-panel{
    margin-bottom:1.55rem;
    padding:1.25rem;
    border-radius:18px;
  }
  .home-news__head{
    align-items:flex-start;
    flex-direction:column;
  }
  .home-news__item{grid-template-columns:10rem minmax(0,1fr)}
  .home-news__image--thumb{width:10rem;height:7rem}
  .quick-grid,
  .evidence-list,
  .partner-logos{
    grid-template-columns:1fr;
  }
  .legacy-contact__top{
    grid-template-columns:1fr;
  }
  .legacy-contact__map,
  .legacy-contact__map iframe{
    min-height:24rem;
  }
  .content-main :where(.item-content,.com-content-article__body) p:has(> img){
    display:grid;
    grid-template-columns:1fr;
    gap:.85rem;
    margin:1.15rem 0;
  }
  .content-main :where(.item-content,.com-content-article__body) p:has(> img) > img{
    width:100%;
  }
  .content-main table:has(img[src*="/images/people/"]) tr{
    grid-template-columns:1fr;
  }
  .content-main table:has(img[src*="/images/people/"]) td:first-child{
    border-right:0 !important;
    border-bottom:1px solid rgba(19,63,150,.1) !important;
  }
  .content-main table:has(img[src*="/images/people/"]) td:nth-child(2){
    align-items:flex-start;
    padding-top:1.2rem !important;
  }
  .people-article-header{
    margin:0 auto 2rem;
    padding:0 .1rem 1.35rem;
  }
  .people-article-header__kicker{margin-bottom:.5rem}
  .people-article-header h2{
    font-size:clamp(2.35rem,12vw,3.4rem);
    line-height:1;
  }
  .people-article-header__lede{
    font-size:1rem;
    line-height:1.55;
  }
  .gantry-bridge{
    gap:1rem;
    margin-top:1.45rem;
  }
  .gantry-bridge-section-title{
    margin:1.9rem 0 .7rem;
    font-size:clamp(1.85rem,9vw,2.7rem);
  }
  .gantry-person-card{
    grid-template-columns:1fr;
    gap:.85rem;
    min-height:auto;
    padding:.9rem;
    border-radius:20px;
    box-shadow:0 18px 42px rgba(18,32,68,.12);
  }
  .gantry-person-media{
    width:100%;
    max-width:none;
    display: flex;
    justify-content: flex-start;
    padding: 25px 25px 25px 25px;
  }
  .gantry-person-media img{
    width: 65%;
    object-position: center center;
  }
  .gantry-person-body{
    padding: 25px 25px 25px 25px;
  }
  .gantry-person-body h3{
    font-size:clamp(1.55rem,8vw,2.05rem);
  }
  .gantry-person-role{
    align-self:flex-start;
    max-width:100%;
    justify-content:flex-start;
    text-align:left;
  }
  .gantry-person-link{
    min-height:44px;
    padding:.58rem 1rem;
  }
}
@media (max-width:620px){
  body{font-size:16px}
  .content-main .com-content-blog__links{
    grid-template-columns:1fr;
  }
  .content-main .com-content-category-blog__navigation{
    display:block;
    padding:1rem;
  }
  .content-main .com-content-category-blog__counter{
    margin-bottom:.8rem;
    white-space:normal;
  }
  .content-main .com-content-category-blog__pagination{
    margin-left:0;
  }
  .content-main .pagination{
    justify-content:flex-start;
  }
  body.variant-projects .content-main .tab_top,
  body.variant-projects .content-main .tab_bottom{
    display:block;
  }
  body.variant-projects .content-main .dataTables_paginate,
  body.variant-projects .content-main .paging_full_numbers{
    justify-content:flex-start;
  }
  body.variant-projects .content-main .tab_top_right,
  body.variant-projects .content-main .tab_bottom_right,
  body.variant-projects .content-main .tab_top_left,
  body.variant-projects .content-main .tab_bottom_left{
    text-align:left;
    margin-bottom:.65rem;
  }
  body.variant-projects .content-main .dataTables_filter input{
    width:100%;
    max-width:none;
  }
  body.variant-projects .content-main table.tabtable-rs_rewdmklm tr.tr_ht1 td.tabcol,
  body.variant-projects .content-main table.tabtable-rs_rewdmklm tr.tabrow td.tabcol{
    padding:.9rem .85rem;
  }
  body.variant-projects .content-main .footable.breakpoint > tbody > tr > td.expand{
    padding-left:2.85rem !important;
  }
  body.variant-projects .content-main .footable.breakpoint > tbody > tr > td.expand::before{
    left:.8rem;
  }
  body.variant-projects .content-main .footable-row-detail-inner{
    padding:.95rem 1rem 1.05rem;
  }
  body.variant-projects .content-main .paging_full_numbers a.paginate_button,
  body.variant-projects .content-main .paging_full_numbers a.paginate_active,
  body.variant-projects .content-main .paging_full_numbers a.paginate_enabled_previous,
  body.variant-projects .content-main .paging_full_numbers a.paginate_enabled_next,
  body.variant-projects .content-main .paging_full_numbers a.paginate_disabled_previous,
  body.variant-projects .content-main .paging_full_numbers a.paginate_disabled_next{
    min-height:46px;
    padding:.45rem .9rem;
  }
  .footer-grid,
  .footer-meta{
    grid-template-columns:1fr;
    text-align:center;
  }
  .footer-links{grid-template-columns:1fr}
  .footer-panel--acknowledgement{
    max-width:32rem;
    margin-inline:auto;
    text-align:center;
  }
  .credits,
  .footer-toplink{text-align:center}
  .footer-toplink{justify-self:center}
  .mod-breadcrumbs__wrapper{
    padding:.85rem .9rem;
  }
  .mod-breadcrumbs__here{
    padding:.38rem .72rem;
  }
  .breadcrumbs ol,
  .breadcrumbs ul,
  .mod-breadcrumbs ol,
  .mod-breadcrumbs ul,
  ol.breadcrumb,
  ul.breadcrumb{
    gap:.38rem;
    flex-wrap:nowrap;
    overflow-x:auto;
    white-space:nowrap;
    scrollbar-width:thin;
  }
  .masthead{
    grid-template-columns:minmax(0,1fr) 44px;
    align-items:center;
    gap:.75rem;
  }
  .brand{
    gap:.55rem;
    min-width:0;
  }
  .brand-emblem{width:62px;height:62px}
  .brand-emblem img{width:62px;height:62px}
  .main-nav{
    top:calc(.9rem + 62px + .5rem);
    width:100%;
    padding-inline:.75rem;
  }
  .main-nav.is-open{padding:.65rem .75rem .75rem}
  .main-nav .mod-menu > li > a,
  .main-nav .menu > li > a{
    min-height:3.35rem;
    padding:.92rem .82rem;
    font-size:.98rem;
  }
  .menu-toggle{
    justify-self:end;
    align-self:center;
    margin-left:0;
    width:44px;
    min-height:44px;
    border-radius:0;
    padding:0;
  }
  h1{font-size:clamp(1.85rem,8vw,2.25rem)}
  h2{font-size:clamp(1.28rem,5.8vw,1.55rem)}
  .identity-stage{padding-top:0}
  .identity-card{
    margin-inline:0;
    border-radius:0;
  }
  .identity-card::before{height:3px}
  .identity-card img{
    min-height:78px;
    object-position:center;
  }
  .mission-strip{padding:clamp(7.35rem,45vw,10.35rem) 0 .85rem}
  .eyebrow{
    font-size:.72rem;
    letter-spacing:.08em;
  }
  .mission-facts span{
    min-height:52px;
    padding:.78rem .85rem;
    box-shadow:0 10px 22px rgba(19,63,150,.14);
  }
  .quick-grid,
  .partner-logos{grid-template-columns:1fr}
  .legacy-contact__details{
    padding:1rem;
  }
  .legacy-contact-card{
    grid-template-columns:2.25rem minmax(0,1fr);
    padding:.75rem;
  }
  .legacy-contact-card__icon{
    width:2.25rem;
    height:2.25rem;
  }
  .legacy-contact__map,
  .legacy-contact__map iframe{
    min-height:19rem;
  }
  .home-intro,
  .home-news,
  .evidence-panel,
  .partner-panel{
    margin-bottom:1.25rem;
    padding:1.08rem;
  }
  .home-news__archive,
  .home-news__more{
    width:100%;
  }
  .home-news__item{
    display:flex;
    flex-direction:column;
  }
  .home-news__image--thumb{
    width:100%;
    height:auto;
    aspect-ratio:16/9;
  }
  .home-news__item > :not(.home-news__image){
    grid-column:auto;
  }
  .is-inner .content-main{
    padding:1rem .85rem;
    border-radius:16px;
  }
  .content-main :where(.com-content-category-blog,.com-content-article__body,.item-content) img{

  }
  .people-article-header{
    margin-bottom:1.65rem;
    padding-bottom:1.15rem;
  }
  .people-article-header::after{
    width:min(11rem,48vw);
    height:4px;
  }
  .gantry-person-card{
    padding:.82rem;
    border-radius:18px;
  }
  .gantry-person-media{
    display: flex;
    justify-content: flex-start;
    padding: 25px 25px 25px 25px;
  }
  .gantry-person-media img{
    border-radius:16px;
    width: 100%;
  }
  .gantry-person-body{
    padding: 25px 25px 25px 25px;
  }
  .gantry-person-desc{
    font-size:1rem;
  }
  .gantry-person-link{
    width:100%;
    justify-content:center;
  }
}
@media (prefers-reduced-motion:reduce){
  .main-nav .mod-menu > li > a,
  .main-nav .menu > li > a{
    transition-delay:0s !important;
  }
}
