/* ==========================================================================
   Round 2 interface changes, in the Update 7 colours (Deep Teal, Antique Gold, Warm Ivory, Warm Sand).
   The Turquoise / Aqua version of this file is kept in design-review/palette-update8-teal.css.
   ========================================================================== */

/* ---- Buttons: two styles only. Solid (primary) and text with an arrow on a soft tint (secondary). Same height, size and weight. ---- */
.mu-bw .elementor-button-text { background: none !important; color: inherit !important; }
.e-con.mu-btn-row { padding: 0; --padding-top: 0px; --padding-right: 0px; --padding-bottom: 0px; --padding-left: 0px; }   /* rows sit flush with the text above */
.mu-bw .elementor-button, .mu-bw--arrow:not(.mu-bw--arrowonly) .elementor-button { min-height: 48px; font-size: 1rem; font-weight: 600; padding: .6rem 1.6rem; }
.mu-bw.mu-bw--arrowonly .elementor-button { padding-left: 0; padding-right: 0; }
.mu-bw--arrow:not(.mu-bw--arrowonly) .elementor-button, .mu-link-arrow {
	background: rgba(204,160,88,.22); color: #1d4a63; border-radius: 999px; padding: .6rem 1.4rem .6rem 1.5rem; min-height: 48px; font-weight: 600;
	transition: background-color 300ms var(--mu-ease), color 300ms var(--mu-ease);
}
.mu-bw--arrow:not(.mu-bw--arrowonly) .elementor-button:hover, .mu-bw--arrow:not(.mu-bw--arrowonly) .elementor-button:focus, .mu-link-arrow:hover { background: rgba(204,160,88,.42); color: #1d4a63; text-decoration: none; }
.mu-link-arrow { align-self: flex-start; display: inline-flex; }
.mu-bw--arrow:not(.mu-bw--arrowonly) .elementor-button-text { color: inherit; }
/* on dark backgrounds */
.mu-hh .mu-bw--arrow:not(.mu-bw--arrowonly) .elementor-button, .mu-abh .mu-bw--arrow:not(.mu-bw--arrowonly) .elementor-button, .mu-hcl .mu-bw--arrow:not(.mu-bw--arrowonly) .elementor-button,
.mu-section--teal .mu-bw--arrow:not(.mu-bw--arrowonly) .elementor-button, .mu-footer .mu-link-arrow { background: rgba(240,219,176,.18); color: #fff; }
.mu-hh .mu-bw--arrow:not(.mu-bw--arrowonly) .elementor-button:hover, .mu-abh .mu-bw--arrow:not(.mu-bw--arrowonly) .elementor-button:hover, .mu-hcl .mu-bw--arrow:not(.mu-bw--arrowonly) .elementor-button:hover,
.mu-section--teal .mu-bw--arrow:not(.mu-bw--arrowonly) .elementor-button:hover, .mu-footer .mu-link-arrow:hover { background: rgba(240,219,176,.34); color: #fff; }
.mu-hh .mu-bw--arrow:not(.mu-bw--arrowonly) .elementor-button-text, .mu-abh .mu-bw--arrow:not(.mu-bw--arrowonly) .elementor-button-text, .mu-hcl .mu-bw--arrow:not(.mu-bw--arrowonly) .elementor-button-text { color: #fff; }

/* ---- FAQ tag ---- */
.mu-tag.elementor-widget { width: fit-content; align-self: flex-start; background: #CCA058; border-radius: 999px; padding: .3rem .95rem; }
.mu-tag .elementor-heading-title { color: #24363A !important; font-weight: 800; letter-spacing: .16em; margin: 0; }

/* ---- Icons ---- */
.mu-ico-wrap.elementor-widget { width: auto; }
.mu-ico { display: inline-grid; place-items: center; width: 48px; height: 48px; border-radius: 14px; background: rgba(204,160,88,.24); color: #1d4a63; }
.mu-fl { display: flex; align-items: center; gap: .45rem; }
p.mu-field > span.mu-fl { display: flex; align-items: center; gap: .55rem; }
p.mu-field > span.mu-fl svg { width: 18px; height: 18px; margin-top: -1px; }
.mu-fl svg, .mu-spec--icon svg { flex: none; color: #7A5516; }
.mu-spec--icon { display: flex; align-items: center; gap: .5rem; }

/* ---- Pathway cards: one action per control ---- */
.mu-card--static .elementor-button::before { display: none; }
.mu-card--path .mu-bw--arrow { align-self: flex-start; }
.mu-details summary { list-style: none; display: inline-flex; align-items: center; gap: .6rem; font-weight: 700; color: #1d4a63; padding: .4rem .2rem; border-bottom: 2px solid rgba(204,160,88,.8); cursor: pointer; }
.mu-details summary::-webkit-details-marker { display: none; }
.mu-details summary::after { content: ""; width: .55rem; height: .55rem; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg) translateY(-2px); transition: transform 300ms var(--mu-ease); }
.mu-details[open] summary::after { transform: rotate(-135deg) translateY(-2px); }
.mu-details p { margin-top: .5rem; }

/* ---- Hero: a smooth fade from the panel into the photo, kept to the left edge so faces stay clear; a light shade at the top and bottom edges only ---- */
.e-con.mu-hh__ph::before, .e-con.mu-abh__ph::before { background: linear-gradient(90deg, #1d4a63 0%, rgba(29,74,99,.9) 6%, rgba(29,74,99,.58) 14%, rgba(29,74,99,.24) 24%, rgba(29,74,99,.06) 31%, rgba(29,74,99,0) 36%); }
.e-con.mu-hh__ph::after, .e-con.mu-abh__ph::after { content: ""; position: absolute; inset: 0; z-index: 0; background: linear-gradient(180deg, rgba(15,45,62,.3) 0%, rgba(15,45,62,0) 12%, rgba(15,45,62,0) 86%, rgba(15,45,62,.32) 100%); pointer-events: none; }
.mu-hh__key { display: block; color: #fff; font-weight: 700; font-size: 1.3rem; line-height: 1.35; margin-bottom: .55rem; padding-left: .9rem; border-left: 3px solid #CCA058; }

/* ---- Phones: the words come first, then the picture ---- */
@media (max-width: 900px) {
	.e-con.mu-hh__ph, .e-con.mu-abh__ph { order: 2; min-height: 260px; }
	.e-con.mu-hh__ph::before, .e-con.mu-abh__ph::before { background: linear-gradient(180deg, #1d4a63 0%, rgba(29,74,99,.55) 22%, rgba(29,74,99,0) 55%); }
	.e-con.mu-hh__lf, .e-con.mu-abh__lf { order: 1; }
}

/* ---- Patterns: corners and edges only ---- */
.e-con.mu-abq__rt::after { right: -3.5rem; top: -3.5rem; width: 13rem; height: 13rem; background: #CCA058; opacity: .4; -webkit-mask: var(--mu-motif-rings) no-repeat center / contain; mask: var(--mu-motif-rings) no-repeat center / contain; }
.mu-footer__waveband { position: absolute; right: -60px; bottom: 0; width: min(460px, 70%); height: auto; justify-content: flex-end; pointer-events: none; }
.mu-footer__waveband .mu-motif { width: 100%; opacity: .3; }
.mu-footer__bottom { position: relative; z-index: 1; }

/* ---- Workshop labels: plain tags, not buttons ---- */
.mu-chips .mu-chip { background: rgba(29,74,99,.09); border: 0; border-radius: 6px; color: #1d4a63; font-weight: 600; padding: .45rem .9rem .45rem .8rem; cursor: default; }
.mu-chips .mu-chip::before { content: ""; display: inline-block; width: .45rem; height: .45rem; border-radius: 50%; background: #CCA058; margin-right: .55rem; vertical-align: .1em; }

/* ---- Testimonials: one layout, lifted off the page ---- */
.mu-quote { border: 1px solid rgba(204,160,88,.35); box-shadow: 0 16px 36px -12px rgba(29,74,99,.3), 0 3px 8px rgba(29,74,99,.08); }
.mu-quote__avatar { width: 48px; height: 48px; background: #E6D8C4; color: #265C7B; }
.mu-quote__avatar svg { display: block; }

/* ---- Hover: equal space left and right ---- */
@media (min-width: 901px) {
	.e-con.mu-ix__row { padding-inline: 1.25rem; margin-inline: -1.25rem; }
	.e-con.mu-picks { margin-inline: -1.5rem; border-top: 0; border-bottom: 0; position: relative; }
	.e-con.mu-picks::before, .e-con.mu-picks::after { content: ""; position: absolute; left: 1.5rem; right: 1.5rem; height: 1px; background: rgba(204,160,88,.6); pointer-events: none; }
	.e-con.mu-picks::before { top: 0; } .e-con.mu-picks::after { bottom: 0; }
	.e-con.mu-pick, .e-con.mu-pick:first-child { padding-inline: 1.5rem; --padding-left: 24px; --padding-right: 24px; }
}

/* ---- Groups: the three days as a journey ---- */
.e-con.mu-journey { border-top: 2px solid rgba(122,85,22,.4); }
.mu-journey .mu-step { position: relative; padding-top: 2.4rem; }
.mu-journey .mu-step + .mu-step { border-left: 0; }
.mu-journey .mu-step::before { content: ""; position: absolute; top: -9px; left: 1.75rem; width: 16px; height: 16px; border-radius: 50%; background: #CCA058; box-shadow: 0 0 0 5px rgba(204,160,88,.3); }
.mu-journey .mu-step:first-child::before { left: 0; }
.mu-journey .mu-step:last-child::before { background: #fff; border: 3px solid #CCA058; }
.e-con.mu-journey .mu-step .mu-step__num.elementor-widget { display: none; }
@media (max-width: 1100px) {
	.e-con.mu-journey { grid-template-columns: 1fr; border-top: 0; border-left: 2px solid rgba(122,85,22,.4); padding-left: 1.6rem; gap: 0; }
	.mu-journey .mu-step, .mu-journey .mu-step:first-child, .mu-journey .mu-step:nth-child(odd) { padding: 1.2rem 0 1.2rem 0; border-top: 0; margin-top: 0; }
	.mu-journey .mu-step::before, .mu-journey .mu-step:first-child::before { top: 1.55rem; left: calc(-1.6rem - 9px); }
}

/* ---- News & Media on phones: the media kit reads as its own section ---- */
body.mu-p-news-media #media-kit { border-top: 6px solid #CCA058; }

/* ---- News & Media: the media kit sits on Soft Stone so it reads as its own section ---- */
body.mu-p-news-media #media-kit { background: #D9DDD8; }

/* About story: paragraphs may flow across the two columns so the columns stay balanced */
.mu-cols p { break-inside: auto; orphans: 3; widows: 3; }

/* ==========================================================================
   Motion. Switched on by the page head (html.mu-motion) unless the visitor's device asks for reduced motion.
   The owner can preview anyway with ?motion=on (and ?motion=off to go back); the preview shows a small badge.
   Hidden-until-revealed states also need the motion script to be running, and a 4-second failsafe in the page head
   shows everything if it has not started.
   ========================================================================== */
@keyframes m-down { from { opacity: 0; transform: translateY(-18px); } to { opacity: 1; transform: none; } }
@keyframes m-up-s { from { opacity: 0; transform: translateY(32px); } to { opacity: 1; transform: none; } }
@keyframes m-up   { from { opacity: 0; transform: translateY(40px); } to { opacity: 1; transform: none; } }
@keyframes m-glide { from { opacity: 0; transform: translateY(-10px); } to { opacity: 1; transform: none; } }
@keyframes m-fill-hs { from, 15% { color: transparent; -webkit-text-stroke: 1.6px var(--mu-gold-light); } to { color: var(--mu-gold-light); -webkit-text-stroke: 0 var(--mu-gold-light); } }
@keyframes m-fill-sb { from, 15% { color: transparent; -webkit-text-stroke: 1.6px var(--mu-gold-text); } to { color: var(--mu-gold-text); -webkit-text-stroke: 0 var(--mu-gold-text); } }
@keyframes m-ring { from { transform: translate(-50%, -50%) scale(.08); opacity: .95; } to { transform: translate(-50%, -50%) scale(1); opacity: 0; } }

/* 1. Page load: the hero text arrives in order (CSS only, so it never waits for a script) */
html.mu-motion .mu-hh__lf > *,
html.mu-motion .mu-abh__lf > * { animation: m-down 650ms var(--mu-ease) backwards; }
html.mu-motion .mu-hh__lf > *:nth-child(2),
html.mu-motion .mu-abh__lf > *:nth-child(2) { animation-delay: 130ms; }
html.mu-motion .mu-hh__lf > *:nth-child(3),
html.mu-motion .mu-abh__lf > *:nth-child(3) { animation-delay: 260ms; }
html.mu-motion .mu-hh__lf > *:nth-child(4),
html.mu-motion .mu-abh__lf > *:nth-child(4) { animation-delay: 390ms; }
html.mu-motion .mu-hh__lf > *:nth-child(5) { animation-delay: 520ms; }

/* 2. Section reveal (desktop): the content of each section rises and fades in; the coloured band stays put */
@media (min-width: 901px) {
html.mu-motion:not(.mu-motion-off) .elementor > .e-parent:not(:first-child):not(.mu-hh):not(.mu-abh):not(.m-in) > * { opacity: 0; }
html.mu-motion .elementor > .e-parent:not(:first-child):not(.mu-hh):not(.mu-abh).m-in > * { animation: m-up-s 800ms var(--mu-ease) backwards; }
}

/* 3. Headings and 4. grids (tablet and desktop): headings fade down in order, cards cascade upward */
@media (min-width: 768px) {
html.mu-motion:not(.mu-motion-off) :is(.mu-section-head > *, .mu-faq-layout__head > *, .mu-ix__hd > *, .mu-hs__hd > *, .mu-sbs__hd > *, .mu-twocol__lf > *, .mu-abc__lf > *, .mu-absc__lf > .elementor-widget:nth-child(-n+2), .mu-hf__rt > .elementor-widget:nth-child(-n+2), .mu-abs__in > .elementor-widget:nth-child(-n+2)):not(.m-in) { opacity: 0; }
html.mu-motion :is(.mu-section-head > *, .mu-faq-layout__head > *, .mu-ix__hd > *, .mu-hs__hd > *, .mu-sbs__hd > *, .mu-twocol__lf > *, .mu-abc__lf > *, .mu-absc__lf > .elementor-widget:nth-child(-n+2), .mu-hf__rt > .elementor-widget:nth-child(-n+2), .mu-abs__in > .elementor-widget:nth-child(-n+2)).m-in { animation: m-down 650ms var(--mu-ease) backwards; animation-delay: var(--m-d, 0ms); }
html.mu-motion:not(.mu-motion-off) :is(.mu-picks, .mu-grid--cards, .mu-resgrid, .mu-testi__grid, .mu-chapters, .mu-tiles__grid, .mu-ix__list, .mu-hs__pn, .mu-vals, .mu-not):not(.m-in) > * { opacity: 0; }
html.mu-motion :is(.mu-picks, .mu-grid--cards, .mu-resgrid, .mu-testi__grid, .mu-chapters, .mu-tiles__grid, .mu-ix__list, .mu-hs__pn, .mu-vals, .mu-not).m-in > * { animation: m-up 700ms var(--mu-ease) backwards; }
html.mu-motion :is(.mu-picks, .mu-grid--cards, .mu-resgrid, .mu-testi__grid, .mu-chapters, .mu-tiles__grid, .mu-ix__list, .mu-hs__pn, .mu-vals, .mu-not).m-in > *:nth-child(2) { animation-delay: 120ms; }
html.mu-motion :is(.mu-picks, .mu-grid--cards, .mu-resgrid, .mu-testi__grid, .mu-chapters, .mu-tiles__grid, .mu-ix__list, .mu-hs__pn, .mu-vals, .mu-not).m-in > *:nth-child(3) { animation-delay: 240ms; }
html.mu-motion :is(.mu-picks, .mu-grid--cards, .mu-resgrid, .mu-testi__grid, .mu-chapters, .mu-tiles__grid, .mu-ix__list, .mu-hs__pn, .mu-vals, .mu-not).m-in > *:nth-child(4) { animation-delay: 360ms; }
html.mu-motion :is(.mu-picks, .mu-grid--cards, .mu-resgrid, .mu-testi__grid, .mu-chapters, .mu-tiles__grid, .mu-ix__list, .mu-hs__pn, .mu-vals, .mu-not).m-in > *:nth-child(5) { animation-delay: 480ms; }
html.mu-motion :is(.mu-picks, .mu-grid--cards, .mu-resgrid, .mu-testi__grid, .mu-chapters, .mu-tiles__grid, .mu-ix__list, .mu-hs__pn, .mu-vals, .mu-not).m-in > *:nth-child(n+6) { animation-delay: 600ms; }
}

/* 5. ALIGN letters start as outlines and fill with colour, one after another (all screen sizes) */
html.mu-motion:not(.mu-motion-off) .mu-hs__l .elementor-heading-title:not(.m-in) { color: transparent; -webkit-text-stroke: 1.6px var(--mu-gold-light); }
html.mu-motion:not(.mu-motion-off) .mu-sb__l .elementor-heading-title:not(.m-in) { color: transparent; -webkit-text-stroke: 1.6px var(--mu-gold-text); }
html.mu-motion .mu-hs__l .elementor-heading-title.m-in { animation: m-fill-hs 900ms ease-out backwards; animation-delay: var(--m-d, 0ms); }
html.mu-motion .mu-sb__l .elementor-heading-title.m-in { animation: m-fill-sb 900ms ease-out backwards; }

/* 6. Ripple (made by the motion script) */
html.mu-motion .m-ring { position: fixed; z-index: 99998; border-radius: 50%; border: 3px solid var(--mu-gold); box-shadow: 0 0 22px rgba(204,160,88,.5); pointer-events: none; opacity: 0; transform: translate(-50%, -50%) scale(.08); animation: m-ring 1500ms cubic-bezier(.2,.6,.3,1) backwards; }

/* 7. FAQ: answers fade in as they open and the plus turns into a minus */
html.mu-motion .elementor-tab-content { animation: m-glide 650ms var(--mu-ease) backwards; }
html.mu-motion .elementor-accordion-icon { transition: transform 450ms var(--mu-ease); }
html.mu-motion .elementor-tab-title.elementor-active .elementor-accordion-icon { transform: rotate(180deg); }

/* 8. Buttons: a gentle press, and a soft glow on the solid style */
html.mu-motion .mu-btn,
html.mu-motion .mu-bw .elementor-button { transition: transform 200ms var(--mu-ease), box-shadow 300ms var(--mu-ease), background-color 300ms var(--mu-ease), color 300ms var(--mu-ease); }
html.mu-motion .mu-btn:active,
html.mu-motion .mu-bw .elementor-button:active { transform: scale(.96) translateY(1px); transition-duration: 80ms; box-shadow: none; }
html.mu-motion .mu-btn--gold:hover,
html.mu-motion .mu-bw--gold .elementor-button:hover { box-shadow: 0 0 0 5px rgba(204,160,88,.28), 0 14px 28px -10px rgba(204,160,88,.85); }
html.mu-motion .mu-btn--primary:hover,
html.mu-motion .mu-bw--primary .elementor-button:hover { box-shadow: 0 0 0 5px rgba(38,92,123,.18), 0 14px 28px -10px rgba(38,92,123,.7); }

/* 9. Text links: a thin underline draws in from the left */
html.mu-motion .mu-nav__list a::after { transform-origin: left center; }
html.mu-motion .mu-footer__list a,
html.mu-motion .mu-footer__legal-list a { background: linear-gradient(currentColor, currentColor) no-repeat left calc(50% + .72em) / 0 1px; transition: background-size 350ms var(--mu-ease); text-decoration: none; }
html.mu-motion .mu-footer__list a:hover,
html.mu-motion .mu-footer__list a:focus-visible,
html.mu-motion .mu-footer__legal-list a:hover { background-size: 100% 1px; text-decoration: none; }

/* 10. Card lift: raises with a soft shadow, and the picture inside zooms slightly (devices with a pointer) */
@media (hover: hover) {
html.mu-motion :is(.mu-card, .mu-quote, .mu-tile, .mu-rescard, .mu-post-card, .mu-mention, .mu-hs__p) { transition: transform 350ms var(--mu-ease), box-shadow 350ms var(--mu-ease); }
html.mu-motion :is(.mu-card, .mu-quote, .mu-tile, .mu-rescard, .mu-post-card, .mu-mention):hover { transform: translateY(-8px) !important; box-shadow: 0 26px 48px -18px rgba(21,47,61,.45), 0 8px 16px -8px rgba(21,47,61,.2) !important; }
html.mu-motion :is(.mu-card, .mu-quote, .mu-tile, .mu-rescard, .mu-post-card, .mu-mention, .mu-hs__p) img { transition: transform 700ms var(--mu-ease); }
html.mu-motion :is(.mu-card, .mu-tile, .mu-rescard, .mu-post-card, .mu-mention, .mu-hs__p):hover img { transform: scale(1.06); }
html.mu-motion :is(.mu-card__media, .mu-rescard__media, .mu-hs__p, .mu-post-card__media) { overflow: hidden; }
html.mu-motion .e-con.mu-hs__p:hover, html.mu-motion .e-con.mu-hs__p:focus-within { transform: translateY(-12px) !important; box-shadow: 0 30px 50px -18px rgba(8,28,40,.7), 0 10px 18px -8px rgba(8,28,40,.4) !important; z-index: 3; }
}

/* the owner's preview badge */
.m-badge { position: fixed; left: 12px; bottom: 12px; z-index: 99997; background: #1d4a63; color: #fff; font: 600 12.5px/1.35 Avenir, system-ui, sans-serif; padding: 8px 12px; border-radius: 12px; max-width: 280px; box-shadow: 0 8px 22px -8px rgba(15,45,62,.6); }
.m-badge a { color: #F0DBB0; text-decoration: underline; }
@media (max-width: 1259px) { .m-badge { bottom: 92px; } }

/* Preview on a device with "reduce motion" switched on: Elementor's own reduced-motion rule sets every transition to 0s, so the durations are restored here (preview only) */
html.mu-motion-force :is(.mu-card, .mu-quote, .mu-tile, .mu-rescard, .mu-post-card, .mu-mention, .mu-hs__p) { transition-duration: 350ms !important; transition-delay: 0s !important; }
html.mu-motion-force :is(.mu-card, .mu-quote, .mu-tile, .mu-rescard, .mu-post-card, .mu-mention, .mu-hs__p) img { transition-duration: 700ms !important; transition-delay: 0s !important; }
html.mu-motion-force .e-con.mu-hs__p { transition-duration: 350ms !important; }
html.mu-motion-force :is(.mu-btn, .mu-bw .elementor-button) { transition-duration: 200ms, 300ms, 300ms, 300ms !important; transition-delay: 0s !important; }
html.mu-motion-force :is(.mu-btn:active, .mu-bw .elementor-button:active) { transition-duration: 80ms !important; }
html.mu-motion-force .elementor-accordion-icon { transition-duration: 450ms !important; }
html.mu-motion-force :is(.mu-footer__list a, .mu-footer__legal-list a) { transition-duration: 350ms !important; }


/* ---- ALIGN Method: the five stages as stacked chapters on one vertical path ---- */
.e-con.mu-pth__in { max-width: 1200px; margin: 0 auto; width: 100%; padding: 0 var(--mu-gutter) clamp(3.5rem, 2.5rem + 4vw, 6rem); --padding-top: 0px; --padding-bottom: 96px; --padding-left: 32px; --padding-right: 32px; }
.e-con.mu-pth__list { position: relative; padding: 0 0 0 7.5rem; gap: 0; --padding-left: 120px; --padding-top: 0px; --padding-bottom: 0px; --padding-right: 0px; }
/* each step draws the line down to the next circle, so the path ends at the last one */
.e-con.mu-pth__st:not(:last-child)::before { content: ""; position: absolute; left: calc(-7.5rem + 36px); width: 4px; border-radius: 4px; top: calc(1.5rem + 76px); bottom: -1.5rem; background: linear-gradient(var(--pc0, #8DCCD4), var(--pc1, #55A69F)); z-index: 1; }
.e-con.mu-pth__st:nth-child(1) { --pc0: #8DCCD4; --pc1: #55A69F; } .e-con.mu-pth__st:nth-child(2) { --pc0: #55A69F; --pc1: #86AB8E; } .e-con.mu-pth__st:nth-child(3) { --pc0: #86AB8E; --pc1: #B1A872; } .e-con.mu-pth__st:nth-child(4) { --pc0: #B1A872; --pc1: #CCA058; }
.e-con.mu-pth__st { display: grid; grid-template-columns: minmax(0, 1fr) 15rem; gap: 2rem; align-items: center; position: relative; padding: 1.6rem 0 1.8rem; border-top: var(--mu-line-gold); --padding-top: 26px; --padding-bottom: 29px; --padding-left: 0px; --padding-right: 0px; }
.e-con.mu-pth__st:first-child { border-top: 0; }
.mu-pth__dot.elementor-widget { position: absolute; left: -7.5rem; top: 1.5rem; width: 76px; height: 76px; border-radius: 50%; background: #265C7B; box-shadow: 0 0 0 8px #fff; display: flex; align-items: center; justify-content: center; z-index: 2; }
.mu-pth__dot .elementor-heading-title { color: #fff; font-size: 2.3rem; line-height: 1; font-weight: 800; margin: 0; }
.e-con.mu-pth__tx { padding: 0; gap: .5rem; --padding-top: 0px; --padding-bottom: 0px; --padding-left: 0px; --padding-right: 0px; }
.mu-pth__tx .mu-eyebrow { color: var(--mu-deep-teal); margin: 0; }
.mu-pth__tx h3.elementor-heading-title { font-size: clamp(1.4rem, 1.15rem + 1vw, 1.9rem); line-height: 1.15; color: var(--mu-deep-teal); margin: 0; }
.mu-pth__tx .mu-copy p { max-width: 38rem; margin: 0; }
.e-con.mu-pth__im { padding: 0; height: 9.5rem; border-radius: 14px; overflow: hidden; background: var(--mu-sand); --padding-top: 0px; --padding-bottom: 0px; --padding-left: 0px; --padding-right: 0px; }
.mu-pth__im .elementor-widget-image { height: 100%; width: 100%; margin: 0; }
.mu-pth__im img { width: 100%; height: 100%; object-fit: cover; display: block; }
.e-con.mu-pth__st:target { box-shadow: inset 0 0 0 3px rgba(204,160,88,.8); border-radius: 12px; }
@media (max-width: 900px) {
	.e-con.mu-pth__list { padding-left: 4.6rem; --padding-left: 74px; }
	.e-con.mu-pth__st:not(:last-child)::before { left: calc(-4.6rem + 24px); top: calc(1.3rem + 52px); bottom: -1.3rem; }
	.e-con.mu-pth__st { grid-template-columns: 1fr; gap: 1rem; }
	.mu-pth__dot.elementor-widget { left: -4.6rem; width: 52px; height: 52px; top: 1.3rem; box-shadow: 0 0 0 6px #fff; }
	.mu-pth__dot .elementor-heading-title { font-size: 1.6rem; }
	.e-con.mu-pth__im { height: 11rem; }
}
/* the letters in the circles still start as outlines and fill in */
html.mu-motion:not(.mu-motion-off) .mu-pth__dot .elementor-heading-title:not(.m-in) { color: transparent; -webkit-text-stroke: 1.6px #fff; }
@keyframes m-fill-dot { from, 15% { color: transparent; -webkit-text-stroke: 1.6px #fff; } to { color: #fff; -webkit-text-stroke: 0 #fff; } }
html.mu-motion .mu-pth__dot .elementor-heading-title.m-in { animation: m-fill-dot 900ms ease-out backwards; }


/* ---- Home: the five stages as one vertical path ---- */
.e-con.mu-hw { width: 100%; max-width: none; background: #1d4a63; color: #fff; padding: clamp(3.5rem, 2.5rem + 4vw, 6rem) var(--mu-gutter); gap: 2.5rem; --padding-top: 96px; --padding-bottom: 96px; }
.e-con.mu-hw__hd { max-width: 1200px; width: 100%; margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; gap: clamp(1.5rem, 4vw, 4rem); align-items: end; padding: 0; --padding-top: 0px; --padding-bottom: 0px; --padding-left: 0px; --padding-right: 0px; }
.mu-hw__hd h2.elementor-heading-title { color: #fff; font-size: clamp(2rem, 1.4rem + 2.2vw, 3rem); line-height: 1.08; margin: 0; max-width: 28rem; }
.mu-hw__hd .mu-lead p { margin: 0; color: rgba(255,255,255,.92); max-width: 30rem; }
.e-con.mu-hw__in { max-width: 1200px; width: 100%; margin: 0 auto; padding: 0; --padding-top: 0px; --padding-bottom: 0px; --padding-left: 0px; --padding-right: 0px; }
.e-con.mu-hw__list { position: relative; padding: 0 0 0 7.5rem; gap: 0; --padding-left: 120px; --padding-top: 0px; --padding-bottom: 0px; --padding-right: 0px; }
.e-con.mu-hw__st { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2rem; align-items: center; position: relative; padding: 1.7rem 0; border-top: 1px solid rgba(240,219,176,.3); --padding-top: 27px; --padding-bottom: 27px; --padding-left: 0px; --padding-right: 0px; }
.e-con.mu-hw__st:first-child { border-top: 0; }
.e-con.mu-hw__st:not(:last-child)::before { content: ""; position: absolute; left: calc(-7.5rem + 36px); width: 4px; border-radius: 4px; top: calc(1.7rem + 76px - 0.4rem); bottom: -1.7rem; background: linear-gradient(var(--pc0, #CCA058), var(--pc1, rgba(204,160,88,.4))); z-index: 1; }
.mu-hw__dot.elementor-widget { position: absolute; left: -7.5rem; top: 1.3rem; width: 76px; height: 76px; border-radius: 50%; background: #CCA058; box-shadow: 0 0 0 8px #1d4a63; display: flex; align-items: center; justify-content: center; z-index: 2; }
.mu-hw__dot .elementor-heading-title { color: #1c2b2e; font-size: 2.3rem; line-height: 1; font-weight: 800; margin: 0; }
.e-con.mu-hw__tx { padding: 0; gap: .4rem; --padding-top: 0px; --padding-bottom: 0px; --padding-left: 0px; --padding-right: 0px; }
.mu-hw__tx .mu-eyebrow { color: var(--mu-gold-light); margin: 0; }
.mu-hw__tx h3.elementor-heading-title { color: #fff; font-size: clamp(1.25rem, 1.05rem + .9vw, 1.7rem); line-height: 1.2; margin: 0; max-width: 40rem; }
@media (max-width: 900px) {
	.e-con.mu-hw__hd { grid-template-columns: 1fr; }
	.e-con.mu-hw__list { padding-left: 4.6rem; --padding-left: 74px; }
	.e-con.mu-hw__st { grid-template-columns: 1fr; gap: .8rem; }
	.e-con.mu-hw__st:not(:last-child)::before { left: calc(-4.6rem + 24px); top: calc(1.5rem + 52px); bottom: -1.5rem; }
	.mu-hw__dot.elementor-widget { left: -4.6rem; width: 52px; height: 52px; top: 1.2rem; box-shadow: 0 0 0 6px #1d4a63; }
	.mu-hw__dot .elementor-heading-title { font-size: 1.6rem; }
}
/* letters in the circles start as outlines and fill in (dark letter on gold) */
html.mu-motion:not(.mu-motion-off) .mu-hw__dot .elementor-heading-title:not(.m-in) { color: transparent; -webkit-text-stroke: 1.6px #1c2b2e; }
@keyframes m-fill-hw { from, 15% { color: transparent; -webkit-text-stroke: 1.6px #1c2b2e; } to { color: #1c2b2e; -webkit-text-stroke: 0 #1c2b2e; } }
html.mu-motion .mu-hw__dot .elementor-heading-title.m-in { animation: m-fill-hw 900ms ease-out backwards; }
.mu-hw .mu-bw--arrow:not(.mu-bw--arrowonly) .elementor-button { background: rgba(240,219,176,.18); color: #fff; }
.mu-hw .mu-bw--arrow:not(.mu-bw--arrowonly) .elementor-button:hover { background: rgba(240,219,176,.34); color: #fff; }
.mu-hw .mu-bw--arrow:not(.mu-bw--arrowonly) .elementor-button-text { color: #fff; }
.mu-hw__hd h2.elementor-heading-title { max-width: 36rem; }


/* ALIGN Method: the four methods as a four-column row */
.e-con.mu-picks--four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.e-con.mu-picks--four .mu-pick { --padding-left: 24px; --padding-right: 24px; }
.e-con.mu-picks--four .mu-pick:first-child { --padding-left: 0px; }
@media (max-width: 1100px) { .e-con.mu-picks--four { grid-template-columns: repeat(2, minmax(0, 1fr)); } .e-con.mu-picks--four .mu-pick:nth-child(3) { border-left: 0; --padding-left: 0px; } .e-con.mu-picks--four .mu-pick:nth-child(n+3) { border-top: var(--mu-line-gold); } }
@media (max-width: 700px) { .e-con.mu-picks--four { grid-template-columns: 1fr; } .e-con.mu-picks--four .mu-pick + .mu-pick { border-left: 0; border-top: var(--mu-line-gold); } }


/* ---- 1:1 Support: one chapter per pathway ---- */
.e-con.mu-section--white { background: #fff; }
.e-con.mu-pw .mu-pw__grid { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: clamp(2rem, 5vw, 4.5rem); align-items: start; }
.e-con.mu-pw__lf, .e-con.mu-pw__rt { gap: .9rem; padding: 0; --padding-top: 0px; --padding-bottom: 0px; --padding-left: 0px; --padding-right: 0px; }
.mu-pw h2.elementor-heading-title { font-size: clamp(1.9rem, 1.4rem + 1.6vw, 2.5rem); line-height: 1.08; color: var(--mu-deep-teal); margin: 0; }
.mu-pw .mu-eyebrow { color: var(--mu-gold-text); margin: 0; }
.mu-pw__facts { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .5rem; }
.mu-pw__facts li { background: #fff; border: 1px solid rgba(204,160,88,.5); border-radius: 999px; padding: .3rem .9rem; font-weight: 600; font-size: .9rem; color: var(--mu-deep-teal); }
.e-con.mu-section--white .mu-pw__facts li { background: var(--mu-ivory); }
.mu-pw__rail { display: flex; align-items: center; margin-top: .4rem; }
.mu-pw__rail i { width: 14px; height: 14px; border-radius: 50%; background: #CCA058; flex: none; display: block; }
.mu-pw__rail b { height: 3px; background: rgba(204,160,88,.5); flex: 1; }
.mu-pw__railtx { display: flex; justify-content: space-between; font-size: .875rem; color: var(--mu-gold-text); margin: .35rem 0 .5rem; }
ul.mu-ticks--check li { padding-left: 1.7rem; border-top: 1px solid rgba(204,160,88,.4); }
ul.mu-ticks--check li::before { content: "\2713"; width: auto; height: auto; background: none; top: .45em; color: #55A69F; font-weight: 800; }
ul.mu-ticks--check li:last-child { border-bottom: 1px solid rgba(204,160,88,.4); }
.mu-pw__stages p, p.mu-pw__stages { margin: .3rem 0 0; font-size: .95rem; }
@media (max-width: 900px) { .e-con.mu-pw .mu-pw__grid { grid-template-columns: 1fr; } }
p.mu-pw__lb { margin: 0; font: 800 1.25rem/1.2 var(--mu-font-heading); color: var(--mu-deep-teal); }
.e-con.mu-pw__rt { padding-top: 4.2rem; --padding-top: 67px; }
@media (max-width: 900px) { .e-con.mu-pw__rt { padding-top: 0; --padding-top: 0px; } }

/* 1:1 Support: the comparison table sits inside a fold */
.mu-details--compare { margin-top: .4rem; }
.mu-details--compare > summary { font-size: 1.05rem; }
.mu-details--compare[open] > .mu-table-wrap { margin-top: 1rem; }

/* Stage paths: every row is as tall as the tallest, so the circles and the lines between them are evenly spaced. */
.e-con.mu-hw__list, .e-con.mu-pth__list { display: grid; grid-auto-rows: 1fr; }

/* Column groups (Modalities, Why, Where to begin): the text lines up with the heading, and the top and bottom rules run exactly the width of the text */
@media (min-width: 901px) {
	.e-con.mu-picks { padding-left: 0; padding-right: 0; --padding-left: 0px; --padding-right: 0px; width: calc(100% + 3rem); max-width: none; }
	.e-con.mu-picks::before { width: auto; }
}

/* 1:1 compare on phones: one card per pathway instead of the stacked table */
.mu-cmpcards { display: none; }
@media (max-width: 700px) {
	.mu-details--compare .mu-table-wrap { display: none; }
	.mu-cmpcards { display: grid; gap: 1rem; margin-top: 1rem; }
	.mu-cmpcard { background: #fff; border: var(--mu-line-gold); border-radius: var(--mu-radius-l); padding: 1.2rem 1.2rem 1.3rem; }
	.mu-cmpcard h3 { margin: 0 0 .6rem; font-size: 1.2rem; line-height: 1.2; color: var(--mu-deep-teal); }
	.mu-cmpcard dl { margin: 0; }
	.mu-cmpcard dt { margin: .85rem 0 .1rem; padding-top: .8rem; border-top: 1px solid rgba(204,160,88,.35); font-size: .8125rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--mu-deep-teal); }
	.mu-cmpcard dt:first-child { margin-top: 0; padding-top: 0; border-top: 0; }
	.mu-cmpcard dd { margin: 0; font-size: 1rem; line-height: 1.55; }
}

/* Phone hero image: the photo itself fades into the page colour (no overlay), so it blends the same way whatever the picture is */
@media (max-width: 900px) {
	.e-con.mu-hh__ph::before, .e-con.mu-abh__ph::before { background: none; }
	.mu-hh__ph img, .mu-abh__ph img { -webkit-mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,.1) 8%, rgba(0,0,0,.32) 17%, rgba(0,0,0,.62) 27%, rgba(0,0,0,.88) 37%, #000 46%); mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,.1) 8%, rgba(0,0,0,.32) 17%, rgba(0,0,0,.62) 27%, rgba(0,0,0,.88) 37%, #000 46%); }
}
}

/* Press cards: room inside each card so the text clears the edge when the card lifts on hover */
@media (min-width: 901px) {
	#in-the-media .mu-grid--cards { margin-inline: -1.5rem; }
	#in-the-media .mu-mention { position: relative; border-top: 0; }
	#in-the-media .mu-mention::before { content: ""; position: absolute; top: 0; left: 1.5rem; right: 1.5rem; height: 1px; background: rgba(204,160,88,.6); pointer-events: none; }
	#in-the-media .mu-mention .mu-card__body { padding-inline: 1.5rem; }
}


/* Existing-client links: footer line, phone menu link, and the Contact hero line */
.mu-footer__client { margin: 1.1rem 0 0; font-size: .95rem; color: rgba(255,255,255,.88); }
.mu-footer__client a { color: var(--mu-gold-light); text-decoration: underline; text-underline-offset: 3px; }
.mu-footer__client a:hover { color: #fff; }
.mu-nav__client { display: none; }
@media (max-width: 1259px) { .mu-nav__client { display: flex; align-items: center; justify-content: center; min-height: 48px; margin-top: .75rem; font-size: 1.0625rem; color: var(--mu-deep-teal); text-decoration: underline; text-underline-offset: 4px; } }
.mu-hh__trust a { color: var(--mu-gold-light); text-decoration: underline; text-underline-offset: 3px; }
.mu-hh__trust a:hover { color: #fff; }
#pathway-detail .e-con.mu-btn-row { flex-direction: row; flex-wrap: wrap; align-items: center; gap: .75rem 1rem; }
@media (max-width: 1259px) { .mu-nav__cta { margin-left: 0; } }
#pathway-detail .mu-btn-row > .elementor-widget { width: auto; flex: 0 0 auto; }
#pathway-detail .e-con.mu-section-head { max-width: none; }
