/* ODA3 Partnership Section v2.1 — isolated, cache-busted styles */

/* Section navigation */
.partner-subnav{
  display:flex;
  align-items:center;
  gap:.45rem;
  flex-wrap:wrap;
  margin:0 0 1.5rem;
  padding:.55rem;
  border:1px solid var(--border,#d9e1ea);
  border-radius:10px;
  background:var(--surface,#fff);
  box-shadow:0 1px 2px rgba(1,25,97,.04);
}
.partner-subnav-link{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:.55rem .72rem;
  border-radius:6px;
  color:var(--muted,#4b5c70);
  font-size:.84rem;
  font-weight:760;
  line-height:1.2;
  text-decoration:none;
  white-space:nowrap;
}
.partner-subnav-link:hover,
.partner-subnav-link:focus-visible,
.partner-subnav-link.active{background:#011961;color:#fff;text-decoration:none}

/* Hero and sections */
.partner-hero{padding:2.5rem 0 2.3rem;border-bottom:1px solid var(--border,#d9e1ea)}
.partner-hero h1{max-width:920px;margin:.45rem 0 1rem;color:#011961;font-size:clamp(2.35rem,5vw,4.4rem);line-height:1.04;letter-spacing:-.038em}
.partner-hero .lead{max-width:980px;margin:0;font-size:1.13rem;line-height:1.7}
.partner-hero .a-ctas{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-top:1.35rem}
.partner-hero .btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:.78rem 1rem;border:2px solid #011961;border-radius:6px;text-decoration:none;font-weight:800;line-height:1.2}
.partner-hero .btn-primary{background:#011961;color:#fff}
.partner-hero .btn-outline-light{background:#fff;color:#011961}
.partner-hero .btn:hover{transform:translateY(-1px)}

/* Thesis cards */
.partner-thesis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:1.55rem 0}
.partner-thesis p{margin:0;padding:1.15rem 1.2rem;border:1px solid var(--border,#d9e1ea);border-top:4px solid #0d8c96;border-radius:7px;background:var(--surface-soft,#f6f9fc);color:#011961;font-size:1rem;line-height:1.45}

/* Shared grids/cards */
.partner-category-grid,
.programme-grid,
.partner-resource-grid,
.principle-grid,
.maturity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1.45rem}
.partner-category-card,
.programme-grid>div,
.partner-resource-card,
.principle-grid>div,
.maturity-grid>div{
  min-width:0;
  padding:1.3rem;
  border:1px solid var(--border,#ccd7e1);
  border-radius:9px;
  background:var(--surface,#fff);
  box-shadow:0 3px 12px rgba(1,25,97,.035);
}
.partner-category-card{display:flex;flex-direction:column;align-items:flex-start}
.partner-category-card>span,
.programme-grid>div>span,
.partner-resource-card>span{color:#087f87;font-size:.74rem;font-weight:850;letter-spacing:.07em;text-transform:uppercase}
.partner-category-card h3,
.programme-grid h3,
.maturity-grid h3{margin:.45rem 0 .8rem;color:#011961;font-size:1.15rem}
.partner-category-card p{margin:.35rem 0;line-height:1.55}
.partner-category-card a{margin-top:auto;padding-top:.8rem;color:#006c74;font-weight:800;text-decoration:none}
.partner-category-card a:hover{text-decoration:underline}

/* Independence */
.partner-independence{padding-left:1.5rem;border-left:5px solid #0d8c96}
.principle-grid>div strong{display:block;margin-bottom:.55rem;color:#011961;font-size:1.02rem}
.principle-grid>div p{margin:0;line-height:1.55}
.partner-independence .callout{margin-top:1.2rem;padding:1rem 1.15rem;border-left:4px solid #f0c052;border-radius:0 7px 7px 0;background:#f4f7fb}
.partner-independence .callout strong{display:block;margin-bottom:.35rem;color:#011961}
.partner-independence .callout p{margin:0}

/* Resource cards */
.partner-resource-card{display:flex;flex-direction:column;color:inherit;text-decoration:none;transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}
.partner-resource-card strong{display:block;margin:.42rem 0 .55rem;color:#011961;font-size:1.08rem}
.partner-resource-card p{margin:0;line-height:1.55}
.partner-resource-card:hover{border-color:#0d8c96;transform:translateY(-2px);box-shadow:0 8px 20px rgba(1,25,97,.07)}

/* Downloads and pattern summaries */
.publication-download-card{display:flex;align-items:center;justify-content:space-between;gap:1.2rem;margin-top:1.5rem;padding:1.25rem;border:1px solid #b9cbd5;border-radius:9px;background:#f7fafc}
.publication-download-card span{color:#087f87;font-size:.78rem;font-weight:850}.publication-download-card strong{display:block;margin:.35rem 0;color:#011961}.publication-download-card>div:last-child{display:flex;gap:.6rem;flex-wrap:wrap}
.pattern-summary details,.faq-item{margin:.65rem 0;border:1px solid var(--border,#ccd7e1);border-radius:7px;background:var(--surface,#fff)}
.pattern-summary summary,.faq-item summary{cursor:pointer;padding:1rem;font-weight:800;color:#011961}
.pattern-summary details p,.faq-item p{padding:0 1rem 1rem;margin:0}
.pattern-header{display:flex;align-items:baseline;gap:1rem}.pattern-header span{color:#087f87;font-weight:850;text-transform:uppercase}
.pattern-actions{display:flex;gap:1rem;margin-top:1rem}.pattern-actions a{font-weight:800;color:#006c74}

/* Programme / journey / interoperability */
.fit-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.fit-grid>div{padding:1.25rem;border:1px solid var(--border,#ccd7e1);border-radius:8px}
.journey-line{display:grid;gap:.9rem}.journey-stage{display:grid;grid-template-columns:64px 1fr;gap:1rem;padding:1.1rem;border-left:4px solid #0d8c96;background:var(--surface-soft,#f6f9fc)}.journey-stage>b{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#011961;color:#fff}.journey-stage h2{margin:0 0 .5rem;color:#011961}.journey-stage dl{display:grid;grid-template-columns:130px 1fr;gap:.25rem 1rem;margin:0}.journey-stage dt{font-weight:800}.journey-stage dd{margin:0}
.interop-diagram{display:grid;justify-items:center;gap:.5rem;max-width:680px;margin:1.4rem auto}.interop-diagram>div{width:100%;padding:1rem;border:1px solid #b9cbd5;border-left:5px solid #0d8c96;border-radius:7px;background:var(--surface,#fff);text-align:center;color:#011961;font-weight:850}.interop-diagram i{font-style:normal;color:#0d8c96;font-size:1.3rem}.diagram-caption{text-align:center;color:var(--muted,#59677a);font-size:.86rem}.maturity-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.maturity-grid b{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#011961;color:#fff}.mini-process{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap}.mini-process span{padding:.7rem .85rem;border:1px solid #b9cbd5;border-radius:6px;background:var(--surface,#fff);font-weight:800}.mini-process i{font-style:normal;color:#0d8c96}
.faq-filter{margin-bottom:1rem}.faq-filter label{display:block;margin-bottom:.35rem;font-weight:800}.faq-filter input{width:100%;max-width:580px;padding:.75rem;border:1px solid #b9cbd5;border-radius:6px;background:var(--surface,#fff);color:inherit}.faq-item summary{display:flex;gap:.8rem;align-items:center}.faq-item summary span{min-width:130px;color:#087f87;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em}.full-pattern-document{max-width:920px}.full-pattern-document h2{margin-top:2.5rem;color:#011961}.full-pattern-document h3{margin-top:1.5rem;color:#174e67}.full-pattern-document table{display:block;overflow-x:auto;width:100%}

/* Dark mode */
[data-theme="dark"] .partner-subnav,[data-theme="dark"] .partner-category-card,[data-theme="dark"] .programme-grid>div,[data-theme="dark"] .partner-resource-card,[data-theme="dark"] .principle-grid>div,[data-theme="dark"] .maturity-grid>div,[data-theme="dark"] .pattern-summary details,[data-theme="dark"] .faq-item,[data-theme="dark"] .interop-diagram>div{background:#111a2a;border-color:#40506a}
[data-theme="dark"] .partner-hero h1,[data-theme="dark"] .partner-category-card h3,[data-theme="dark"] .programme-grid h3,[data-theme="dark"] .maturity-grid h3,[data-theme="dark"] .partner-resource-card strong,[data-theme="dark"] .principle-grid>div strong,[data-theme="dark"] .pattern-summary summary,[data-theme="dark"] .faq-item summary,[data-theme="dark"] .journey-stage h2,[data-theme="dark"] .interop-diagram>div{color:#dce8ff}
[data-theme="dark"] .partner-thesis p,[data-theme="dark"] .journey-stage{background:#111a2a;color:#dce8ff}
[data-theme="dark"] .partner-independence .callout,[data-theme="dark"] .publication-download-card{background:#111a2a}
[data-theme="dark"] .partner-hero .btn-outline-light{background:transparent;color:#dce8ff;border-color:#dce8ff}

/* Responsive: retain two-column cards on tablets; collapse only on narrow screens */
@media(max-width:760px){
  .partner-thesis,.partner-category-grid,.programme-grid,.partner-resource-grid,.principle-grid,.maturity-grid,.fit-grid{grid-template-columns:1fr}
  .publication-download-card{align-items:flex-start;flex-direction:column}
  .journey-stage{grid-template-columns:48px 1fr}.journey-stage dl{grid-template-columns:1fr}
  .faq-item summary{align-items:flex-start;flex-direction:column;gap:.25rem}
  .partner-subnav{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin}
  .partner-subnav-link{flex:0 0 auto}
}
@media(max-width:540px){
  .partner-hero{padding-top:1.8rem}.partner-hero h1{font-size:2.25rem}.partner-hero .a-ctas{align-items:stretch;flex-direction:column}.partner-hero .btn{width:100%}
}
