/* Sneaky mega menu (owner brief "Premium mega menu", 17 October 2026). Presentation only: inc/sneaky-megamenu.php.
 * Every rule waits for html.sh-mm-ready (set by sneaky-megamenu.js once it has built the panels), so without the
 * script the header is exactly as before. Tokens: design-system.css and the homepage design contract (pillar fills
 * and text colours, Sneaky Display for titles, eyebrows 12px/800/.14em, motion .16-.2s on cubic-bezier(.2,.7,.2,1)).
 * Rollback: define('SH_MEGA_MENU', false). */

@font-face {
	font-family: "Sneaky Display";
	src: url("../../home/assets/fonts/bricolage-grotesque-latin-var.woff2") format("woff2");
	font-weight: 700 800;
	font-style: normal;
	font-display: swap;
}

/* ------------------------------------------------------------------ section colours (fill / text / tints) */
.sh-mm-panel, .sh-mm-key-other { --mm-fill: #122c3a; --mm-ink: #122c3a; --mm-soft: rgba(18, 44, 58, .07); --mm-tint: rgba(18, 44, 58, .035); --mm-line: rgba(18, 44, 58, .22); --mm-deep: #0f2230; }
.sh-mm-panel--assess, .sh-mm-key-assess { --mm-fill: #246b5f; --mm-ink: #246b5f; --mm-soft: rgba(36, 107, 95, .12); --mm-tint: rgba(36, 107, 95, .055); --mm-line: rgba(36, 107, 95, .34); --mm-deep: #173d39; }
.sh-mm-panel--train, .sh-mm-key-train { --mm-fill: #2b8fd6; --mm-ink: #1b6fae; --mm-soft: rgba(43, 143, 214, .13); --mm-tint: rgba(43, 143, 214, .06); --mm-line: rgba(27, 111, 174, .36); --mm-deep: #12507f; }
.sh-mm-panel--eat, .sh-mm-key-eat { --mm-fill: #3d9442; --mm-ink: #2f7a34; --mm-soft: rgba(61, 148, 66, .13); --mm-tint: rgba(61, 148, 66, .06); --mm-line: rgba(47, 122, 52, .36); --mm-deep: #1f5523; }
.sh-mm-panel--helpers, .sh-mm-key-helpers { --mm-fill: #d6336c; --mm-ink: #b0285a; --mm-soft: rgba(214, 51, 108, .11); --mm-tint: rgba(214, 51, 108, .05); --mm-line: rgba(176, 40, 90, .32); --mm-deep: #7b244b; }
.sh-mm-panel--learn, .sh-mm-key-learn { --mm-fill: #b8740a; --mm-ink: #8a5a06; --mm-soft: rgba(184, 116, 10, .13); --mm-tint: rgba(184, 116, 10, .06); --mm-line: rgba(138, 90, 6, .34); --mm-deep: #5e3d04; }
.sh-mm-panel--account, .sh-mm-key-account { --mm-fill: #122c3a; --mm-ink: #122c3a; --mm-soft: rgba(18, 44, 58, .075); --mm-tint: rgba(18, 44, 58, .035); --mm-line: rgba(18, 44, 58, .22); --mm-deep: #0f2230; }

/* ------------------------------------------------------------------ shared pieces (desktop panel and phone sheet) */
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) {
	color: #375568;
	font-family: var(--sh-font-body, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);
	font-size: 15px;
	font-weight: 400;
	line-height: 1.45;
	letter-spacing: 0;
	text-align: left;
	text-transform: none;
	white-space: normal;
}
/* zero-specificity reset: every component rule below sets its own spacing */
html.sh-mm-ready .elementor-location-header :where(.sh-mm-panel, .sh-mm-m-body) :where(p, ul, li) { margin: 0; padding: 0; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) ul {
	display: grid !important;
	position: static !important;
	top: auto !important;
	left: auto !important;
	width: auto !important;
	min-width: 0 !important;
	max-width: none !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: none !important;
	box-shadow: none !important;
	list-style: none;
	overflow: visible !important;
}
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) li { display: block; list-style: none; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) :is(a, span).sh-mm-link {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	box-sizing: border-box;
	min-height: 44px;
	margin: 0;
	padding: 9px 10px !important;
	border: 0 !important;
	border-radius: 14px;
	background: transparent !important;
	color: #122c3a !important;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.35;
	text-align: left;
	text-decoration: none !important;
	white-space: normal !important;
	flex-grow: 0;
	transform: none !important;
	transition: background-color .16s ease, color .16s ease, box-shadow .16s ease;
}
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link:hover,
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link:focus { background: var(--mm-tint) !important; color: #122c3a !important; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) .sh-mm-text { display: grid; gap: 2px; min-width: 0; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) .sh-mm-label { display: inline-flex; align-items: center; gap: 6px; color: #122c3a; font-size: 15px; font-weight: 700; line-height: 1.3; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) .sh-mm-desc { color: #587183; font-size: 13px; font-weight: 400; line-height: 1.4; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) .sh-mm-meta { color: #587183; font-size: 12.5px; font-weight: 700; line-height: 1.3; font-variant-numeric: tabular-nums; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) .sh-mm-static { color: #587183 !important; cursor: default; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) svg { display: block; width: 100%; height: 100%; overflow: visible; }

/* icon chips */
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) .sh-mm-chip {
	display: grid;
	flex: 0 0 auto;
	place-items: center;
	width: 34px;
	height: 34px;
	border-radius: 11px;
	background: var(--mm-soft);
	color: var(--mm-ink);
	transition: background-color .16s ease, color .16s ease;
}
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) .sh-mm-chip svg { width: 19px; height: 19px; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link:hover .sh-mm-chip { background: var(--mm-fill); color: #fff; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) .sh-mm-chip--plain { background: transparent; color: #587183; }

/* where you are: the current page has a dot in its section colour (aria-current says it to screen readers) */
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link.is-current { background: var(--mm-tint) !important; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link.is-current .sh-mm-label::after {
	content: "";
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--mm-fill);
	flex: 0 0 7px;
}

/* group labels */
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) :is(.sh-mm-group-label, .sh-mm-body-label) {
	margin: 0 0 4px;
	padding: 0 10px;
	color: #587183;
	font-size: 11.5px;
	font-weight: 800;
	line-height: 1.3;
	letter-spacing: .12em;
	text-transform: uppercase;
}
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) .sh-mm-body-label { margin-bottom: 12px; color: var(--mm-ink); }

/* Assess: a check with its minutes */
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--check { align-items: center; gap: 10px; min-height: 40px; padding: 8px 10px !important; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--check .sh-mm-label { font-size: 14.5px; font-weight: 650; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--check > .sh-mm-meta { margin-left: auto; padding-left: 8px; color: #587183; font-weight: 600; white-space: nowrap; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) .sh-mm-group { min-width: 0; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) .sh-mm-group .sh-mm-list { gap: 1px; }

/* featured journeys (Full Analysis, New Plan) */
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--feature {
	position: relative;
	display: grid;
	grid-template-columns: 1fr;
	gap: 8px;
	padding: 18px 54px 18px 18px !important;
	border-radius: 18px;
	background: radial-gradient(130% 90% at 100% 0%, rgba(110, 196, 232, .16), rgba(110, 196, 232, 0) 58%), linear-gradient(150deg, var(--mm-ink), var(--mm-deep)) !important;
	color: #fff !important;
	box-shadow: 0 18px 30px -22px var(--mm-deep);
	overflow: hidden;
}
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--feature:hover,
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--feature:focus {
	background: radial-gradient(130% 90% at 100% 0%, rgba(110, 196, 232, .22), rgba(110, 196, 232, 0) 60%), linear-gradient(150deg, var(--mm-ink), var(--mm-deep)) !important;
	color: #fff !important;
	box-shadow: 0 22px 34px -20px var(--mm-deep);
}
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) .sh-mm-link--feature .sh-mm-kicker { order: -1; color: rgba(255, 255, 255, .86); font-size: 11.5px; font-weight: 800; line-height: 1; letter-spacing: .14em; text-transform: uppercase; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) .sh-mm-link--feature .sh-mm-feature-icon { position: absolute; top: 16px; right: 16px; width: 22px; height: 22px; color: #8fd3ef; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) .sh-mm-link--feature .sh-mm-text { gap: 6px; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) .sh-mm-link--feature .sh-mm-label { color: #fff; font-family: "Sneaky Display", var(--sh-font-body, sans-serif); font-size: 21px; font-weight: 800; line-height: 1.1; letter-spacing: -.015em; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) .sh-mm-link--feature .sh-mm-desc { color: rgba(255, 255, 255, .9); font-size: 13.5px; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) .sh-mm-link--feature .sh-mm-meta { justify-self: start; margin-top: 4px; padding: 5px 10px; border-radius: 999px; background: rgba(255, 255, 255, .14); color: #fff; font-size: 12px; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) .sh-mm-link--feature .sh-mm-go {
	position: absolute;
	right: 14px;
	bottom: 16px;
	display: grid;
	place-items: center;
	width: 32px;
	height: 32px;
	padding: 8px;
	box-sizing: border-box;
	border-radius: 50%;
	background: rgba(255, 255, 255, .16);
	color: #fff;
	transition: transform .18s cubic-bezier(.2, .7, .2, 1), background-color .18s ease;
}
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--feature:hover .sh-mm-go { background: rgba(255, 255, 255, .26); transform: translateX(3px); }

/* Train: a family (the place) with its tools; making something is a tinted action with a plus */
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) .sh-mm-families { gap: 14px; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) .sh-mm-family { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--head .sh-mm-label { font-size: 15.5px; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) .sh-mm-sublist { gap: 4px; margin: 0 0 0 26px !important; padding: 2px 0 2px 12px !important; border-left: 2px solid var(--mm-soft) !important; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--sub { gap: 8px; min-height: 40px; padding: 7px 10px !important; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) .sh-mm-sub-arrow { flex: 0 0 auto; width: 15px; height: 15px; margin-top: 2px; color: var(--mm-ink); transition: transform .16s ease; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--sub:hover .sh-mm-sub-arrow { transform: translateX(2px); }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--sub .sh-mm-label { font-size: 14.5px; font-weight: 650; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--create {
	align-items: center;
	gap: 10px;
	padding: 8px 10px !important;
	border: 1px dashed var(--mm-line) !important;
	background: var(--mm-tint) !important;
}
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--create:hover,
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--create:focus { border-style: solid !important; background: var(--mm-soft) !important; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--create .sh-mm-chip { width: 26px; height: 26px; border-radius: 50%; background: var(--mm-ink); color: #fff; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--create .sh-mm-chip svg { width: 15px; height: 15px; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--create .sh-mm-label { color: var(--mm-ink); font-size: 14.5px; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) .sh-mm-foot { margin-top: 14px; padding-top: 12px; border-top: 1px solid rgba(18, 44, 58, .07); }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) .sh-mm-foot-list { display: flex !important; flex-wrap: wrap; gap: 6px; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--utility { align-items: center; min-height: 40px; padding: 6px 12px 6px 8px !important; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--utility .sh-mm-chip { width: 28px; height: 28px; border-radius: 9px; background: rgba(18, 44, 58, .06); color: #375568; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--utility .sh-mm-text { grid-auto-flow: column; align-items: baseline; gap: 8px; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--utility .sh-mm-label { font-size: 14px; }

/* Eat and Help rows */
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) .sh-mm-rows { gap: 4px; align-content: start; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) .sh-mm-for-support a.sh-mm-link .sh-mm-chip { background: #fbe9f1; color: #7b244b; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) .sh-mm-for-support a.sh-mm-link:hover .sh-mm-chip { background: #7b244b; color: #fff; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) .sh-mm-note {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin-top: 10px;
	padding: 10px 12px;
	border-radius: 12px;
	background: #f4f8fa;
	color: #587183;
	font-size: 12.5px;
	line-height: 1.45;
}
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) .sh-mm-note-icon { flex: 0 0 16px; width: 16px; height: 16px; margin-top: 1px; color: #587183; }

/* Learn: topics, then the door to Thought */
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--topic { align-items: center; gap: 10px; min-height: 36px; padding: 6px 10px !important; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--topic .sh-mm-label { font-size: 14.5px; font-weight: 600; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) .sh-mm-dot { flex: 0 0 6px; width: 6px; height: 6px; border-radius: 50%; background: var(--mm-fill); opacity: .55; transition: opacity .16s ease, transform .16s ease; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--topic:hover .sh-mm-dot { opacity: 1; transform: scale(1.35); }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--think {
	align-items: center;
	gap: 14px;
	margin-top: 14px;
	padding: 14px 16px !important;
	border-radius: 16px;
	background: radial-gradient(90% 140% at 100% 0%, rgba(143, 211, 239, .16), rgba(143, 211, 239, 0) 60%), #0f2230 !important;
	color: #e8f1f5 !important;
}
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--think:hover,
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--think:focus { background: radial-gradient(90% 140% at 100% 0%, rgba(143, 211, 239, .26), rgba(143, 211, 239, 0) 62%), #0f2230 !important; color: #e8f1f5 !important; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--think .sh-mm-chip { width: 40px; height: 40px; border-radius: 12px; background: rgba(255, 255, 255, .08); color: #8fd3ef; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--think:hover .sh-mm-chip { background: rgba(255, 255, 255, .14); color: #8fd3ef; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--think .sh-mm-label { color: #f2f8fb; font-size: 15.5px; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--think .sh-mm-out { display: inline-block; width: 14px; height: 14px; color: #8fd3ef; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--think .sh-mm-desc { color: #c3d4dd; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--think .sh-mm-meta { color: #8fd3ef; font-weight: 700; }

/* Account */
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--account { align-items: center; gap: 10px; min-height: 40px; padding: 6px 10px !important; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--account .sh-mm-chip { width: 30px; height: 30px; border-radius: 9px; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--account .sh-mm-chip svg { width: 17px; height: 17px; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--account .sh-mm-label { font-size: 14.5px; font-weight: 650; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) .sh-mm-account-groups { display: grid; grid-template-columns: repeat(auto-fit, minmax(176px, 1fr)); gap: 14px 16px; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) .sh-mm-testing { position: relative; margin-top: 14px; padding: 12px 12px 8px 44px; border: 1px dashed #c7ddeb; border-radius: 14px; background: #f7fbfd; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) .sh-mm-testing-icon { position: absolute; top: 12px; left: 14px; width: 20px; height: 20px; color: #587183; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) .sh-mm-testing .sh-mm-group-label { padding-left: 0; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) .sh-mm-testing-list { grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 0 8px; margin-left: -10px !important; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) :is(a, span).sh-mm-link--testing { min-height: 36px; padding: 6px 10px !important; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) :is(a, span).sh-mm-link--testing .sh-mm-label { font-size: 13.5px; font-weight: 600; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) span.sh-mm-link--testing .sh-mm-label { color: #587183; font-weight: 500; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) .sh-mm-foot--account .sh-mm-foot-list { justify-content: flex-end; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--logout { align-items: center; gap: 8px; min-height: 40px; padding: 6px 14px 6px 8px !important; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--logout .sh-mm-chip { width: 26px; height: 26px; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) a.sh-mm-link--logout .sh-mm-label { color: #375568; font-size: 14px; font-weight: 650; }

/* ================================================================== desktop (768px and up) */
@media (min-width: 768px) {
	/* Elementor's own lists and carets give way to the panels and their buttons. */
	html.sh-mm-ready .elementor-location-header .elementor-nav-menu--main li.sh-mm-has-panel > ul.sub-menu { display: none !important; }
	html.sh-mm-ready .elementor-location-header .elementor-nav-menu--main li.sh-mm-has-panel > a .sub-arrow { display: none !important; }

	/* Section colours on the top row: hover and an open panel show the section's own colour. */
	html.sh-mm-ready .elementor-location-header .elementor-nav-menu--main .elementor-nav-menu > li { --sh-mm-pi: #122c3a; }
	html.sh-mm-ready .elementor-location-header .elementor-nav-menu--main .elementor-nav-menu > li.sh-nav-assess { --sh-mm-pi: #246b5f; }
	html.sh-mm-ready .elementor-location-header .elementor-nav-menu--main .elementor-nav-menu > li.sh-nav-train { --sh-mm-pi: #1b6fae; }
	html.sh-mm-ready .elementor-location-header .elementor-nav-menu--main .elementor-nav-menu > li.sh-nav-eat { --sh-mm-pi: #2f7a34; }
	html.sh-mm-ready .elementor-location-header .elementor-nav-menu--main .elementor-nav-menu > li.sh-nav-helpers { --sh-mm-pi: #b0285a; }
	html.sh-mm-ready .elementor-location-header .elementor-nav-menu--main .elementor-nav-menu > li.sh-nav-learn { --sh-mm-pi: #8a5a06; }
	html.sh-mm-ready body .elementor-location-header .elementor-nav-menu--main .elementor-nav-menu > li.sh-mm-has-panel:is(:hover, .sh-mm-open) > a.elementor-item { color: var(--sh-mm-pi) !important; }
	html.sh-mm-ready body .elementor-location-header .elementor-nav-menu--main .elementor-nav-menu > li.sh-mm-has-panel:is(:hover, .sh-mm-open) > a.elementor-item::after { background-color: var(--sh-nav-pillar, #122c3a) !important; }
	html.sh-mm-ready body .elementor-location-header .elementor-nav-menu--main .elementor-nav-menu > li.sh-mm-open > a.elementor-item::after { opacity: 1 !important; height: 3px !important; border-radius: 3px; transform: none !important; }

	/* The disclosure button takes exactly the caret's place, so the row keeps its measured one-line fit. */
	html.sh-mm-ready .elementor-location-header .elementor-nav-menu--main .elementor-nav-menu > li.sh-mm-has-panel { align-items: center; }
	html.sh-mm-ready .elementor-location-header .elementor-nav-menu--layout-horizontal .elementor-nav-menu > li.sh-mm-has-panel:not(:last-child) > a { margin-inline-end: 0; }
	html.sh-mm-ready .elementor-location-header .elementor-nav-menu--layout-horizontal .elementor-nav-menu > li.sh-mm-has-panel:not(:last-child) > .sh-mm-toggle { margin-inline-end: var(--e-nav-menu-horizontal-menu-item-margin); }
	html.sh-mm-ready body .elementor-location-header .elementor-nav-menu--main button.sh-mm-toggle {
		display: inline-flex;
		flex: 0 0 auto;
		align-items: center;
		justify-content: center;
		align-self: stretch;
		box-sizing: border-box;
		width: 26px;
		min-width: 0;
		min-height: 44px;
		margin: 0;
		padding: 0;
		border: 0;
		border-radius: 10px;
		background: transparent;
		color: #60798a;
		font: inherit;
		line-height: 1;
		box-shadow: none;
		cursor: pointer;
		transition: color .16s ease, background-color .16s ease;
	}
	html.sh-mm-ready body .elementor-location-header .elementor-nav-menu--main button.sh-mm-toggle:hover,
	html.sh-mm-ready body .elementor-location-header .elementor-nav-menu--main button.sh-mm-toggle:focus,
	html.sh-mm-ready body .elementor-location-header .elementor-nav-menu--main li.sh-mm-open > button.sh-mm-toggle { background: transparent; color: var(--sh-mm-pi); }
	html.sh-mm-ready body .elementor-location-header .elementor-nav-menu--main button.sh-mm-toggle:hover { background: rgba(18, 44, 58, .05); }
	html.sh-mm-ready .elementor-location-header .elementor-nav-menu--main .sh-mm-toggle .sh-mm-chev { display: block; width: 14px; height: 14px; transition: transform .2s cubic-bezier(.2, .7, .2, 1); }
	html.sh-mm-ready .elementor-location-header .elementor-nav-menu--main .sh-mm-toggle .sh-mm-chev svg { display: block; width: 100%; height: 100%; }
	html.sh-mm-ready .elementor-location-header .elementor-nav-menu--main li.sh-mm-open > .sh-mm-toggle .sh-mm-chev { transform: rotate(180deg); }

	/* the panel */
	html.sh-mm-ready .elementor-location-header .sh-mm-panel {
		position: fixed;
		top: var(--sh-mm-top, 80px);
		left: var(--sh-mm-left, 16px);
		z-index: 1000;
		box-sizing: border-box;
		width: var(--sh-mm-w, 640px);
		margin: 0;
		padding: 0;
		border: 1px solid rgba(18, 44, 58, .09);
		border-radius: 22px;
		background: #fff;
		box-shadow: 0 34px 70px -34px rgba(18, 44, 58, .45), 0 14px 26px -18px rgba(18, 44, 58, .18);
		container: sh-mm / inline-size;
		visibility: hidden;
		opacity: 0;
		transform: translateY(-6px);
		pointer-events: none;
		transition: opacity .14s ease, transform .14s ease, visibility 0s linear .14s;
	}
	html.sh-mm-ready .elementor-location-header .sh-mm-panel.is-open {
		visibility: visible;
		opacity: 1;
		transform: none;
		pointer-events: auto;
		transition: opacity .2s cubic-bezier(.2, .7, .2, 1), transform .2s cubic-bezier(.2, .7, .2, 1), visibility 0s;
	}
	/* Moving from one section to the next swaps the panels at once (no fade between them). */
	html.sh-mm-ready.sh-mm-swap .elementor-location-header .sh-mm-panel { transition: none; }
	/* The pointer's bridge from the menu row down to the panel (part of the panel, so moving across keeps it open). */
	html.sh-mm-ready .elementor-location-header .sh-mm-panel::before { content: ""; position: absolute; left: 0; right: 0; bottom: 100%; height: var(--sh-mm-bridge, 12px); }
	/* A short bar in the section's colour, top left. */
	html.sh-mm-ready .elementor-location-header .sh-mm-panel::after { content: ""; position: absolute; top: -1px; left: 26px; width: 56px; height: 3px; border-radius: 0 0 3px 3px; background: var(--mm-fill); }
	html.sh-mm-ready .elementor-location-header .sh-mm-inner {
		display: grid;
		grid-template-columns: minmax(0, var(--sh-mm-intro, 250px)) minmax(0, 1fr);
		max-height: var(--sh-mm-max-h, 70vh);
		overflow: auto;
		overscroll-behavior: contain;
		border-radius: 21px;
	}
	html.sh-mm-ready .elementor-location-header .sh-mm-intro {
		display: flex;
		flex-direction: column;
		gap: 0;
		min-width: 0;
		padding: 26px 24px 24px;
		background: linear-gradient(168deg, var(--mm-soft) 0%, var(--mm-tint) 46%, rgba(255, 255, 255, 0) 100%);
	}
	html.sh-mm-ready .elementor-location-header .sh-mm-badge {
		display: grid;
		place-items: center;
		width: 44px;
		height: 44px;
		margin-bottom: 16px;
		padding: 11px;
		box-sizing: border-box;
		border-radius: 14px;
		background: var(--mm-fill);
		color: #fff;
		box-shadow: 0 12px 20px -14px var(--mm-deep);
	}
	html.sh-mm-ready .elementor-location-header .sh-mm-eyebrow { margin: 0 0 7px; color: var(--mm-ink); font-size: 12px; font-weight: 800; line-height: 1; letter-spacing: .14em; text-transform: uppercase; }
	html.sh-mm-ready .elementor-location-header .sh-mm-title { color: #122c3a; font-family: "Sneaky Display", var(--sh-font-body, sans-serif); font-size: 23px; font-weight: 800; line-height: 1.1; letter-spacing: -.02em; text-wrap: balance; }
	html.sh-mm-ready .elementor-location-header .sh-mm-lede { margin-top: 9px; color: #375568; font-size: 14px; line-height: 1.5; }
	html.sh-mm-ready .elementor-location-header .sh-mm-body { min-width: 0; padding: 22px 24px 24px; }
	html.sh-mm-ready .elementor-location-header .sh-mm-intro a.sh-mm-link--feature { margin-top: 22px; }
	html.sh-mm-ready .elementor-location-header .sh-mm-legend { display: flex; flex-wrap: wrap; gap: 6px 14px; margin-top: auto; padding-top: 18px; color: #587183; font-size: 12.5px; font-weight: 700; }
	html.sh-mm-ready .elementor-location-header .sh-mm-legend-item { display: inline-flex; align-items: center; gap: 6px; }
	html.sh-mm-ready .elementor-location-header .sh-mm-legend-icon { display: grid; place-items: center; width: 18px; height: 18px; padding: 3px; box-sizing: border-box; border-radius: 50%; background: var(--mm-soft); color: var(--mm-ink); }
	html.sh-mm-ready .elementor-location-header .sh-mm-legend-item--create .sh-mm-legend-icon { background: var(--mm-ink); color: #fff; }

	/* section compositions */
	html.sh-mm-ready .elementor-location-header .sh-mm-panel--assess { --sh-mm-intro: 290px; }
	html.sh-mm-ready .elementor-location-header .sh-mm-groups { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px 18px; }
	html.sh-mm-ready .elementor-location-header .sh-mm-panel--train { --sh-mm-intro: 280px; }
	html.sh-mm-ready .elementor-location-header .sh-mm-panel .sh-mm-families { grid-template-columns: repeat(var(--sh-mm-cols, 3), minmax(0, 1fr)); }
	html.sh-mm-ready .elementor-location-header .sh-mm-panel .sh-mm-family + .sh-mm-family { padding-left: 14px; border-left: 1px solid rgba(18, 44, 58, .07); }
	html.sh-mm-ready .elementor-location-header .sh-mm-panel--eat .sh-mm-body { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 228px); gap: 16px; align-items: stretch; }
	html.sh-mm-ready .elementor-location-header .sh-mm-panel--eat .sh-mm-link--feature { align-content: start; }
	html.sh-mm-ready .elementor-location-header .sh-mm-panel--learn .sh-mm-topics { grid-template-columns: repeat(3, minmax(0, 1fr)); grid-template-rows: repeat(var(--sh-mm-rows3, 6), auto); grid-auto-flow: column; gap: 0 8px; }
	/* Account (owner, 17 Oct 2026): the same composition as the other sections. The introduction column holds Your
	   Space as the featured card and My Credits beneath it; the body holds the groups and the settings strip. */
	html.sh-mm-ready .elementor-location-header .sh-mm-panel--account { --sh-mm-intro: 272px; }
	html.sh-mm-ready .elementor-location-header .sh-mm-panel--account .sh-mm-badge { border-radius: 50%; }
	html.sh-mm-ready .elementor-location-header .sh-mm-panel--account .sh-mm-account-groups { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-flow: row dense; gap: 18px 16px; align-content: start; }
	/* Saved by you is the left column; People, Your plan and Trainer tools stack on the right */
	html.sh-mm-ready .elementor-location-header .sh-mm-panel--account .sh-mm-account-group--saved { grid-column: 1; grid-row: span 2; }
	html.sh-mm-ready .elementor-location-header .sh-mm-panel--account .sh-mm-account-groups > .sh-mm-group:not(.sh-mm-account-group--saved) { grid-column: 2; }
	html.sh-mm-ready .elementor-location-header .sh-mm-panel--account .sh-mm-account-groups > .sh-mm-account-group--trainer { grid-column: auto; }
	html.sh-mm-ready .elementor-location-header .sh-mm-panel--account .sh-mm-body { display: flex; flex-direction: column; gap: 18px; }
	html.sh-mm-ready .elementor-location-header .sh-mm-panel--account .sh-mm-body > .sh-mm-testing { margin-top: 0; }
	html.sh-mm-ready .elementor-location-header .sh-mm-panel--account .sh-mm-foot--account { margin-top: auto; }

	/* A narrow panel (tablets) puts its introduction on top. */
	@container sh-mm (max-width: 760px) {
		html.sh-mm-ready .elementor-location-header .sh-mm-inner { grid-template-columns: 1fr; }
		html.sh-mm-ready .elementor-location-header .sh-mm-intro { display: grid; grid-template-columns: auto 1fr; align-items: start; column-gap: 14px; padding: 20px 22px 16px; background: linear-gradient(100deg, var(--mm-soft), rgba(255, 255, 255, 0) 75%); }
		html.sh-mm-ready .elementor-location-header .sh-mm-badge { margin: 0; }
		html.sh-mm-ready .elementor-location-header .sh-mm-title { font-size: 21px; }
		html.sh-mm-ready .elementor-location-header .sh-mm-intro > :is(.sh-mm-link--feature, .sh-mm-legend) { grid-column: 1 / -1; }
		html.sh-mm-ready .elementor-location-header .sh-mm-intro a.sh-mm-link--feature { margin-top: 16px; }
		html.sh-mm-ready .elementor-location-header .sh-mm-legend { padding-top: 12px; }
		html.sh-mm-ready .elementor-location-header .sh-mm-body { padding-top: 16px; }
	}
	@container sh-mm (max-width: 640px) {
		html.sh-mm-ready .elementor-location-header .sh-mm-groups { grid-template-columns: repeat(2, minmax(0, 1fr)); }
		html.sh-mm-ready .elementor-location-header .sh-mm-panel .sh-mm-families { grid-template-columns: repeat(min(var(--sh-mm-cols, 3), 2), minmax(0, 1fr)); }
		html.sh-mm-ready .elementor-location-header .sh-mm-panel .sh-mm-family:nth-child(odd) { padding-left: 0; border-left: 0; }
		html.sh-mm-ready .elementor-location-header .sh-mm-panel--learn .sh-mm-topics { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: repeat(var(--sh-mm-rows2, 8), auto); }
		html.sh-mm-ready .elementor-location-header .sh-mm-panel--eat .sh-mm-body { grid-template-columns: 1fr; }
	}

	/* Guests: Log In reads as the personal door it is (wide screens only; the narrower rows are measured tight). */
	@media (min-width: 1280px) {
		html.sh-mm-ready body .elementor-location-header .elementor-nav-menu--main .elementor-nav-menu > li.sh-nav-login > a.elementor-item {
			align-self: center;
			min-height: 40px;
			padding: 0 16px !important;
			border: 1px solid #c7ddeb;
			border-radius: 999px;
			color: #122c3a !important;
			transition: border-color .16s ease, background-color .16s ease;
		}
		html.sh-mm-ready body .elementor-location-header .elementor-nav-menu--main .elementor-nav-menu > li.sh-nav-login > a.elementor-item:hover { border-color: #246b5f; background: #edf8fc !important; color: #122c3a !important; }
		html.sh-mm-ready body .elementor-location-header .elementor-nav-menu--main .elementor-nav-menu > li.sh-nav-login > a.elementor-item::after { display: none !important; }
	}
}
/* 901-1100px and 768-900px: the caret was 24px and 16px wide there (sneaky-shell.css), so the button is too. */
@media (min-width: 768px) and (max-width: 1100px) {
	html.sh-mm-ready body .elementor-location-header .elementor-nav-menu--main button.sh-mm-toggle { width: 24px; }
}
@media (min-width: 768px) and (max-width: 900px) {
	html.sh-mm-ready body .elementor-location-header .elementor-nav-menu--main button.sh-mm-toggle { width: 16px; border-radius: 6px; }
	html.sh-mm-ready .elementor-location-header .elementor-nav-menu--main .sh-mm-toggle .sh-mm-chev { width: 12px; height: 12px; }
}

/* ================================================================== phones (below 768px): the sheet */
@media (max-width: 767px) {
	html.sh-mm-ready.sh-mm-m-lock, html.sh-mm-ready.sh-mm-m-lock body { overflow: hidden; }
	html.sh-mm-ready body.sh-shell .elementor-location-header .elementor-nav-menu--dropdown.elementor-nav-menu__container {
		top: var(--sh-mm-m-top, var(--sh-header-bottom, 64px)) !important;
		left: 0 !important;
		right: 0 !important;
		width: auto !important;
		max-width: none !important;
		min-width: 0 !important;
		height: calc(100dvh - var(--sh-mm-m-top, var(--sh-header-bottom, 64px)));
		max-height: calc(100dvh - var(--sh-mm-m-top, var(--sh-header-bottom, 64px))) !important;
		box-sizing: border-box;
		margin: 0 !important;
		padding: 14px 16px 28px !important;
		overflow-x: hidden;
		overflow-y: auto;
		overscroll-behavior: contain;
		border: 0 !important;
		border-top: 1px solid rgba(199, 221, 235, .9) !important;
		border-radius: 0 !important;
		background: linear-gradient(180deg, #f4f9fb 0%, #ffffff 260px) !important;
		box-shadow: none !important;
	}
	/* (Elementor's "align end" puts justify-content: flex-end on this list, which would pack the rows to the right) */
	html.sh-mm-ready .elementor-location-header .elementor-nav-menu--dropdown > ul.elementor-nav-menu { display: grid !important; grid-template-columns: minmax(0, 1fr); justify-content: stretch !important; gap: 10px; width: auto !important; margin: 14px 0 0 !important; padding: 0 !important; }
	/* (specific enough to outrank sneaky-shell.css's pinned "listed open on phones" rule, which stays in place) */
	html.sh-mm-ready body.sh-shell .elementor-location-header .elementor-nav-menu--dropdown.elementor-nav-menu__container li.sh-mm-m-dup.sh-mm-m-item,
	html.sh-mm-ready body.sh-shell .elementor-location-header .elementor-nav-menu--dropdown.elementor-nav-menu__container li.sh-mm-m-has-body.sh-mm-m-item > ul.sub-menu.elementor-nav-menu--dropdown,
	html.sh-mm-ready .elementor-location-header .elementor-nav-menu--dropdown li.sh-mm-m-item > .sh-nav-disclosure { display: none !important; }

	/* Search and Account first */
	html.sh-mm-ready .elementor-location-header .sh-mm-m-quick { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px; }
	html.sh-mm-ready body .elementor-location-header .sh-mm-m-quick :is(button.sh-mm-m-search, a.sh-mm-m-account) {
		display: flex;
		align-items: center;
		gap: 10px;
		box-sizing: border-box;
		min-height: 50px;
		margin: 0;
		padding: 0 16px !important;
		border: 1px solid #c7ddeb !important;
		border-radius: 16px;
		background: #fff !important;
		color: #587183 !important;
		font-family: var(--sh-font-body, sans-serif);
		font-size: 15px;
		font-weight: 600;
		line-height: 1.2;
		text-align: left;
		text-decoration: none;
		text-transform: none;
		white-space: nowrap;
		box-shadow: 0 8px 18px -16px rgba(18, 44, 58, .5);
		transform: none !important;
		cursor: pointer;
	}
	html.sh-mm-ready body .elementor-location-header .sh-mm-m-quick a.sh-mm-m-account { border-color: #122c3a !important; background: #122c3a !important; color: #fff !important; font-weight: 800; }
	html.sh-mm-ready body .elementor-location-header .sh-mm-m-quick button.sh-mm-m-search:is(:hover, :focus) { border-color: #246b5f !important; background: #fff !important; color: #375568 !important; }
	html.sh-mm-ready body .elementor-location-header .sh-mm-m-quick a.sh-mm-m-account:is(:hover, :focus) { background: #0f2230 !important; color: #fff !important; }
	html.sh-mm-ready .elementor-location-header .sh-mm-m-qicon { display: grid; flex: 0 0 20px; width: 20px; height: 20px; }
	html.sh-mm-ready .elementor-location-header .sh-mm-m-qicon svg { display: block; width: 100%; height: 100%; }

	/* one row per section */
	html.sh-mm-ready .elementor-location-header .elementor-nav-menu--dropdown li.sh-mm-m-item {
		position: relative;
		margin: 0;
		border: 1px solid rgba(18, 44, 58, .08);
		border-radius: 18px;
		background: #fff;
		box-shadow: 0 10px 22px -20px rgba(18, 44, 58, .55);
	}
	html.sh-mm-ready .elementor-location-header .elementor-nav-menu--dropdown li.sh-mm-m-item.sh-mm-m-open { border-color: var(--mm-line); }
	html.sh-mm-ready body.sh-shell .elementor-location-header .elementor-nav-menu--dropdown li.sh-mm-m-item > a.elementor-item {
		display: grid !important;
		grid-template-columns: 42px minmax(0, 1fr);
		grid-template-rows: auto auto;
		column-gap: 12px;
		row-gap: 1px;
		align-items: center;
		min-height: 66px;
		margin: 0 !important;
		padding: 12px 64px 12px 12px !important;
		border: 0 !important;
		border-radius: 18px !important;
		background: transparent !important;
		color: #122c3a !important;
		text-decoration: none !important;
		white-space: normal !important;
		transform: none !important;
	}
	html.sh-mm-ready body.sh-shell .elementor-location-header .elementor-nav-menu--dropdown li.sh-mm-m-item:not(.sh-mm-m-has-body) > a.elementor-item { padding-right: 16px !important; }
	html.sh-mm-ready body.sh-shell .elementor-location-header .elementor-nav-menu--dropdown li.sh-mm-m-item > a.elementor-item:is(:hover, :focus, .elementor-item-active) { background: var(--mm-tint) !important; color: #122c3a !important; }
	html.sh-mm-ready .elementor-location-header .elementor-nav-menu--dropdown li.sh-mm-m-item > a .sh-mm-m-badge {
		display: grid;
		grid-row: 1 / span 2;
		place-items: center;
		width: 42px;
		height: 42px;
		padding: 10px;
		box-sizing: border-box;
		border-radius: 13px;
		background: var(--mm-soft);
		color: var(--mm-ink);
	}
	html.sh-mm-ready .elementor-location-header .elementor-nav-menu--dropdown li.sh-mm-m-item > a .sh-mm-m-badge svg { display: block; width: 100%; height: 100%; }
	html.sh-mm-ready .elementor-location-header .elementor-nav-menu--dropdown li.sh-mm-m-item.sh-mm-m-open > a .sh-mm-m-badge,
	html.sh-mm-ready .elementor-location-header .elementor-nav-menu--dropdown li.sh-mm-m-item:is(.current-menu-item, .current-menu-ancestor) > a .sh-mm-m-badge { background: var(--mm-fill); color: #fff; }
	html.sh-mm-ready .elementor-location-header .elementor-nav-menu--dropdown li.sh-mm-m-item > a .sh-mm-m-label { grid-column: 2; color: #122c3a; font-family: "Sneaky Display", var(--sh-font-body, sans-serif); font-size: 18px; font-weight: 800; line-height: 1.15; letter-spacing: -.01em; text-transform: none; }
	html.sh-mm-ready .elementor-location-header .elementor-nav-menu--dropdown li.sh-mm-m-item > a .sh-mm-m-hint { grid-column: 2; color: #587183; font-family: var(--sh-font-body, sans-serif); font-size: 13.5px; font-weight: 500; line-height: 1.3; text-transform: none; }
	html.sh-mm-ready .elementor-location-header .elementor-nav-menu--dropdown li.sh-mm-m-item:not(:has(.sh-mm-m-badge)) > a.elementor-item { display: flex !important; min-height: 52px; font-size: 16px !important; }

	/* the group's button */
	html.sh-mm-ready body .elementor-location-header .elementor-nav-menu--dropdown button.sh-mm-m-toggle {
		position: absolute;
		top: 11px;
		right: 10px;
		display: grid;
		place-items: center;
		box-sizing: border-box;
		width: 44px;
		height: 44px;
		margin: 0;
		padding: 0;
		border: 0;
		border-radius: 14px;
		background: var(--mm-tint);
		color: #122c3a;
		box-shadow: none;
		cursor: pointer;
		transition: background-color .16s ease;
	}
	html.sh-mm-ready body .elementor-location-header .elementor-nav-menu--dropdown button.sh-mm-m-toggle:is(:hover, :focus) { background: var(--mm-soft); color: #122c3a; }
	html.sh-mm-ready body .elementor-location-header .elementor-nav-menu--dropdown button.sh-mm-m-toggle[aria-expanded="true"] { background: var(--mm-soft); color: var(--mm-ink); }
	html.sh-mm-ready .elementor-location-header .elementor-nav-menu--dropdown .sh-mm-m-toggle .sh-mm-chev { display: block; width: 20px; height: 20px; transition: transform .2s cubic-bezier(.2, .7, .2, 1); }
	html.sh-mm-ready .elementor-location-header .elementor-nav-menu--dropdown .sh-mm-m-toggle .sh-mm-chev svg { display: block; width: 100%; height: 100%; }
	html.sh-mm-ready .elementor-location-header .elementor-nav-menu--dropdown .sh-mm-m-toggle[aria-expanded="true"] .sh-mm-chev { transform: rotate(180deg); }

	/* an open group */
	html.sh-mm-ready .elementor-location-header .sh-mm-m-body { padding: 2px 10px 12px; border-top: 1px solid rgba(18, 44, 58, .07); }
	html.sh-mm-ready .elementor-location-header .sh-mm-m-body[hidden] { display: none !important; }
	html.sh-mm-ready .elementor-location-header .sh-mm-m-body > * { margin-top: 10px !important; }
	html.sh-mm-ready .elementor-location-header .sh-mm-m-body a.sh-mm-link { min-height: 46px; }
	html.sh-mm-ready .elementor-location-header .sh-mm-m-body .sh-mm-groups { display: grid; gap: 12px; }
	html.sh-mm-ready .elementor-location-header .sh-mm-m-body a.sh-mm-link--check { min-height: 44px; }
	html.sh-mm-ready .elementor-location-header .sh-mm-m-body a.sh-mm-link--check > .sh-mm-meta { font-size: 12px; }
	html.sh-mm-ready .elementor-location-header .sh-mm-m-body .sh-mm-body-label { display: none; }
	html.sh-mm-ready .elementor-location-header .sh-mm-m-body .sh-mm-families { gap: 12px; }
	html.sh-mm-ready .elementor-location-header .sh-mm-m-body .sh-mm-family + .sh-mm-family { padding-top: 12px; border-top: 1px solid rgba(18, 44, 58, .07); }
	html.sh-mm-ready .elementor-location-header .sh-mm-m-body .sh-mm-topics { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: repeat(var(--sh-mm-rows2, 8), auto); grid-auto-flow: column; gap: 0 6px; }
	html.sh-mm-ready .elementor-location-header .sh-mm-m-body a.sh-mm-link--topic { min-height: 44px; }
	html.sh-mm-ready .elementor-location-header .sh-mm-m-body .sh-mm-account-groups { grid-template-columns: 1fr; gap: 12px; }
	html.sh-mm-ready .elementor-location-header .sh-mm-m-body a.sh-mm-link--account { min-height: 46px; }
	html.sh-mm-ready .elementor-location-header .sh-mm-m-body a.sh-mm-link--feature .sh-mm-label { font-size: 19px; }
	html.sh-mm-ready .elementor-location-header .sh-mm-m-body .sh-mm-foot--account .sh-mm-foot-list { justify-content: flex-start; }
	@media (prefers-reduced-motion: no-preference) {
		html.sh-mm-ready .elementor-location-header .sh-mm-m-body:not([hidden]) { animation: sh-mm-in .22s cubic-bezier(.2, .7, .2, 1); }
	}

	/* a plain way out at the end of the sheet */
	html.sh-mm-ready body .elementor-location-header button.sh-mm-m-close {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 8px;
		box-sizing: border-box;
		width: 100%;
		min-height: 48px;
		margin: 18px 0 0;
		padding: 0 16px;
		border: 1px solid #c7ddeb;
		border-radius: 16px;
		background: #fff;
		color: #122c3a;
		font-family: var(--sh-font-body, sans-serif);
		font-size: 15px;
		font-weight: 700;
		text-transform: none;
		cursor: pointer;
	}
	html.sh-mm-ready body .elementor-location-header button.sh-mm-m-close:is(:hover, :focus) { border-color: #122c3a; background: #fff; color: #122c3a; }
}
@media (min-width: 768px) {
	html.sh-mm-ready .elementor-location-header :is(.sh-mm-m-quick, .sh-mm-m-close) { display: none !important; }
}
@keyframes sh-mm-in { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: none; } }

/* ------------------------------------------------------------------ reduced motion: nothing moves, nothing waits */
@media (prefers-reduced-motion: reduce) {
	html.sh-mm-ready .elementor-location-header .sh-mm-panel,
	html.sh-mm-ready .elementor-location-header .sh-mm-panel.is-open { transform: none !important; transition: none !important; }
	html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body, .sh-mm-toggle, .sh-mm-m-toggle) * { transition: none !important; animation: none !important; }
}

/* ------------------------------------------------------------------ Account as a profile icon (owner, 17 Oct 2026)
 * "for pc instead of showing the word account show a profile icon, on cell show both". The icon and the word are
 * printed by the server (inc/sneaky-megamenu.php), so this works without JavaScript too. Guests keep "Log In". */
.elementor-location-header .sh-nav-account-icon { display: inline-block; flex: 0 0 auto; width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.85; stroke-linecap: round; stroke-linejoin: round; vertical-align: middle; }
.elementor-location-header .elementor-nav-menu--dropdown .sh-nav-account-icon { margin-right: 8px; }
@media (min-width: 768px) {
	/* desktop: the icon alone; the word stays as the link's accessible name */
	body .elementor-location-header .elementor-nav-menu--main .sh-nav-account-label { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
	body .elementor-location-header .elementor-nav-menu--main .sh-nav-account-icon {
		box-sizing: border-box;
		width: 36px;
		height: 36px;
		padding: 7px;
		border: 1px solid #c7ddeb;
		border-radius: 50%;
		background: #f4f8fa;
		color: #122c3a;
		transition: background-color .16s ease, border-color .16s ease, color .16s ease;
	}
	body .elementor-location-header .elementor-nav-menu--main .elementor-nav-menu > li.sh-nav-account:is(:hover, .sh-mm-open) .sh-nav-account-icon,
	body .elementor-location-header .elementor-nav-menu--main .elementor-nav-menu > li.sh-nav-account > a:focus-visible .sh-nav-account-icon { border-color: #122c3a; background: #122c3a; color: #fff; }
	/* the badge itself shows where you are, so the underline is not needed under it */
	body .elementor-location-header .elementor-nav-menu--main .elementor-nav-menu > li.sh-nav-account > a.elementor-item::after { display: none !important; }
	body .elementor-location-header .elementor-nav-menu--main .elementor-nav-menu > li.sh-nav-account:is(.current-menu-item, .current-menu-ancestor, .current-menu-parent) .sh-nav-account-icon { border: 2px solid #122c3a; padding: 6px; }
}
@media (prefers-reduced-motion: reduce) {
	.elementor-location-header .sh-nav-account-icon { transition: none !important; }
}

/* ------------------------------------------------------------------ always on top (owner, 17 Oct 2026)
 * While a panel or the phone sheet is open, sneaky-megamenu.js marks every layer between it and the page, and these
 * rules lift them to the highest z-index there is, above the Favorites hearts, floating buttons and banners.
 * !important outranks Elementor's inline sticky styles. The lift ends when the menu closes. */
html.sh-mm-on-top body [data-sh-mm-lift][data-sh-mm-lift] { z-index: 2147483647 !important; }
html.sh-mm-on-top body [data-sh-mm-lift="position"][data-sh-mm-lift="position"] { position: relative !important; }
html.sh-mm-on-top .elementor-location-header .sh-mm-panel.is-open { z-index: 2147483647; }

/* ------------------------------------------------------------------ My Journey (dormant; owner addendum, 17 Oct 2026)
 * Waits for a top-level item classed sh-nav-journey (see inc/sneaky-megamenu.php). Its colour is the Sneaky Line itself
 * (Assess teal, Train blue, Eat green): the member's own path across the pillars. Text stays in deep teal and blue. */
.sh-mm-panel--journey, .sh-mm-key-journey { --mm-fill: #246b5f; --mm-ink: #173d39; --mm-soft: rgba(43, 143, 214, .11); --mm-tint: rgba(36, 107, 95, .05); --mm-line: rgba(23, 61, 57, .3); --mm-deep: #12507f; --mm-journey: linear-gradient(140deg, #246b5f, #2b8fd6 55%, #3d9442); }
html.sh-mm-ready .elementor-location-header .sh-mm-panel--journey .sh-mm-badge { background: var(--mm-journey); }
html.sh-mm-ready .elementor-location-header .sh-mm-panel--journey a.sh-mm-link:hover .sh-mm-chip { background: var(--mm-journey); }
html.sh-mm-ready .elementor-location-header .elementor-nav-menu--dropdown li.sh-mm-key-journey:is(.sh-mm-m-open, .current-menu-item, .current-menu-ancestor) > a .sh-mm-m-badge { background: var(--mm-journey); color: #fff; }
@media (min-width: 768px) {
	html.sh-mm-ready .elementor-location-header .elementor-nav-menu--main .elementor-nav-menu > li.sh-nav-journey { --sh-mm-pi: #173d39; }
	html.sh-mm-ready body .elementor-location-header .elementor-nav-menu--main .elementor-nav-menu > li.sh-nav-journey:is(:hover, .sh-mm-open, .current-menu-item, .current-menu-ancestor, .current-menu-parent) > a.elementor-item::after { background-image: linear-gradient(90deg, #246b5f, #2b8fd6, #3d9442) !important; }
	/* "Set a Goal" (when it exists) leads on the right; the other destinations sit on the left. Without it, one column. */
	html.sh-mm-ready .elementor-location-header .sh-mm-panel--journey .sh-mm-body:has(> .sh-mm-link--feature) { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 236px); gap: 16px; align-items: stretch; }
	html.sh-mm-ready .elementor-location-header .sh-mm-panel--journey .sh-mm-body > a.sh-mm-link--feature { grid-column: 2; grid-row: 1; align-content: start; }
	html.sh-mm-ready .elementor-location-header .sh-mm-panel--journey .sh-mm-body > .sh-mm-rows { grid-column: 1; grid-row: 1; }
	@container sh-mm (max-width: 640px) {
		html.sh-mm-ready .elementor-location-header .sh-mm-panel--journey .sh-mm-body:has(> .sh-mm-link--feature) { grid-template-columns: 1fr; }
		html.sh-mm-ready .elementor-location-header .sh-mm-panel--journey .sh-mm-body > :is(a.sh-mm-link--feature, .sh-mm-rows) { grid-column: auto; grid-row: auto; }
	}
}
/* My Journey header fit (measured with a simulated item, signed in, 17 Oct 2026). Today's signed-in row fits; one more
 * item ran 2-8px short at 1101-1160 and 960px and had 0-7px to spare elsewhere. These trims apply only while the row
 * holds a sh-nav-journey item, so the current header is unchanged. */
@media (min-width: 1101px) and (max-width: 1359px) {
	html.sh-mm-ready .elementor-location-header .elementor-nav-menu--main .elementor-nav-menu:has(> li.sh-nav-journey) { --e-nav-menu-horizontal-menu-item-margin: 11px; }
}
@media (min-width: 1025px) and (max-width: 1100px) {
	html.sh-mm-ready body.sh-shell .elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu:has(> li.sh-nav-journey) > li > a.elementor-item { padding-left: 4px !important; padding-right: 4px !important; }
}
@media (min-width: 960px) and (max-width: 1024px) {
	html.sh-mm-ready body.sh-shell .elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu:has(> li.sh-nav-journey) > li > a.elementor-item { padding-left: 7px !important; padding-right: 7px !important; }
}
@media (min-width: 901px) and (max-width: 959px) {
	html.sh-mm-ready body.sh-shell .elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu:has(> li.sh-nav-journey) > li > a.elementor-item { padding-left: 5px !important; padding-right: 5px !important; }
}
@media (min-width: 768px) and (max-width: 900px) {
	html.sh-mm-ready body.sh-shell .elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu:has(> li.sh-nav-journey) > li > a.elementor-item { padding-left: 3px !important; padding-right: 3px !important; }
}

/* ------------------------------------------------------------------ Account (owner, 17 October 2026)
 * "Simplify and be prettier but do not hamper user speed ... more logic/differentiation". Your Space is the featured
 * card (night, with the Sneaky Line), My Credits a quiet row card beneath it; each destination's chip takes its area's
 * colour (tone); Health Profile, Account settings and administrator links sit in a settings strip beside Log Out.
 * Scoped to the Account panel and its phone group; no other section changes. */
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body).sh-mm-panel--account .sh-mm-account-lead { display: grid; gap: 10px; }
html.sh-mm-ready .elementor-location-header .sh-mm-panel--account .sh-mm-intro .sh-mm-account-lead { margin-top: 22px; }
html.sh-mm-ready .elementor-location-header .sh-mm-panel--account .sh-mm-intro .sh-mm-account-lead a.sh-mm-link--feature { margin-top: 0; }
/* the featured card: night, with the Sneaky Line along its foot */
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body).sh-mm-panel--account a.sh-mm-link--feature { padding-bottom: 22px !important; background: radial-gradient(130% 90% at 100% 0%, rgba(110, 196, 232, .2), rgba(110, 196, 232, 0) 58%), linear-gradient(150deg, #173a4c, #0f2230) !important; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body).sh-mm-panel--account a.sh-mm-link--feature:is(:hover, :focus) { background: radial-gradient(130% 90% at 100% 0%, rgba(110, 196, 232, .28), rgba(110, 196, 232, 0) 60%), linear-gradient(150deg, #1c4459, #0f2230) !important; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body).sh-mm-panel--account a.sh-mm-link--feature::after { content: ""; position: absolute; left: 18px; right: 18px; bottom: 0; height: 3px; border-radius: 3px 3px 0 0; background: linear-gradient(90deg, #3fb39d, #6ec4e8 40%, #4ea6ec 70%, #ec6a98); }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body).sh-mm-panel--account a.sh-mm-link--feature .sh-mm-kicker { color: #8fd3ef; }
/* My Credits: a quiet row card under it */
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body).sh-mm-panel--account .sh-mm-account-credits a.sh-mm-link { border: 1px solid rgba(18, 44, 58, .09) !important; background: rgba(255, 255, 255, .78) !important; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body).sh-mm-panel--account .sh-mm-account-credits a.sh-mm-link:is(:hover, :focus) { border-color: rgba(138, 90, 6, .3) !important; background: #fffaf2 !important; }
/* rows: a 36px chip in the destination's colour, one line on what it holds */
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body).sh-mm-panel--account a.sh-mm-link--row { align-items: center; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body).sh-mm-panel--account a.sh-mm-link--row .sh-mm-chip { width: 36px; height: 36px; border-radius: 12px; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body).sh-mm-panel--account a.sh-mm-tone-train .sh-mm-chip { background: rgba(43, 143, 214, .13); color: #1b6fae; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body).sh-mm-panel--account a.sh-mm-tone-train:is(:hover, :focus) .sh-mm-chip { background: #2b8fd6; color: #fff; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body).sh-mm-panel--account a.sh-mm-tone-eat .sh-mm-chip { background: rgba(61, 148, 66, .13); color: #2f7a34; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body).sh-mm-panel--account a.sh-mm-tone-eat:is(:hover, :focus) .sh-mm-chip { background: #3d9442; color: #fff; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body).sh-mm-panel--account a.sh-mm-tone-helpers .sh-mm-chip { background: rgba(214, 51, 108, .11); color: #b0285a; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body).sh-mm-panel--account a.sh-mm-tone-helpers:is(:hover, :focus) .sh-mm-chip { background: #d6336c; color: #fff; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body).sh-mm-panel--account a.sh-mm-tone-learn .sh-mm-chip { background: rgba(184, 116, 10, .13); color: #8a5a06; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body).sh-mm-panel--account a.sh-mm-tone-learn:is(:hover, :focus) .sh-mm-chip { background: #b8740a; color: #fff; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body).sh-mm-panel--account a.sh-mm-tone-assess .sh-mm-chip { background: rgba(36, 107, 95, .12); color: #246b5f; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body).sh-mm-panel--account a.sh-mm-tone-assess:is(:hover, :focus) .sh-mm-chip { background: #246b5f; color: #fff; }
/* the settings strip: compact, quiet, separated by a hairline; Log Out at its end */
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body).sh-mm-panel--account .sh-mm-foot--account { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 6px 12px; padding-top: 12px; border-top: 1px solid rgba(18, 44, 58, .08); }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body).sh-mm-panel--account .sh-mm-account-settings { flex: 1 1 auto; justify-content: flex-start; gap: 4px; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body).sh-mm-panel--account .sh-mm-account-logout { flex: 0 0 auto; justify-content: flex-end; margin-left: auto !important; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body).sh-mm-panel--account a.sh-mm-link--utility { gap: 8px; min-height: 40px; padding: 6px 12px 6px 8px !important; border-radius: 12px; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body).sh-mm-panel--account a.sh-mm-link--utility .sh-mm-chip { width: 28px; height: 28px; border-radius: 9px; background: rgba(18, 44, 58, .06); color: #375568; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body).sh-mm-panel--account a.sh-mm-link--utility .sh-mm-chip svg { width: 16px; height: 16px; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body).sh-mm-panel--account a.sh-mm-link--utility .sh-mm-label { color: #375568; font-size: 14px; font-weight: 650; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body).sh-mm-panel--account a.sh-mm-link--utility:is(:hover, :focus) .sh-mm-chip { background: #122c3a; color: #fff; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body).sh-mm-panel--account a.sh-mm-link--utility:is(:hover, :focus) .sh-mm-label { color: #122c3a; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body).sh-mm-panel--account a.sh-mm-link--logout { align-items: center; gap: 6px; min-height: 40px; padding: 6px 12px !important; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body).sh-mm-panel--account a.sh-mm-link--logout .sh-mm-chip { width: 20px; height: 20px; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body).sh-mm-panel--account a.sh-mm-link--logout .sh-mm-label { color: #375568; font-size: 14px; font-weight: 650; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body).sh-mm-panel--account a.sh-mm-link--logout:is(:hover, :focus) .sh-mm-label { color: #122c3a; }
@media (min-width: 768px) {
	/* a narrow panel (tablets) puts the introduction on top: Your Space and My Credits then sit side by side */
	@container sh-mm (max-width: 760px) {
		html.sh-mm-ready .elementor-location-header .sh-mm-panel--account .sh-mm-intro > .sh-mm-account-lead { grid-column: 1 / -1; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); align-items: stretch; margin-top: 16px; }
		html.sh-mm-ready .elementor-location-header .sh-mm-panel--account .sh-mm-account-credits,
		html.sh-mm-ready .elementor-location-header .sh-mm-panel--account .sh-mm-account-credits > li,
		html.sh-mm-ready .elementor-location-header .sh-mm-panel--account .sh-mm-account-credits a.sh-mm-link { height: 100%; }
	}
	@container sh-mm (max-width: 520px) {
		html.sh-mm-ready .elementor-location-header .sh-mm-panel--account .sh-mm-account-groups { grid-template-columns: 1fr; }
		html.sh-mm-ready .elementor-location-header .sh-mm-panel--account .sh-mm-account-groups > .sh-mm-group { grid-column: auto !important; grid-row: auto !important; }
		html.sh-mm-ready .elementor-location-header .sh-mm-panel--account .sh-mm-intro > .sh-mm-account-lead { grid-template-columns: 1fr; }
	}
}
/* phones: the same order in the sheet; strip links keep 44px targets */
html.sh-mm-ready .elementor-location-header .sh-mm-m-body.sh-mm-panel--account .sh-mm-account-groups { grid-template-columns: 1fr; }
html.sh-mm-ready .elementor-location-header .sh-mm-m-body.sh-mm-panel--account a.sh-mm-link--utility,
html.sh-mm-ready .elementor-location-header .sh-mm-m-body.sh-mm-panel--account a.sh-mm-link--logout { min-height: 44px; }
html.sh-mm-ready .elementor-location-header .sh-mm-m-body.sh-mm-panel--account .sh-mm-foot--account { justify-content: flex-start; }

/* ================================================================== Help as the call to action (owner, 19 October 2026)
 * "make the help dropdown a dark pink ... more of a call to action", "make the support/help banner clickable and open
 * /support" and "put support in the same red/pink above health". Help's own dark pink (#b0285a, --mm-ink; white text
 * 6.4:1), deeper on hover and while open (#7b244b, --mm-deep). Support's place above Health is inc/sneaky-nav.php's. */

/* Support, first in Help: the same pink, in the panel and in the phone sheet */
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) li.sh-mm-for-support > a.sh-mm-link { background: rgba(214, 51, 108, .08) !important; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) li.sh-mm-for-support > a.sh-mm-link:is(:hover, :focus) { background: rgba(214, 51, 108, .15) !important; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) li.sh-mm-for-support > a.sh-mm-link .sh-mm-chip { background: #b0285a; color: #fff; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) li.sh-mm-for-support > a.sh-mm-link:is(:hover, :focus) .sh-mm-chip { background: #7b244b; color: #fff; }
html.sh-mm-ready .elementor-location-header :is(.sh-mm-panel, .sh-mm-m-body) li.sh-mm-for-support > a.sh-mm-link .sh-mm-label { color: #b0285a; }

@media (min-width: 768px) {
	/* the Help item on the top row: exactly like the other items, only its word and chevron in the dark pink (owner,
	   19 Oct 2026: "no background color for help pill... must still match the other main nav items") */
	html.sh-mm-ready body .elementor-location-header .elementor-nav-menu--main .elementor-nav-menu > li.sh-nav-helpers.sh-mm-has-panel > a.elementor-item { color: #b0285a !important; }
	html.sh-mm-ready body .elementor-location-header .elementor-nav-menu--main .elementor-nav-menu > li.sh-nav-helpers.sh-mm-has-panel:is(:hover, .sh-mm-open) > a.elementor-item { color: #7b244b !important; }
	html.sh-mm-ready body .elementor-location-header .elementor-nav-menu--main .elementor-nav-menu > li.sh-nav-helpers.sh-mm-has-panel > button.sh-mm-toggle { color: #b0285a; }

	/* the panel's introduction opens Support (sneaky-megamenu.js introLink()) */
	html.sh-mm-ready .elementor-location-header .sh-mm-panel a.sh-mm-intro--link,
	html.sh-mm-ready .elementor-location-header .sh-mm-panel a.sh-mm-intro--link:is(:hover, :focus) {
		display: flex !important;
		flex-direction: column;
		align-items: stretch;
		margin: 0;
		padding: 26px 24px 24px !important;
		border: 0 !important;
		border-radius: 0;
		background: linear-gradient(168deg, var(--mm-soft) 0%, var(--mm-tint) 46%, rgba(255, 255, 255, 0) 100%) !important;
		color: #375568 !important;
		font-size: 15px;
		font-weight: 400;
		line-height: 1.45;
		letter-spacing: 0;
		text-align: left;
		text-decoration: none !important;
		text-transform: none;
		white-space: normal !important;
		transform: none !important;
		cursor: pointer;
	}
	html.sh-mm-ready .elementor-location-header .sh-mm-panel a.sh-mm-intro--link:is(:hover, :focus) { background: linear-gradient(168deg, rgba(214, 51, 108, .2) 0%, var(--mm-soft) 55%, var(--mm-tint) 100%) !important; }
	html.sh-mm-ready .elementor-location-header .sh-mm-panel a.sh-mm-intro--link:focus-visible { outline: 2px solid #b0285a; outline-offset: -4px; }
	html.sh-mm-ready .elementor-location-header .sh-mm-panel a.sh-mm-intro--link .sh-mm-title { color: #b0285a; }
	html.sh-mm-ready .elementor-location-header .sh-mm-panel a.sh-mm-intro--link:is(:hover, :focus) .sh-mm-title { text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 4px; }
	html.sh-mm-ready .elementor-location-header .sh-mm-panel .sh-mm-intro-go { display: inline-block; width: 19px; height: 19px; margin-left: 6px; vertical-align: -2px; transition: transform .16s cubic-bezier(.2, .7, .2, 1); }
	html.sh-mm-ready .elementor-location-header .sh-mm-panel a.sh-mm-intro--link:is(:hover, :focus) .sh-mm-intro-go { transform: translateX(3px); }
}

@media (max-width: 767px) {
	/* phones: Help's heading in the sheet carries the same pink */
	html.sh-mm-ready .elementor-location-header .elementor-nav-menu--dropdown li.sh-mm-m-item.sh-nav-helpers > a .sh-mm-m-badge { background: #b0285a; color: #fff; }
	html.sh-mm-ready .elementor-location-header .elementor-nav-menu--dropdown li.sh-mm-m-item.sh-nav-helpers > a .sh-mm-m-label { color: #b0285a; }
}
