/* Membership page (Deb's simplified page, 2026-11-07). Loaded only on that page, after
   design.css and home.css; every rule is scoped to the page. */

.gbms-mdivs > .wp-block-group__inner-container, .gbms-mwhy-cards > .wp-block-group__inner-container, .gbms-mwhy > .wp-block-group__inner-container, .gbms-msteps > .wp-block-group__inner-container, .gbms-mstep > .wp-block-group__inner-container { display: contents; }
.gbms-mship .entry-content > .wp-block-group { margin-top: 0; margin-bottom: 0; }
.gbms-mship .entry-content-wrap { padding-top: 0; }

/* Sections: interior-page spacing, like the Teams page. */
.gbms-mship .gbms-sec { padding: clamp(1.75rem, 3vw, 2.5rem) 1.25rem clamp(3rem, 6vw, 4.5rem); }
.gbms-mship .gbms-sec > .wp-block-group__inner-container { max-width: 1100px; }
.gbms-mship .gbms-sec h2 { margin-bottom: 1rem; font-size: clamp(1.6rem, 2.8vw, 2.2rem); color: var(--gbms-forest); }
.gbms-mship .gbms-sec-white h2, .gbms-mship .gbms-sec-pale h2 { color: var(--gbms-forest); }
.gbms-mship h2::after { content: ""; display: block; width: 3.5rem; height: 4px; margin: .5rem auto 0; border-radius: 2px; background: var(--gbms-bean); }

/* Who can join. */
.gbms-mship-lead { max-width: 46rem; margin: 0 auto 1rem; text-align: center; font-size: 1.12rem; line-height: 1.55; color: var(--gbms-slate); }
.gbms-mship-note, .gbms-mship-more { margin: 0 auto 1rem; text-align: center; color: var(--gbms-slate); }
.gbms-mship-more { margin: 1.25rem auto 0; }
.gbms-mdivs { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: .85rem; }
.gbms-mship p.gbms-mdiv { margin: 0; padding: 1rem .8rem; border-radius: var(--gbms-radius); background: var(--gbms-white); box-shadow: var(--gbms-shadow); text-align: center; font-size: .92rem; line-height: 1.35; color: var(--gbms-slate); }
.gbms-mdiv strong { display: block; width: fit-content; margin: 0 auto .55rem; padding: .2rem .8rem; border-radius: 999px; font-family: var(--gbms-font-heading); font-size: .95rem; font-weight: 800; }
.gbms-mdiv-junior strong, .gbms-mdiv-sprout strong { background: #E3D7F2; color: #3B2560; }
.gbms-mdiv-otv strong { background: #BFE3EA; color: #123C46; }
.gbms-mdiv-picked strong { background: #CFE8A6; color: #24401A; }
.gbms-mdiv-cooked strong { background: #F3C3A0; color: #5A2A0C; }
.gbms-mdiv-canned strong { background: #F6D77A; color: #4A3A06; }

/* Why join: rounded cards with a bean-green icon. */
.gbms-mwhy-cards { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 1rem; }
.gbms-mship .gbms-mwhy { display: flex; flex-direction: column; margin: 0; padding: 1.4rem 1.15rem; border-radius: var(--gbms-radius); background: var(--gbms-white); box-shadow: var(--gbms-shadow); }
.gbms-mwhy::before { content: ""; width: 2.6rem; height: 2.6rem; margin-bottom: .7rem; background: var(--gbms-bean); -webkit-mask: no-repeat center / contain var(--gbms-icon); mask: no-repeat center / contain var(--gbms-icon); }
.gbms-mwhy h3 { margin: 0 0 .4rem; color: var(--gbms-forest); font-size: 1.2rem; }
.gbms-mwhy p { margin: 0; font-size: .97rem; line-height: 1.5; color: var(--gbms-slate); }
.gbms-mwhy a { color: var(--gbms-forest); font-weight: 700; }
.gbms-mwhy-points { --gbms-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cpath d='M24 2l6.5 13.5L45 17.6 34.5 28l2.5 14.8L24 35.8 11 42.8 13.5 28 3 17.6l14.5-2.1z'/%3E%3C/svg%3E"); }
.gbms-mwhy-teams { --gbms-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 48'%3E%3Ccircle cx='32' cy='11' r='10'/%3E%3Ccircle cx='11' cy='16' r='7'/%3E%3Ccircle cx='53' cy='16' r='7'/%3E%3Cpath d='M14 46c0-14 8-22 18-22s18 8 18 22zM0 44c0-10 4-17 11-17 2 0 4 1 6 2-4 4-7 9-7 15zM64 44c0-10-4-17-11-17-2 0-4 1-6 2 4 4 7 9 7 15z'/%3E%3C/svg%3E"); }
.gbms-mwhy-tallyhoe { --gbms-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cpath fill-rule='evenodd' d='M10 44 6 22C6 10 14 3 24 3s18 7 18 19l-4 22h-8l4-22c0-6-4-11-10-11s-10 5-10 11l4 22zM9 24h3v3H9zM36 24h3v3h-3zM11 13h3v3h-3zM34 13h3v3h-3z'/%3E%3C/svg%3E"); }
.gbms-mwhy-badges { --gbms-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cpath fill-rule='evenodd' d='M24 0a16 16 0 1 1 0 32 16 16 0 0 1 0-32zm0 7 2.8 5.8 6.4.9-4.6 4.5 1.1 6.3-5.7-3-5.7 3 1.1-6.3-4.6-4.5 6.4-.9z'/%3E%3Cpath d='M13 29l-5 17 8-4 5 6 3-14zM35 29l5 17-8-4-5 6-3-14z'/%3E%3C/svg%3E"); }
.gbms-mwhy-community { --gbms-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cpath d='M24 44S3 31 3 16A11 11 0 0 1 24 10a11 11 0 0 1 21 6c0 15-21 28-21 28z'/%3E%3C/svg%3E"); }

/* How to join: three numbered steps. */
.gbms-msteps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; }
.gbms-mship .gbms-mstep { display: flex; flex-direction: column; margin: 0; padding: 1.6rem 1.35rem; border-radius: var(--gbms-radius); background: var(--gbms-cream); box-shadow: var(--gbms-shadow); }
.gbms-mstep h3 { display: flex; align-items: center; gap: .6rem; margin: 0 0 .5rem; color: var(--gbms-forest); font-size: 1.3rem; }
.gbms-mstep-num { display: inline-grid; place-items: center; flex: none; width: 2.2rem; height: 2.2rem; border-radius: 50%; background: var(--gbms-forest); color: var(--gbms-white); font-size: 1.1rem; }
.gbms-mstep p { margin: 0 0 1rem; line-height: 1.5; color: var(--gbms-slate); }
.gbms-mstep p a { color: var(--gbms-forest); font-weight: 700; }
.gbms-mstep .wp-block-buttons { margin-top: auto; }
.gbms-mship .gbms-btn-outline .wp-block-button__link.wp-block-button__link { display: inline-flex; align-items: center; min-height: 44px; padding: .65em 1.6em; border: 2px solid var(--gbms-forest); border-radius: 999px; background: var(--gbms-white); color: var(--gbms-forest); font-family: var(--gbms-font-heading); font-size: 1.05rem; font-weight: 800; text-decoration: none; }
.gbms-mship .gbms-btn-outline .wp-block-button__link.wp-block-button__link:hover { background: var(--gbms-forest); color: var(--gbms-white); }
.gbms-mship .gbms-btn-lime .wp-block-button__link.wp-block-button__link { min-height: 44px; padding: .7em 1.6em; border-radius: 999px; background: var(--gbms-bean); color: var(--gbms-ink-on-bean); font-family: var(--gbms-font-heading); font-size: 1.05rem; font-weight: 800; text-decoration: none; }
.gbms-mship .gbms-btn-lime .wp-block-button__link.wp-block-button__link:hover { background: var(--gbms-bean-pale); }
.gbms-mship .gbms-mstep .wp-block-buttons:has(.gbms-btn-forest) { justify-content: flex-start; }

/* Explore more: link cards. */
.gbms-mship ul.gbms-mlinks { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .85rem; margin: 0; padding: 0; list-style: none; }
.gbms-mlinks li { margin: 0; }
.gbms-mlinks a { display: block; height: 100%; padding: 1rem 1.1rem; border: 1px solid var(--gbms-line); border-radius: var(--gbms-radius-sm); background: var(--gbms-white); color: var(--gbms-slate); font-size: .92rem; line-height: 1.4; text-decoration: none; box-sizing: border-box; }
.gbms-mlinks a strong { display: block; margin-bottom: .2rem; color: var(--gbms-forest); font-family: var(--gbms-font-heading); font-size: 1.05rem; font-weight: 800; }
.gbms-mlinks a strong::after { content: " ›"; }
.gbms-mlinks a:hover, .gbms-mlinks a:focus-visible { border-color: var(--gbms-bean); box-shadow: var(--gbms-shadow); }

@media (max-width: 1024px) {
	.gbms-mdivs { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.gbms-mwhy-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.gbms-mship ul.gbms-mlinks { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 700px) {
	.gbms-mdivs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.gbms-mwhy-cards, .gbms-msteps { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 420px) {
	.gbms-mship ul.gbms-mlinks { grid-template-columns: minmax(0, 1fr); }
}
