/* Membership Overview -------------------------------------------------------
   GENERATED from the reference's own stylesheets, not transcribed and not
   measured. Source: the page the field saved on 22 Sep 2026
   (~/Downloads/PLU Membership _ PLU.html), which carries
   A.style.css (the theme) and membership-experience.css (the plugin), both
   newer than the 16 Sep backup of the wpref stack.

   Every rule below whose selector touches this page's classes is copied
   verbatim, in the order the two sheets are enqueued, so the cascade here is
   the cascade there. Earlier versions of this file were measured off
   screenshots and got things subtly wrong - the hero eyebrow was yellow when
   the reference's is red, the glance figures sat in a bordered box instead of
   on a 1px grid. Nothing here is a judgement call; if it differs from the
   reference, it is a bug.

   Global families (.plu-button, .plu-eyebrow, .plu-page-actions) are NOT
   repeated here: our plu.css is a copy of the same theme sheet and already
   carries them identically. Repeating them would fork the cascade.

   ONE deliberate deviation, marked at the foot of this file, and it is not
   about width: this page now extends cms_base.html, so its <main> is the
   public shell - full width, the site header and the site footer - exactly
   as the reference's is. The width hack that used to live here (100vw and a
   negative margin to escape .plu-shell) is gone with it. */

/* Dashicons now live in plu.css, because more than one page uses them: the
   verify page's mode tabs carry the reference's own editor-code and
   media-document glyphs too. The six codepoints this page uses are declared
   there with the rest. */

/* ---- from the reference's theme stylesheet (style.css) ---- */
.plu-membership-hero { min-height:530px;display:grid;grid-template-columns:1.25fr .75fr;background:#050505;color:#fff;border-bottom:4px solid var(--plu-yellow);overflow:hidden }
.plu-membership-hero__copy { padding: 110px 24px 70px max(64px, calc((100% - 1360px) / 2 + 24px)) }
.plu-membership-hero h1,.plu-verify-hero h1,.plu-officers-hero h1 { margin:0;font-size:clamp(54px,6vw,86px);line-height:1.02;font-weight:900 }
.plu-membership-hero p:not(.plu-eyebrow), .plu-verify-hero p, .plu-officers-hero p { max-width:720px;font-size:20px;line-height:1.65;color:rgba(255,255,255,.78) }
.plu-membership-hero small { display:block;margin-top:24px;color:rgba(255,255,255,.48) }
.plu-membership-hero__mark { display:flex;align-items:center;justify-content:center;background:var(--plu-yellow);clip-path:polygon(25% 0,100% 0,100% 100%,0 100%) }
.plu-membership-hero__mark img { width:340px;height:340px;object-fit:contain;padding:34px;border-radius:50%;opacity:.88;border:2px solid rgba(0,0,0,.14);background:var(--plu-yellow) }
.plu-membership-hero.has-panel-photo { position:relative;display:block;min-height:610px;isolation:isolate;background: var(--plu-yellow) var(--plu-membership-photo) center/cover no-repeat;background-position:var(--plu-membership-photo-x,50%) var(--plu-membership-photo-y,50%) }
.plu-membership-hero.has-panel-photo::before { content:'';position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,rgba(255,242,0,.92) 0%,rgba(255,242,0,.74) 30%,rgba(255,242,0,.18) 58%,transparent 82%) }
.plu-membership-hero.has-panel-photo::after { content:'';position:absolute;inset:auto 0 0;height:8px;background:linear-gradient(90deg,var(--plu-yellow) 0 62%,var(--plu-red) 62% 78%,#fff 78%) }
.plu-membership-hero.has-panel-photo .plu-membership-hero__copy { position:relative;z-index:1;max-width:820px;min-height:610px;display:flex;flex-direction:column;justify-content:center;color:#111 }
.plu-membership-hero.has-panel-photo h1 { color:#050505;text-shadow:0 2px 14px rgba(255,255,255,.34) }
.plu-membership-hero.has-panel-photo .plu-membership-hero__copy > p:not(.plu-eyebrow) { color:rgba(0,0,0,.78);font-weight:750;text-shadow:none }
.plu-membership-hero.has-panel-photo .plu-membership-hero__copy small { color:rgba(0,0,0,.58) }
.plu-membership-hero.has-panel-photo .plu-button--ghost-dark { border-color:rgba(0,0,0,.42);color:#111;background:rgba(255,255,255,.34);backdrop-filter:blur(5px) }
.plu-membership-hero.has-panel-photo .plu-page-actions .plu-button:nth-child(2) { border-color:#050505;background:var(--plu-yellow);color:#050505;box-shadow:none }
.plu-membership-hero.has-panel-photo .plu-page-actions .plu-button:nth-child(2):hover, .plu-membership-hero.has-panel-photo .plu-page-actions .plu-button:nth-child(2):focus { background:#fff;color:#050505 }
.plu-membership-hero.has-panel-photo .plu-page-actions .plu-button:nth-child(3) { border-color:var(--plu-red);background:var(--plu-red);color:#fff;box-shadow:0 10px 24px rgba(180,0,0,.2) }
.plu-membership-hero.has-panel-photo .plu-page-actions .plu-button:nth-child(3):hover, .plu-membership-hero.has-panel-photo .plu-page-actions .plu-button:nth-child(3):focus { border-color:#fff;background:#fff;color:var(--plu-red) }
.plu-membership-hero.has-panel-photo .plu-button--yellow { border-color:#050505;background:#050505;color:#fff;box-shadow:0 10px 24px rgba(0,0,0,.24) }
.plu-membership-hero.has-panel-photo .plu-button--yellow:hover,.plu-membership-hero.has-panel-photo .plu-button--yellow:focus { border-color:#050505;background:#fff;color:#050505 }
.plu-membership-hero.has-panel-photo .plu-membership-hero__mark { display:none }
.plu-benefit-row { max-width:1360px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);background:#fff;border-bottom:1px solid var(--plu-line) }
.plu-benefit-row article { display:grid;grid-template-columns:54px 1fr;gap:20px;padding:34px 36px;border-right:1px solid var(--plu-line) }
.plu-benefit-row span { display:flex;width:42px;height:42px;align-items:center;justify-content:center;background:#050505;color:var(--plu-yellow);font-weight:900 }
.plu-benefit-row h3 { margin:0 0 8px;font-size:19px }
.plu-benefit-row p { margin:0;color:rgba(0,0,0,.62);line-height:1.65 }
@media (max-width:900px) {
  .plu-membership-hero,.plu-verify-hero,.plu-verify-layout,.plu-officers-hero,.plu-process-row,.plu-how-it-works { grid-template-columns:1fr }
  .plu-membership-hero__mark { clip-path:none;min-height:280px }
  .plu-benefit-row,.plu-process-cards { grid-template-columns:1fr }
  .plu-membership-hero.has-panel-photo { min-height:640px;background-position:62% var(--plu-membership-photo-y,50%) }
  .plu-membership-hero.has-panel-photo::before { background:linear-gradient(180deg,rgba(255,242,0,.88) 0%,rgba(255,242,0,.62) 48%,rgba(255,242,0,.18) 76%,transparent) }
  .plu-membership-hero.has-panel-photo .plu-membership-hero__copy { min-height:640px;justify-content:flex-start;padding-top:72px }
}
.plu-main,.plu-page,.plu-membership-page,.plu-join-page,.plu-verify-page,.plu-officers-page,.plu-leadership-page,.plu-structure-page { width:100% }
.plu-membership-hero.plu-banner-media>.plu-membership-hero__copy,.plu-membership-hero.plu-banner-media>.plu-membership-hero__mark,.plu-join-banner.plu-banner-media>div,.plu-verify-hero.plu-banner-media>div,.plu-verify-hero.plu-banner-media>aside,.plu-officers-hero.plu-banner-media>div,.plu-officers-hero.plu-banner-media>aside,.plu-page-hero.plu-banner-media>div,.plu-leadership-hero.plu-banner-media>.plu-leadership-hero__inner,.plu-structure-hero.plu-banner-media>.plu-structure-hero__inner,.plu-about-hero.plu-banner-media>.plu-about-hero__inner,.plu-what-hero.plu-banner-media>.plu-what-hero__inner,.plu-contact-hero.plu-banner-media>.plu-contact-hero__inner,.plu-tracker-hero.plu-banner-media>.plu-tracker-hero__inner { position:relative;z-index:2 }
.plu-membership-hero h1,.plu-verify-hero h1,.plu-officers-hero h1,.plu-structure-hero h1 { font-size:clamp(48px,5.6vw,72px);line-height:1 }
@media (max-width:620px) {
  .plu-membership-hero h1,.plu-verify-hero h1,.plu-officers-hero h1,.plu-structure-hero h1 { font-size:42px }
}
@media (max-width:760px) {
  .plu-membership-hero.has-panel-photo { min-height:0;padding-top:270px;background-color:var(--plu-yellow);background-position:var(--plu-membership-photo-x,50%) top;background-size:auto 270px;background-repeat:no-repeat }
  .plu-membership-hero.has-panel-photo::before { top:0;bottom:auto;height:270px;background:linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.24)) }
  .plu-membership-hero.has-panel-photo .plu-membership-hero__copy { min-height:0;padding:28px 20px 34px;background:var(--plu-yellow) }
  .plu-membership-hero h1 { font-size:36px;line-height:1.08 }
  .plu-membership-hero.has-panel-photo .plu-membership-hero__copy > p:not(.plu-eyebrow) { color:rgba(0,0,0,.76);font-size:16px;line-height:1.6 }
  .plu-benefit-row article { gap:16px;padding:24px 20px }
}
@media (max-width:980px) {
  .plu-membership-hero.has-panel-photo { min-height:0;padding-top:300px;background-color:var(--plu-yellow);background-position:var(--plu-membership-photo-x,50%) top;background-size:auto 300px;background-repeat:no-repeat }
  .plu-membership-hero.has-panel-photo::before { top:0;right:0;bottom:auto;left:0;height:300px;background:linear-gradient(180deg,rgba(0,0,0,.03),rgba(0,0,0,.28)) }
  .plu-membership-hero.has-panel-photo .plu-membership-hero__copy { max-width:none;min-height:0;padding:30px 24px 36px;background:var(--plu-yellow);color:#050505 }
  .plu-membership-hero.has-panel-photo h1 { color:#050505;text-shadow:none }
  .plu-membership-hero.has-panel-photo .plu-eyebrow { color:var(--plu-red) }
  .plu-membership-hero.has-panel-photo .plu-membership-hero__copy > p:not(.plu-eyebrow),
  .plu-membership-hero.has-panel-photo .plu-membership-hero__copy small { color:rgba(0,0,0,.78)!important;text-shadow:none }
  .plu-membership-hero.has-panel-photo .plu-button--ghost-dark { border-color:#050505;background:#fff;color:#050505 }
}
@media (max-width:480px) {
  .plu-membership-hero.has-panel-photo { padding-top:250px;background-size:auto 250px }
  .plu-membership-hero.has-panel-photo::before { height:250px }
  .plu-membership-hero.has-panel-photo .plu-membership-hero__copy { padding:26px 20px 32px }
  .plu-membership-hero.has-panel-photo h1 { font-size:34px }
}

/* ---- from the reference's plugin stylesheet (membership-experience.css) ---- */
.plu-membership-refresh .plu-membership-hero { position:relative;isolation:isolate }
.plu-membership-refresh .plu-membership-hero.has-panel-photo::before { background:linear-gradient(105deg,rgba(5,5,5,.92) 0%,rgba(5,5,5,.72) 40%,rgba(190,0,18,.24) 67%,rgba(5,5,5,.08) 100%);background-size:160% 100%;animation:plu-membership-wash 11s ease-in-out infinite alternate }
.plu-membership-refresh .plu-membership-hero.has-panel-photo h1,.plu-membership-refresh .plu-membership-hero.has-panel-photo .plu-membership-hero__copy { color:#fff;text-shadow:none }
.plu-membership-refresh .plu-membership-hero.has-panel-photo .plu-membership-hero__copy>p:not(.plu-eyebrow) { max-width:680px;color:rgba(255,255,255,.88) }
.plu-membership-scale { display:flex;gap:12px;align-items:center;width:max-content;max-width:100%;margin:18px 0 4px;padding:11px 16px;border-left:4px solid #fff200;background:rgba(0,0,0,.62);color:#fff;backdrop-filter:blur(5px) }
.plu-membership-scale strong { color:#fff200;font-size:28px;line-height:1 }
.plu-membership-scale span { font-size:13px;font-weight:800;text-transform:uppercase }
.plu-membership-dashboard { padding:34px max(24px,calc((100% - 1312px)/2)) 38px;background:#f3f3ef;color:#111 }
.plu-membership-dashboard>header { margin-bottom:18px }
.plu-membership-dashboard>header>div { display:flex;justify-content:space-between;gap:28px;align-items:end }
.plu-membership-dashboard h2 { margin:5px 0 0;font-size:30px;line-height:1.08 }
.plu-membership-dashboard>header>div>p:last-child { max-width:560px;margin:0;color:#62656c;font-size:14px;line-height:1.55;text-align:right }
.plu-membership-dashboard__figures { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid #cfd1ca;background:#cfd1ca;gap:1px }
.plu-membership-dashboard__figures article { display:flex;min-width:0;min-height:100px;padding:18px 20px;background:#fff;flex-direction:column;justify-content:center }
.plu-membership-dashboard__figures article:first-child { background:#111;color:#fff }
.plu-membership-dashboard__figures article:nth-child(2) { background:#fff200 }
.plu-membership-dashboard__figures strong { display:block;color:#c71928;font-size:32px;line-height:1 }
.plu-membership-dashboard__figures article:first-child strong { color:#fff200 }
.plu-membership-dashboard__figures article:nth-child(2) strong { color:#111 }
.plu-membership-dashboard__figures span { display:block;margin-top:8px;overflow-wrap:anywhere;font-size:9px;font-weight:800;line-height:1.4;text-transform:uppercase;white-space:normal }
.plu-membership-dashboard__figures small { display:block;margin-top:2px;color:#666;font-size:9px;line-height:1.35 }
.plu-membership-dashboard__figures article:first-child small { color:#ccc }
.plu-benefit-row--refresh { gap:18px;padding:28px 24px;background:#f7f7f3;border:0 }
.plu-benefit-row--refresh article { position:relative;grid-template-columns:58px 1fr;padding:30px;border:1px solid #deded7;border-top:4px solid #111;background:#fff;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease }
.plu-benefit-row--refresh article:last-child { border-right:1px solid #deded7 }
.plu-benefit-row--refresh article:hover { transform:translateY(-7px);border-color:#fff200;box-shadow:0 18px 36px rgba(0,0,0,.11) }
.plu-benefit-row--refresh>article>span { width:54px;height:54px;background:#fff200;color:#111;font-size:28px }
.plu-benefit-row--refresh article strong { display:block;margin-top:16px;padding-top:12px;border-top:1px solid #ecece6;color:#9f1118;font-size:12px;text-transform:uppercase }
.plu-membership-explainer { display:grid;grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);gap:clamp(34px,5vw,74px);align-items:center;max-width:1360px;margin:0 auto;padding:78px 24px;background:#fff }
.plu-membership-explainer__copy { max-width:520px }
.plu-membership-explainer h2 { margin:9px 0 18px;font-size:clamp(38px,4.5vw,62px);line-height:1 }
.plu-membership-explainer__copy>p:not(.plu-eyebrow) { color:#62656c;font-size:17px;line-height:1.72 }
.plu-membership-explainer ul { display:grid;gap:10px;margin:27px 0 0;padding:0;list-style:none }
.plu-membership-explainer li { position:relative;padding:12px 14px 12px 42px;border-left:3px solid #fff200;background:#f5f5f1;font-size:13px;font-weight:800 }
.plu-membership-explainer li::before { position:absolute;left:15px;top:50%;width:10px;height:10px;border:2px solid #e21b23;border-radius:50%;background:#fff200;content:'';transform:translateY(-50%) }
.plu-membership-explainer__player { position:relative;padding:12px 12px 0;background:#080808;box-shadow:20px 20px 0 #fff200 }
.plu-membership-explainer__player::before { position:absolute;z-index:2;top:0;right:0;width:84px;height:5px;background:#e21b23;content:'' }
.plu-membership-explainer video { display:block;width:100%;aspect-ratio:16/9;background:#000;object-fit:cover }
.plu-membership-explainer__player>span { display:flex;justify-content:space-between;gap:18px;padding:12px 2px;color:rgba(255,255,255,.7);font-size:11px;font-weight:800;text-transform:uppercase }
.plu-membership-explainer__player>span b { color:#fff200 }
.plu-membership-district-explorer { align-items:stretch }
.plu-membership-district-explorer .plu-membership-explainer__copy { align-self:center }
.plu-membership-district-list { margin-top:24px;border-top:3px solid #111 }
.plu-membership-district-list>div { display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:10px;align-items:center;min-height:42px;border-bottom:1px solid #deded8 }
.plu-membership-district-list b { color:#aaa;font-size:10px }
.plu-membership-district-list span { min-width:0;overflow-wrap:anywhere;font-size:13px;font-weight:700 }
.plu-membership-district-list strong { color:#c71928;font-size:14px }
.plu-membership-district-list>p { color:#666;line-height:1.55 }
.plu-membership-map-panel { position:relative;display:grid;grid-template-rows:minmax(360px,1fr) auto;min-width:0;min-height:430px;border:10px solid #111;background:#111;box-shadow:16px 16px 0 #fff200 }
.plu-membership-map-panel>button { display:flex;min-height:360px;border:0;background:#f3f3ee;color:#111;cursor:pointer;flex-direction:column;justify-content:center;align-items:center }
.plu-membership-map-panel>button:hover,.plu-membership-map-panel>button:focus-visible { background:#fff200 }
.plu-membership-map-panel>button .dashicons { width:54px;height:54px;margin-bottom:13px;color:#c71928;font-size:54px }
.plu-membership-map-panel>button strong { font-size:20px }
.plu-membership-map-panel>button small { margin-top:6px;color:#666;font-size:11px;text-transform:uppercase }
.plu-membership-map-panel>button[aria-busy=true] { cursor:wait;opacity:.72 }
.plu-membership-map { position:relative;z-index:1;min-height:360px;background:#e8f3f6 }
.plu-membership-map[hidden] { display:none }
.plu-membership-map>[data-membership-map-status] { display:grid;min-height:360px;padding:30px;place-items:center;color:#555;text-align:center }
.plu-membership-map-detail { display:grid;gap:3px;min-height:62px;padding:11px 14px;border-top:3px solid #fff200;background:#111;color:#fff }
.plu-membership-map-detail strong { color:#fff200;font-size:13px }
.plu-membership-map-detail span { font-size:11px;line-height:1.4 }
.plu-membership-map-tip { border:0!important;border-radius:0!important;background:#111!important;color:#fff!important;box-shadow:0 7px 18px rgba(0,0,0,.25)!important }
.plu-membership-map-tip::before { border-top-color:#111!important }
.plu-membership-map-tip strong,.plu-membership-map-tip span { display:block }
.plu-membership-map-tip span { margin-top:2px;color:#fff200;font-size:10px }
.plu-membership-journey { max-width:1360px;margin:0 auto;padding:76px 24px }
.plu-membership-journey>header { max-width:780px }
.plu-membership-journey h2,.plu-member-spotlights h2,.plu-membership-closing h2 { margin:7px 0 13px;font-size:clamp(32px,4vw,52px);line-height:1.05 }
.plu-membership-journey>header>p:not(.plu-eyebrow) { color:#62656c;font-size:17px;line-height:1.7 }
.plu-membership-journey>header>span { display:inline-block;margin-top:8px;padding:8px 12px;background:#fffbe1;color:#4a4400;font-size:12px;font-weight:800 }
.plu-membership-journey__steps { position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:40px;background:#d9d9d2 }
.plu-membership-journey__steps::before { position:absolute;top:73px;right:15%;left:15%;height:3px;background:#fff200;content:'' }
.plu-membership-journey__steps article { position:relative;z-index:1;min-height:300px;padding:30px;background:#fff;opacity:0;transform:translateY(20px);transition:opacity .55s ease var(--step-delay),transform .55s ease var(--step-delay) }
.plu-membership-journey.is-visible article { opacity:1;transform:none }
.plu-membership-journey__steps b { position:absolute;top:20px;right:24px;color:#dfdfd8;font-size:42px }
.plu-membership-journey__steps i { display:grid;width:66px;height:66px;place-items:center;border:7px solid #fff;background:#111;color:#fff200;font-size:29px;box-shadow:0 0 0 2px #fff200 }
.plu-membership-journey__steps h3 { margin:28px 0 10px;font-size:23px }
.plu-membership-journey__steps p { color:#666970;line-height:1.65 }
.plu-member-spotlights { position:relative;overflow:hidden;padding:72px max(24px,calc((100% - 1312px)/2));background:#080808;color:#fff }
.plu-member-spotlights::before { position:absolute;right:-60px;bottom:-95px;width:250px;height:250px;border:34px solid rgba(255,242,0,.08);border-radius:50%;content:'' }
.plu-member-spotlights>header { position:relative;z-index:1;display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:30px }
.plu-member-spotlights h2 { max-width:760px;color:#fff }
.plu-spotlight-controls { display:flex;gap:8px }
.plu-spotlight-controls button { display:grid;width:46px;height:46px;place-items:center;border:1px solid #fff200;background:transparent;color:#fff200;font-size:22px;cursor:pointer;transition:background .2s ease,color .2s ease,transform .2s ease }
.plu-spotlight-controls button:hover,.plu-spotlight-controls button:focus-visible { background:#fff200;color:#111;transform:translateY(-2px) }
.plu-member-spotlights__track { position:relative;z-index:1 }
.plu-member-spotlights__track>article { display:none;grid-template-columns:minmax(220px,.48fr) minmax(0,1.52fr);min-height:360px;border-top:4px solid #fff200;background:#fff;color:#111;box-shadow:0 26px 70px rgba(0,0,0,.28) }
.plu-member-spotlights__track>article.is-active { display:grid;animation:plu-spotlight-in .7s cubic-bezier(.2,.8,.2,1) both }
.plu-spotlight-photo { position:relative;align-self:center;width:calc(100% - 42px);height:300px;margin:26px 0 26px 26px;overflow:hidden;background:#222;box-shadow:14px 14px 0 #fff200 }
.plu-spotlight-photo::after { position:absolute;inset:0;border:1px solid rgba(255,255,255,.32);box-shadow:inset 0 0 0 7px rgba(0,0,0,.08);content:'';pointer-events:none }
.plu-spotlight-photo__accent { position:absolute;z-index:2;right:0;bottom:0;width:54px;height:7px;background:#e21b23 }
.plu-spotlight-photo img { width:100%;height:100%;object-fit:cover;object-position:center 24%;transform:scale(1.015) }
.plu-member-spotlights__track>article.is-active .plu-spotlight-photo img { animation:plu-spotlight-photo 7s ease-out both }
.plu-member-spotlights blockquote { position:relative;align-self:center;margin:0;padding:58px clamp(34px,6vw,82px);font-size:clamp(20px,2.05vw,29px);font-weight:650;line-height:1.45 }
.plu-member-spotlights blockquote>span { position:absolute;top:20px;left:34px;color:#fff200;font-size:78px;line-height:1 }
.plu-member-spotlights blockquote p { margin:0 }
.plu-member-spotlights blockquote footer { display:grid;gap:4px;margin-top:26px;padding-top:18px;border-top:1px solid #ddd;font-size:15px }
.plu-member-spotlights blockquote footer::before { width:42px;height:3px;margin-bottom:5px;background:#e21b23;content:'' }
.plu-member-spotlights blockquote small { color:#777;font-weight:500 }
.plu-member-spotlights__status { position:relative;z-index:1;display:grid;grid-template-columns:auto minmax(100px,1fr);gap:14px;align-items:center;margin-top:17px;color:rgba(255,255,255,.58);font-size:11px;font-weight:800 }
.plu-member-spotlights__status span b { color:#fff200 }
.plu-member-spotlights__status>i { height:3px;overflow:hidden;background:rgba(255,255,255,.16) }
.plu-member-spotlights__status>i>b { display:block;width:100%;height:100%;background:#fff200;transform:scaleX(0);transform-origin:left }
.plu-member-spotlights__status>i>b.is-running { animation:plu-spotlight-progress 7s linear forwards }
.plu-membership-closing { display:flex;justify-content:space-between;gap:35px;align-items:center;max-width:1360px;margin:0 auto 72px;padding:48px;background:#fff200;border-bottom:6px solid #e21b23 }
.plu-membership-closing>div { max-width:820px }
.plu-membership-closing h2 { font-size:clamp(30px,3.6vw,48px) }
.plu-membership-closing p:not(.plu-eyebrow) { color:rgba(0,0,0,.65);line-height:1.65 }
.plu-membership-closing .plu-button { background:#111;color:#fff;white-space:nowrap }
@keyframes plu-spotlight-in{from{opacity:0;transform:translateX(24px)}to{opacity:1;transform:none}}
@keyframes plu-spotlight-photo{from{transform:scale(1.015)}to{transform:scale(1.075)}}
@keyframes plu-spotlight-progress{to{transform:scaleX(1)}}
@media(max-width:900px) {
  .plu-membership-refresh .plu-membership-hero.has-panel-photo::before { background:linear-gradient(180deg,rgba(5,5,5,.24),rgba(5,5,5,.92) 54%) }
  .plu-membership-dashboard>header>div { align-items:flex-start;flex-direction:column;gap:8px }
  .plu-membership-dashboard>header>div>p:last-child { text-align:left }
  .plu-membership-dashboard__figures { grid-template-columns:repeat(2,minmax(0,1fr)) }
  .plu-benefit-row--refresh,.plu-membership-journey__steps { grid-template-columns:1fr }
  .plu-membership-explainer { grid-template-columns:1fr }
  .plu-membership-explainer__copy { max-width:700px }
  .plu-membership-explainer__player { box-shadow:12px 12px 0 #fff200 }
  .plu-membership-map-panel { box-shadow:12px 12px 0 #fff200 }
  .plu-membership-journey__steps::before { display:none }
  .plu-member-spotlights__track>article { grid-template-columns:minmax(190px,.65fr) minmax(0,1.35fr) }
  .plu-spotlight-photo { width:calc(100% - 32px);height:270px;margin:24px 0 24px 20px;box-shadow:10px 10px 0 #fff200 }
  .plu-member-spotlights blockquote { padding:48px 34px }
  .plu-membership-closing { align-items:flex-start;flex-direction:column }
}
@media(max-width:640px) {
  .plu-membership-scale { align-items:flex-start;flex-direction:column }
  .plu-membership-dashboard { padding:30px 16px 34px }
  .plu-membership-dashboard h2 { font-size:26px }
  .plu-membership-dashboard__figures article { min-height:92px;padding:16px 13px }
  .plu-membership-dashboard__figures strong { font-size:27px }
  .plu-membership-dashboard__figures span { font-size:8px }
  .plu-benefit-row--refresh { padding:18px 14px }
  .plu-benefit-row--refresh article { padding:24px 20px }
  .plu-membership-explainer { padding:54px 18px }
  .plu-membership-explainer h2 { font-size:40px }
  .plu-membership-explainer__player { padding:7px 7px 0;box-shadow:8px 8px 0 #fff200 }
  .plu-membership-explainer__player>span { align-items:flex-start;flex-direction:column;gap:3px;padding:10px 2px }
  .plu-membership-map-panel { grid-template-rows:minmax(330px,1fr) auto;min-height:400px;border-width:7px;box-shadow:8px 8px 0 #fff200 }
  .plu-membership-map-panel>button,.plu-membership-map,.plu-membership-map>[data-membership-map-status] { min-height:330px }
  .plu-membership-journey { padding:54px 18px }
  .plu-member-spotlights { padding:52px 18px }
  .plu-member-spotlights>header { align-items:flex-start;flex-direction:column }
  .plu-member-spotlights__track>article { grid-template-columns:1fr }
  .plu-spotlight-photo { width:min(250px,calc(100% - 48px));height:260px;margin:24px auto 5px;box-shadow:9px 9px 0 #fff200 }
  .plu-member-spotlights blockquote { padding:50px 24px 34px;font-size:20px }
  .plu-member-spotlights blockquote>span { top:12px;left:20px }
  .plu-membership-closing { margin:0 14px 50px;padding:30px 24px }
}
@media(max-width:480px) {
  .plu-membership-refresh .plu-membership-hero.has-panel-photo { padding-top:250px;background-size:auto 250px }
  .plu-membership-refresh .plu-membership-hero.has-panel-photo::before { height:250px }
  .plu-membership-refresh .plu-membership-hero.has-panel-photo .plu-membership-hero__copy { padding:26px 20px 32px }
}
@media(prefers-reduced-motion:reduce) {
  .plu-membership-refresh .plu-membership-hero.has-panel-photo::before,.plu-member-spotlights__track>article.is-active,.plu-member-spotlights__track>article.is-active .plu-spotlight-photo img,.plu-member-spotlights__status>i>b.is-running { animation:none }
  .plu-member-spotlights__status>i>b { transform:scaleX(1) }
  .plu-membership-journey__steps article { opacity:1;transform:none;transition:none }
}
.plu-membership-explainer__play { position:absolute;z-index:3;top:50%;left:50%;display:flex;align-items:center;gap:10px;padding:13px 18px;border:1px solid #fff200;border-radius:4px;background:#fff200;color:#080808;cursor:pointer;transform:translate(-50%,-70%) }
.plu-membership-explainer__play[hidden] { display:none }
.plu-membership-explainer__play .dashicons { width:24px;height:24px;font-size:24px }
.plu-membership-explainer__play b { font-size:13px;text-transform:uppercase }
.plu-membership-map-panel>button[hidden] { display:none }

/* ---- the second deviation, ours only ----
   The reference's rule above is
   `.plu-membership-journey__steps article{...opacity:0...}` with no
   condition, and only its script ever sets `.is-visible`. With JavaScript
   off, its three steps are invisible - the section renders as an empty grey
   grid. We keep the animation exactly, and take the hidden state back where
   no script can undo it: `scripting: enabled` is false in that case, so the
   steps simply show. Identical with JavaScript on, which is every real
   visit; content instead of nothing without it. */
@media (scripting: none) {
  .plu-membership-journey__steps article { opacity: 1; transform: none; }
}
