/* PNGCORE — Membership (/membership/, page-membership.php; body class .pc-tpl-membership).
   Sections: anchors · why · commitment · focus + 2026 · categories · at a glance (dark) · benefits · join · voice ·
   FAQ · tenders · contact · logo strip. Tokens and pc- components only. */

/* Lists used as layout */
.pc-mship-list{list-style:none;margin:0;padding:0}
.pc-mship-list > li{margin:0}

/* Anchor chips: 44 px targets; anchored targets clear the sticky chip row (the header is in html scroll-padding) */
.pc-mship-anchors .pc-chip{min-height:44px}
.pc-tpl-membership main [id]{scroll-margin-top:72px}

/* Shared two-column intro (heading left, copy right) */
.pc-mship-intro{display:grid;gap:var(--pc-s4) var(--pc-gap);margin-bottom:clamp(28px,4vw,48px)}
.pc-mship-intro-head h2{margin:0}
.pc-mship-intro-text > :last-child{margin-bottom:0}
.pc-mship-intro-text .pc-lead{color:var(--pc-ink);margin-top:0}
.pc-mship-intro-text p:not(.pc-lead){color:var(--pc-muted);max-width:var(--pc-measure)}
@media (min-width:960px){
	.pc-mship-intro{grid-template-columns:5fr 7fr;align-items:start}
	.pc-mship-intro-head{padding-top:6px}
}

/* Why: equal-height cards */
.pc-mship-why-cards > li,.pc-mship-cats > li{display:flex}
.pc-mship-why-cards .pc-pillar{flex:1}

/* Commitment: three statements */
.pc-mship-commitment .pc-section-head{margin-bottom:var(--pc-s6)}
.pc-mship-commitment .pc-section-head p{margin:var(--pc-s3) 0 0;color:var(--pc-muted)}
.pc-mship-statements{display:grid;gap:var(--pc-gap)}
@media (min-width:860px){.pc-mship-statements{grid-template-columns:repeat(3,minmax(0,1fr))}}
.pc-mship-statement{padding:clamp(20px,2.4vw,30px);background:var(--pc-bg);border-radius:var(--pc-r-lg);border-top:3px solid var(--pc-brand);box-shadow:var(--pc-shadow-sm)}
.pc-mship-statement-label{margin:0 0 var(--pc-s3);font-size:var(--pc-fs-eyebrow);font-weight:700;font-stretch:var(--pc-wdth-eyebrow);letter-spacing:var(--pc-track-eyebrow);text-transform:uppercase;color:var(--pc-brand-700)}
.pc-mship-statement p{margin:0;font-size:var(--pc-fs-h5);line-height:1.5;color:var(--pc-ink)}

/* Strategic focus + 2026 */
.pc-mship-focus-grid{display:grid;gap:var(--pc-s7) var(--pc-s8);align-items:start}
@media (min-width:960px){.pc-mship-focus-grid{grid-template-columns:7fr 5fr}}
.pc-mship-focus-areas h2{margin-bottom:var(--pc-s3)}
.pc-mship-focus-areas > p{margin:0 0 var(--pc-s5);color:var(--pc-muted)}
.pc-mship-numbered > li{display:grid;grid-template-columns:auto 1fr;gap:var(--pc-s5);padding:var(--pc-s5) 0;border-top:1px solid var(--pc-line)}
.pc-mship-numbered > li:last-child{border-bottom:1px solid var(--pc-line)}
.pc-mship-num{font-size:var(--pc-fs-h2);font-weight:800;line-height:1;letter-spacing:-.02em;color:var(--pc-brand);font-variant-numeric:tabular-nums lining-nums;min-width:2.2ch}
.pc-mship-numbered h3{font-size:var(--pc-fs-h4);margin:0 0 var(--pc-s2)}
.pc-mship-numbered p{margin:0;color:var(--pc-muted)}
.pc-mship-expect{padding:clamp(24px,3vw,40px);background:var(--pc-surface);border-radius:var(--pc-r-xl);border:1px solid var(--pc-line)}
.pc-mship-expect .pc-chip-icon{margin-bottom:var(--pc-s4);background:var(--pc-bg)}
.pc-mship-expect h2{font-size:var(--pc-fs-h3);margin:0 0 var(--pc-s5)}
.pc-mship-checks{display:grid;gap:var(--pc-s4)}
.pc-mship-checks li{display:grid;grid-template-columns:24px 1fr;gap:var(--pc-s3);align-items:start;font-size:var(--pc-fs-small);line-height:1.55}
.pc-mship-checks .pc-icon{width:22px;height:22px;margin-top:1px;color:var(--pc-brand-700)}
.pc-mship-checks strong{color:var(--pc-ink)}
.pc-mship-expect .pc-source{margin-top:var(--pc-s5);padding-top:var(--pc-s4);border-top:1px solid var(--pc-line)}

/* Categories */
.pc-mship-cat{display:flex;flex-direction:column;gap:var(--pc-s3);flex:1;padding:clamp(20px,2.4vw,30px);background:var(--pc-bg);border-radius:var(--pc-r-lg);box-shadow:var(--pc-shadow-sm)}
.pc-mship-cat .pc-chip-icon{margin-bottom:var(--pc-s2)}
.pc-mship-cat h3{font-size:var(--pc-fs-h4);margin:0}
.pc-mship-cat p{margin:0;color:var(--pc-muted);font-size:var(--pc-fs-small)}
.pc-mship-cat-foot{margin-top:auto;padding-top:var(--pc-s4);border-top:1px solid var(--pc-line);display:flex;flex-direction:column;gap:var(--pc-s2)}
.pc-mship-cat-foot .pc-more{min-height:44px}
.pc-mship-note{display:grid;grid-template-columns:22px 1fr;gap:var(--pc-s3);align-items:start;max-width:var(--pc-measure);margin-top:var(--pc-s6);font-size:var(--pc-fs-small);color:var(--pc-text)}
.pc-mship-note .pc-icon{width:20px;height:20px;margin-top:2px;color:var(--pc-brand-700)}
.pc-mship-note p{margin:0}
.pc-mship-note,.pc-mship-join-notes{min-width:0;overflow-wrap:anywhere}

/* At a glance (dark band) */
.pc-mship-glance-grid{align-items:center}
.pc-mship-glance-photo{margin:0}
.pc-mship-glance-photo img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--pc-r-lg)}
.pc-mship-glance-photo figcaption{margin-top:var(--pc-s2);font-size:.6875rem;letter-spacing:.02em;color:var(--pc-on-dark-muted)}
.pc-mship-glance-body h2{margin-bottom:var(--pc-s6)}
.pc-tpl-membership .pc-mship-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
.pc-mship-stats .pc-stat-unit{color:#fff;font-weight:600}
.pc-mship-sectors{display:flex;flex-wrap:wrap;gap:var(--pc-s2);margin-top:var(--pc-s6)}
.pc-mship-sectors .pc-chip{text-transform:none;letter-spacing:0;font-stretch:100%;font-size:var(--pc-fs-meta);font-weight:600;padding:4px 12px}

/* Benefits */
.pc-mship-benefit-list{display:grid;gap:0 var(--pc-s8)}
@media (min-width:860px){.pc-mship-benefit-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
.pc-mship-benefit{display:grid;grid-template-columns:44px 1fr;gap:var(--pc-s4);align-items:start;padding:var(--pc-s5) 0;border-top:1px solid var(--pc-line)}
.pc-mship-benefit .pc-chip-icon{width:44px;height:44px;border-radius:var(--pc-r)}
.pc-mship-benefit .pc-chip-icon .pc-icon{width:22px;height:22px}
.pc-mship-benefit h3{font-size:var(--pc-fs-h5);margin:0 0 var(--pc-s1)}
.pc-mship-benefit p{margin:0;font-size:var(--pc-fs-small);color:var(--pc-muted)}

/* How to join: numbered steps */
.pc-mship-steps{display:grid;gap:var(--pc-gap);counter-reset:none}
@media (min-width:640px){.pc-mship-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1024px){.pc-mship-steps{grid-template-columns:repeat(3,minmax(0,1fr))}}
.pc-mship-step{position:relative;padding:clamp(20px,2.4vw,28px);background:var(--pc-bg);border-radius:var(--pc-r-lg);box-shadow:var(--pc-shadow-sm)}
.pc-mship-step-n{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;margin-bottom:var(--pc-s4);border-radius:50%;background:var(--pc-brand-700);color:#fff;font-weight:800;font-variant-numeric:tabular-nums}
.pc-mship-step h3{font-size:var(--pc-fs-h5);margin:0 0 var(--pc-s2)}
.pc-mship-step p{margin:0;font-size:var(--pc-fs-small);color:var(--pc-muted)}
.pc-mship-step a{font-weight:600}
.pc-mship-join-foot{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--pc-s5);align-items:center;margin-top:var(--pc-s7)}
@media (min-width:960px){.pc-mship-join-foot{grid-template-columns:minmax(0,1fr) auto;gap:var(--pc-s8)}}
.pc-mship-join-notes .pc-mship-note{margin-top:0}
.pc-mship-join-notes .pc-mship-note + .pc-mship-note{margin-top:var(--pc-s3)}
.pc-mship-join-actions{margin:0}

/* Member voice */
.pc-mship-quote{position:relative;max-width:880px;margin:0 auto;text-align:center}
.pc-mship-quote .pc-eyebrow{color:var(--pc-brand-700);margin-bottom:var(--pc-s4)}
.pc-mship-quote-mark{width:44px;height:44px;color:var(--pc-brand);margin:0 auto var(--pc-s4)}
.pc-mship-quote blockquote{margin:0}
.pc-mship-quote blockquote p{margin:0;font-size:var(--pc-fs-h4);line-height:1.5;font-weight:500;color:var(--pc-ink);letter-spacing:-.005em}
.pc-mship-quote figcaption{display:inline-flex;align-items:center;gap:var(--pc-s3);margin-top:var(--pc-s6);text-align:left}
.pc-mship-voice-logo{width:56px;height:56px;border-radius:50%;object-fit:contain;background:var(--pc-bg);border:1px solid var(--pc-line)}
.pc-mship-quote figcaption b{display:block;color:var(--pc-ink)}
.pc-mship-quote figcaption span span{display:block;font-size:var(--pc-fs-meta);color:var(--pc-muted)}

/* FAQ */
.pc-mship-faq-head h2{margin-bottom:var(--pc-s3)}
.pc-mship-faq-head > p{color:var(--pc-muted)}
.pc-mship-faq-more{margin:var(--pc-s4) 0 0}
.pc-mship-faq-more .pc-more{min-height:44px}
@media (min-width:960px){.pc-mship-faq-head{position:sticky;top:calc(var(--pc-header-h) + 88px)}}
.pc-mship-faq .pc-accordion{border-top:1px solid var(--pc-line)}
.pc-mship-faq .pc-acc-heading{margin:0;font-size:inherit}
.pc-mship-faq .pc-acc-trigger{min-height:56px}

/* Tender notices */
.pc-mship-tender-panel{display:grid;gap:var(--pc-s4) var(--pc-s5);align-items:center;padding:clamp(20px,3vw,36px);border:1px solid var(--pc-line);border-left:4px solid var(--pc-brand);border-radius:var(--pc-r-lg);background:var(--pc-bg)}
@media (min-width:860px){.pc-mship-tender-panel{grid-template-columns:auto 1fr auto}}
.pc-mship-tender-text h2{font-size:var(--pc-fs-h3);margin:0 0 var(--pc-s2)}
.pc-mship-tender-text p{margin:0;color:var(--pc-muted)}

/* Contact Member Services */
.pc-mship-contact-grid{display:grid;gap:var(--pc-s7) var(--pc-s8);align-items:start}
@media (min-width:960px){.pc-mship-contact-grid{grid-template-columns:5fr 7fr}}
.pc-mship-contact-info h2{margin-bottom:var(--pc-s5)}
.pc-mship-contact-list{display:grid;gap:var(--pc-s3)}
.pc-mship-contact-list li{display:grid;grid-template-columns:52px 1fr;gap:var(--pc-s4);align-items:center}
.pc-mship-contact-list .pc-chip-icon{background:var(--pc-bg)}
.pc-mship-contact-link{display:flex;flex-wrap:wrap;align-items:center;align-content:center;column-gap:6px;min-height:52px;text-decoration:none;color:var(--pc-ink)}
.pc-mship-contact-label{flex-basis:100%}
a.pc-mship-contact-link:hover .pc-mship-contact-value{text-decoration:underline;text-decoration-thickness:2px}
.pc-mship-contact-label{font-size:var(--pc-fs-meta);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--pc-muted)}
.pc-mship-contact-value{font-weight:600;color:var(--pc-link);overflow-wrap:anywhere}
a.pc-mship-contact-link .pc-icon{width:14px;height:14px}
.pc-mship-form-card{padding:clamp(20px,3vw,40px);background:var(--pc-bg);border-radius:var(--pc-r-xl);box-shadow:var(--pc-shadow)}
.pc-mship-form-title{font-size:var(--pc-fs-h4);margin:0 0 var(--pc-s4)}
.pc-mship-form-notice{margin-bottom:var(--pc-s5)}
.pc-mship-form-req{margin:0}
.pc-mship-form .pc-form-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--pc-s3) var(--pc-s5)}
.pc-mship-form .pc-form-actions .pc-hint{margin:0;flex:1 1 260px}
/* Enquiry form status (UX1-14): kept in the accessibility tree while empty (a live region must exist before it
   speaks), so the empty line only cancels its own grid gap */
.pc-mship-form-status{margin:0;font-size:var(--pc-fs-small);font-weight:600;color:var(--pc-error)}
.pc-mship-form-status:empty{margin-top:calc(-1 * var(--pc-s4))}

/* Logo strip */
.pc-mship-logos .pc-logo-tile img{max-width:78%}
@media (min-width:1120px){.pc-mship-logos .pc-logos{grid-template-columns:repeat(7,minmax(0,1fr))}}

/* Narrow phones (320 px): long button labels wrap inside the content box instead of widening the page (QA round 1, UX1-06) */
.pc-tpl-membership .pc-actions .pc-btn{max-width:100%;white-space:normal;text-align:center}

/* Utility bar at 360 px (shared announcement strip overflows by 27 px; local work-around, proposed for
   components.css in build/shared-requests/leadership.md and membership.md) */
@media (max-width:399px){
	.pc-tpl-membership .pc-utility-text{display:none}
	.pc-tpl-membership .pc-utility-note strong{min-width:0;overflow:hidden;text-overflow:ellipsis}
}

/* October review: a concise four-section membership overview. */
.pc-tpl-membership .pc-mship-benefit-list{gap:16px 64px}
.pc-tpl-membership .pc-mship-benefit{padding:28px 0}
.pc-tpl-membership .pc-mship-cat{padding:32px;box-shadow:none;border:1px solid var(--pc-line);gap:18px}
.pc-mship-category-detail{margin-top:auto;border-top:1px solid var(--pc-line);padding-top:16px;font-size:var(--pc-fs-small)}
.pc-mship-category-detail summary,.pc-mship-requirements summary{cursor:pointer;font-weight:650;color:var(--pc-ink);min-height:44px;align-content:center}
.pc-mship-category-detail p{margin:12px 0!important}
.pc-mship-category-note{max-width:90ch;font-size:var(--pc-fs-small);color:var(--pc-muted);margin:28px 0 0}
.pc-mship-join-overview{display:grid;gap:48px 72px;align-items:start}
.pc-mship-join-overview .pc-lead{max-width:38ch}
.pc-mship-join-overview .pc-actions{margin-top:28px}
.pc-mship-help{margin-top:24px;font-size:var(--pc-fs-small)}
.pc-mship-requirements{padding:28px 32px;background:var(--pc-surface);border:1px solid var(--pc-line);border-radius:var(--pc-r-lg)}
.pc-mship-requirements details+details{border-top:1px solid var(--pc-line);margin-top:20px;padding-top:16px}
.pc-mship-requirements p{font-size:var(--pc-fs-small);line-height:1.7;color:var(--pc-muted)}
.pc-mship-process-list{padding-left:22px;margin:16px 0 0}
.pc-mship-process-list li{padding-left:6px;margin-bottom:20px}
.pc-mship-process-list p{margin:6px 0 0}
@media(min-width:960px){.pc-mship-join-overview{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
@media(max-width:479px){.pc-tpl-membership .pc-mship-cat,.pc-mship-requirements{padding:24px}.pc-mship-join-overview{gap:28px}}
/* Preserve the speaker's face when the source photograph is cropped into a banner. */
.pc-tpl-membership .pc-hero-media img{object-position:center top}

/* 15 October membership review: selectable sections and current membership figures. */
.pc-mship-section-nav{padding-block:32px}
.pc-mship-section-tiles{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}
.pc-mship-section-tiles a{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;min-height:84px;padding:20px;background:var(--pc-bg);border:1px solid var(--pc-line);border-radius:var(--pc-r);color:var(--pc-ink);font-size:var(--pc-fs-small);font-weight:650;text-decoration:none}
.pc-mship-section-tiles a:hover{border-color:var(--pc-brand);color:var(--pc-link)}
.pc-mship-tile-number{font-variant-numeric:tabular-nums;color:var(--pc-brand-700);font-size:var(--pc-fs-meta)}
.pc-mship-section-tiles .pc-icon{width:18px;height:18px}
.pc-mship-current-membership{padding-top:24px;border-top:1px solid var(--pc-line)}
.pc-mship-current-membership h3{font-size:var(--pc-fs-h4);margin:0 0 24px}
.pc-mship-current-counts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:0}
.pc-mship-current-counts>div{display:flex;flex-direction:column;gap:8px;padding:4px 24px;border-left:2px solid var(--pc-brand)}
.pc-mship-current-counts dt{font-size:var(--pc-fs-small);color:var(--pc-muted)}
.pc-mship-current-counts dd{margin:0;font-size:clamp(2.25rem,4vw,3.5rem);line-height:1.1;font-weight:750;letter-spacing:-.03em;color:var(--pc-ink);font-variant-numeric:tabular-nums}
.pc-mship-resource-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.pc-mship-directory-links>li,.pc-mship-resource-links>li{display:flex}
.pc-mship-directory-links .pc-pillar,.pc-mship-resource-links .pc-pillar{width:100%;height:100%}
.pc-mship-review-quote{margin-top:64px;padding-top:48px;border-top:1px solid var(--pc-line)}
.pc-mship-review-quote h3{font-size:var(--pc-fs-h4);margin:0 0 24px}
.pc-mship-portal-panel{display:flex;align-items:center;justify-content:space-between;gap:32px}
.pc-mship-portal-panel h2{margin:0 0 12px}
.pc-mship-portal-panel p{max-width:60ch;margin:0;color:var(--pc-muted)}
.pc-mship-portal-panel .pc-actions{flex-shrink:0}
@media(max-width:959px){.pc-mship-section-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.pc-mship-current-counts{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.pc-mship-portal-panel{align-items:flex-start;flex-direction:column}}
@media(max-width:559px){.pc-mship-section-tiles,.pc-mship-resource-links{grid-template-columns:minmax(0,1fr)}.pc-mship-section-tiles a{min-height:64px;padding:16px}.pc-mship-current-counts>div{padding-left:16px}.pc-mship-review-quote{margin-top:40px;padding-top:32px}}
