/* Green Bean design system (Visual Design Spec v1.0): tokens, site header and footer, hero, shared components. Loaded on every front-end page. */
@font-face { font-family: "Nunito Sans"; src: url("fonts/nunito-sans.woff2") format("woff2"); font-weight: 200 1000; font-style: normal; font-display: swap; }
@font-face { font-family: "Nunito Sans"; src: url("fonts/nunito-sans-italic.woff2") format("woff2"); font-weight: 200 1000; font-style: italic; font-display: swap; }
:root {
	--gbms-forest: #244C3A;
	--gbms-forest-dark: #1B3A2C;
	--gbms-bean: #80A94A;
	--gbms-bean-pale: #E6F0D2;
	--gbms-cream: #F5F2E8;
	--gbms-gold: #E9B85F;
	--gbms-slate: #283C40;
	--gbms-white: #FFFFFF;
	--gbms-ink-on-bean: #16291F; /* white on bean fails contrast (2.7:1): bean buttons carry dark text */
	--gbms-line: rgba(36, 76, 58, .14);
	--gbms-radius: 16px;
	--gbms-radius-sm: 10px;
	--gbms-shadow: 0 2px 10px rgba(36, 76, 58, .09);
	--gbms-font-heading: "Nunito Sans", "Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;
	--gbms-font-body: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

body { font-family: var(--gbms-font-body); color: var(--gbms-slate); background: var(--gbms-cream); }
#wrapper.site, #inner-wrap, #primary.content-area, .content-bg, .entry.content-bg { background: var(--gbms-cream); }
h1, h2, h3, h4, h5, h6, .site-title { font-family: var(--gbms-font-heading); color: var(--gbms-forest); }
:focus-visible { outline: 3px solid var(--gbms-gold); outline-offset: 2px; }

/* Header: desktop. */
.site-main-header-wrap .site-header-row-container-inner { background: var(--gbms-white); }
.site-main-header-inner-wrap.site-header-row { grid-template-columns: auto 1fr; min-height: 100px; padding: 8px 0; }
#mobile-header .site-main-header-inner-wrap.site-header-row { grid-template-columns: auto auto; min-height: 68px; }
.site-header-main-section-right { width: 100%; }
.site-header-main-section-right .header-html, .site-header-main-section-right .header-html-inner { width: 100%; }
#masthead .site-branding .site-title { font-weight: 900; font-size: 1.5rem; line-height: 1.05; text-transform: uppercase; letter-spacing: .01em; color: var(--gbms-forest); max-width: 11em; }
#masthead .custom-logo { border-radius: 50%; background: var(--gbms-white); }
.gbms-hbrand { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; margin-left: 1.5rem; }
.gbms-htag { padding-left: 1.5rem; border-left: 1px solid var(--gbms-line); line-height: 1.3; }
.gbms-htag-main { display: block; font-family: var(--gbms-font-heading); font-style: italic; font-weight: 700; font-size: 1.25rem; color: var(--gbms-forest); }
.gbms-htag-sub { display: block; font-style: italic; font-size: .9rem; }
.gbms-hactions { display: flex; flex-wrap: wrap; gap: .5rem; }
.gbms-hactions a { display: inline-block; padding: .45em .95em; border-radius: var(--gbms-radius-sm); font-size: .85rem; font-weight: 700; text-decoration: none; white-space: nowrap; }
.gbms-hactions .gbms-hlogin { border: 1px solid var(--gbms-forest); color: var(--gbms-forest); }
.gbms-hactions .gbms-hlogin:hover { background: var(--gbms-bean-pale); }
.gbms-hactions .gbms-hjoin { border: 1px solid var(--gbms-bean); background: var(--gbms-bean); color: var(--gbms-ink-on-bean); }
.gbms-hactions .gbms-hjoin:hover { background: #93BB5C; }
.site-bottom-header-wrap .site-header-row-container-inner { background: var(--gbms-forest); }
#main-header .main-navigation .primary-menu-container > ul > li.menu-item > a { color: var(--gbms-white); font-weight: 600; }
#main-header .main-navigation .primary-menu-container > ul > li.menu-item > a:hover { color: var(--gbms-white); background: rgba(255, 255, 255, .14); }
#main-header .main-navigation .primary-menu-container > ul > li.menu-item.current-menu-item > a,
#main-header .main-navigation .primary-menu-container > ul > li.menu-item.current-menu-ancestor > a { color: var(--gbms-ink-on-bean); background: var(--gbms-bean); }
#main-header .search-toggle-open, #main-header .search-toggle-open:hover { color: var(--gbms-white); background: transparent; border-color: transparent; box-shadow: none; }

/* Header: phones and tablets. */
#mobile-header .site-main-header-wrap .site-header-row-container-inner { background: var(--gbms-forest); }
#mobile-header .site-branding .site-title { color: var(--gbms-white); font-size: 1.05rem; }
#mobile-header .menu-toggle-open, #mobile-header .menu-toggle-open:hover, #mobile-header .search-toggle-open { color: var(--gbms-white); background: transparent; border-color: transparent; }
.mobile-html .gbms-hactions, #mobile-drawer .gbms-hactions { padding: 1rem 0; }
#mobile-drawer .gbms-hactions .gbms-hlogin { border-color: var(--gbms-white); color: var(--gbms-white); }
#mobile-drawer .drawer-inner { background: var(--gbms-forest); }

/* Footer: rolling hills and pines above a forest band. */
#colophon.site-footer { position: relative; margin-top: 100px; background: var(--gbms-forest); color: var(--gbms-cream); }
#colophon.site-footer::before { content: ""; position: absolute; left: 0; right: 0; top: -99px; height: 100px; pointer-events: none; background: no-repeat center bottom / 100% 100% url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 100' preserveAspectRatio='none'%3E%3Cpath fill='%2380A94A' fill-opacity='.45' d='M0 62C240 30 470 84 760 58c270-24 480-38 680-6v48H0z'/%3E%3Cpath fill='%2380A94A' d='M0 78c250-28 500 18 780-6 270-22 470-20 660 4v24H0z'/%3E%3Cpath fill='%23244C3A' d='M0 92c260-16 500 8 780-2 270-10 470-4 660 2v8H0z'/%3E%3C/svg%3E"); }
#colophon .site-footer-row-container-inner { background: transparent; border: 0; }
#colophon, #colophon a, #colophon .footer-navigation .footer-menu-container > ul > li > a { color: var(--gbms-cream); }
#colophon a:hover, #colophon .footer-navigation .footer-menu-container > ul > li > a:hover, #colophon .footer-navigation .footer-menu-container > ul > li.current-menu-item > a { color: var(--gbms-bean-pale); }
#colophon .footer-widget-area-inner, #colophon .footer-navigation, #colophon .footer-navigation ul { justify-content: center; width: 100%; }
#colophon .footer-html { text-align: center; font-size: .9rem; }

/* Hero: photo, wavy bottom. */
.gbms-hero { position: relative; display: flex; align-items: center; min-height: clamp(240px, 30vw, 380px); padding: 2.5rem 1.25rem 5.5rem; overflow: hidden; background: var(--gbms-forest); }
.gbms-hero-img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.gbms-hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(20, 40, 30, .72), rgba(20, 40, 30, .28) 70%, rgba(20, 40, 30, .1)); }
.gbms-hero-inner { position: relative; z-index: 1; width: 100%; max-width: 1200px; margin: 0 auto; }
.gbms-hero h1 { margin: 0 0 .25em; color: var(--gbms-white); font-size: clamp(2rem, 5vw, 3.25rem); font-style: italic; font-weight: 900; line-height: 1.1; text-shadow: 0 2px 10px rgba(0, 0, 0, .4); }
.gbms-hero p { margin: 0; color: var(--gbms-white); font-size: clamp(1rem, 2vw, 1.25rem); text-shadow: 0 1px 6px rgba(0, 0, 0, .5); }
.gbms-wave { position: absolute; left: 0; bottom: -1px; z-index: 1; display: block; width: 100%; height: clamp(44px, 7vw, 96px); }
.gbms-wave .gbms-wave-back { fill: var(--gbms-bean); }
.gbms-wave .gbms-wave-front { fill: var(--gbms-cream); }
body.gbms-has-hero .content-area { margin-top: 1.25rem; }

/* Shared components. */
/* Doubled class: Elementor's site-wide kit styles every button while it is still active. */
.gbms-button.gbms-button { display: inline-block; padding: .55em 1.15em; border: 1px solid var(--gbms-forest); border-radius: var(--gbms-radius-sm); background: var(--gbms-forest); color: var(--gbms-white); font-weight: 700; text-decoration: none; cursor: pointer; }
.gbms-button.gbms-button:hover { background: var(--gbms-forest-dark); color: var(--gbms-white); }
.gbms-switch { display: inline-flex; max-width: 100%; margin: 0 0 1.25rem; padding: 4px; border-radius: var(--gbms-radius-sm); background: var(--gbms-white); box-shadow: var(--gbms-shadow); }
.gbms-switch a { min-width: 7.5em; padding: .55em 1.25em; border-radius: 7px; color: var(--gbms-forest); font-weight: 700; text-align: center; text-decoration: none; }
.gbms-switch a:hover { background: var(--gbms-bean-pale); }
.gbms-switch a.is-active { background: var(--gbms-forest); color: var(--gbms-white); }
.gbms-filterbar { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 1rem 1.5rem; margin: 1rem 0; }
.gbms-filterbar .gbms-search { margin: 0; }
.gbms-filterbar form:not(.gbms-filters) { flex: 1 1 24rem; align-items: flex-end; }
.gbms-switch + h2 { margin-top: .5rem; }
.gbms-filterbar label { display: inline-flex; flex-direction: column; gap: .25em; font-size: .9rem; font-weight: 700; }
.gbms-filterbar select, .gbms-filterbar input[type="search"] { min-height: 44px; padding: .4em .7em; border: 1px solid var(--gbms-line); border-radius: var(--gbms-radius-sm); background-color: var(--gbms-white); font-size: 1rem; font-weight: 400; }
.gbms-search-field { flex: 1 1 14rem; max-width: 26rem; }
.gbms-filterbar .gbms-search-field input[type="search"] { flex: none; width: 100%; max-width: none; }
.gbms-filterbar select { padding-right: 2.2em; }
.gbms-filterbar .gbms-button { min-height: 44px; }

@media (prefers-reduced-motion: reduce) {
	* { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}

/* Polish: header. */
#masthead .site-branding .site-title { font-size: 1.85rem; font-weight: 900; }
#mobile-header .site-branding .site-title { font-size: 1.1rem; }
#main-header .site-branding .site-title-wrap::after { content: "Get your RIDE on!"; display: block; margin-top: .15em; font-family: var(--gbms-font-heading); font-style: italic; font-weight: 800; font-size: 1.05rem; color: #4F7A26; }
#main-header .site-bottom-header-wrap .site-header-row { min-height: 46px; }
#main-header .main-navigation .primary-menu-container > ul > li.menu-item > a { padding: .75em 1.15em; border-radius: 10px 10px 0 0; font-family: var(--gbms-font-heading); font-weight: 700; transition: background-color .15s; }
#main-header .main-navigation .primary-menu-container > ul > li.menu-item.current-menu-item > a,
#main-header .main-navigation .primary-menu-container > ul > li.menu-item.current-menu-ancestor > a { background: linear-gradient(180deg, #8FB856, var(--gbms-bean)); }
#main-header .header-navigation .header-menu-container ul ul.sub-menu { padding: .4rem; background: var(--gbms-white); border-radius: 0 var(--gbms-radius-sm) var(--gbms-radius-sm) var(--gbms-radius-sm); box-shadow: 0 8px 24px rgba(36, 76, 58, .22); }
#main-header .header-navigation .header-menu-container ul ul li.menu-item { border: 0; }
#main-header .header-navigation .header-menu-container ul ul li.menu-item > a { width: 230px; padding: .6em .8em; border-radius: 7px; color: var(--gbms-forest); font-family: var(--gbms-font-heading); font-weight: 700; font-size: .95rem; }
#main-header .header-navigation .header-menu-container ul ul li.menu-item > a:hover,
#main-header .header-navigation .header-menu-container ul ul li.menu-item.current-menu-item > a { background: var(--gbms-bean-pale); color: var(--gbms-forest); }
#main-header .search-toggle-open:hover { opacity: .8; }
#mobile-drawer .mobile-navigation ul li a, #mobile-drawer .mobile-navigation ul li .drawer-nav-drop-wrap { color: var(--gbms-white); font-family: var(--gbms-font-heading); font-weight: 700; }
#mobile-drawer .mobile-navigation ul li { border-color: rgba(255, 255, 255, .18); }
#mobile-drawer .mobile-navigation ul li.current-menu-item > a, #mobile-drawer .mobile-navigation ul li.current-menu-item > .drawer-nav-drop-wrap { color: var(--gbms-bean-pale); }
#mobile-drawer .drawer-toggle { color: var(--gbms-white); background: transparent; }

/* Polish: footer hills get pines at both ends. */
#colophon.site-footer::after { content: ""; position: absolute; left: 0; right: 0; top: -100px; height: 92px; pointer-events: none; background: no-repeat left bottom / auto 100% url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 92'%3E%3Cg fill='%232F6B3F'%3E%3Cpath d='M38 8l17 30h-9l14 26h-9l12 22H12l12-22h-9l14-26h-9z'/%3E%3Cpath d='M92 30l13 22h-7l11 18h-7l9 16H68l9-16h-7l11-18h-7z'/%3E%3Cpath d='M138 48l9 15h-5l8 12h-5l6 11h-30l6-11h-5l8-12h-5z'/%3E%3C/g%3E%3C/svg%3E"), no-repeat right bottom / auto 100% url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 92'%3E%3Cg fill='%232F6B3F'%3E%3Cpath d='M202 8l17 30h-9l14 26h-9l12 22h-50l12-22h-9l14-26h-9z'/%3E%3Cpath d='M148 30l13 22h-7l11 18h-7l9 16h-41l9-16h-7l11-18h-7z'/%3E%3Cpath d='M102 48l9 15h-5l8 12h-5l6 11H85l6-11h-5l8-12h-5z'/%3E%3C/g%3E%3C/svg%3E"); }
@media (max-width: 600px) { #colophon.site-footer::after { top: -70px; height: 62px; } }
.gbms-hero picture { position: absolute; inset: 0; }

/* Icons: a mask takes the element's colour. */
.gbms-hero-board h1::before { content: ""; display: inline-block; background: var(--gbms-forest); -webkit-mask: no-repeat center / contain var(--gbms-icon); mask: no-repeat center / contain var(--gbms-icon); }
.gbms-icon-mountain { --gbms-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 48'%3E%3Cpath d='M0 46 24 8l9 14 6-8 25 32H42L33 32l-9 14z'/%3E%3C/svg%3E"); }
.gbms-icon-people { --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-icon-trophy { --gbms-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 56'%3E%3Cpath fill-rule='evenodd' d='M16 0h32v5h13v8c0 10-7 17-16 18-2 4-5 7-9 8v7h9v9H19v-9h9v-7c-4-1-7-4-9-8C10 30 3 23 3 13V5h13zM9 11v2c0 6 4 11 9 12-1-4-2-9-2-14zm46 0h-7c0 5-1 10-2 14 5-1 9-6 9-12z'/%3E%3C/svg%3E"); }
.gbms-icon-bars, .gbms-hero-board h1 { --gbms-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cpath d='M2 26h12v20H2zM18 14h12v32H18zM34 2h12v44H34z'/%3E%3C/svg%3E"); }
.gbms-icon-horse { --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"); }

/* Scoreboards on desktop: a light title with soft waves. Phones and tablets keep the photo hero. */
@media (min-width: 1025px) {
	.gbms-hero-board { min-height: 0; padding: 1.75rem 0 2rem; background: var(--gbms-cream) no-repeat right bottom / 62% 100% url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 900 140' preserveAspectRatio='none'%3E%3Cpath fill='%2380A94A' fill-opacity='.18' d='M0 120C200 60 380 130 560 80 700 40 800 30 900 40v100H0z'/%3E%3Cpath fill='%2380A94A' fill-opacity='.28' d='M120 140c180-50 340 0 500-40 110-28 200-34 280-24v64z'/%3E%3C/svg%3E"); }
	.gbms-hero-board::after, .gbms-hero-board picture, .gbms-hero-board .gbms-wave { display: none; }
	.gbms-hero-board .gbms-hero-inner { width: 100%; max-width: min(1242px, calc(100% - 3rem)); }
	.gbms-hero-board h1 { display: flex; align-items: center; gap: .5em; margin: 0; color: var(--gbms-forest); font-style: normal; font-size: 2.25rem; font-weight: 900; text-shadow: none; }
	.gbms-hero-board h1::before { width: 1.2em; height: 1.2em; background: var(--gbms-bean); }
	.gbms-hero-board p { margin-left: 3.2rem; color: var(--gbms-slate); font-size: 1.05rem; text-shadow: none; }
}
.gbms-rules-link { align-self: flex-end; min-height: 44px; display: inline-flex; align-items: center; padding: 0 1.1em; border: 1px solid var(--gbms-forest); border-radius: var(--gbms-radius-sm); background: var(--gbms-white); color: var(--gbms-forest); font-weight: 700; text-decoration: none; white-space: nowrap; }
.gbms-rules-link:hover { background: var(--gbms-bean-pale); color: var(--gbms-forest); }
.gbms-board { display: block; }
.gbms-board-aside { display: none; }
@media (min-width: 1300px) {
	.gbms-public.gbms-public { max-width: 1320px; }
	.gbms-board { display: grid; grid-template-columns: minmax(0, 1fr) 270px; gap: 1.5rem; align-items: start; }
	.gbms-board:not(:has(> .gbms-board-aside)) { display: block; } /* Rider and Team Standings: full width (Deb, 2026-11-07) */
	.gbms-board-aside { display: block; position: sticky; top: 1.5rem; margin-top: 1.6em; overflow: hidden; border-radius: var(--gbms-radius); background: var(--gbms-forest); color: var(--gbms-white); box-shadow: var(--gbms-shadow); }
	.gbms-board-aside img { display: block; width: 100%; height: 300px; object-fit: cover; object-position: 50% 35%; }
	.gbms-board-aside div { padding: 1rem 1.15rem 1.25rem; }
	.gbms-board-aside h3 { margin: 0 0 .35em; color: var(--gbms-white); font-size: 1.2rem; }
	.gbms-board-aside p { margin: 0; font-size: .92rem; line-height: 1.45; }
}

/* Buttons shared by the Home and information pages; the winners grid on the Rules page. */
.gbms-btn-join .wp-block-button__link.wp-block-button__link { background: var(--gbms-bean); color: var(--gbms-ink-on-bean); border: 2px solid var(--gbms-bean); }
.gbms-btn-join .wp-block-button__link.wp-block-button__link:hover { background: #93BB5C; color: var(--gbms-ink-on-bean); }
.gbms-winners { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem; }
.gbms-winners .wp-block-image { margin: 0; }
.gbms-winners img { width: 100%; height: auto; border-radius: var(--gbms-radius-sm); box-shadow: var(--gbms-shadow); background: var(--gbms-white); }
@media (max-width: 700px) { .gbms-winners { grid-template-columns: minmax(0, 1fr); } }

/* WordPress wraps group blocks in an inner container on this theme; the grids and cards lay out its children. */
.gbms-winners > .wp-block-group__inner-container { display: contents; }
.gbms-hactions .gbms-hjoin, .gbms-hactions .gbms-hlogin, .gbms-hactions .gbms-hjoin:hover, .gbms-hactions .gbms-hlogin:hover { text-decoration: none; }

/* Member Home. */
.gbms-hero-member h1 { --gbms-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Ccircle cx='24' cy='14' r='12'/%3E%3Cpath d='M2 48c0-13 10-20 22-20s22 7 22 20z'/%3E%3C/svg%3E"); }
.gbms-hero-avatar { display: inline-block; width: 1.3em; height: 1.3em; margin-right: .4em; border: 3px solid var(--gbms-white); border-radius: 50%; object-fit: cover; vertical-align: middle; box-shadow: 0 2px 8px rgba(0,0,0,.25); }.gbms-hero-member.has-photo h1::before { display: none; }@media (min-width: 1025px) { .gbms-hero-avatar { width: 1.6em; height: 1.6em; margin-right: 0; border-color: var(--gbms-bean); box-shadow: none; } }
.gbms-my-head { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem 1rem; margin: 0 0 1.25rem; }
.gbms-my-welcome { flex: 1 1 16rem; margin: 0; }
.gbms-my-welcome strong { display: block; color: var(--gbms-forest); font-family: var(--gbms-font-heading); font-size: 1.3rem; font-weight: 900; }
.gbms-my-welcome .gbms-sub { font-size: .9rem; }
.gbms-my-status { padding: .35em 1em; border-radius: 999px; background: var(--gbms-line); color: var(--gbms-slate); font-size: .9rem; font-weight: 700; }
.gbms-my-status.is-active { background: var(--gbms-bean); color: var(--gbms-ink-on-bean); }
.gbms-account-links { margin: 0; font-size: .9rem; }
.gbms-my-nav { display: none; }
.gbms-my-menu { margin: 0 0 1.25rem; border-radius: var(--gbms-radius-sm); background: var(--gbms-white); box-shadow: var(--gbms-shadow); }
.gbms-my-menu summary { min-height: 44px; padding: .65em 1em; color: var(--gbms-forest); font-family: var(--gbms-font-heading); font-weight: 800; cursor: pointer; }
.gbms-my-menu nav { display: grid; padding: 0 .4rem .4rem; }
.gbms-my-nav a, .gbms-my-menu nav a { display: block; padding: .65em .9em; border-radius: 8px; color: var(--gbms-forest); font-family: var(--gbms-font-heading); font-weight: 700; text-decoration: none; }
.gbms-my-nav a:hover, .gbms-my-menu nav a:hover { background: var(--gbms-bean-pale); color: var(--gbms-forest); }
.gbms-my-nav a.is-active, .gbms-my-menu nav a.is-active { background: linear-gradient(180deg, #8FB856, var(--gbms-bean)); color: var(--gbms-ink-on-bean); }
.gbms-my-form-link { margin-top: .15rem; }
.gbms-my-tab-report + .gbms-my-form-link { margin-top: .5rem; border-top: 1px solid var(--gbms-line); border-radius: 0 0 8px 8px; }
.gbms-my-main { min-width: 0; }
.gbms-my-main > h3:first-child { margin-top: 0; }
.gbms-my-stats .gbms-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; margin: .75rem 0 1rem; }
.gbms-my-stats .gbms-card { align-items: center; padding: 1rem .6rem; text-align: center; }
.gbms-my-stats .gbms-card::before { content: ""; width: 2.25rem; height: 2.25rem; margin-bottom: .35rem; background: var(--gbms-bean); -webkit-mask: no-repeat center / contain var(--gbms-icon); mask: no-repeat center / contain var(--gbms-icon); }
.gbms-my-stats .gbms-card:nth-child(1) { --gbms-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 56'%3E%3Cpath fill-rule='evenodd' d='M16 0h32v5h13v8c0 10-7 17-16 18-2 4-5 7-9 8v7h9v9H19v-9h9v-7c-4-1-7-4-9-8C10 30 3 23 3 13V5h13zM9 11v2c0 6 4 11 9 12-1-4-2-9-2-14zm46 0h-7c0 5-1 10-2 14 5-1 9-6 9-12z'/%3E%3C/svg%3E"); }
.gbms-my-stats .gbms-card:nth-child(1)::before { background: var(--gbms-gold); }
.gbms-my-stats .gbms-card:nth-child(2) { --gbms-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cpath d='M2 26h12v20H2zM18 14h12v32H18zM34 2h12v44H34z'/%3E%3C/svg%3E"); }
.gbms-my-stats .gbms-card:nth-child(3) { --gbms-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 48'%3E%3Cpath d='M0 46 24 8l9 14 6-8 25 32H42L33 32l-9 14z'/%3E%3C/svg%3E"); }
.gbms-my-stats .gbms-card:nth-child(4) { --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-my-stats .gbms-card:nth-child(4)::before { background: url("brand/tally-hoe-fox.png") no-repeat center / contain; -webkit-mask: none; mask: none; } /* the fox with the hoe, cut from the original Tally-Hoe logo */
/* Member Home Tally-Hoe tab snapshot (2026-11-07): miles = the fox, entries = the journal, horses = a horseshoe, points = the trophy. */
.gbms-thj-snap .gbms-card:nth-child(1)::before { background: url("brand/tally-hoe-fox.png") no-repeat center / contain; -webkit-mask: none; mask: none; }
.gbms-thj-snap .gbms-card:nth-child(2) { --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='M2 9c8-3 16-2 22 3 6-5 14-6 22-3v32c-8-3-16-2-22 3-6-5-14-6-22-3zm5 4v22c5-1 10 0 14 2V15c-4-2-9-3-14-2zm34 0c-5-1-10 0-14 2v22c4-2 9-3 14-2z'/%3E%3C/svg%3E"); }
.gbms-thj-snap .gbms-card:nth-child(2)::before, .gbms-thj-snap .gbms-card:nth-child(3)::before { background: var(--gbms-bean); -webkit-mask: no-repeat center / contain var(--gbms-icon); mask: no-repeat center / contain var(--gbms-icon); }
.gbms-thj-snap .gbms-card:nth-child(3) { --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='M6 44C3 30 5 16 14 9c3-3 7-4 10-4s7 1 10 4c9 7 11 21 8 35h-8c3-12 2-24-3-28-2-2-5-3-7-3s-5 1-7 3c-5 4-6 16-3 28zM6.5 34a1.5 1.5 0 1 0 3 0a1.5 1.5 0 1 0-3 0zM6.7 24a1.5 1.5 0 1 0 3 0a1.5 1.5 0 1 0-3 0zM11 15a1.5 1.5 0 1 0 3 0a1.5 1.5 0 1 0-3 0zM38.5 34a1.5 1.5 0 1 0 3 0a1.5 1.5 0 1 0-3 0zM38.3 24a1.5 1.5 0 1 0 3 0a1.5 1.5 0 1 0-3 0zM34 15a1.5 1.5 0 1 0 3 0a1.5 1.5 0 1 0-3 0z'/%3E%3C/svg%3E"); }
.gbms-thj-snap .gbms-card:nth-child(4) { --gbms-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 56'%3E%3Cpath fill-rule='evenodd' d='M16 0h32v5h13v8c0 10-7 17-16 18-2 4-5 7-9 8v7h9v9H19v-9h9v-7c-4-1-7-4-9-8C10 30 3 23 3 13V5h13zM9 11v2c0 6 4 11 9 12-1-4-2-9-2-14zm46 0h-7c0 5-1 10-2 14 5-1 9-6 9-12z'/%3E%3C/svg%3E"); }
.gbms-thj-snap .gbms-card:nth-child(4)::before { background: var(--gbms-gold); -webkit-mask: no-repeat center / contain var(--gbms-icon); mask: no-repeat center / contain var(--gbms-icon); }
.gbms-thj-snap-actions { display: flex; flex-wrap: wrap; gap: .6rem; }
.gbms-thj-snap-head { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: .4rem 1rem; margin-bottom: .75rem; }
.gbms-thj-snap-head h3 { margin: 0; }
.gbms-thj-snap-season { color: var(--gbms-slate); font-weight: 600; white-space: nowrap; }
.gbms-thj-snap-pick { margin: 0; }
.gbms-thj-snap-pick label { display: inline-flex; align-items: center; gap: .5rem; margin: 0; font-weight: 600; }
.gbms-thj-snap-pick select { width: auto; min-width: 12rem; }
.gbms-my-stats .gbms-card-value { font-family: var(--gbms-font-heading); font-size: 1.6rem; font-weight: 900; }
.gbms-my-card { margin: 0 0 1rem; padding: 1rem 1.15rem; border-radius: var(--gbms-radius); background: var(--gbms-white); box-shadow: var(--gbms-shadow); }
.gbms-my-card h4 { margin: 0 0 .6rem; font-weight: 900; }
.gbms-my-progress h4 { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .25rem 1rem; }
.gbms-my-progress h4 span { color: var(--gbms-slate); font-size: .95rem; font-weight: 700; }
.gbms-progress { height: 14px; overflow: hidden; border-radius: 999px; background: var(--gbms-cream); box-shadow: inset 0 0 0 1px var(--gbms-line); }
.gbms-progress span { display: block; height: 100%; border-radius: 999px; background: var(--gbms-bean); }
.gbms-my-progress .gbms-note { margin: .5rem 0 0; }
.gbms-my-completion > .gbms-note { margin: -.3rem 0 .75rem; }
.gbms-my-completion-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)); gap: 1rem 1.5rem; }
.gbms-completion-meter h5 { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .1rem 1rem; margin: 0 0 .4rem; font-size: 1rem; font-weight: 800; }
.gbms-completion-meter h5 span { color: var(--gbms-slate); font-size: .95rem; font-weight: 700; }
.gbms-completion-meter .gbms-note, .gbms-completion-done { margin: .45rem 0 0; }
.gbms-completion-done { color: var(--gbms-forest); font-family: var(--gbms-font-heading); font-weight: 900; }
.gbms-my-grid { display: grid; gap: 1rem; }
.gbms-my-recent { min-width: 0; }
.gbms-my-recent h4 { margin: 0 0 .5rem; }
.gbms-my-primary { display: grid; gap: .6rem; margin: 0 0 .6rem; }
.gbms-my-primary .gbms-button { min-height: 44px; text-align: center; }
.gbms-button.gbms-button.gbms-button-outline { background: var(--gbms-white); color: var(--gbms-forest); }
.gbms-button.gbms-button.gbms-button-outline:hover { background: var(--gbms-bean-pale); color: var(--gbms-forest); }
.gbms-my-more { margin: 0; font-size: .9rem; }
.gbms-my-attention .gbms-alerts { margin-bottom: .5rem; }
.gbms-my-attention:has(.gbms-alerts) { border-left: 5px solid var(--gbms-gold); }
.gbms-my-attention p:last-child, .gbms-my-attention ul:last-child { margin-bottom: 0; }
.gbms-my-main h4 { margin-top: 1.5rem; }
.gbms-my-grid h4, .gbms-my-card h4 { margin-top: 0; }
@media (min-width: 600px) { .gbms-my-stats .gbms-cards { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (min-width: 1025px) {
	.gbms-my-layout { display: grid; grid-template-columns: 235px minmax(0, 1fr); gap: 1.5rem; align-items: start; }
	.gbms-my-menu { display: none; }
	.gbms-my-nav { display: grid; gap: .15rem; padding: .5rem; border-radius: var(--gbms-radius); background: var(--gbms-white); box-shadow: var(--gbms-shadow); }
	.gbms-my-grid { grid-template-columns: minmax(0, 1.6fr) minmax(250px, 1fr); align-items: start; }
	.gbms-my-side { grid-column: 2; grid-row: 1; }
	.gbms-my-recent { grid-column: 1; grid-row: 1; }
}

/* Tally-Hoe page: the supplied logo on a light hero, playful but the same family. */
.gbms-hero-th { min-height: 0; padding: 1.25rem 1.25rem 4rem; background: var(--gbms-white); }
.gbms-hero-th::after { display: none; }
.gbms-hero-th .gbms-hero-inner { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: .75rem 2rem; }
.gbms-hero-th .gbms-hero-inner > div { flex: 1 1 16rem; max-width: 36rem; }
.gbms-th-logo { flex: none; width: clamp(130px, 18vw, 180px); height: auto; }
.gbms-hero-th h1 { color: var(--gbms-forest); font-size: clamp(1.7rem, 3.6vw, 2.5rem); text-shadow: none; text-wrap: balance; }
.gbms-hero-th p { color: var(--gbms-slate); text-shadow: none; }
.gbms-switch-th { display: flex; flex-wrap: wrap; width: fit-content; }
.gbms-switch-th a { flex: 1 1 auto; }
.gbms-private::before { content: ""; display: inline-block; width: .9em; height: .9em; margin-right: .4em; vertical-align: -.05em; background: currentColor; -webkit-mask: no-repeat center / contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 10V7a6 6 0 0 1 12 0v3h2v14H4V10zm3 0h6V7a3 3 0 0 0-6 0z'/%3E%3C/svg%3E"); mask: no-repeat center / contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 10V7a6 6 0 0 1 12 0v3h2v14H4V10zm3 0h6V7a3 3 0 0 0-6 0z'/%3E%3C/svg%3E"); }
.gbms-board-aside.gbms-th-aside { display: block; position: static; margin-top: 1.25rem; background: var(--gbms-white); color: var(--gbms-slate); border-radius: var(--gbms-radius); box-shadow: var(--gbms-shadow); }
.gbms-th-aside div { padding: 1rem 1.15rem 1.25rem; }
.gbms-board-aside.gbms-th-aside h3 { margin: 0 0 .35em; color: var(--gbms-forest); font-size: 1.2rem; }
.gbms-th-aside p { margin: 0 0 .75rem; font-size: .95rem; }
@media (min-width: 1300px) { .gbms-board-aside.gbms-th-aside { position: sticky; top: 1.5rem; margin-top: 1.6em; } }
.gbms-my-main .gbms-table.gbms-compact { width: 100%; max-width: none; }
.gbms-my-menu summary { display: flex; align-items: center; gap: .5em; }

/* Information pages. */
.gbms-hero-info h1 { --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 2a22 22 0 1 0 0 44a22 22 0 1 0 0-44zM21 20h6v16h-6zM24 10a3.5 3.5 0 1 0 0 7a3.5 3.5 0 1 0 0-7z'/%3E%3C/svg%3E"); }
/* Deb 2026-11-06: each information page has its own icon. Deb 2026-11-07: the horse head is retired everywhere. */
.gbms-hero-directory h1 { --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='M8 3h32a4 4 0 0 1 4 4v34a4 4 0 0 1-4 4H8zM26 12a7 7 0 1 0 0 14a7 7 0 1 0 0-14zM14 37c0-7 5-10 12-10s12 3 12 10z'/%3E%3Cpath d='M2 10h6v4H2zM2 22h6v4H2zM2 34h6v4H2z'/%3E%3C/svg%3E"); }
.gbms-hero-rules h1 { --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 2l18 7v13c0 11-8 20-18 24C14 42 6 33 6 22V9zM14.5 24.5l3-3 4.5 4.5 9.5-10 3 3-12.5 13z'/%3E%3C/svg%3E"); }
.gbms-hero-awards h1 { --gbms-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 56'%3E%3Cpath fill-rule='evenodd' d='M16 0h32v5h13v8c0 10-7 17-16 18-2 4-5 7-9 8v7h9v9H19v-9h9v-7c-4-1-7-4-9-8C10 30 3 23 3 13V5h13zM9 11v2c0 6 4 11 9 12-1-4-2-9-2-14zm46 0h-7c0 5-1 10-2 14 5-1 9-6 9-12z'/%3E%3C/svg%3E"); }
.gbms-hero-membership h1 { --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='M6 9h36a4 4 0 0 1 4 4v22a4 4 0 0 1-4 4H6a4 4 0 0 1-4-4V13a4 4 0 0 1 4-4zM11 20a4 4 0 1 0 8 0a4 4 0 1 0-8 0zM8 33c0-4 3-7 7-7s7 3 7 7zM26 17h14v3H26zM26 23h14v3H26zM26 29h9v3h-9z'/%3E%3C/svg%3E"); }
.gbms-hero-signup h1 { --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='M34 3l11 11-25 25-13 3 3-13zM31 9l8 8 2-2-8-8zM4 44h40v3H4z'/%3E%3C/svg%3E"); }
.gbms-hero-teams h1 { --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-hero-login h1 { --gbms-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cpath d='M3 24a11 11 0 1 1 22 0a11 11 0 1 1-22 0zM10 24a4 4 0 1 0 8 0a4 4 0 1 0-8 0zM22 21h24v6h-4v6h-4v-6h-2v4h-4v-4H22z'/%3E%3C/svg%3E"); }
.gbms-info { max-width: 900px; margin: 0 auto 1rem; }
.gbms-info-card, .gbms-info-wide { margin: 0 0 1rem; padding: 1.25rem 1.5rem; border-radius: var(--gbms-radius); background: var(--gbms-white); box-shadow: var(--gbms-shadow); }
.gbms-info-card h2, .gbms-info-wide h2 { margin: 0 0 .5em; font-size: 1.35rem; font-weight: 900; }
.gbms-info-lead h2 { font-size: 1.5rem; }
.gbms-info-card p:last-child, .gbms-info-card ul:last-child, .gbms-info-card ol:last-child { margin-bottom: 0; }
.gbms-info li { margin-bottom: .45em; line-height: 1.5; }
.gbms-info p { line-height: 1.6; }
.gbms-info a, .gbms-info-wide a { color: var(--gbms-forest); font-weight: 600; }
.gbms-info .wp-block-buttons { gap: .6rem; margin: 1rem 0; }
.gbms-info .wp-block-button__link.wp-block-button__link { min-height: 44px; padding: .65em 1.4em; border-radius: 999px; font-family: var(--gbms-font-heading); font-weight: 800; text-decoration: none; }
.gbms-btn-line .wp-block-button__link.wp-block-button__link { background: var(--gbms-white); color: var(--gbms-forest); border: 2px solid var(--gbms-forest); }
.gbms-btn-line .wp-block-button__link.wp-block-button__link:hover { background: var(--gbms-bean-pale); color: var(--gbms-forest); }
.gbms-info .wp-block-image { margin: 0; }
.gbms-info .wp-block-image img { width: 100%; height: auto; border-radius: var(--gbms-radius); box-shadow: var(--gbms-shadow); }
.gbms-info-wide { max-width: 1240px; margin: 0 auto 1.5rem; }
.gbms-matrix.wp-block-table { margin: 0; overflow-x: auto; }
.gbms-matrix table { min-width: 860px; width: 100%; border-collapse: collapse; font-size: .9rem; }
.gbms-matrix th { padding: .6em .7em; border: 0; background: var(--gbms-forest); color: var(--gbms-white); font-family: var(--gbms-font-heading); text-align: left; }
.gbms-matrix td { padding: .55em .7em; border: 0; border-bottom: 1px solid var(--gbms-line); vertical-align: top; line-height: 1.4; }
.gbms-matrix tbody tr:nth-child(even) td { background: var(--gbms-cream); }
.gbms-info-form iframe { display: block; border-radius: var(--gbms-radius); background: var(--gbms-white); box-shadow: var(--gbms-shadow); }
@media (max-width: 700px) { .gbms-info-card, .gbms-info-wide { padding: 1rem; } }
.gbms-info.gbms-info-form { max-width: none; margin: 0; }

/* Bean Scene hero (Deb 2026-11-07): a forest-green story panel at the left, her photo at the
   right behind a soft curve, so all four riders stay in view. Phones stack photo over panel. */
@font-face { font-family: "Kaushan Script"; src: url("fonts/kaushan-script.woff2") format("woff2"); font-weight: 400; font-style: normal; font-display: swap; }
.gbms-hero-scene { min-height: clamp(380px, 36vw, 500px); padding: 2.5rem 1.25rem clamp(4.5rem, 8vw, 6.5rem); background: radial-gradient(circle at 12% 20%, #2f5a3d 0, transparent 55%), var(--gbms-forest); }
.gbms-hero-scene::after { display: none; }
.gbms-scene-hero-photo { position: absolute; top: 0; right: 0; bottom: 0; width: 58%; overflow: hidden; clip-path: ellipse(100% 125% at 100% 50%); }
.gbms-scene-hero-photo img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 42%; }
.gbms-scene-hero-photo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(20, 40, 30, .35), rgba(20, 40, 30, 0) 30%); }
.gbms-hero-scene .gbms-hero-inner { max-width: min(1242px, calc(100% - 1rem)); }
.gbms-scene-hero-text { position: relative; max-width: min(36rem, 40%); }
.gbms-scene-hero-text::before { content: ""; display: block; width: 3.5rem; height: 5px; margin-bottom: 1rem; border-radius: 3px; background: var(--gbms-bean); }
.gbms-hero-scene p.gbms-scene-kicker { margin: 0 0 .3rem; color: var(--gbms-bean-pale); font-family: var(--gbms-font-heading); font-size: clamp(.85rem, 1.3vw, 1.05rem); font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.gbms-hero-scene h1 { margin: 0; color: var(--gbms-white); font-size: clamp(2.8rem, 6vw, 4.6rem); font-style: normal; line-height: 1; text-shadow: none; }
.gbms-hero-scene p.gbms-scene-script { margin: .2rem 0 .9rem; color: #C8E58E; font-family: "Kaushan Script", var(--gbms-font-heading); font-size: clamp(1.5rem, 3vw, 2.4rem); line-height: 1.15; transform: rotate(-3deg); transform-origin: left; }
.gbms-hero-scene p.gbms-scene-lead { margin: 0 0 1.4rem; color: rgba(255, 255, 255, .92); font-size: clamp(1rem, 1.4vw, 1.15rem); line-height: 1.55; text-shadow: none; }
.gbms-scene-hero-btn { display: inline-flex; align-items: center; gap: .55rem; min-height: 48px; padding: .65em 1.6em; border-radius: 999px; background: var(--gbms-bean); color: var(--gbms-ink-on-bean); font-family: var(--gbms-font-heading); font-size: 1.08rem; font-weight: 800; text-decoration: none; box-shadow: 0 4px 14px rgba(0, 0, 0, .25); }
.gbms-scene-hero-btn::before { content: ""; width: 1.1em; height: 1.1em; background: currentColor; -webkit-mask: no-repeat center / contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 17.2V21h3.8L17.9 9.9l-3.8-3.8zM20.7 7.1a1 1 0 0 0 0-1.4l-2.4-2.4a1 1 0 0 0-1.4 0l-1.8 1.8 3.8 3.8z'/%3E%3C/svg%3E"); mask: no-repeat center / contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 17.2V21h3.8L17.9 9.9l-3.8-3.8zM20.7 7.1a1 1 0 0 0 0-1.4l-2.4-2.4a1 1 0 0 0-1.4 0l-1.8 1.8 3.8 3.8z'/%3E%3C/svg%3E"); }
.gbms-scene-hero-btn:hover, .gbms-scene-hero-btn:focus-visible { background: var(--gbms-bean-pale); color: var(--gbms-ink-on-bean); }
/* The hero carries Share a Story, so the bar below it isn't repeated. */
body:has(.gbms-scene-hero-btn) .gbms-scene > .gbms-scene-share { display: none; }
@media (max-width: 900px) {
	.gbms-hero-scene { flex-direction: column; align-items: stretch; min-height: 0; padding: 0 0 clamp(3.5rem, 10vw, 5rem); }
	.gbms-scene-hero-photo { position: relative; width: 100%; aspect-ratio: 16 / 10; clip-path: ellipse(140% 100% at 50% 0%); }
	.gbms-scene-hero-photo::after { background: none; }
	.gbms-hero-scene .gbms-hero-inner { padding: 1.5rem 1.25rem 0; }
	.gbms-scene-hero-text { max-width: none; }
}

/* Bean Scene */
.gbms-scene-share { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .75rem 1.5rem; margin: 0 0 1.5rem; padding: 1rem 1.15rem; border-radius: var(--gbms-radius); background: var(--gbms-white); box-shadow: var(--gbms-shadow); }
.gbms-scene-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr)); gap: 1.25rem; }
.gbms-scene-card { display: flex; flex-direction: column; overflow: hidden; border-radius: var(--gbms-radius); background: var(--gbms-white); box-shadow: var(--gbms-shadow); }
.gbms-scene-card-photo img { display: block; width: 100%; aspect-ratio: 3 / 2; object-fit: cover; }
.gbms-scene-card-body { display: flex; flex: 1; flex-direction: column; padding: 1rem 1.15rem; }
.gbms-scene-card-body h3 { margin: 0 0 .35rem; font-size: 1.2rem; line-height: 1.25; overflow-wrap: anywhere; }
.gbms-scene-card-body p { margin: 0 0 .75rem; overflow-wrap: anywhere; }
.gbms-scene-card .gbms-scene-more { margin: auto 0 0; font-weight: 700; }
.gbms-scene .gbms-scene-byline { margin: 0 0 .75rem; font-size: .9rem; opacity: .75; }
.gbms-scene-paging { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: .75rem; margin: 1.5rem 0 0; }
.gbms-scene-story { max-width: 760px; margin: 0 auto; }
.gbms-scene-story h2 { margin: .5rem 0 .35rem; overflow-wrap: anywhere; }
.gbms-scene-text { overflow-wrap: anywhere; }
.gbms-scene-photos { display: grid; gap: .75rem; margin: 0 0 1.25rem; }
.gbms-scene-photos img { display: block; width: 100%; height: auto; border-radius: var(--gbms-radius-sm); }
@media (min-width: 600px) { .gbms-scene-photos-2, .gbms-scene-photos-3, .gbms-scene-photos-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); } .gbms-scene-photos-3 img:first-child { grid-column: 1 / -1; } }
.gbms-scene-comments { margin: 2rem 0 0; padding: 1.5rem 0 0; border-top: 1px solid rgba(0, 0, 0, .12); }
.gbms-scene-comments h3 { margin: 0 0 1rem; }
.gbms-scene-comment { margin: 0 0 .85rem; padding: .85rem 1.15rem; border-radius: var(--gbms-radius-sm); background: var(--gbms-white); box-shadow: var(--gbms-shadow); }
.gbms-scene-comment .gbms-scene-byline { margin: 0 0 .35rem; }
.gbms-scene-comment .gbms-scene-text p { margin: 0 0 .5rem; }
.gbms-scene-comment form { margin: 0; text-align: right; }
.gbms-scene .gbms-scene-comment-tool, .gbms-scene .gbms-scene-comment-tool:hover { padding: 0; border: 0; background: none; box-shadow: none; color: inherit; font-size: .85rem; font-weight: 400; text-decoration: underline; opacity: .75; cursor: pointer; }
.gbms-scene-comment-form { margin: 1.25rem 0 0; }
.gbms-scene-comment-form fieldset { margin: 0; padding: 0; border: 0; }
.gbms-scene-comment-form textarea { width: 100%; box-sizing: border-box; }

/* My Profile → About Your Membership History notice: quiet, compact, informational. */
.gbms-history-notice { display: flex; gap: .65rem; align-items: flex-start; max-width: 46rem; margin: .85rem 0 1.5rem; padding: .7rem .95rem; border: 1px solid var(--gbms-line); border-radius: var(--gbms-radius-sm); background: var(--gbms-bean-pale); color: var(--gbms-slate); font-size: .875rem; line-height: 1.45; }
.gbms-history-notice p { margin: 0 0 .35rem; }
.gbms-history-notice p:last-child { margin-bottom: 0; }
.gbms-history-notice-icon { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; width: 1.2rem; height: 1.2rem; margin-top: .1rem; border-radius: 50%; background: var(--gbms-forest); color: var(--gbms-white); font: italic 700 .75rem/1 Georgia, "Times New Roman", serif; }
