:root {
  --ink:#102c3b;
  --muted:#5f747d;
  --blue:#07598a;
  --cyan:#39c6cf;
  --pale:#edf7f6;
  --line:#d8e3e5;
  --warm:#f6f4ef
}
* {
  box-sizing:border-box
}
html {
  scroll-behavior:smooth
}
body {
  margin:0;
  color:var(--ink);
  font-family:"DM Sans",sans-serif;
  line-height:1.6
}
h1,h2,h3,.navbar-brand {
  font-family:"Manrope",sans-serif;
  letter-spacing:-.035em
}
h2 {
  font-size:clamp(2rem,4vw,3rem);
  line-height:1.08;
  font-weight:600
}
a {
  color:inherit
}
.skip-link {
  position:absolute;
  left:-9999px;
  z-index:9999;
  background:#fff;
  padding:.75rem
}
.skip-link:focus {
  left:1rem
}
.container {
  max-width:1180px
}
.site-header {
  background:#fff;
  border-bottom:1px solid #102c3b1a
}
.navbar-brand {
  display:flex;
  align-items:center;
  gap:.7rem;
  font-size:1.15rem;
  font-weight:700;
  color:var(--ink)
}
.navbar-brand small {
  display:block;
  font-family:"DM Sans";
  font-size:.68rem;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--muted)
}
.brand-mark {
  width:38px;
  height:38px;
  position:relative;
  display:block
}
.brand-mark i {
  position:absolute;
  width:8px;
  height:8px;
  background:var(--cyan);
  border-radius:50%;
  left:15px;
  top:15px
}
.brand-mark i:nth-child(2),.brand-mark i:nth-child(3) {
  width:30px;
  height:1px;
  background:var(--blue);
  left:4px;
  top:19px;
  transform:rotate(32deg)
}
.brand-mark i:nth-child(3) {
  transform:rotate(-32deg)
}
.nav-link {
  font-size:.92rem;
  font-weight:600;
  color:var(--ink);
  padding:.6rem .85rem!important
}
.nav-link:hover {
  color:var(--blue)
}
.btn {
  border-radius:2px;
  font-weight:600;
  padding:.7rem 1.1rem
}
.btn-primary {
  background:var(--blue);
  border-color:var(--blue)
}
.btn-outline-primary {
  color:var(--blue);
  border-color:var(--blue)
}
.hero {
  overflow:hidden;
  background:linear-gradient(115deg,#0b3044,#075178 72%,#086a87);
  color:#fff;
  padding:clamp(4rem,9vw,7.5rem) 0;
  position:relative
}
.hero:after {
  content:"";
  position:absolute;
  width:620px;
  height:620px;
  border:1px solid #ffffff21;
  border-radius:50%;
  right:-220px;
  top:-260px;
  box-shadow:0 0 0 100px #ffffff06,0 0 0 200px #ffffff06
}
.eyebrow {
  text-transform:uppercase;
  font-size:.74rem;
  letter-spacing:.15em;
  font-weight:700;
  color:var(--blue)
}
.hero-eyebrow,.ill-panel .eyebrow,.ess-section .eyebrow {
  color:#8ce5e8
}
.hero h1 {
  font-size:clamp(2.8rem,6vw,5.25rem);
  line-height:1.02;
  font-weight:600;
  letter-spacing:-.055em
}
.hero h1 em {
  font-style:normal;
  color:#8ce5e8
}
.hero-lead {
  font-size:1.2rem;
  max-width:650px;
  color:#d4e4ea;
  margin-top:1.75rem
}
.hero .btn-primary {
  background:var(--cyan);
  border-color:var(--cyan);
  color:#082f43
}
.hero .btn-link {
  text-decoration:none;
  font-size:1rem
}
.ill-panel {
  position:relative;
  z-index:2;
  border-left:1px solid #ffffff59;
  padding:2rem 0 2rem 2.5rem
}
.ill-panel h2 {
  font-size:2rem
}
.ill-panel p:not(.eyebrow) {
  color:#d4e4ea
}
.panel-index {
  font-size:5rem;
  line-height:1;
  color:#ffffff14;
  position:absolute;
  right:1rem;
  top:-1rem
}
.text-link {
  font-weight:700;
  text-decoration:none;
  color:var(--blue)
}
.text-link span {
  margin-left:.35rem
}
.notice-strip {
  padding:1.25rem 0;
  background:#d9f3f1;
  border-bottom:1px solid #b8dfdd
}
.notice-label {
  font-size:.72rem;
  text-transform:uppercase;
  letter-spacing:.13em;
  font-weight:700;
  background:var(--ink);
  color:#fff;
  padding:.35rem .6rem
}
.section-space {
  padding:clamp(4.5rem,8vw,7rem) 0
}
.section-space-sm {
  padding:3.5rem 0
}
.section-intro {
  align-items:end;
  margin-bottom:3rem
}
.section-intro p:not(.eyebrow) {
  font-size:1.1rem;
  color:var(--muted)
}
.pathway-grid {
  border-block:1px solid var(--line)
}
.pathway {
  position:relative;
  padding:2.2rem;
  color:inherit;
  text-decoration:none;
  border-right:1px solid var(--line);
  min-height:270px
}
.pathway:last-child {
  border-right:0
}
.pathway>span {
  font-size:.8rem;
  color:var(--blue)
}
.pathway h3 {
  font-size:1.35rem;
  max-width:270px;
  margin:2.5rem 0 1rem
}
.pathway p {
  color:var(--muted);
  font-size:.94rem
}
.pathway b {
  position:absolute;
  right:2rem;
  bottom:1.8rem;
  color:var(--blue);
  font-size:1.4rem;
  transition:.2s
}
.pathway:hover b {
  transform:translateX(5px)
}
.news-section {
  background:var(--warm)
}
.news-section article {
  position:relative;
  padding:1.5rem 1.5rem 1.5rem 0
}
.news-meta {
  display:flex;
  flex-wrap:wrap;
  gap:.75rem;
  font-size:.75rem;
  color:var(--muted);
  margin-bottom:1.5rem
}
.news-meta span {
  font-weight:700;
  color:var(--blue);
  text-transform:uppercase;
  letter-spacing:.1em
}
.news-section h3 {
  font-size:1.45rem;
  line-height:1.25
}
.news-section p {
  color:var(--muted)
}
.news-section article>a {
  font-weight:700;
  text-decoration:none;
  color:var(--blue);
  font-size:.9rem
}
.featured-news {
  border-right:1px solid #d9d5cc
}
.featured-news h3 {
  font-size:clamp(1.8rem,3vw,2.5rem)
}
.event-item {
  display:grid;
  grid-template-columns:80px 1fr;
  gap:1.5rem;
  border-top:1px solid var(--line);
  padding:1.6rem 0
}
.event-date {
  display:flex;
  flex-direction:column;
  text-transform:uppercase;
  color:var(--blue)
}
.event-date strong {
  font-size:2.2rem;
  line-height:1
}
.event-date span {
  font-size:.75rem;
  letter-spacing:.1em
}
.event-item h3 {
  font-size:1.25rem
}
.event-item .text-link {
  font-size:.85rem
}
.past-events {
  background:var(--pale);
  padding:2.5rem!important
}
.past-events h2 {
  font-size:2rem
}
.past-events article {
  padding:1.2rem 0;
  border-top:1px solid #c8dedd
}
.past-events time {
  font-size:.75rem;
  color:var(--muted)
}
.past-events h3 {
  font-size:1.05rem;
  margin:.35rem 0
}
.past-events article a {
  font-size:.82rem;
  color:var(--blue);
  font-weight:700;
  text-decoration:none
}
.ess-section {
  background:#0b374b;
  color:#fff
}
.ess-section p:not(.eyebrow) {
  color:#c5d8df;
  font-size:1.1rem
}
.resource-item {
  display:grid;
  grid-template-columns:70px 1fr 100px;
  gap:1.5rem;
  align-items:center;
  padding:1.5rem 0;
  border-top:1px solid var(--line);
  text-decoration:none;
  color:inherit
}
.resource-item:last-child {
  border-bottom:1px solid var(--line)
}
.resource-item h3 {
  font-size:1.2rem;
  margin:0
}
.resource-item p,.utility-notice p {
  color:var(--muted);
  margin:0
}
.file-badge {
  width:48px;
  height:58px;
  border:1px solid var(--blue);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:.7rem;
  font-weight:700;
  color:var(--blue)
}
.file-meta {
  text-align:right;
  font-size:.78rem;
  color:var(--muted)
}
.utility-notice {
  background:var(--pale);
  border-top:1px solid #d3e7e5
}
.utility-notice h2 {
  font-size:1.5rem
}
.site-footer {
  padding:4.5rem 0 1.5rem;
  background:#081f2b;
  color:#c6d4d9
}
.footer-brand {
  color:#fff
}
.site-footer h2 {
  font-family:"DM Sans";
  font-size:.72rem;
  text-transform:uppercase;
  letter-spacing:.14em;
  color:#80dce0;
  margin-bottom:1.2rem
}
.site-footer a:not(.navbar-brand) {
  display:block;
  color:#c6d4d9;
  text-decoration:none;
  margin:.55rem 0;
  font-size:.9rem
}
.site-footer p {
  font-size:.9rem;
  color:#92a8b1
}
.footer-bottom {
  display:flex;
  justify-content:space-between;
  border-top:1px solid #26404c;
  margin-top:4rem;
  padding-top:1.5rem;
  font-size:.8rem;
  color:#78909a
}
.footer-bottom div {
  display:flex;
  gap:1.5rem
}
.footer-bottom a {
  margin:0!important;
  color:#78909a!important
}
.stretched-link:after {
  z-index:1
}
@media(max-width:991px) {
  .navbar-collapse {
    padding:1rem 0
  }
  .ill-panel {
    margin-top:1rem
  }
  .pathway {
    border-right:0;
    border-bottom:1px solid var(--line);
    min-height:auto
  }
  .featured-news {
    border-right:0;
    border-bottom:1px solid #d9d5cc
  }
  .hero:after {
    display:none
  }
}
@media(max-width:575px) {
  .hero {
    padding:3.5rem 0
  }
  .ill-panel {
    padding-left:1.5rem
  }
  .resource-item {
    grid-template-columns:54px 1fr
  }
  .file-meta {
    display:none
  }
  .footer-bottom {
    flex-direction:column;
    gap:1rem
  }
  .pathway {
    padding:1.7rem 0
  }
  .event-item {
    grid-template-columns:58px 1fr
  }
}
/* Prototype of the shared institutional header and opening section. */ body .methods-entry {
  padding:2.4rem 0
}
/* Research fields: restrained duotone collage and offcanvas gallery. */ .site-header .container,.consortium-intro .container,.methods-entry .container {
  width:100%;
  max-width:1440px;
  padding-left:clamp(1.25rem,3.5vw,3.75rem);
  padding-right:clamp(1.25rem,3.5vw,3.75rem)
}
.consortium-copy {
  max-width:none
}
.membership-note {
  max-width:none
}
body .methods-trigger {
  display:grid;
  grid-template-columns:minmax(240px,1.15fr) 210px minmax(300px,1.3fr);
  align-items:center;
  gap:2rem;
  padding:1.15rem 0
}
body .methods-trigger .methods-copy {
  display:block
}
body .methods-trigger .methods-copy small,body .methods-trigger .methods-copy strong {
  display:block
}
body .methods-trigger .methods-topics {
  display:grid;
  gap:.15rem
}
body .methods-trigger .methods-topics button {
  display:flex;
  justify-content:space-between;
  gap:1rem;
  width:100%;
  padding:.45rem 0;
  border:0;
  border-bottom:1px solid transparent;
  background:transparent;
  color:#3347a8;
  font-family:"Titillium Web";
  font-size:.96rem;
  font-weight:600;
  line-height:1.35;
  text-align:left
}
body .methods-trigger .methods-topics button:hover,body .methods-trigger .methods-topics button:focus-visible {
  border-bottom-color:#aab2d1;
  color:#172f91
}
body .methods-trigger .methods-topics button span {
  flex:0 0 auto
}
body .methods-trigger>.field-collage {
  position:relative;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0;
  width:210px;
  max-width:100%;
  overflow:hidden;
  border-radius:2px;
  background:#d9deea
}
body .methods-trigger>.field-collage>.field-image {
  display:block;
  min-width:0;
  grid-template-columns:none;
  column-gap:0
}
body .field-collage:before,body .field-collage:after {
  content:"";
  position:absolute;
  z-index:2;
  pointer-events:none
}
body .field-collage:before {
  top:0;
  bottom:0;
  left:calc(50% - 6px);
  width:12px;
  background:linear-gradient(90deg,transparent,#41549345,transparent)
}
body .field-collage:after {
  left:0;
  right:0;
  top:calc(50% - 6px);
  height:12px;
  background:linear-gradient(transparent,#41549345,transparent)
}
.field-image {
  display:block;
  overflow:hidden;
  background:#415493
}
.field-image img {
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  filter:grayscale(1) contrast(.9);
  mix-blend-mode:luminosity;
  opacity:.77
}
.field-collage .field-image {
  aspect-ratio:16/9
}
.field-collage .field-image img {
  filter:grayscale(1) contrast(1.12) brightness(1.03);
  opacity:.88
}
body .methods-offcanvas {
  --bs-offcanvas-width:min(820px,100vw)
}
.research-fields {
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:1px;
  background:#d8dde8;
  border:1px solid #d8dde8;
  margin:0 0 2.2rem
}
.research-field {
  position:relative;
  display:block;
  margin:0;
  background:#fff;
  color:inherit;
  text-decoration:none;
  overflow:hidden
}
.research-field .field-image {
  aspect-ratio:16/8.2
}
.research-field .field-image {
  background:#fff
}
.research-field .field-image img {
  filter:saturate(.86) contrast(1.03) brightness(.98);
  mix-blend-mode:normal;
  opacity:1
}
.research-field-caption {
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:.75rem;
  padding:.75rem .85rem;
  background:linear-gradient(transparent,#17243ae8);
  color:#fff;
  font-family:"Titillium Web";
  font-size:1rem;
  font-weight:600;
  text-align:left
}
.research-field-caption b {
  font-size:1.05rem;
  font-weight:500;
  transition:transform .18s ease
}
.research-field:hover .research-field-caption b,.research-field:focus-visible .research-field-caption b {
  transform:translateX(3px)
}
.research-field:focus-visible {
  outline:3px solid #5368bc;
  outline-offset:-3px
}
.infrastructures-section {
  background:#f4f6fa;
  border-top:1px solid #d8dde8;
  border-bottom:1px solid #d8dde8
}
.infrastructures-intro {
  margin-bottom:2.25rem
}
.infrastructures-intro h2 {
  max-width:940px;
  font-size:clamp(1.6rem,2.4vw,2.25rem);
  line-height:1.16;
  font-weight:500;
  margin:0
}
.infrastructure-table {
  border-top:1px solid #bfc6d5
}
.infrastructure-head,.infrastructure-row {
  display:grid;
  grid-template-columns:minmax(280px,1.25fr) minmax(260px,1fr) minmax(260px,1fr);
  column-gap:0
}
.infrastructure-head {
  padding:.8rem 0;
  color:#6572a8;
  font-family:"Titillium Web";
  font-size:.72rem;
  font-weight:600;
  letter-spacing:.13em;
  text-transform:uppercase;
  border-bottom:1px solid #d8dde8
}
.infrastructure-head span:not(:first-child) {
  padding-left:2rem;
  border-left:1px solid #d8dde8
}
.infrastructure-row {
  align-items:stretch;
  border-bottom:1px solid #cbd1de;
  min-height:138px
}
.infrastructure-row h3 {
  display:flex;
  align-items:center;
  margin:0;
  padding:1.25rem 2rem 1.25rem 0;
  font-size:1.35rem;
  font-weight:600;
  line-height:1.25
}
.infrastructure-link {
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:1rem 3rem 1rem 2rem;
  border-left:1px solid #d8dde8;
  color:#3347a8;
  text-decoration:none;
  background:transparent;
  transition:background-color .18s
}
.infrastructure-link:hover,.infrastructure-link:focus-visible {
  background:#fff
}
.infrastructure-link img {
  display:block;
  width:auto;
  max-width:220px;
  height:auto;
  max-height:88px;
  margin:auto;
  object-fit:contain
}
.infrastructure-link.polish-link img {
  max-width:240px;
  max-height:102px
}
.infrastructure-mobile-label {
  display:none
}
.infrastructure-arrow {
  position:absolute;
  right:1.15rem;
  bottom:.8rem;
  font-family:"Titillium Web";
  font-size:1.15rem;
  font-weight:600;
  color:#6572a8
}
.ill-user-info {
  padding:clamp(2.6rem,4vw,3.75rem) 0;
  background:#fafbfc;
  border-bottom:1px solid #d8dde8
}
.ill-info-grid {
  display:grid;
  grid-template-columns:minmax(300px,.85fr) minmax(520px,1.5fr);
  gap:clamp(2rem,5vw,5rem);
  align-items:stretch
}
.positions-trigger {
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  width:100%;
  padding:0 2.25rem 0 0;
  border:0;
  border-right:1px solid #cbd1de;
  background:transparent;
  color:#17243a;
  text-align:left
}
.positions-trigger small {
  display:block;
  margin-bottom:.55rem;
  color:#6572a8;
  font-family:"Titillium Web";
  font-size:.72rem;
  font-weight:600;
  letter-spacing:.13em;
  text-transform:uppercase
}
.positions-trigger strong {
  display:block;
  font-family:"Titillium Web";
  font-size:1.35rem;
  font-weight:600;
  line-height:1.25
}
.positions-trigger em {
  display:block;
  margin-top:.75rem;
  color:#5f697a;
  font-size:.92rem;
  font-style:normal;
  line-height:1.65
}
.positions-trigger>b {
  align-self:flex-start;
  margin-top:1.5rem;
  color:#3347a8;
  font-family:"Titillium Web";
  font-size:.92rem;
  font-weight:600;
  transition:transform .18s
}
.positions-trigger:hover>b,.positions-trigger:focus-visible>b {
  transform:translateX(4px)
}
.acknowledgement-notice {
  padding-left:1.75rem;
  border-left:3px solid #3347a8
}
.ack-label {
  margin:0 0 .4rem;
  color:#3347a8;
  font-family:"Titillium Web";
  font-size:.72rem;
  font-weight:600;
  letter-spacing:.13em;
  text-transform:uppercase
}
.acknowledgement-notice h2 {
  font-size:1.45rem;
  line-height:1.25;
  margin:0 0 .75rem
}
.acknowledgement-notice>p:not(.ack-label) {
  color:#3e495c;
  font-size:.94rem;
  line-height:1.65
}
.ack-copy {
  display:grid;
  grid-template-columns:1fr auto;
  gap:1rem;
  align-items:end;
  margin-top:1.25rem;
  padding:1rem 1.1rem;
  background:#eef0f6;
  border:1px solid #d8dde8
}
.ack-copy p {
  margin:0;
  color:#465269;
  font-family:Georgia,serif;
  font-size:.88rem;
  line-height:1.55
}
.ack-copy button {
  padding:.45rem .7rem;
  border:1px solid #7c87b8;
  background:#fff;
  color:#3347a8;
  font-family:"Titillium Web";
  font-size:.82rem;
  font-weight:600;
  white-space:nowrap
}
.ack-copy button:hover,.ack-copy button:focus-visible {
  background:#3347a8;
  color:#fff
}
.positions-offcanvas {
  --bs-offcanvas-width:min(720px,100vw);
  background:#f7f8fb
}
.positions-offcanvas .offcanvas-header {
  align-items:flex-start;
  padding:2.25rem;
  border-bottom:1px solid #d8dde8
}
.positions-offcanvas .offcanvas-title {
  font-size:2rem;
  font-weight:500
}
.positions-offcanvas .offcanvas-body {
  padding:2rem 2.25rem
}
.positions-lead {
  color:#5f697a;
  font-size:1rem;
  line-height:1.7
}
.eligibility-text {
  margin-top:2rem;
  padding-top:1.5rem;
  border-top:1px solid #d8dde8
}
.eligibility-text h3 {
  font-size:1.35rem;
  font-weight:600
}
.eligibility-text li {
  margin:1rem 0;
  color:#3f4a5d;
  line-height:1.7
}
.candidate-note {
  margin:2rem 0 0;
  padding:1rem 1.2rem;
  background:#eef0f6;
  border-left:3px solid #6572a8;
  font-weight:600
}
.positions-links {
  display:grid;
  gap:.65rem;
  margin-top:1.5rem
}
.positions-links a {
  padding:.8rem 0;
  border-top:1px solid #d8dde8;
  color:#3347a8;
  font-family:"Titillium Web";
  font-weight:600;
  text-decoration:none
}
@media(max-width:991px) {
  body .methods-trigger {
    grid-template-columns:1fr 180px
  }
  body .methods-trigger .methods-copy {
    grid-column:1
  }
  body .methods-trigger>.field-collage {
    grid-column:2;
    width:180px
  }
  body .methods-trigger .methods-topics {
    grid-column:1/3
  }
}
@media(max-width:991px) {
  .infrastructure-head {
    display:none
  }
  .infrastructure-row {
    grid-template-columns:1fr 1fr
  }
  .infrastructure-row h3 {
    grid-column:1/-1;
    padding:1.5rem 0;
    border-bottom:1px solid #d8dde8
  }
  .infrastructure-link:first-of-type {
    border-left:0;
    padding-left:0
  }
  .cell-label {
    display:block;
    margin-bottom:1rem;
    color:#6572a8;
    font-family:"Titillium Web";
    font-size:.7rem;
    font-weight:600;
    letter-spacing:.11em;
    text-transform:uppercase
  }
  .ill-info-grid {
    grid-template-columns:1fr
  }
  .positions-trigger {
    padding:0 0 2rem;
    border-right:0;
    border-bottom:1px solid #cbd1de
  }
}
@media(max-width:575px) {
  body .methods-trigger {
    grid-template-columns:1fr;
    gap:1rem
  }
  body .methods-trigger .methods-copy {
    grid-column:1
  }
  body .methods-trigger>.field-collage {
    grid-column:1;
    width:100%
  }
  body .methods-trigger .methods-topics {
    grid-column:1
  }
  .research-fields {
    grid-template-columns:1fr
  }
  .infrastructure-row {
    grid-template-columns:1fr 1fr
  }
  .infrastructure-row h3 {
    grid-column:1/-1
  }
  .infrastructure-link,.infrastructure-link:first-of-type {
    min-width:0;
    min-height:142px;
    flex-direction:column;
    justify-content:flex-start;
    gap:.8rem;
    padding:.8rem 1.7rem .9rem;
    border-left:0;
    border-bottom:0
  }
  .infrastructure-link+.infrastructure-link {
    border-left:1px solid #d8dde8
  }
  .infrastructure-mobile-label {
    display:block;
    align-self:flex-start;
    color:#59699d;
    font-family:"Titillium Web",sans-serif;
    font-size:.72rem;
    font-weight:600;
    letter-spacing:.08em;
    line-height:1.2;
    text-transform:uppercase
  }
  .infrastructure-link img,.infrastructure-link.polish-link img {
    width:auto;
    max-width:min(115px,80%);
    height:70px;
    max-height:70px;
    margin:auto;
    object-fit:contain
  }
  .infrastructure-arrow {
    right:.65rem;
    bottom:.65rem
  }
  .acknowledgement-notice {
    padding-left:1rem
  }
  .ack-copy {
    grid-template-columns:1fr
  }
  .ack-copy button {
    justify-self:start
  }
  .positions-offcanvas .offcanvas-header,.positions-offcanvas .offcanvas-body {
    padding:1.5rem
  }
}
:root {
  --ink:#17243a;
  --muted:#5f697a;
  --blue:#3347a8;
  --pale:#f4f6fa;
  --line:#d8dde8;
  --header:#e9ecf4
}
body {
  font-family:"Open Sans",sans-serif;
  background:#fafbfc;
  color:var(--ink)
}
h1,h2,h3,.eyebrow,.nav-link,.btn {
  font-family:"Titillium Web",sans-serif;
  letter-spacing:0
}
.site-header {
  background:var(--header);
  border-bottom:1px solid #d4d9e5;
  box-shadow:none
}
.navbar-shell {
  min-height:78px;
  padding-top:.6rem;
  padding-bottom:.6rem
}
.navbar-brand {
  padding:0;
  margin-right:2rem
}
.navbar-brand img {
  display:block;
  width:clamp(170px,15vw,205px);
  height:auto
}
.nav-link {
  position:relative;
  font-size:1.04rem;
  font-weight:500;
  color:#26344d;
  padding:.65rem .72rem!important
}
.nav-link:hover,.nav-link:focus {
  color:var(--blue)
}
.nav-link.active {
  color:#000080;
  font-weight:600
}
.nav-link.active:after {
  content:"";
  position:absolute;
  left:.72rem;
  right:.72rem;
  bottom:.18rem;
  height:2px;
  background:#5968b8
}
.consortium-intro {
  padding:2.5rem 0 2.35rem;
  background:#f4f6fa;
  border-bottom:1px solid var(--line)
}
.consortium-intro .eyebrow {
  margin-bottom:.8rem;
  color:#6572a8
}
.consortium-copy {
  display:flex;
  align-items:baseline;
  gap:.45rem;
  max-width:1080px
}
.consortium-copy h1 {
  font-family:"Open Sans",sans-serif;
  font-size:clamp(1.15rem,2vw,1.42rem);
  font-weight:600;
  line-height:1.55;
  margin:0;
  white-space:nowrap;
  color:#000080
}
.consortium-copy p {
  font-size:clamp(1rem,1.6vw,1.16rem);
  line-height:1.7;
  margin:0;
  color:#303b4c
}
.membership-note {
  max-width:920px;
  margin:1rem 0 0;
  font-size:1rem;
  color:var(--muted)
}
.membership-note strong {
  color:var(--blue);
  font-weight:600
}
.access-hero {
  padding:clamp(4rem,7vw,6.5rem) 0;
  background:#fafbfc
}
.access-hero .eyebrow {
  color:#6572a8
}
.access-hero h2 {
  font-size:clamp(2.4rem,5vw,4.45rem);
  line-height:1.04;
  font-weight:500;
  max-width:900px;
  color:#17243a
}
.access-lead {
  max-width:760px;
  margin-top:1.5rem;
  font-size:1.12rem;
  line-height:1.75;
  color:var(--muted)
}
.access-hero .btn {
  font-size:1rem;
  border-radius:2px;
  padding:.75rem 1.15rem
}
.access-hero .btn-primary {
  background:#3347a8;
  border-color:#3347a8
}
.ill-context {
  border-left:1px solid #bec6d8;
  padding:0 0 .35rem 2rem
}
.ill-context p:not(.eyebrow) {
  font-size:.97rem;
  line-height:1.75;
  color:var(--muted)
}
.methods-entry {
  padding:0 0 3.2rem;
  background:#fafbfc
}
.methods-trigger {
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:2rem;
  padding:1.6rem 0;
  border:0;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  background:transparent;
  color:var(--ink);
  text-align:left
}
.methods-trigger span {
  display:grid;
  grid-template-columns:minmax(250px,1.1fr) minmax(440px,2fr);
  align-items:baseline;
  column-gap:2rem
}
.methods-trigger small {
  grid-column:1/-1;
  font-family:"Titillium Web";
  font-size:.72rem;
  font-weight:600;
  letter-spacing:.15em;
  text-transform:uppercase;
  color:#6572a8;
  margin-bottom:.35rem
}
.methods-trigger strong {
  font-family:"Titillium Web";
  font-size:1.35rem;
  font-weight:600
}
.methods-trigger em {
  font-style:normal;
  font-size:.91rem;
  color:var(--muted)
}
.methods-trigger>b {
  font-family:"Titillium Web";
  font-size:.95rem;
  font-weight:600;
  color:var(--blue);
  white-space:nowrap
}
.methods-trigger:hover>b,.methods-trigger:focus-visible>b {
  transform:translateX(4px)
}
.methods-offcanvas {
  --bs-offcanvas-width:min(760px,100vw);
  background:#f7f8fb
}
.methods-offcanvas .offcanvas-header {
  align-items:flex-start;
  padding:2.25rem;
  border-bottom:1px solid var(--line)
}
.methods-offcanvas .offcanvas-title {
  font-size:2rem;
  font-weight:500
}
.methods-offcanvas .offcanvas-body {
  padding:2rem 2.25rem
}
.panel-intro {
  color:var(--muted);
  max-width:620px
}
.panel-topic {
  display:grid;
  grid-template-columns:48px 1fr;
  align-items:center;
  border-top:1px solid var(--line);
  padding:1.4rem 0
}
.panel-topic:first-of-type {
  margin-top:2rem
}
.panel-topic span {
  font-family:"Titillium Web";
  color:#6572a8
}
.panel-topic h3 {
  font-size:1.2rem;
  margin:0;
  font-weight:600
}
.panel-topic-link {
  grid-template-columns:48px 1fr auto;
  color:inherit;
  text-decoration:none
}
.panel-topic-link>b {
  color:#5368bc;
  font-size:1.15rem;
  font-weight:500;
  transition:transform .18s ease
}
.panel-topic-link:hover h3,.panel-topic-link:focus-visible h3 {
  color:#263f9d
}
.panel-topic-link:hover>b,.panel-topic-link:focus-visible>b {
  transform:translate(2px,-2px)
}
.panel-topic-link:focus-visible {
  outline:3px solid #5368bc;
  outline-offset:5px
}
.notice-strip {
  background:#eef0f6;
  border-color:#d8dde8
}
.notice-label {
  background:#27365c
}
.text-link {
  color:#3347a8
}
@media(max-width:991px) {
  .navbar-shell {
    min-height:70px
  }
  .navbar-collapse {
    border-top:1px solid #d4d9e5;
    margin-top:.7rem;
    padding:1rem 0
  }
  .nav-link.active:after {
    left:.72rem;
    right:auto;
    width:32px
  }
  .consortium-copy {
    display:block
  }
  .consortium-copy h1 {
    white-space:normal;
    margin-bottom:.25rem
  }
  .access-hero h2 {
    font-size:clamp(2.35rem,9vw,3.5rem)
  }
  .ill-context {
    margin-top:1rem
  }
  .methods-trigger span {
    display:block
  }
  .methods-trigger strong,.methods-trigger em {
    display:block
  }
  .methods-trigger em {
    margin-top:.35rem
  }
}
@media(max-width:575px) {
  .navbar-brand img {
    width:160px
  }
  .consortium-intro {
    padding:2rem 0
  }
  .access-hero {
    padding:3.5rem 0
  }
  .methods-trigger {
    align-items:flex-end
  }
  .methods-trigger>b {
    font-size:0
  }
  .methods-trigger>b span {
    font-size:1.4rem
  }
  .methods-offcanvas .offcanvas-header,.methods-offcanvas .offcanvas-body {
    padding:1.5rem
  }
}
/* Shared page measure and denser vertical rhythm. */ .container {
  width:100%;
  max-width:1440px;
  padding-left:clamp(1.25rem,3.5vw,3.75rem);
  padding-right:clamp(1.25rem,3.5vw,3.75rem)
}
.consortium-copy,.membership-note {
  max-width:none
}
.section-space {
  padding:clamp(3.25rem,5vw,5rem) 0
}
.section-space-sm {
  padding:2.75rem 0
}
body .methods-entry {
  padding:2.4rem 0
}
body .methods-trigger {
  display:grid;
  grid-template-columns:minmax(240px,1.15fr) 210px minmax(300px,1.3fr);
  align-items:center;
  gap:2rem;
  padding:1.15rem 0
}
body .methods-trigger .methods-copy {
  display:block
}
body .methods-trigger>.field-collage {
  display:grid
}
body .methods-trigger .methods-topics {
  display:grid;
  grid-template-columns:1fr;
  gap:.15rem
}
body .methods-trigger .methods-topics button span {
  display:inline;
  grid-template-columns:none
}
@media(max-width:991px) {
  body .methods-trigger {
    grid-template-columns:1fr 180px
  }
  body .methods-trigger .methods-topics {
    grid-column:1/3
  }
}
@media(max-width:575px) {
  body .methods-trigger {
    grid-template-columns:1fr
  }
  body .methods-trigger>.field-collage,body .methods-trigger .methods-topics {
    grid-column:1
  }
}
/* National context and frequently updated information. */ .ncbj-section {
  background:#fff;
  border-bottom:1px solid var(--line)
}
.ncbj-section>.container>.eyebrow {
  margin:0 0 1.25rem
}
.ncbj-grid {
  display:grid;
  grid-template-columns:minmax(260px,.8fr) minmax(520px,2fr);
  gap:clamp(2rem,6vw,6.5rem);
  align-items:center
}
.ncbj-brand {
  display:block;
  max-width:340px;
  padding-right:2rem;
  border-right:1px solid #d8dde8
}
.ncbj-brand img {
  display:block;
  width:100%;
  height:auto
}
.ncbj-copy p {
  max-width:900px;
  margin:0 0 .85rem;
  color:#465269;
  font-size:1rem;
  line-height:1.75
}
.upcoming-section {
  background:#f4f6fa;
  border-bottom:1px solid var(--line)
}
.current-heading {
  display:grid;
  grid-template-columns:minmax(300px,1fr) minmax(320px,.8fr);
  gap:3rem;
  align-items:end;
  margin-bottom:2.1rem
}
.current-heading h2 {
  margin:0;
  font-size:clamp(2rem,3vw,2.75rem);
  font-weight:500
}
.current-heading>p {
  max-width:560px;
  margin:0;
  color:var(--muted)
}
.current-events-list {
  border-top:1px solid #bfc6d5
}
.current-events-list .event-item {
  display:grid;
  grid-template-columns:minmax(170px,.55fr) minmax(0,2.45fr);
  gap:clamp(1.5rem,4vw,4rem);
  padding:1.35rem 0;
  border-top:0;
  border-bottom:1px solid #cbd1de
}
.event-date-range {
  padding-top:.2rem;
  color:#3347a8;
  font-family:"Titillium Web";
  font-size:1rem;
  font-weight:600;
  line-height:1.35
}
.current-events-list .event-item h3 {
  margin:0 0 .35rem;
  font-size:1.28rem;
  font-weight:600;
  line-height:1.3
}
.event-description {
  max-width:920px;
  margin:0 0 .55rem;
  color:#5f697a;
  font-size:.91rem;
  line-height:1.6
}
.current-events-list .event-item .text-link {
  font-size:.86rem
}
.featured-resource-section {
  background:#fff;
  border-bottom:1px solid var(--line)
}
.featured-resource {
  display:grid;
  grid-template-columns:minmax(300px,.9fr) minmax(520px,1.5fr);
  gap:clamp(2rem,7vw,7rem);
  align-items:start;
  padding-left:1.5rem;
  border-left:3px solid #6572a8
}
.featured-resource h2 {
  max-width:470px;
  margin:0;
  font-size:clamp(1.65rem,2.4vw,2.2rem);
  font-weight:500;
  line-height:1.18
}
.featured-resource-copy p {
  max-width:820px;
  margin:0;
  color:#465269;
  line-height:1.72
}
.featured-resource-copy small {
  display:block;
  margin:.7rem 0 1rem;
  color:#6c7587
}
.featured-resource-copy .text-link {
  display:inline-block
}
@media(max-width:991px) {
  .ncbj-grid,.current-heading,.featured-resource {
    grid-template-columns:1fr
  }
  .ncbj-grid,.featured-resource {
    gap:1.6rem
  }
  .ncbj-brand {
    max-width:310px;
    padding:0 0 1.3rem;
    border-right:0;
    border-bottom:1px solid #d8dde8
  }
  .current-heading {
    gap:.75rem
  }
  .current-events-list .event-item {
    grid-template-columns:150px 1fr
  }
}
@media(max-width:575px) {
  .current-events-list .event-item {
    grid-template-columns:1fr;
    gap:.55rem
  }
  .event-date-range {
    font-size:.92rem
  }
  .featured-resource {
    padding-left:1rem
  }
}
/* Część informacyjna — proste bloki przeznaczone do częstej aktualizacji. */ .user-notice-section {
  background:#eef2f8;
  border-block:1px solid #d8dde8
}
.user-notice-grid {
  display:grid;
  grid-template-columns:minmax(260px,.8fr) minmax(0,1.7fr);
  gap:clamp(2rem,6vw,6rem);
  align-items:start
}
.user-notice-grid h2 {
  font-size:clamp(1.65rem,2.5vw,2.25rem);
  margin:0
}
.user-notice-grid p {
  color:#4f596c;
  margin:0 0 1.2rem
}
.inline-links {
  display:flex;
  flex-wrap:wrap;
  gap:1rem 1.6rem
}
.inline-links a {
  font-weight:600;
  color:#162c70;
  text-decoration:none
}
.news-heading,.archive-heading {
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(280px,.7fr);
  gap:3rem;
  align-items:end;
  margin-bottom:2.4rem
}
.news-heading>p,.archive-heading>p {
  color:#596276;
  margin:0
}
.news-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  border-top:1px solid #cfd3dc
}
.news-grid article {
  position:relative;
  padding:1.6rem 1.5rem 1.5rem 0;
  border-right:1px solid #d9d5cc
}
.news-grid article+article {
  padding-left:1.5rem
}
.news-grid article:last-child {
  border-right:0
}
.news-grid h3 {
  font-size:1.25rem;
  line-height:1.3
}
.news-grid p {
  font-size:.92rem
}
.news-grid article>a {
  font-size:.84rem
}
.archive-section {
  background:#fff
}
.archive-list {
  border-top:1px solid #cbd1de
}
.archive-list article {
  display:grid;
  grid-template-columns:minmax(170px,.55fr) minmax(0,2fr) auto;
  gap:clamp(1.5rem,4vw,4rem);
  align-items:start;
  padding:1.45rem 0;
  border-bottom:1px solid #cbd1de
}
.archive-list time {
  font-family:"Titillium Web",sans-serif;
  font-weight:600;
  color:#18347c
}
.archive-location {
  margin:0 0 .2rem;
  color:#18347c;
  font-size:.74rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.1em
}
.archive-list h3 {
  font-size:1.18rem;
  margin:0 0 .3rem
}
.archive-list div>p:last-child {
  margin:0;
  color:#596276
}
.archive-list article>a {
  font-size:.84rem;
  font-weight:600;
  color:#18347c;
  text-decoration:none;
  white-space:nowrap
}
.useful-links-section {
  background:#f3f5f9
}
.useful-links-section h2 {
  font-size:2rem;
  margin-bottom:1.8rem
}
.useful-links-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  border-top:1px solid #cbd1de
}
.useful-links-grid>a {
  display:flex;
  justify-content:space-between;
  gap:1.5rem;
  padding:1.25rem 1.2rem 1.25rem 0;
  border-bottom:1px solid #cbd1de;
  text-decoration:none;
  color:inherit
}
.useful-links-grid>a:nth-child(odd) {
  border-right:1px solid #cbd1de
}
.useful-links-grid>a:nth-child(even) {
  padding-left:1.2rem
}
.useful-links-grid strong,.useful-links-grid small {
  display:block
}
.useful-links-grid strong {
  font-family:"Titillium Web",sans-serif;
  font-size:1.1rem
}
.useful-links-grid small {
  margin-top:.25rem;
  color:#596276;
  line-height:1.45
}
.useful-links-grid>a>span:last-child {
  color:#18347c
}
.footer-brand img {
  width:190px;
  height:auto;
  filter:brightness(0) invert(1);
  opacity:.95
}
@media(max-width:991px) {
  .user-notice-grid,.news-heading,.archive-heading {
    grid-template-columns:1fr;
    gap:1rem
  }
  .news-grid {
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
  .news-grid article:nth-child(2) {
    border-right:0
  }
  .news-grid article:nth-child(3) {
    padding-left:0
  }
  .archive-list article {
    grid-template-columns:150px 1fr
  }
  .archive-list article>a {
    grid-column:2
  }
}
@media(max-width:575px) {
  .news-grid,.useful-links-grid {
    grid-template-columns:1fr
  }
  .news-grid article,.news-grid article+article {
    padding:1.3rem 0;
    border-right:0;
    border-bottom:1px solid #d9d5cc
  }
  .useful-links-grid>a:nth-child(odd) {
    border-right:0
  }
  .useful-links-grid>a:nth-child(even) {
    padding-left:0
  }
  .archive-list article {
    grid-template-columns:1fr;
    gap:.45rem
  }
  .archive-list article>a {
    grid-column:1
  }
}
/* Wspólna nawigacja i podstrony informacyjne. */ .dropdown-menu {
  margin-top:.55rem;
  padding:.45rem;
  border:1px solid #d4d9e5;
  border-radius:2px;
  background:#f8f9fc;
  box-shadow:0 12px 30px #27365c14
}
.dropdown-item {
  padding:.6rem 1rem;
  font-family:"Titillium Web",sans-serif;
  font-size:.95rem;
  color:#26344d
}
.dropdown-item:hover,.dropdown-item:focus {
  background:#e9ecf4;
  color:#000080
}
.dropdown-toggle:after {
  margin-left:.45rem;
  vertical-align:.18em
}
.subpage-main {
  background:#fafbfc
}
.subpage-heading {
  padding:clamp(3.5rem,6vw,5.5rem) 0 2.5rem;
  border-bottom:1px solid #d8dde8
}
.subpage-heading .eyebrow {
  margin-bottom:.65rem;
  color:#6572a8
}
.subpage-heading h1 {
  max-width:980px;
  margin:0;
  font-size:clamp(2.45rem,5vw,4.3rem);
  font-weight:500;
  line-height:1.06;
  color:#17243a
}
.research-area-content {
  padding-top:clamp(2.75rem,5vw,4.5rem);
  padding-bottom:clamp(4rem,7vw,6.5rem)
}
.research-area-section {
  display:grid;
  grid-template-columns:minmax(260px,.75fr) minmax(0,1.55fr);
  gap:clamp(2.5rem,6vw,6rem);
  align-items:start;
  padding:0 0 clamp(3.5rem,6vw,5.5rem)
}
.research-area-section+.research-area-section {
  padding-top:clamp(3.5rem,6vw,5.5rem);
  border-top:1px solid #d8dde8
}
.research-area-section:last-child {
  padding-bottom:0
}
.research-area-intro {
  position:sticky;
  top:7rem
}
.research-area-intro h2 {
  margin:.55rem 0 1.2rem;
  font-size:clamp(1.75rem,3vw,2.45rem);
  font-weight:500;
  line-height:1.14;
  color:#17243a
}
.research-area-lead {
  color:#596477;
  line-height:1.72
}
.research-area-lead p:last-child {
  margin-bottom:0
}
.research-area-lead a {
  color:#3347a8;
  text-underline-offset:.2em
}
.research-resource-list {
  margin:0;
  padding:0;
  list-style:none;
  border-top:1px solid #cbd1de
}
.research-resource-list li {
  border-bottom:1px solid #d8dde8
}
.research-resource-list a {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:1.5rem;
  padding:1.15rem .15rem;
  color:#26344d;
  text-decoration:none
}
.research-resource-list span {
  display:grid;
  gap:.28rem
}
.research-resource-list strong {
  font-family:"Titillium Web",sans-serif;
  font-size:1.08rem;
  font-weight:600;
  line-height:1.35
}
.research-resource-list small {
  color:#687386;
  font-size:.9rem;
  line-height:1.45
}
.research-resource-list b {
  flex:0 0 auto;
  color:#5368bc;
  font-size:1.05rem;
  font-weight:500;
  transition:transform .18s ease
}
.research-resource-list a:hover strong,.research-resource-list a:focus-visible strong {
  color:#263f9d
}
.research-resource-list a:hover b,.research-resource-list a:focus-visible b {
  transform:translate(2px,-2px)
}
.research-resource-list a:focus-visible {
  outline:3px solid #5368bc;
  outline-offset:4px
}
@media(max-width:767px) {
  .research-area-section {
    grid-template-columns:1fr;
    gap:1.5rem
  }
  .research-area-intro {
    position:static
  }
  .research-resource-list a {
    padding:1rem .1rem
  }
}
.consortium-history {
  background:#fafbfc
}
.history-layout {
  display:grid;
  grid-template-columns:minmax(280px,.85fr) minmax(0,1.65fr);
  gap:clamp(2.5rem,7vw,7rem);
  align-items:start
}
.history-lead {
  margin:0;
  font-family:"Titillium Web",sans-serif;
  font-size:clamp(1.35rem,2.2vw,1.75rem);
  font-weight:500;
  line-height:1.42;
  color:#26365c
}
.history-body {
  padding-left:clamp(1.5rem,3vw,3rem);
  border-left:1px solid #cbd1de
}
.history-body p {
  margin:0 0 1.25rem;
  font-size:1.02rem;
  line-height:1.82;
  color:#4f596c
}
.history-body p:last-child {
  margin-bottom:0
}
.members-section {
  padding-top:clamp(3.8rem,6vw,5.5rem);
  background:#f3f5f9;
  border-top:1px solid #d8dde8
}
.members-heading {
  display:grid;
  grid-template-columns:minmax(220px,.6fr) minmax(0,1.4fr);
  gap:2rem;
  align-items:end;
  margin-bottom:2.5rem
}
.members-heading .eyebrow {
  margin:0
}
.members-heading h2 {
  margin:0;
  font-size:clamp(2rem,3.5vw,3rem);
  font-weight:500
}
.members-list {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  margin:0;
  padding:0;
  border-top:1px solid #cbd1de;
  list-style:none;
  counter-reset:member
}
.members-list>li {
  display:grid;
  grid-template-columns:42px 1fr;
  gap:1rem;
  min-height:128px;
  padding:1.45rem 1.6rem 1.45rem 0;
  border-bottom:1px solid #cbd1de
}
.members-list>li:nth-child(odd) {
  border-right:1px solid #cbd1de
}
.members-list>li:nth-child(even) {
  padding-left:1.6rem
}
.member-number {
  padding-top:.18rem;
  font-family:"Titillium Web",sans-serif;
  font-size:.78rem;
  font-weight:600;
  letter-spacing:.08em;
  color:#6572a8
}
.members-list h3 {
  margin:0;
  font-size:1.15rem;
  font-weight:600;
  line-height:1.35
}
.member-place,.member-former {
  margin:.3rem 0 0;
  font-size:.83rem;
  color:#6572a8
}
.members-list ul {
  margin:.7rem 0 0;
  padding:0;
  list-style:none
}
.members-list ul li {
  position:relative;
  margin:.28rem 0;
  padding-left:1rem;
  font-size:.87rem;
  line-height:1.45;
  color:#596276
}
.members-list ul li:before {
  content:"—";
  position:absolute;
  left:0;
  color:#8a93ac
}
@media(max-width:991px) {
  .history-layout,.members-heading {
    grid-template-columns:1fr;
    gap:1.4rem
  }
  .history-body {
    padding:1.6rem 0 0;
    border-left:0;
    border-top:1px solid #cbd1de
  }
}
@media(max-width:767px) {
  .members-list {
    grid-template-columns:1fr
  }
  .members-list>li,.members-list>li:nth-child(even) {
    padding:1.3rem 0;
    border-right:0
  }
  .subpage-heading {
    padding-top:3rem
  }
}
/* Skład długiego dokumentu prawnego. */ .legal-layout {
  display:grid;
  grid-template-columns:220px minmax(0,820px);
  gap:clamp(3rem,7vw,7rem);
  align-items:start;
  padding-top:3.5rem;
  padding-bottom:6rem
}
.legal-toc {
  position:sticky;
  top:2rem;
  padding-top:.2rem
}
.legal-toc>p {
  margin:0 0 .8rem;
  font-family:"Titillium Web",sans-serif;
  font-size:.72rem;
  font-weight:600;
  letter-spacing:.13em;
  text-transform:uppercase;
  color:#6572a8
}
.legal-toc>a {
  display:block;
  padding:.65rem 0;
  border-top:1px solid #d8dde8;
  font-family:"Titillium Web",sans-serif;
  font-size:.96rem;
  font-weight:600;
  color:#26365c;
  text-decoration:none
}
.legal-paragraph-links {
  display:flex;
  flex-wrap:wrap;
  gap:.2rem .75rem;
  padding:.5rem 0 1rem
}
.legal-paragraph-links a {
  font-size:.78rem;
  color:#6572a8;
  text-decoration:none
}
.legal-toc a:hover {
  color:#000080
}
.legal-document {
  font-size:.98rem;
  line-height:1.75;
  color:#3f4859
}
.document-heading {
  margin-bottom:2rem;
  padding-bottom:1.8rem;
  border-bottom:1px solid #cbd1de
}
.document-heading>p:first-child {
  margin:0 0 .45rem;
  font-family:"Titillium Web",sans-serif;
  font-size:.75rem;
  font-weight:600;
  letter-spacing:.11em;
  text-transform:uppercase;
  color:#6572a8
}
.document-heading h2 {
  margin:0 0 .8rem;
  font-size:clamp(1.9rem,3.2vw,2.65rem);
  font-weight:500;
  color:#17243a
}
.document-heading>p:last-child {
  margin:0;
  color:#596276
}
.legal-document>section>p {
  margin:1.1rem 0
}
.legal-parties {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 2.25rem;
  margin:1.2rem 0 2.3rem;
  padding:0;
  list-style:none;
  counter-reset:party
}
.legal-parties>li {
  position:relative;
  padding:.85rem 0 .85rem 2rem;
  border-top:1px solid #dfe3eb;
  counter-increment:party
}
.legal-parties>li:before {
  content:counter(party,decimal-leading-zero);
  position:absolute;
  left:0;
  top:.92rem;
  font-family:"Titillium Web",sans-serif;
  font-size:.7rem;
  color:#7a85a4
}
.legal-parties strong,.legal-parties span {
  display:block
}
.legal-parties strong {
  font-weight:600;
  color:#26344d
}
.legal-parties span {
  font-size:.8rem;
  color:#6572a8
}
.legal-parties ul {
  margin:.45rem 0 0;
  padding:0;
  list-style:none
}
.legal-parties ul li {
  position:relative;
  padding-left:.9rem;
  font-size:.82rem;
  line-height:1.45;
  color:#626c7d
}
.legal-parties ul li:before {
  content:"—";
  position:absolute;
  left:0;
  color:#9aa2b5
}
.legal-section {
  scroll-margin-top:1.5rem;
  margin-top:3rem;
  padding-top:2rem;
  border-top:1px solid #cbd1de
}
.legal-section h3 {
  display:grid;
  grid-template-columns:58px 1fr;
  gap:1rem;
  margin:0 0 1.25rem;
  font-size:1.35rem;
  font-weight:600;
  line-height:1.35
}
.legal-section h3 span {
  color:#3347a8
}
.legal-section ol {
  padding-left:1.5rem
}
.legal-section li {
  margin:.65rem 0;
  padding-left:.35rem
}
.legal-section ol ol {
  margin-top:.6rem
}
.annex-document {
  scroll-margin-top:1.5rem;
  margin-top:6rem;
  padding-top:4rem;
  border-top:3px solid #3347a8
}
.annex-changes {
  margin-top:2.5rem
}
.annex-changes p {
  margin:0;
  padding:1.25rem 0;
  border-top:1px solid #d8dde8
}
.annex-changes p:first-child {
  font-family:"Titillium Web",sans-serif;
  font-size:1.3rem;
  font-weight:600;
  color:#26365c
}
@media(max-width:991px) {
  .legal-layout {
    grid-template-columns:1fr;
    gap:2rem
  }
  .legal-toc {
    position:static;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:0 1.5rem;
    padding-bottom:1.5rem;
    border-bottom:1px solid #cbd1de
  }
  .legal-toc>p {
    grid-column:1/-1
  }
  .legal-paragraph-links {
    grid-column:1
  }
  .legal-document {
    max-width:820px
  }
}
@media(max-width:575px) {
  .legal-layout {
    padding-top:2rem
  }
  .legal-toc {
    grid-template-columns:1fr
  }
  .legal-paragraph-links {
    grid-column:1
  }
  .legal-parties {
    grid-template-columns:1fr
  }
  .legal-section h3 {
    grid-template-columns:1fr;
    gap:.25rem
  }
  .legal-section h3 span {
    font-size:.9rem
  }
  .annex-document {
    margin-top:4rem;
    padding-top:3rem
  }
}
/* Zwarty navbar — rozmiar logotypu i odstępy poziome pozostają bez zmian. */ .navbar-shell {
  min-height:68px;
  padding-top:.3rem;
  padding-bottom:.3rem
}
@media(max-width:991px) {
  .navbar-shell {
    min-height:60px
  }
}
/* Kalendarium działalności Konsorcjum. */ .subpage-description {
  max-width:760px;
  margin:1.2rem 0 0;
  font-size:1.03rem;
  line-height:1.7;
  color:#596276
}
.consortium-timeline {
  padding-bottom:6rem
}
.consortium-timeline ol {
  margin:0;
  padding:0;
  border-top:1px solid #cbd1de;
  list-style:none
}
.consortium-timeline>div>ol>li {
  display:grid;
  grid-template-columns:minmax(170px,.55fr) minmax(0,2.2fr);
  gap:clamp(2rem,6vw,6rem);
  padding:2rem 0;
  border-bottom:1px solid #cbd1de
}
.consortium-timeline time {
  padding-top:.2rem;
  font-family:"Titillium Web",sans-serif;
  font-size:1rem;
  font-weight:600;
  color:#3347a8
}
.consortium-timeline article {
  max-width:900px
}
.consortium-timeline h2 {
  margin:0 0 .7rem;
  font-size:clamp(1.25rem,2vw,1.55rem);
  font-weight:600;
  line-height:1.32
}
.consortium-timeline article p {
  margin:0 0 .8rem;
  line-height:1.75;
  color:#596276
}
.consortium-timeline article p:last-of-type {
  margin-bottom:.8rem
}
.consortium-timeline .text-link {
  display:inline-block;
  margin-top:.2rem;
  font-size:.86rem
}
@media(max-width:767px) {
  .consortium-timeline>div>ol>li {
    grid-template-columns:1fr;
    gap:.55rem;
    padding:1.55rem 0
  }
  .consortium-timeline time {
    font-size:.9rem
  }
}
/* Skala tytułów podstron — semantycznie pozostają nagłówkami h1. */ .subpage-heading h1 {
  font-size:clamp(2rem,3.5vw,3.15rem);
  line-height:1.1
}
/* Katalog prezentacji — zawartość pochodzi z osobnego pliku danych. */ .presentations-catalog {
  padding-top:clamp(2.8rem,5vw,4.5rem);
  padding-bottom:6rem
}
.presentations-group+.presentations-group {
  margin-top:clamp(3.5rem,6vw,5.5rem)
}
.presentations-group>h2 {
  max-width:820px;
  margin:0 0 1.8rem;
  font-size:clamp(1.55rem,2.5vw,2.15rem);
  font-weight:500;
  line-height:1.25
}
.presentations-group ol {
  margin:0;
  padding:0;
  border-top:1px solid #bfc6d5;
  list-style:none
}
.presentations-group li {
  border-bottom:1px solid #cbd1de
}
.presentations-group article {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(190px,auto);
  gap:clamp(2rem,5vw,5rem);
  align-items:center;
  padding:1.55rem 0
}
.presentation-copy {
  max-width:900px
}
.presentation-copy h3 {
  margin:0;
  font-size:1.22rem;
  font-weight:600;
  line-height:1.35
}
.presentation-copy p {
  margin:.4rem 0 0;
  color:#596276;
  font-size:.9rem;
  line-height:1.6
}
.presentation-copy .presentation-author {
  color:#3347a8;
  font-family:"Titillium Web",sans-serif;
  font-weight:600
}
.presentations-group article>a {
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:.65rem;
  align-items:center;
  min-width:190px;
  color:#26365c;
  font-family:"Titillium Web",sans-serif;
  font-size:.9rem;
  font-weight:600;
  text-decoration:none
}
.presentation-format {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:42px;
  padding:.22rem .35rem;
  border:1px solid #7e89ac;
  color:#3347a8;
  font-size:.67rem;
  letter-spacing:.08em
}
.presentations-group article>a b {
  color:#3347a8;
  font-size:1.05rem;
  transition:transform .18s
}
.presentations-group article>a:hover b,.presentations-group article>a:focus-visible b {
  transform:translate(3px,-3px)
}
@media(max-width:767px) {
  .presentations-group article {
    grid-template-columns:1fr;
    gap:1rem;
    padding:1.35rem 0
  }
  .presentations-group article>a {
    justify-self:start
  }
}
/* Konferencje — bogatszy katalog z automatycznym podziałem według dat. */ .conferences-section {
  padding-bottom:4.5rem;
  background:#fafbfc
}
.conferences-section h2 {
  max-width:880px;
  margin:0 0 1.8rem;
  font-size:clamp(1.55rem,2.5vw,2.15rem);
  font-weight:500
}
.past-conferences {
  background:#f3f5f9;
  border-top:1px solid #d8dde8
}
.conference-list {
  border-top:1px solid #bfc6d5
}
.conference-item {
  display:grid;
  grid-template-columns:minmax(170px,.58fr) minmax(0,1.8fr) 155px;
  gap:clamp(1.5rem,4vw,4rem);
  align-items:start;
  padding:1.6rem 0;
  border-bottom:1px solid #cbd1de
}
.conference-item:has(.conference-logo) {
  grid-template-columns:120px minmax(170px,.58fr) minmax(0,1.8fr) 155px
}
.conference-logo {
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:82px;
  padding:.5rem;
  border:1px solid #d8dde8;
  background:#fff
}
.conference-logo img {
  display:block;
  max-width:100%;
  max-height:74px;
  object-fit:contain
}
.conference-date time,.conference-date span {
  display:block
}
.conference-date time {
  color:#3347a8;
  font-family:"Titillium Web",sans-serif;
  font-size:1rem;
  font-weight:600;
  line-height:1.4
}
.conference-date span {
  margin-top:.35rem;
  color:#596276;
  font-size:.84rem
}
.conference-meta {
  margin:0 0 .35rem!important;
  color:#6572a8!important;
  font-family:"Titillium Web",sans-serif;
  font-size:.72rem!important;
  font-weight:600;
  letter-spacing:.1em;
  text-transform:uppercase
}
.conference-copy h3 {
  margin:0 0 .55rem;
  font-size:1.25rem;
  font-weight:600;
  line-height:1.34
}
.conference-copy>p:not(.conference-meta) {
  max-width:820px;
  margin:.45rem 0 0;
  color:#596276;
  font-size:.91rem;
  line-height:1.65
}
.conference-copy .participation-note {
  margin-top:.8rem!important;
  padding-left:1rem;
  border-left:2px solid #7e89ac;
  color:#3f4a5d!important
}
.conference-item>a {
  padding-top:.15rem;
  color:#3347a8;
  font-family:"Titillium Web",sans-serif;
  font-size:.88rem;
  font-weight:600;
  text-decoration:none;
  white-space:nowrap
}
.conference-item>a span {
  margin-left:.35rem
}
.conference-item>a:hover span,.conference-item>a:focus-visible span {
  display:inline-block;
  transform:translate(2px,-2px)
}
@media(max-width:991px) {
  .conference-item,.conference-item:has(.conference-logo) {
    grid-template-columns:150px minmax(0,1fr)
  }
  .conference-logo {
    grid-row:1/3
  }
  .conference-copy {
    grid-column:2
  }
  .conference-item>a {
    grid-column:2
  }
}
@media(max-width:575px) {
  .conference-item,.conference-item:has(.conference-logo) {
    grid-template-columns:1fr;
    gap:.8rem
  }
  .conference-logo {
    grid-row:auto;
    justify-content:flex-start;
    max-width:180px
  }
  .conference-copy,.conference-item>a {
    grid-column:1
  }
  .conference-date time {
    font-size:.92rem
  }
}
.post-event-link {
  display:inline-block;
  margin-top:.25rem;
  color:#3347a8;
  font-family:"Titillium Web",sans-serif;
  font-size:.86rem;
  font-weight:600;
  text-decoration:none
}
.post-event-link span {
  display:inline-block;
  margin-left:.25rem;
  transition:transform .15s
}
.post-event-link:hover span,.post-event-link:focus-visible span {
  transform:translate(2px,-2px)
}
/* Publikacje — stała oprawa dla wymienianych w całości eksportów JabRef. */ .publication-switch {
  background:#eef0f6;
  border-bottom:1px solid #d8dde8
}
.publication-switch>.container {
  display:flex;
  gap:0
}
.publication-switch a {
  position:relative;
  padding:1rem 1.4rem;
  color:#4d5870;
  font-family:"Titillium Web",sans-serif;
  font-weight:600;
  text-decoration:none
}
.publication-switch a:first-child {
  padding-left:0
}
.publication-switch a.active {
  color:#000080
}
.publication-switch a.active:after {
  content:"";
  position:absolute;
  right:1.4rem;
  bottom:-1px;
  left:1.4rem;
  height:2px;
  background:#3347a8
}
.publication-switch a:first-child.active:after {
  left:0
}
.jabref-section {
  padding:2.2rem 0 5.5rem;
  background:#fff
}
.jabref-frame {
  display:block;
  width:100%;
  min-height:70vh;
  border:0;
  background:#fff
}
.publications-page+.site-footer {
  position:relative
}
@media(max-width:575px) {
  .publication-switch>.container {
    display:grid;
    grid-template-columns:1fr 1fr
  }
  .publication-switch a,.publication-switch a:first-child {
    padding:.85rem .6rem;
    font-size:.88rem;
    text-align:center
  }
  .publication-switch a.active:after,.publication-switch a:first-child.active:after {
    right:.6rem;
    left:.6rem
  }
  .jabref-section {
    padding-top:1.5rem
  }
}
/* Udział Polski w ILL. */ .infrastructure-page-heading>.container {
  display:grid;
  grid-template-columns:minmax(0,1fr) 260px;
  gap:clamp(2rem,7vw,7rem);
  align-items:center
}
.infrastructure-page-heading img {
  display:block;
  width:100%;
  max-height:135px;
  object-fit:contain
}
.membership-context-grid,.membership-ack-grid {
  display:grid;
  grid-template-columns:minmax(280px,.75fr) minmax(0,1.55fr);
  gap:clamp(2rem,7vw,7rem);
  align-items:start
}
.membership-context-grid h2,.membership-ack-grid h2 {
  margin:0;
  font-size:clamp(1.65rem,2.6vw,2.3rem);
  font-weight:500
}
.membership-context-grid>div:last-child p,.membership-ack-grid>div:last-child>p {
  max-width:900px;
  margin:0 0 1rem;
  color:#4f596c;
  font-size:1rem;
  line-height:1.75
}
.membership-acknowledgement {
  background:#eef0f6;
  border-block:1px solid #d8dde8
}
.membership-ack-copy {
  display:grid;
  grid-template-columns:1fr auto;
  gap:1rem;
  align-items:end;
  margin-top:1.4rem;
  padding:1rem 1.1rem;
  background:#fff;
  border:1px solid #cbd1de
}
.membership-ack-copy p {
  margin:0!important;
  color:#465269!important;
  font-family:Georgia,serif;
  font-size:.9rem!important;
  line-height:1.55!important
}
.membership-ack-copy button {
  padding:.45rem .75rem;
  border:1px solid #7c87b8;
  background:#fff;
  color:#3347a8;
  font-family:"Titillium Web",sans-serif;
  font-size:.82rem;
  font-weight:600;
  white-space:nowrap
}
.membership-ack-copy button:hover,.membership-ack-copy button:focus-visible {
  background:#3347a8;
  color:#fff
}
.membership-benefits h2 {
  margin:0 0 2.2rem;
  font-size:clamp(1.75rem,3vw,2.5rem);
  font-weight:500
}
.benefits-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  border-top:1px solid #bfc6d5
}
.benefits-grid article {
  display:flex;
  flex-direction:column;
  min-height:300px;
  padding:1.6rem 1.8rem 1.4rem 0;
  border-right:1px solid #cbd1de
}
.benefits-grid article+article {
  padding-left:1.8rem
}
.benefits-grid article:last-child {
  border-right:0
}
.benefits-grid article>span {
  color:#6572a8;
  font-family:"Titillium Web",sans-serif;
  font-size:.72rem
}
.benefits-grid h3 {
  margin:1.8rem 0 .6rem;
  font-size:1.3rem;
  font-weight:600
}
.benefits-grid p {
  color:#596276;
  font-size:.91rem;
  line-height:1.65
}
.benefits-grid a {
  margin-top:auto;
  color:#3347a8;
  font-family:"Titillium Web",sans-serif;
  font-size:.88rem;
  font-weight:600;
  text-decoration:none
}
.benefits-grid a b {
  margin-left:.35rem
}
.ill-representation {
  background:#f3f5f9;
  border-block:1px solid #d8dde8
}
.compact-section-heading h2 {
  max-width:900px;
  margin:0 0 2rem;
  font-size:clamp(1.7rem,2.8vw,2.4rem);
  font-weight:500
}
.representation-list {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  margin:0;
  padding:0;
  border-top:1px solid #cbd1de;
  list-style:none
}
.representation-list li {
  display:grid;
  grid-template-columns:115px 1fr;
  gap:1.2rem;
  padding:1.3rem 1.5rem 1.3rem 0;
  border-bottom:1px solid #cbd1de
}
.representation-list li:nth-child(odd) {
  border-right:1px solid #cbd1de
}
.representation-list li:nth-child(even) {
  padding-left:1.5rem
}
.representation-list>li>span {
  color:#3347a8;
  font-family:"Titillium Web",sans-serif;
  font-weight:600
}
.representation-list h3 {
  margin:0;
  font-size:1.08rem;
  font-weight:600
}
.representation-list p {
  margin:.25rem 0 0;
  color:#596276;
  font-size:.86rem;
  line-height:1.5
}
.history-section-grid {
  display:grid;
  grid-template-columns:minmax(280px,.8fr) minmax(0,1.55fr);
  gap:clamp(3rem,7vw,7rem);
  align-items:start
}
.history-section-grid>div {
  position:sticky;
  top:2rem
}
.history-section-grid h2 {
  margin:0 0 1rem;
  font-size:clamp(1.75rem,3vw,2.5rem);
  font-weight:500
}
.history-section-grid>div>p:not(.eyebrow) {
  color:#596276;
  line-height:1.75
}
.history-section-grid .text-link {
  display:inline-block;
  margin-top:1rem;
  font-size:.88rem
}
.history-section-grid ol {
  margin:0;
  padding:0;
  border-top:1px solid #cbd1de;
  list-style:none
}
.history-section-grid ol li {
  display:grid;
  grid-template-columns:165px 1fr;
  gap:2rem;
  padding:1.35rem 0;
  border-bottom:1px solid #cbd1de
}
.history-section-grid ol strong {
  color:#3347a8;
  font-family:"Titillium Web",sans-serif
}
.history-section-grid ol p {
  margin:0;
  color:#596276;
  line-height:1.65
}
@media(max-width:991px) {
  .infrastructure-page-heading>.container {
    grid-template-columns:1fr 210px
  }
  .membership-context-grid,.membership-ack-grid,.history-section-grid {
    grid-template-columns:1fr;
    gap:1.5rem
  }
  .history-section-grid>div {
    position:static
  }
  .benefits-grid {
    grid-template-columns:1fr
  }
  .benefits-grid article,.benefits-grid article+article {
    min-height:auto;
    padding:1.4rem 0;
    border-right:0;
    border-bottom:1px solid #cbd1de
  }
  .benefits-grid article:last-child {
    border-bottom:0
  }
  .benefits-grid h3 {
    margin-top:1rem
  }
  .benefits-grid a {
    margin-top:.6rem
  }
}
@media(max-width:767px) {
  .infrastructure-page-heading>.container {
    grid-template-columns:1fr
  }
  .infrastructure-page-heading img {
    max-width:220px
  }
  .representation-list {
    grid-template-columns:1fr
  }
  .representation-list li,.representation-list li:nth-child(even) {
    padding:1.2rem 0;
    border-right:0
  }
  .membership-ack-copy {
    grid-template-columns:1fr
  }
  .membership-ack-copy button {
    justify-self:start
  }
  .history-section-grid ol li {
    grid-template-columns:1fr;
    gap:.35rem
  }
}
/* Ważny odsyłacz do autonomicznego opracowania historii członkostwa. */ .history-section-grid .text-link {
  max-width:440px;
  margin-top:1.35rem;
  padding-top:1rem;
  border-top:1px solid #cbd1de;
  font-size:1.08rem;
  line-height:1.5
}
/* Udział Polski w ESS — samodzielna strona z zachowanym obrazem projektu. */ .ess-page-heading {
  padding:clamp(3rem,5vw,4.5rem) 0 0;
  background:#fafbfc
}
.ess-title-row {
  display:grid;
  grid-template-columns:minmax(0,1fr) 250px;
  gap:clamp(2rem,7vw,7rem);
  align-items:center;
  margin-bottom:2.5rem
}
.ess-title-row h1 {
  max-width:950px;
  margin:0;
  font-size:clamp(2rem,3.5vw,3.15rem);
  font-weight:500;
  line-height:1.1
}
.ess-title-row p {
  max-width:820px;
  margin:1rem 0 0;
  color:#596276;
  font-size:1.03rem;
  line-height:1.7
}
.ess-title-row>img {
  display:block;
  width:100%;
  max-height:125px;
  object-fit:contain
}
.ess-hero {
  margin:0
}
.ess-hero>img {
  display:block;
  width:100%;
  aspect-ratio:2425/1245;
  object-fit:cover;
  border:1px solid #d8dde8
}
.ess-hero figcaption {
  padding:.65rem 0 1rem;
  color:#657083;
  font-size:.78rem
}
.ess-context {
  border-bottom:1px solid #d8dde8
}
.ess-official-links {
  display:flex;
  flex-wrap:wrap;
  gap:.8rem 2rem;
  margin-top:1.3rem
}
.ess-official-links .text-link {
  font-size:.9rem
}
.ess-history {
  background:#f3f5f9;
  border-bottom:1px solid #d8dde8
}
.ess-contribution .compact-section-heading {
  max-width:900px
}
.ess-contribution .compact-section-heading>p:last-child {
  max-width:760px;
  color:#596276
}
.contribution-table {
  margin-top:2rem;
  border-top:1px solid #bfc6d5
}
.contribution-head,.contribution-table article {
  display:grid;
  grid-template-columns:minmax(220px,.7fr) minmax(0,1.8fr);
  gap:clamp(2rem,6vw,6rem)
}
.contribution-head {
  padding:.65rem 0;
  color:#6572a8;
  font-family:"Titillium Web",sans-serif;
  font-size:.72rem;
  font-weight:600;
  letter-spacing:.11em;
  text-transform:uppercase
}
.contribution-table article {
  align-items:start;
  padding:1.25rem 0;
  border-top:1px solid #d8dde8
}
.contribution-table h3 {
  margin:0;
  font-size:1.08rem;
  font-weight:600
}
.contribution-table p {
  margin:0;
  color:#596276;
  line-height:1.65
}
.ess-representation {
  background:#eef0f6;
  border-block:1px solid #d8dde8
}
.ess-representation-list {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  margin:0;
  padding:0;
  border-top:1px solid #cbd1de;
  list-style:none
}
.ess-representation-list li {
  padding:1.3rem 1.5rem 1.3rem 0;
  border-bottom:1px solid #cbd1de
}
.ess-representation-list li:nth-child(odd) {
  border-right:1px solid #cbd1de
}
.ess-representation-list li:nth-child(even) {
  padding-left:1.5rem
}
.ess-representation-list h3 {
  margin:0;
  font-size:1.08rem;
  font-weight:600
}
.ess-representation-list p {
  margin:.35rem 0 0;
  color:#596276;
  font-size:.88rem;
  line-height:1.55
}
@media(max-width:767px) {
  .ess-title-row {
    grid-template-columns:1fr
  }
  .ess-title-row>img {
    max-width:220px
  }
  .contribution-head {
    display:none
  }
  .contribution-table article {
    grid-template-columns:1fr;
    gap:.4rem
  }
  .ess-representation-list {
    grid-template-columns:1fr
  }
  .ess-representation-list li,.ess-representation-list li:nth-child(even) {
    padding:1.2rem 0;
    border-right:0
  }
  .ess-hero>img {
    aspect-ratio:auto
  }
}
/* Fotografie dokumentujące udział Polski w ESS. */ .ess-history-photo {
  max-width:620px;
  margin:1.2rem 0 0
}
.ess-history-photo.archival {
  max-width:420px
}
.ess-history-photo img,.ess-contribution-photo img {
  display:block;
  width:100%;
  height:auto;
  border:1px solid #d1d6e1
}
.ess-history-photo figcaption,.ess-contribution-photo figcaption {
  padding:.6rem 0 0;
  color:#657083;
  font-size:.78rem;
  line-height:1.5
}
.ess-contribution-intro {
  display:grid;
  grid-template-columns:minmax(260px,.68fr) minmax(0,1.32fr);
  gap:clamp(2rem,5vw,5rem);
  align-items:start
}
.ess-contribution-photo {
  margin:0
}
.ess-contribution .contribution-table {
  margin-top:2rem
}
@media(max-width:991px) {
  .ess-contribution-intro {
    grid-template-columns:1fr
  }
  .ess-contribution-photo {
    max-width:820px
  }
}
/* Kontekst założycielski ESS i historia polskiej reprezentacji. */ .ess-founding-countries {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:.25rem 2rem;
  margin:1rem 0 1.5rem;
  padding:1.15rem 1.2rem 1.15rem 2.7rem;
  border-block:1px solid #cbd1de;
  color:#596276
}
.ess-founding-countries li {
  padding:.15rem 0
}
.ess-founding-countries .poland {
  color:#000080;
  font-weight:700
}
.ess-history-trigger {
  display:flex;
  align-items:center;
  justify-content:space-between;
  width:100%;
  margin-top:1.6rem;
  padding:1.05rem 0;
  border:0;
  border-block:1px solid #cbd1de;
  background:transparent;
  color:#26365c;
  font-family:"Titillium Web",sans-serif;
  font-size:1.02rem;
  font-weight:600;
  text-align:left
}
.ess-history-trigger span {
  color:#3347a8;
  font-size:1.2rem;
  transition:transform .18s
}
.ess-history-trigger:hover span,.ess-history-trigger:focus-visible span {
  transform:translateX(4px)
}
.ess-history-offcanvas {
  --bs-offcanvas-width:min(760px,100vw);
  background:#f7f8fb
}
.ess-history-offcanvas .offcanvas-header {
  align-items:flex-start;
  padding:2.1rem 2.25rem;
  border-bottom:1px solid #d8dde8
}
.ess-history-offcanvas .offcanvas-title {
  font-size:2rem;
  font-weight:500
}
.ess-history-offcanvas .offcanvas-body {
  padding:2rem 2.25rem
}
.ess-history-offcanvas .offcanvas-body>p {
  color:#4f596c;
  line-height:1.75
}
.ess-people-list {
  margin:2rem 0;
  border-top:1px solid #cbd1de
}
.ess-people-list article {
  display:grid;
  grid-template-columns:minmax(210px,.75fr) minmax(0,1.25fr);
  gap:1.5rem;
  padding:1.15rem 0;
  border-bottom:1px solid #cbd1de
}
.ess-people-list h3 {
  margin:0;
  font-size:1.08rem;
  font-weight:600;
  color:#26365c
}
.ess-people-list p {
  margin:0;
  color:#596276;
  font-size:.88rem;
  line-height:1.55
}
.ess-history .history-section-grid>div h2 {
  margin-top:0
}
@media(max-width:767px) {
  .ess-founding-countries {
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
  .ess-people-list article {
    grid-template-columns:1fr;
    gap:.35rem
  }
  .ess-history-offcanvas .offcanvas-header,.ess-history-offcanvas .offcanvas-body {
    padding:1.5rem
  }
}
/* Zwarty rytm górnej części strony głównej — do kalendarza wydarzeń. */ main>.consortium-intro {
  padding:1.85rem 0 1.7rem
}
main>.consortium-intro .membership-note {
  margin-top:.65rem
}
body main>.methods-entry {
  padding:1.7rem 0
}
body main>.infrastructures-section.section-space {
  padding:2.6rem 0
}
.infrastructures-intro {
  margin-bottom:1.35rem
}
.infrastructure-head {
  padding:.6rem 0
}
.infrastructure-row {
  min-height:112px
}
.infrastructure-row h3 {
  padding:.85rem 1.75rem .85rem 0;
  font-size:1.27rem
}
.infrastructure-link {
  padding:.7rem 2.7rem .7rem 1.7rem
}
.infrastructure-link img {
  max-height:70px
}
.infrastructure-link.polish-link img {
  max-height:82px
}
.ill-user-info {
  padding:2.15rem 0
}
main>.ncbj-section.section-space-sm {
  padding:2.15rem 0
}
.ncbj-section>.container>.eyebrow {
  margin-bottom:.85rem
}
@media(max-width:991px) {
  .infrastructure-row {
    min-height:auto
  }
  .infrastructure-row h3 {
    padding:1rem 0
  }
  .infrastructure-link {
    padding:1rem 2.5rem 1rem 1rem
  }
}
/* Udział Polski w IFMIF-DONES. */ .dones-introduction {
  border-bottom:1px solid #d8dde8
}
.dones-polish-status {
  background:#eef0f6;
  border-bottom:1px solid #d8dde8
}
.dones-status-grid {
  display:grid;
  grid-template-columns:minmax(280px,.75fr) minmax(0,1.55fr);
  gap:clamp(2rem,7vw,7rem)
}
.dones-status-grid h2 {
  margin:0;
  font-size:clamp(1.65rem,2.6vw,2.3rem);
  font-weight:500
}
.dones-status-grid>div:last-child p {
  max-width:900px;
  margin:0 0 1rem;
  color:#4f596c;
  line-height:1.75
}
.dones-status-note {
  margin-top:1.4rem!important;
  padding:1rem 1.2rem;
  border-left:3px solid #3347a8;
  background:#fafbfc;
  color:#26365c!important;
  font-weight:600
}
.dones-process {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  margin:2.2rem 0 0;
  padding:0;
  border-block:1px solid #cbd1de;
  list-style:none
}
.dones-process li {
  display:grid;
  grid-template-columns:42px 1fr;
  gap:1rem;
  min-height:180px;
  padding:1.5rem 1.5rem 1.5rem 0;
  border-right:1px solid #cbd1de
}
.dones-process li+li {
  padding-left:1.5rem
}
.dones-process li:last-child {
  border-right:0
}
.dones-process>li>span {
  color:#6572a8;
  font-family:"Titillium Web",sans-serif;
  font-size:.75rem
}
.dones-process h3 {
  margin:0 0 .55rem;
  font-size:1.2rem;
  font-weight:600
}
.dones-process p {
  margin:0;
  color:#596276;
  font-size:.9rem;
  line-height:1.6
}
.dones-principle-copy {
  width:100%;
  margin:1.6rem 0 0;
  color:#596276;
  line-height:1.75
}
.dones-research {
  background:#f3f5f9;
  border-block:1px solid #d8dde8
}
.dones-research-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  border-top:1px solid #cbd1de
}
.dones-research-grid article {
  padding:1.4rem 1.7rem 1.4rem 0;
  border-bottom:1px solid #cbd1de
}
.dones-research-grid article:nth-child(odd) {
  border-right:1px solid #cbd1de
}
.dones-research-grid article:nth-child(even) {
  padding-left:1.7rem
}
.dones-research-grid article>span {
  color:#6572a8;
  font-family:"Titillium Web",sans-serif;
  font-size:.72rem
}
.dones-research-grid h3 {
  margin:.7rem 0 .45rem;
  font-size:1.18rem;
  font-weight:600
}
.dones-research-grid p {
  margin:0;
  color:#596276;
  font-size:.89rem;
  line-height:1.65
}
@media(max-width:767px) {
  .dones-status-grid {
    grid-template-columns:1fr;
    gap:1.4rem
  }
  .dones-process,.dones-research-grid {
    grid-template-columns:1fr
  }
  .dones-process li,.dones-process li+li {
    min-height:auto;
    padding:1.25rem 0;
    border-right:0;
    border-bottom:1px solid #cbd1de
  }
  .dones-process li:last-child {
    border-bottom:0
  }
  .dones-research-grid article,.dones-research-grid article:nth-child(even) {
    padding:1.2rem 0;
    border-right:0
  }
}
