.partners-page .page-hero { padding:76px 0 64px; }
.partners-page .page-hero::after { display:none; }
.partners-hero-layout { display:grid; grid-template-columns:1.35fr 1fr; gap:70px; align-items:center; }
.partners-page .page-hero h1 { font-size:clamp(42px,4.6vw,66px); margin:22px 0; }
.partners-page .page-hero h1 em { color:#28594e; font-weight:400; }
.partners-page .page-hero .lede { max-width:570px; }
.partners-hero-link { display:inline-flex; align-items:center; gap:34px; color:#28594e; font-size:14px; font-weight:600; text-decoration:none; border-bottom:1px solid #28594e; padding:12px 0; margin-top:14px; }
.partners-hero-link span { font-size:24px; }
.partners-hero-note { padding:38px; background:#e9eddf; border-radius:4px 70px 4px 4px; border:1px solid #dce4d1; }
.partners-note-label { font-size:10px; letter-spacing:.18em; text-transform:uppercase; color:#52665e; }
.partners-hero-note>p { font:400 34px/1.3 'Playfair Display',Georgia,serif; color:#28594e; margin:28px 0 32px; }
.partners-counts { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid #bdcbb6; padding-top:22px; gap:20px; }
.partners-counts strong { display:block; color:#28594e; font:400 35px Georgia,serif; margin-bottom:8px; }
.partners-counts span { color:#52665e; font-size:11px; }
.partners-page .page-body { padding:0 0 80px; }
.partner-jump-links { display:flex; gap:26px; align-items:center; flex-wrap:wrap; padding:23px 0; border-block:1px solid #dce4d9; }
.partner-jump-links span { color:#806225; font-size:10px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; margin-right:auto; }
.partner-jump-links a { color:#28594e; text-decoration:none; font-size:12px; padding:6px 0; }
.partner-jump-links a:hover { text-decoration:underline; text-underline-offset:5px; }
.partner-artwork-note { font-size:12px; color:#66776e; margin:18px 0 42px; }
.partner-tier { margin-bottom:64px; scroll-margin-top:110px; }
.partner-tier-label { display:block; color:#806225; text-transform:uppercase; letter-spacing:.16em; font-size:10px; font-weight:700; margin-bottom:14px; }
.partner-tier h2 { font-size:clamp(28px,3vw,38px); margin-bottom:14px; }
.partner-tier>p { max-width:750px; color:#52665e; line-height:1.75; font-size:15px; margin-bottom:28px; }
.partner-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.partners-page .partner-card { background:#fffdf9; border:1px solid #dce4d9; border-radius:8px; overflow:hidden; transition:box-shadow .2s,border-color .2s; }
.partner-logo { height:154px; display:flex; align-items:center; justify-content:center; background:white; border-bottom:1px solid #edf0e8; padding:14px 22px; }
.partner-logo img { display:block; width:100%; max-width:300px; height:130px; object-fit:contain; }
.partner-logo img.nhs-partner-logo { width:150px; height:auto; }
.partner-card-copy { padding:23px 24px 26px; }
.partner-card h3 { font:600 15px/1.5 Inter,system-ui,sans-serif; color:#173448; margin:0 0 9px; }
.partner-card p { color:#52665e; font-size:13px; line-height:1.7; margin:0; }
.partners-page .partner-cta { display:flex; align-items:center; gap:44px; justify-content:space-between; padding:44px; border-radius:8px; background:#28594e; color:white; }
.partner-cta-text { max-width:680px; }
.partner-cta h3 { font:400 34px 'Playfair Display',Georgia,serif; color:white; margin:0 0 15px; }
.partner-cta p { color:#e3ecdf; font-size:14px; line-height:1.8; margin:0; }
.partner-cta-btn { flex-shrink:0; background:#e8c779; color:#173448; padding:17px 25px; border-radius:4px; font-size:13px; font-weight:700; text-decoration:none; }
.partner-cta-btn:hover { background:#f1d99f; }
@media(max-width:1000px) { .partners-hero-layout { gap:30px; } .partners-hero-note { padding:28px; } .partner-jump-links { gap:16px; } }
@media(max-width:760px) { .partners-hero-layout { grid-template-columns:1fr; } .partners-page .page-hero { padding:45px 0; } .partners-hero-note>p { font-size:28px; margin:20px 0; } .partner-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; } .partner-jump-links span { width:100%; } .partners-page .partner-cta { flex-direction:column; align-items:stretch; padding:30px; gap:24px; } .partner-cta-btn { text-align:center; } }
@media(max-width:480px) { .partner-grid { grid-template-columns:1fr; } .partner-logo { height:145px; } .partner-tier { margin-bottom:44px; } .partners-hero-note { border-radius:4px 45px 4px 4px; } }
@media(prefers-reduced-motion:reduce) { .partners-page .partner-card { transition:none; } }
