:root { --mm-navigation-height:72px; --mm-box-padding:clamp(34px,3.2vw,52px); --mm-box-padding-x:clamp(34px,3.2vw,52px); }
/* Component styles: superseded declarations removed; cascade order preserved. */
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0px; background: var(--beige); color: var(--ink); font-family: Montserrat, Arial, sans-serif; font-weight: 400; }
a { color: inherit; }
.site-header { height: var(--mm-navigation-height); display: flex; align-items: center; justify-content: space-between; padding: 0px 4.5vw; position: fixed; inset: 0px 0px auto; z-index: 20; background: rgb(var(--mm-rgb-bab0a0,186 176 160) / 0.92); backdrop-filter: blur(10px); border-bottom: 1px solid var(--line); }
.brand img { width: 188px; display: block; }
.site-header nav { display: flex; gap: 24px; align-items: center; }
.site-header nav > a:not(.pill), .site-header nav > span[aria-current="page"] { text-decoration: none; font-size: 13px; }
.pill { display: inline-block; padding: 11px 18px; border-radius: 24px; background: var(--orange); color: var(--purple); font-weight: 500; text-decoration: none; border: 1px solid var(--orange); }
.menu { display: none; background: 0px center; border: 0px; color: var(--purple); font-size: 22px; }
.hero { height: 92svh; min-height: 620px; position: relative; overflow: hidden; color: var(--beige); }
.hero-bg { width: 100%; height: 100%; object-fit: cover; }
.veil { position: absolute; inset: 0px; background: linear-gradient(90deg, rgb(var(--mm-rgb-402144,64 33 68) / 0.7), rgb(var(--mm-rgb-402144,64 33 68) / 0.08) 76%); }
.hero-copy { position: absolute; left: 6vw; bottom: 12vh; max-width: 720px; }
.eyebrow, .kicker { text-transform: uppercase; letter-spacing: 0.12em; font-size: 11px; font-weight: 500; }
.hero h1 { font-size: clamp(64px, 8vw, 118px); line-height: 0.91; font-weight: 500; margin: 18px 0px 22px; letter-spacing: -0.035em; }
.hero h1 em { font-style: normal; font-weight: 500; }
.hero-copy > p:not(.eyebrow) { font-size: 20px; font-weight: 500; }
.scroll { position: absolute; right: 4vw; bottom: 4vh; font-size: 11px; letter-spacing: 0.1em; }
.intro { padding: 8vw 7vw; display: grid; background: var(--sand); }
.intro h2, .about h2, .contact h2 { font-size: clamp(36px, 4.4vw, 64px); line-height: 1.05; font-weight: 300; margin: 0px; letter-spacing: -0.025em; }
.intro h2 a { text-decoration-thickness: 1px; text-underline-offset: 6px; }
.story { height: clamp(380px, 48vw, 560px); display: grid; grid-template-columns: 56% 44%; background: var(--beige); }
.story.reverse { grid-template-columns: 44% 56%; background: var(--taupe); }
.story.reverse .photo { order: 2; }
.story.dark { background: var(--purple2); color: var(--sand); }
.photo { overflow: hidden; }
.photo img { width: 100%; height: 100%; object-fit: cover; transition: transform 1s; }
.story:hover .photo img { transform: scale(1.015); }
.story-copy { padding: clamp(28px, 3.5vw, 52px); display: flex; flex-direction: column; justify-content: center; align-items: flex-start; }
.story-copy span { font-size: 10px; opacity: 0.55; }
.story h3 { font-size: clamp(26px, 2.45vw, 40px); line-height: 1.12; font-weight: 300; margin: 0px; letter-spacing: -0.02em; }
.quote { position: relative; }
.quote-mark { font-size: 110px; line-height: 0.45; font-weight: 300; opacity: 0.25; }
.quote blockquote { font-size: clamp(28px, 3vw, 48px); line-height: 1.12; font-weight: 300; }
.quote cite { font-size: 12px; }
.about { display: grid; grid-template-columns: 42% 58%; background: var(--sand); }
.lisa-wrap { background: var(--taupe); padding: 6vw; display: flex; align-items: center; }
.lisa-wrap img { width: 100%; aspect-ratio: 1 / 1; object-fit: cover; border-radius: 50%; }
.about-copy { padding: 7vw 6vw; }
.about-copy > p:not(.kicker) { font-size: 16px; line-height: 1.7; max-width: 650px; }
.manifesto { padding: 8vw 7vw; }
.manifesto-head { display: flex; align-items: end; justify-content: space-between; padding-bottom: 22px; }
.manifesto-head h2 { font-size: clamp(52px, 7vw, 100px); font-weight: 300; margin: 0px; line-height: 0.9; letter-spacing: -0.04em; }
.manifesto-grid { display: grid; grid-template-columns: repeat(3, 1fr); }
.value { padding: 34px 28px 38px 0px; min-height: 280px; }
.value:not(:nth-child(3n)) { padding-right: 28px; }
.value:not(:nth-child(3n+1)) { padding-left: 28px; }
.value img { width: 68px; height: 68px; object-fit: contain; opacity: 1; filter: none; }
.value h3 { font-size: 27px; font-weight: 400; margin: 18px 0px 10px; }
.value p { font-size: 14px; line-height: 1.6; max-width: 390px; }
.contact { padding: 8vw 7vw; display: grid; grid-template-columns: 1fr 1fr; gap: 8vw; background: var(--purple); color: var(--sand); }
.contact-intro > p { font-size: 14px; line-height: 1.7; max-width: 580px; }
.direct { display: flex; flex-direction: column; gap: 7px; margin-top: 30px; }
.contact-form { display: flex; flex-direction: column; gap: 20px; }
.contact-form label { display: flex; flex-direction: column; gap: 7px; font-size: 12px; }
.contact-form input, .contact-form select, .contact-form textarea { font: inherit; color: var(--sand); background: transparent; border-width: 0px 0px 1px; border-style: none none solid; border-color: currentcolor currentcolor rgb(var(--mm-rgb-ba9fbd,186 159 189) / 0.45); border-image: none; padding: 10px 0px; outline: 0px; }
.contact-form select option { color: var(--purple); background: var(--beige); }
.consent { flex-direction: row !important; align-items: flex-start; }
.consent input { margin-top: 4px; }
.consent small { display: block; opacity: 0.65; margin-top: 7px; }
.submit { align-self: flex-start; background: var(--orange); border-color: var(--orange); color: var(--purple); font-size: 14px; }
footer { background: var(--mm-c-402144,#402144); color: var(--taupe); padding: 42px 7vw; display: grid; grid-template-columns: 1fr auto; align-items: end; gap: 35px; }
footer img { width: 185px; }
footer p { margin: 0px; font-size: 11px; opacity: 0.8; }
@media (max-width: 800px) {
:root { --mm-navigation-height:66px; }
.brand img { width: 160px; }
.site-header nav { display: none; }
.menu { display: block; }
.hero { min-height: 580px; }
.hero-copy { left: 7vw; right: 7vw; }
.intro { padding: 76px 7vw; }
.story, .story.reverse { grid-template-columns: 1fr; height: auto; min-height: 0px; }
.story.reverse .photo { order: 0; }
.photo { height: 52vw; min-height: 240px; }
.story-copy { min-height: 240px; padding: 34px 7vw; }
.about { grid-template-columns: 1fr; }
.lisa-wrap { padding: 12vw; }
.manifesto-grid { grid-template-columns: 1fr; }
.value, .value:not(:nth-child(3n)), .value:not(:nth-child(3n+1)) { border-right: 0px; padding: 28px 0px; min-height: 0px; }
.manifesto-head { display: block; }
.contact { grid-template-columns: 1fr; padding: 76px 7vw; }
footer { grid-template-columns: 1fr; gap: 16px; }
.quote { padding: 85px 7vw; }
}
.story-icon { width: clamp(220px, 20vw, 320px); height: clamp(150px, 14vw, 225px); object-fit: contain; object-position: left center; margin: 0px 0px 24px; align-self: flex-start; }
.story.dark .story-icon { opacity: 1; mix-blend-mode: normal; filter: brightness(0) invert(1); }
.pill { transition: transform 0.18s, filter 0.18s; }
.pill:hover { transform: translateY(-1px); filter: none; }
@media (max-width: 800px) {
.story-icon { width: 190px; height: 130px; margin-bottom: 20px; }
}
.manifesto .value img { width: 68px; height: 68px; }
.contact, .contact-section, #contact, .contact-form, #contact form { color: var(--mm-c-402144,#402144); }
#contact *, .contact *, .contact-section *, .contact-form * { color: var(--mm-c-402144,#402144); }
#contact input, #contact textarea, #contact select, .contact input, .contact textarea, .contact select, .contact-form input, .contact-form textarea, .contact-form select { color: var(--mm-c-402144,#402144); border-color: var(--mm-c-402144,#402144); caret-color: var(--mm-c-402144,#402144); }
#contact input::placeholder, #contact textarea::placeholder, .contact input::placeholder, .contact textarea::placeholder, .contact-form input::placeholder, .contact-form textarea::placeholder { color: var(--mm-c-402144,#402144); opacity: 0.7; }
#contact a, .contact a, .contact-section a { color: var(--mm-c-402144,#402144); text-decoration-color: var(--mm-c-402144,#402144); }
#contact button, .contact button, .contact-form button { background: var(--mm-c-f26e38,#f26e38); color: var(--mm-c-402144,#402144); border-color: var(--mm-c-f26e38,#f26e38); }
#contact button:not(:disabled), .contact button:not(:disabled), .contact-form button:not(:disabled) { cursor:pointer; }
.manifesto .value p { font-size: 16px; line-height: 1.5; }
.manifesto .kicker { font-size: 16px; letter-spacing: 0.08em; }
#contact p, .contact p, .contact-section p, .contact-form, .contact-form label, #contact label { font-size: 16px; line-height: 1.5; }
#contact input, #contact textarea, #contact select, .contact-form input, .contact-form textarea, .contact-form select { font-size: 16px; }
.hero .kicker, .hero .eyebrow { font-size: clamp(48px, 6.8vw, 104px); line-height: 0.92; letter-spacing: -0.035em; font-weight: 500; text-transform: none; max-width: 900px; margin-bottom: 24px; }
.hero .eyebrow { font-weight: 500; text-transform: uppercase; max-width: none; margin: 0px 0px 18px; }
.hero .hero-copy h1, .study-hero h1 { font-size: clamp(52px, 7vw, 108px); line-height: 0.92; letter-spacing: -0.045em; font-weight: 500; max-width: 950px; margin: 0px 0px 24px; }
.hero .hero-intro { margin: 0px 0px 28px; }
@media (max-width: 700px) {
.hero .hero-copy h1, .study-hero h1 { font-size: clamp(46px, 13vw, 72px); }
}
.hero .eyebrow { font-size: 16px; line-height: 1.2; letter-spacing: 0.08em; }
:root { --line: rgb(var(--mm-rgb-402144,64 33 68) / .18); }
.pill:hover, button:hover, input[type="submit"]:hover { transform: scale(1.07); }
.pill, #contact button, .contact button, .contact-form button { background: var(--mm-c-f26e38,#f26e38); }
.contact, .contact-section, #contact, .contact-form, #contact form { background-color: var(--mm-c-bab0a0,#bab0a0); }
.stories.checkerboard .photo, .stories.checkerboard .story-copy { box-sizing: border-box; height: clamp(310px, 25vw, 430px) !important; min-height: 0px !important; }
.stories.checkerboard .photo { overflow: hidden; }
.stories.checkerboard .photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
.stories.checkerboard .story-copy { position: relative; flex-direction: column; display: flex !important; justify-content: center !important; align-items: flex-start !important; }
.stories.checkerboard .story-icon { margin-top: 0px !important; margin-right: 0px !important; margin-left: 0px !important; }
.stories.checkerboard .story h3 { margin: 0px !important; }
.stories.checkerboard .story:nth-child(2n+1) .photo { grid-column: 1; }
.stories.checkerboard .story:nth-child(2n+1) .story-copy { grid-column: 2; }
.stories.checkerboard .story:nth-child(2n) .story-copy { grid-column: 1; }
.stories.checkerboard .story:nth-child(2n) .photo { grid-column: 2; }
.stories.checkerboard .story:nth-child(1) > * { grid-row: 1; }
.stories.checkerboard .story:nth-child(2) > * { grid-row: 2; }
.stories.checkerboard .story:nth-child(3) > * { grid-row: 3; }
.stories.checkerboard .story:nth-child(4) > * { grid-row: 4; }
.stories.checkerboard .story:nth-child(5) > * { grid-row: 5; }
.stories.checkerboard .story:nth-child(6) > * { grid-row: 6; }
.stories.checkerboard .story:nth-child(7) > * { grid-row: 7; }
.stories.checkerboard .story:nth-child(8) > * { grid-row: 8; }
.stories.checkerboard .story:nth-child(9) > * { grid-row: 9; }
.stories.checkerboard .story:nth-child(2n+1) .story-copy::after { left: -30px; border-right: 30px solid var(--mm-c-bab0a0,#bab0a0); }
.stories.checkerboard .story:nth-child(2n) .story-copy::after { right: -30px; border-left: 30px solid var(--mm-c-bab0a0,#bab0a0); }
.stories.checkerboard .story.dark:nth-child(2n+1) .story-copy::after { border-right-color: var(--mm-c-723b7a,#723b7a); }
.stories.checkerboard .story.dark:nth-child(2n) .story-copy::after { border-left-color: var(--mm-c-723b7a,#723b7a); }
@media (max-width: 800px) {
.stories.checkerboard { display: block !important; }
.stories.checkerboard .story { display: flex !important; flex-direction: column; }
.stories.checkerboard .photo { height: 58vw !important; min-height: 240px !important; }
.stories.checkerboard .story-copy { height: auto !important; min-height: 290px !important; }
.stories.checkerboard .story-copy::after { display: none; }
}
.stories.checkerboard .story-copy, .stories.checkerboard .story.dark .story-copy { color: var(--mm-c-402144,#402144) !important; }
.stories.checkerboard .story h3, .stories.checkerboard .story.dark h3 { color: var(--mm-c-402144,#402144) !important; }
.stories.checkerboard .story-icon, .stories.checkerboard .story.dark .story-icon { opacity: 1 !important; filter: none !important; mix-blend-mode: normal !important; }
.stories.checkerboard .story.dark .story-copy { background: var(--mm-c-bab0a0,#bab0a0) !important; }
.stories.checkerboard .story:nth-child(2n+1) .story-copy::after, .stories.checkerboard .story.dark:nth-child(2n+1) .story-copy::after { border-right-color: var(--mm-c-bab0a0,#bab0a0) !important; }
.stories.checkerboard .story:nth-child(2n) .story-copy::after, .stories.checkerboard .story.dark:nth-child(2n) .story-copy::after { border-left-color: var(--mm-c-bab0a0,#bab0a0) !important; }
.stories.checkerboard .story { flex-direction: column; min-width: 0px; }
.stories.checkerboard .story-icon { margin-bottom: 20px !important; }
.stories.checkerboard .story:nth-child(2n) { flex-direction: column-reverse; }
.stories.checkerboard .story:nth-child(2n+1) .story-copy::after { top: -28px !important; bottom: auto !important; border-bottom: 28px solid var(--mm-c-bab0a0,#bab0a0) !important; border-top: 0px !important; }
.stories.checkerboard .story:nth-child(2n) .story-copy::after { top: auto !important; bottom: -28px !important; border-top: 28px solid var(--mm-c-bab0a0,#bab0a0) !important; border-bottom: 0px !important; }
@media (max-width: 700px) {
.stories.checkerboard { grid-template-columns: 1fr !important; }
}
.stories.checkerboard { align-items: stretch; display: grid !important; grid-template-columns: repeat(3, minmax(0px, 1fr)) !important; grid-auto-flow: row !important; }
.stories.checkerboard .story { display: contents !important; }
.stories.checkerboard .story .photo, .stories.checkerboard .story .story-copy { width: auto !important; height: clamp(285px, 22vw, 390px) !important; min-height: 0px !important; grid-area: auto !important; order: initial !important; }
.stories.checkerboard .story-copy { padding: clamp(28px, 2.8vw, 48px) !important; background: var(--mm-c-bab0a0,#bab0a0) !important; color: var(--mm-c-402144,#402144) !important; }
.stories.checkerboard .story h3 { color: var(--mm-c-402144,#402144) !important; font-size: clamp(20px, 1.45vw, 27px) !important; line-height: 1.12 !important; }
.stories.checkerboard .story-icon { width: clamp(88px, 6.3vw, 116px) !important; height: clamp(66px, 5vw, 90px) !important; filter: none !important; opacity: 1 !important; }
.stories.checkerboard .story:nth-child(2n) .photo, .stories.checkerboard .story:nth-child(2n) .story-copy { order: initial !important; }
.stories.checkerboard .story-copy::after { z-index: 5; position: absolute !important; width: 0px !important; height: 0px !important; inset: 50% -28px auto auto !important; transform: translateY(-50%) !important; border-width: 28px 0px 28px 28px !important; border-style: solid none solid solid !important; border-color: transparent currentcolor transparent var(--mm-c-bab0a0,#bab0a0) !important; }
.stories.checkerboard .story:nth-child(3n+1) .story-copy::after { left: -28px !important; right: auto !important; border-width: 28px 28px 28px 0px !important; border-style: solid solid solid none !important; border-color: transparent var(--mm-c-bab0a0,#bab0a0) transparent currentcolor !important; }
.stories.checkerboard .story:nth-child(3n+2) .story-copy::after { left: auto !important; right: -28px !important; border-width: 28px 0px 28px 28px !important; border-style: solid none solid solid !important; border-color: transparent currentcolor transparent var(--mm-c-bab0a0,#bab0a0) !important; }
.stories.checkerboard .story:nth-child(3n) .story-copy::after { left: -28px !important; right: auto !important; border-width: 28px 28px 28px 0px !important; border-style: solid solid solid none !important; border-color: transparent var(--mm-c-bab0a0,#bab0a0) transparent currentcolor !important; }
@media (max-width: 1050px) {
.stories.checkerboard { grid-template-columns: repeat(2, minmax(0px, 1fr)) !important; }
}
@media (max-width: 700px) {
.stories.checkerboard { display: block !important; }
.stories.checkerboard .story { display: flex !important; flex-direction: column !important; }
.stories.checkerboard .story .photo { height: 58vw !important; min-height: 240px !important; }
.stories.checkerboard .story .story-copy { height: auto !important; min-height: 280px !important; }
.stories.checkerboard .story-copy::after { display: none !important; }
}
.stories.checkerboard .story-copy::after { content: none !important; display: none !important; }
.quote { background: var(--mm-c-ba9fbd,#ba9fbd) !important; color: var(--mm-c-402144,#402144) !important; }
.quote blockquote, .quote cite, .quote .quote-mark { color: var(--mm-c-402144,#402144) !important; }
.about h2, .about p, .about .kicker, .about a { color: var(--mm-c-402144,#402144) !important; }
.quote .quote-mark { display: none !important; }
.quote cite, .quote .quote-credit, .quote .attribution { font-size: clamp(20px, 1.45vw, 27px) !important; line-height: 1.12 !important; font-style: normal !important; color: var(--mm-c-402144,#402144) !important; }
.quote blockquote span { display: block; }
.quote cite { display: block; margin-top: 2rem; font-style: normal !important; }
.quote { padding: clamp(42px, 5vw, 80px) !important; }
.quote blockquote { box-sizing: border-box; max-width: 1500px; border: 2px solid var(--mm-c-402144,#402144); border-radius: 32px; background: transparent; margin: 0px auto !important; padding: clamp(42px, 5vw, 76px) !important; }
@media (max-width: 700px) {
.quote { padding: 28px 20px !important; }
.quote blockquote { border-radius: 22px; padding:var(--mm-box-padding) !important; }
}
@media (forced-colors: active) {
.quote blockquote { border: 2px solid canvastext; }
}
.about, .about .lisa-wrap, .about .about-copy { background: var(--mm-c-bab0a0,#bab0a0) !important; color: var(--mm-c-402144,#402144) !important; }
.manifesto { background: var(--mm-c-bab0a0,#bab0a0) !important; color: var(--mm-c-402144,#402144) !important; }
.about { min-height: 0px !important; height: auto !important; }
.about .lisa-wrap { min-height: 0px !important; height: auto !important; }
.about { padding-top: 40px !important; padding-bottom: 40px !important; }
@media (max-width: 700px) {
.about { padding-top: 32px !important; padding-bottom: 32px !important; }
}
.contact, .contact-section, #contact { background: var(--mm-c-bab0a0,#bab0a0) !important; color: var(--mm-c-402144,#402144) !important; }
.contact form, .contact-section form, #contact form, .contact .form, .contact-section .form, #contact .form, .contact .form-wrap, .contact-section .form-wrap, #contact .form-wrap { background: transparent !important; }
.contact input, .contact textarea, .contact select, .contact-section input, .contact-section textarea, .contact-section select, #contact input, #contact textarea, #contact select { background: transparent !important; color: var(--mm-c-402144,#402144) !important; }
@media (min-width: 701px) and (max-width: 1050px) {
.stories.checkerboard { grid-template-columns: repeat(2, minmax(0px, 1fr)) !important; }
.stories.checkerboard .story:nth-child(2n+1) .photo { grid-column: 1 !important; }
.stories.checkerboard .story:nth-child(2n+1) .story-copy { grid-column: 2 !important; }
.stories.checkerboard .story:nth-child(2n) .story-copy { grid-column: 1 !important; }
.stories.checkerboard .story:nth-child(2n) .photo { grid-column: 2 !important; }
}
.services { background: var(--beige); color: var(--purple); }
.services-grid { display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); }
.service { min-height: 330px; padding: 52px clamp(28px, 3vw, 48px) 48px 0px; display: flex; flex-direction: column; align-items: flex-start; }
.service:nth-child(3n+2), .service:nth-child(3n+3) { padding-left: clamp(28px, 3vw, 48px); }
.service:not(:nth-child(3n)) { border-right: 1px solid rgb(var(--mm-rgb-402144,64 33 68) / 0.24); }
.service:nth-child(-n+3) { border-bottom: 1px solid rgb(var(--mm-rgb-402144,64 33 68) / 0.24); }
.service img { width: 76px; height: 76px; object-fit: contain; margin-bottom: 34px; }
.service h3 { margin: 0px 0px 28px; max-width: 420px; }
.service p { font-size: 16px; line-height: 1.55; margin: 0px; max-width: 420px; }
.service strong { font-weight: 600; }
@media (max-width: 900px) {
.services { padding: 0px 7vw; }
.services-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
.service, .service:nth-child(3n+2), .service:nth-child(3n+3) { padding: 40px 30px 40px 0px; border-right: 0px; border-bottom: 1px solid rgb(var(--mm-rgb-402144,64 33 68) / 0.24); }
.service:nth-child(2n) { padding-left: 30px; border-left: 1px solid rgb(var(--mm-rgb-402144,64 33 68) / 0.24); }
.service:nth-last-child(-n+2) { border-bottom: 0px; }
}
@media (max-width: 600px) {
.services-grid { grid-template-columns: 1fr; }
.service, .service:nth-child(3n+2), .service:nth-child(3n+3), .service:nth-child(2n) { padding: 42px 0px; border-left: 0px; border-right: 0px; border-bottom: 1px solid rgb(var(--mm-rgb-402144,64 33 68) / 0.24); }
.service:last-child { border-bottom: 0px; }
.service img { width: 68px; height: 68px; margin-bottom: 26px; }
}
.kicker, .eyebrow, .hero .eyebrow, .manifesto .kicker, .intro .kicker, .about .kicker, .contact .kicker, .contact-section .kicker, #contact .kicker { letter-spacing: -0.01em !important; text-transform: none !important; }
.services-grid { border-top: 0px; border-bottom: 0px; }
.service, .service:not(:nth-child(3n)), .service:nth-child(-n+3) { border: 0px; }
.services-grid { gap: clamp(14px, 1.5vw, 24px); }
.service, .service:nth-child(3n+2), .service:nth-child(3n+3) { padding: clamp(34px, 3.2vw, 52px); border: 0px; border-radius: 0px; }
@media (max-width: 900px) {
.service, .service:nth-child(3n+2), .service:nth-child(3n+3), .service:nth-child(2n), .service:nth-last-child(-n+2) { padding: clamp(32px, 4vw, 44px); border: 0px; }
}
@media (max-width: 600px) {
.services-grid { gap: 14px; }
.service, .service:nth-child(3n+2), .service:nth-child(3n+3), .service:nth-child(2n), .service:last-child { padding: 34px 28px; border: 0px; }
}
.services-grid { align-items: stretch; grid-auto-rows: 1fr; }
.service, .service:nth-child(3n+2), .service:nth-child(3n+3) { height: 100%; min-height: 390px; box-sizing: border-box; }
@media (max-width: 900px) and (min-width: 601px) {
.services-grid { grid-auto-rows: 1fr; }
.service, .service:nth-child(3n+2), .service:nth-child(3n+3), .service:nth-child(2n) { height: 100%; min-height: 390px; }
}
@media (max-width: 600px) {
.services-grid { grid-auto-rows: auto; }
.service, .service:nth-child(3n+2), .service:nth-child(3n+3), .service:nth-child(2n) { height: auto; min-height: 0px; }
}
.service h3 { font-size: clamp(21px, 1.75vw, 28px); line-height: 1.08; font-weight: 700; letter-spacing: -0.025em; }
.service { position: relative; transform: scale(1); transform-origin: center center; transition: transform 700ms cubic-bezier(0.2, 0.7, 0.2, 1); z-index: 0; }
.service .service-icon { display: block; width: 76px; height: 76px; object-fit: contain; margin-bottom: 34px; overflow: visible; }
.service .service-icon path { stroke-dasharray: 1; stroke-dashoffset: 0; }
@media (hover: hover) and (pointer: fine) {
.service:hover { transform: scale(1.025); z-index: 2; }
.service:hover .service-icon path { animation: 1.35s cubic-bezier(0.4, 0, 0.2, 1) 0s 1 normal both running service-icon-draw; }
}
@keyframes service-icon-draw { 
  0% { stroke-dashoffset: 1; }
  100% { stroke-dashoffset: 0; }
}
@media (max-width: 600px) {
.service .service-icon { width: 68px; height: 68px; margin-bottom: 26px; }
}
@media (prefers-reduced-motion: reduce) {
.service { transform: none !important; }
.service .service-icon path { animation: auto ease 0s 1 normal none running none !important; stroke-dashoffset: 0 !important; }
}
.kicker, .eyebrow, .hero .eyebrow, .manifesto .kicker, .intro .kicker, .about .kicker, .contact .kicker, .contact-section .kicker, #contact .kicker { line-height: 1.22; font-weight: 650; font-size: clamp(19px, 1.45vw, 23px) !important; }
.hero .hero-intro, .section-lead, .about-copy > p:not(.kicker), .contact-intro > p:not(.kicker) { font-size: clamp(18px, 1.35vw, 22px); line-height: 1.5; }
.pathways { background: linear-gradient(rgb(var(--mm-rgb-ffffff,255 255 255) / .25),rgb(var(--mm-rgb-ffffff,255 255 255) / .25)),var(--beige); padding-right: 7vw; padding-left: 7vw; color: var(--purple); }
.pathways-head { text-align: center; width: 100%; max-width: none; margin: 0px 0px clamp(42px, 4.5vw, 72px); }
.pathways-head h2 { margin: 0px 0px 22px; font-size: clamp(38px, 4.3vw, 66px); line-height: 1.02; letter-spacing: -0.035em; font-weight: 700; }
.pathways-head .section-lead { width: 100%; max-width: none; margin: 0px; }
.pathways-grid { display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); align-items: stretch; }
.pathway { background: var(--mm-c-bab0a0,#bab0a0); padding: clamp(34px, 3vw, 50px); min-width: 0px; display: flex; flex-direction: column; border-radius: 0px; }
.pathway > img { width: 76px; height: 76px; object-fit: contain; margin: 0px 0px 30px; }
.pathway h3 { font-size: clamp(24px, 2vw, 31px); line-height: 1.08; font-weight: 700; margin: 0px 0px 26px; letter-spacing: -0.025em; }
.pathway ul { margin: 0px 0px 22px; padding-left: 24px; font-size: 16px; line-height: 1.5; }
.pathway li + li { margin-top: 8px; }
.pathway > p:not(.pathway-tag) { font-size: 16px; line-height: 1.5; margin: 0px 0px 28px; }
.pathway-cta { margin-top: auto; text-align: center; background: var(--orange); border-color: var(--orange); color: var(--purple); font-size: 16px; padding: 13px 22px; }
@media (max-width: 900px) {
.pathways-grid { grid-template-columns: 1fr; }
.pathway { min-height: 0px; }
.desktop-break { display: none; }
}
@media (max-width: 600px) {
.pathways { padding-right: 7vw; padding-left: 7vw; }
.pathways-head { text-align: left; margin-bottom: 38px; }
.pathway { padding: 32px 28px; }
.pathway > img { width: 68px; height: 68px; margin-bottom: 24px; }
}
.pathway-tag { display: block; align-self: flex-start; position: relative; background: transparent; padding-top: 0px; padding-right: 0px; padding-left: 0px; margin: 0px 0px 24px; font-size: 18px; line-height: 1.3; font-weight: 600; max-width: 100%; }
.pathway-tag::after { position: absolute; left: 0px; bottom: 0px; width: 42px; height: 3px; background: var(--purple); }
.pathway { position: relative; transform: scale(1); transform-origin: center center; transition: transform 700ms cubic-bezier(0.2, 0.7, 0.2, 1); z-index: 0; }
.pathway > .pathway-icon { display: block; width: 76px; height: 76px; margin: 0px 0px 30px; overflow: visible; }
.pathway > .pathway-icon path { stroke-dasharray: 1; stroke-dashoffset: 0; }
@media (hover: hover) and (pointer: fine) {
.pathway:hover { transform: scale(1.025); z-index: 2; }
.pathway:hover > .pathway-icon path { animation: 1.35s cubic-bezier(0.4, 0, 0.2, 1) 0s 1 normal both running pathway-icon-draw; }
}
@keyframes pathway-icon-draw { 
  0% { stroke-dashoffset: 1; }
  100% { stroke-dashoffset: 0; }
}
.pill, button, input[type="submit"] { transition: transform 0.22s, background-color 0.22s, color 0.22s, filter 0.22s; transform-origin: center center; }
@media (hover: hover) and (pointer: fine) {
.pill:hover, button:hover, input[type="submit"]:hover { transform: scale(1.07); filter: none; }
}
.pathway-cta:hover { background: var(--orange); border-color: var(--orange); color: var(--purple); }
@media (max-width: 600px) {
.pathway > .pathway-icon { width: 68px; height: 68px; margin-bottom: 24px; }
}
@media (prefers-reduced-motion: reduce) {
.pathway { transition: none; transform: none !important; }
.pathway > .pathway-icon path { animation: auto ease 0s 1 normal none running none !important; stroke-dashoffset: 0 !important; }
.pill, button, input[type="submit"] { transition: none; transform: none !important; }
}
:root { --purple: var(--mm-c-402144,#402144); --taupe: var(--mm-c-bab0a0,#bab0a0); --orange: var(--mm-c-f26e38,#f26e38); --mauve: var(--mm-c-958584,#958584); --purple2: var(--mm-c-723b7a,#723b7a); --lilac: var(--mm-c-ba9fbd,#ba9fbd); --beige: var(--mm-c-bab0a0,#bab0a0); --sand: var(--mm-c-ba9fbd,#ba9fbd); --ink: var(--mm-c-402144,#402144); }
.service .service-icon path, .pathway > .pathway-icon path { stroke: var(--mm-c-402144,#402144); stroke-width: 15.2; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 1; stroke-dashoffset: 0; }
@media (hover: hover) and (pointer: fine) {
.service:hover .service-icon path, .pathway:hover > .pathway-icon path { animation: 1.35s cubic-bezier(0.4, 0, 0.2, 1) 0s 1 normal both running mm-icon-draw; }
}
@keyframes mm-icon-draw { 
  0% { stroke-dashoffset: 1; }
  100% { stroke-dashoffset: 0; }
}
@media (prefers-reduced-motion: reduce) {
.service .service-icon path, .pathway > .pathway-icon path { animation: auto ease 0s 1 normal none running none !important; stroke-dashoffset: 0 !important; }
}
.growth-feature { color: var(--mm-c-402144,#402144); }
.growth-feature-media { margin: 0px; width: 100%; overflow: hidden; background: var(--mm-c-402144,#402144); }
.growth-feature-media img { display: block; width: 100%; height: clamp(320px, 42vw, 620px); object-fit: cover; object-position: center center; }
.growth-feature-copy { margin: 0px auto; }
.growth-feature h2 { color: var(--mm-c-402144,#402144); }
.growth-feature .growth-lead, .growth-feature .growth-body { font-size: clamp(20px, 2vw, 26px); line-height: 1.42; color: var(--mm-c-402144,#402144); }
.growth-feature .growth-lead { margin-bottom: 34px; }
@media (max-width: 700px) {
.growth-feature-media img { height: 52vw; min-height: 230px; }
.growth-feature h2 { font-size: clamp(36px, 10vw, 50px); }
.growth-feature .growth-lead, .growth-feature .growth-body { font-size: 19px; }
.growth-feature .growth-lead { margin-bottom: 26px; }
}
.service, .service:nth-child(3n+2), .service:nth-child(3n+3) { background: rgb(var(--mm-rgb-ffffff,255 255 255) / 0.25); transition: transform 700ms cubic-bezier(0.2, 0.7, 0.2, 1), background-color 700ms cubic-bezier(0.2, 0.7, 0.2, 1); }
@media (hover: hover) and (pointer: fine) {
.service:hover { background: rgb(var(--mm-rgb-ffffff,255 255 255) / 0.4); }
}
@media (prefers-reduced-motion: reduce) {
.service { transition: none; }
}
.intro h2 { font-size: clamp(38px, 4.3vw, 66px); line-height: 1.02; letter-spacing: -0.035em; font-weight: 700; }
.pathway-tag { padding-bottom: 0px; }
.pathway-tag::after { content: none; display: none; }
.services { padding: clamp(54px, 6vw, 96px) 7vw; }
@media (max-width: 600px) {
.services { padding: 54px 7vw; }
}
.growth-feature-copy { padding-top: clamp(54px, 7vw, 96px); padding-bottom: clamp(54px, 7vw, 96px); }
@media (max-width: 700px) {
.growth-feature-copy { padding-top: clamp(42px, 10vw, 64px); padding-bottom: clamp(42px, 10vw, 64px); }
}
.growth-feature .growth-lead { max-width: 1240px; }
.growth-feature .growth-body { max-width: 1320px; }
@media (max-width: 700px) {
.growth-feature .growth-lead, .growth-feature .growth-body { max-width: none; }
}
.benefits { background: var(--beige); color: var(--purple); padding: clamp(72px, 7vw, 108px) clamp(28px, 5vw, 72px); }
.benefits-head { max-width: 1040px; margin: 0px auto clamp(52px, 5vw, 76px); text-align: center; }
.benefits-head h2 { margin: 0px 0px 24px; font-size: clamp(38px, 4.2vw, 58px); line-height: 1.06; letter-spacing: -0.035em; font-weight: 700; }
.benefits-head p { max-width: 920px; margin: 0px auto; font-size: clamp(17px, 1.45vw, 21px); line-height: 1.45; }
.benefits-grid { max-width: 1220px; margin: 0px auto; display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 24px; align-items: stretch; grid-auto-rows: 1fr; }
.benefit-card { box-sizing: border-box; min-height: 360px; height: 100%; padding: clamp(34px, 3.2vw, 52px); background: rgb(var(--mm-rgb-ffffff,255 255 255) / 0.25); transform: scale(1); transform-origin: center center; transition: transform 700ms cubic-bezier(0.2, 0.7, 0.2, 1), background-color 700ms cubic-bezier(0.2, 0.7, 0.2, 1); z-index: 0; }
.benefit-card .benefit-icon { display: block; width: 68px; height: 68px; margin: 0px 0px 28px; overflow: visible; }
.benefit-card .benefit-icon path { fill: none; stroke: var(--purple); stroke-width: 15.2; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 1; stroke-dashoffset: 0; }
.benefit-card h3 { margin: 0px 0px 24px; font-size: clamp(21px, 1.75vw, 28px); line-height: 1.08; font-weight: 700; letter-spacing: -0.025em; }
.benefit-card p { margin: 0px; font-size: clamp(17px, 1.25vw, 20px); line-height: 1.42; }
@media (hover: hover) and (pointer: fine) {
.benefit-card:hover { transform: scale(1.025); background: rgb(var(--mm-rgb-ffffff,255 255 255) / 0.4); z-index: 2; }
.benefit-card:hover .benefit-icon path, .study-included .study-card:hover .benefit-icon path { animation: 1.35s cubic-bezier(0.4, 0, 0.2, 1) 0s 1 normal both running mm-icon-draw; }
}
@media (max-width: 900px) {
.benefits-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
}
@media (max-width: 600px) {
.benefits { padding: 58px 22px; }
.benefits-head { margin-bottom: 38px; }
.benefits-head h2 br { display: none; }
.benefits-grid { grid-template-columns: 1fr; }
.benefit-card { min-height: 0px; padding: 32px 28px; }
.benefit-card .benefit-icon { width: 62px; height: 62px; margin-bottom: 24px; }
}
@media (prefers-reduced-motion: reduce) {
.benefit-card { transition: none; transform: none !important; }
.benefit-card .benefit-icon path { animation: auto ease 0s 1 normal none running none !important; stroke-dashoffset: 0 !important; }
}
.growth-feature-copy { max-width: none; width: auto; padding-left: 7vw; padding-right: 7vw; }
.growth-feature .growth-lead, .growth-feature .growth-body { max-width: none; }
@media (max-width: 700px) {
.growth-feature-copy { padding-left: 7vw; padding-right: 7vw; }
}
.growth-feature { background: var(--lilac); }
.growth-feature-media { position: relative; }
.growth-feature-media::after { content: ""; position: absolute; inset: 0px; pointer-events: none; background: var(--photo-haze); }
.growth-feature-copy { display: grid; align-items: start; text-align: left; }
.growth-feature h2 { margin: 0px; font-size: clamp(38px, 4.3vw, 66px); line-height: 1.02; letter-spacing: -0.035em; font-weight: 700; }
.growth-feature-text { min-width: 0px; }
.growth-feature .growth-lead, .growth-feature .growth-body { margin-left: 0px; margin-right: 0px; text-align: left; }
.growth-feature .growth-lead { margin-top: 0px; }
.growth-feature .growth-body { margin-bottom: 0px; }
.growth-feature-copy { grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 0px clamp(16px, 1.6vw, 26px); }
.growth-feature h2 { grid-column: 1; }
.growth-feature-text { grid-column: 2 / 4; }
@media (max-width: 800px) {
.growth-feature-copy { grid-template-columns: 1fr; gap: 28px; }
.growth-feature h2, .growth-feature-text { grid-column: 1; }
}
.intro { grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 0px clamp(16px, 1.6vw, 26px); }
.intro .kicker { grid-column: 1; }
.intro h2 { grid-column: 2 / 4; }
@media (max-width: 800px) {
.intro { grid-template-columns: 1fr; gap: 28px; }
.intro .kicker, .intro h2 { grid-column: 1; }
}
.founder { background: linear-gradient(rgb(var(--mm-rgb-ffffff,255 255 255) / .25),rgb(var(--mm-rgb-ffffff,255 255 255) / .25)),var(--beige); color: var(--purple); padding: clamp(72px, 7vw, 108px) 7vw; }
.founder-grid { display: grid; grid-template-columns: repeat(6, minmax(0px, 1fr)); column-gap: clamp(16px, 1.6vw, 26px); align-items: start; }
.founder-photo { grid-column: 1; margin: 0px; align-self: start; }
.founder-photo img { display: block; width: 100%; aspect-ratio: 1 / 1; object-fit: cover; border-radius: 50%; }
.founder-copy { grid-column: 2 / 7; min-width: 0px; }
.founder-heading { margin: 0px 0px clamp(34px, 3.5vw, 54px); }
.founder-heading h2 { font-size: clamp(38px, 4.2vw, 58px); line-height: 1.06; letter-spacing: -0.035em; font-weight: 700; }
.founder-heading p { margin: 0px; font-size: clamp(17px, 1.35vw, 21px); line-height: 1.4; }
.founder blockquote { margin: 0px 0px 30px; padding: 0px; border: 0px; font-size: clamp(19px, 1.6vw, 25px); line-height: 1.42; font-weight: 700; }
.founder-quals { display: flex; flex-wrap: wrap; margin-top: 0px; margin-right: 0px; margin-left: 0px; }
.founder ul { margin: 0px; padding-left: 1.35em; font-size: clamp(17px, 1.3vw, 21px); line-height: 1.55; }
.founder li { padding-left: 0.25em; }
@media (max-width: 800px) {
.founder { padding: 58px 7vw; }
.founder-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 30px clamp(16px, 4vw, 26px); }
.founder-photo { grid-column: 1; max-width: 180px; }
.founder-copy { grid-column: 1 / 3; }
.founder-heading { margin-bottom: 30px; }
}
@keyframes mm-icon-draw-reverse { 
  0% { stroke-dashoffset: -1; }
  100% { stroke-dashoffset: 0; }
}
@media (hover: hover) and (pointer: fine) {
.benefit-card:nth-child(4):hover .benefit-icon path, .study-included .study-card:nth-child(4):hover .benefit-icon path { animation: 1.35s cubic-bezier(0.4, 0, 0.2, 1) 0s 1 normal both running mm-icon-draw-reverse; }
}
.pathways-grid { max-width: 1220px; margin-left: auto; margin-right: auto; gap: 24px; }
.pathways, .benefits { padding-left: 7vw; padding-right: 7vw; }
.pathways-grid, .benefits-grid { width: 100%; max-width: none; margin-left: 0px; margin-right: 0px; }
@media (max-width: 900px) {
.pathways-grid, .benefits-grid { grid-template-columns: 1fr; }
}
:root { --mm-page-x: 7vw; --mm-card-gap: clamp(16px,1.6vw,26px); }
.pathways-grid, .benefits-grid { display: grid !important; grid-template-columns: repeat(3, minmax(0px, 1fr)) !important; }
@media (max-width: 980px) {
.pathways-grid, .benefits-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)) !important; }
}
@media (max-width: 680px) {
.pathways-grid, .benefits-grid { grid-template-columns: 1fr !important; }
}
.pathways-head, .pathways-grid, .benefits-head, .benefits-grid { width: 100% !important; max-width: none !important; margin-left: 0px !important; margin-right: 0px !important; }
.pathways-grid, .benefits-grid { gap: var(--mm-card-gap) !important; }
.founder-heading h2 { display: flex; flex-direction: column; align-items: flex-start; gap: 0.12em; margin: 0px; }
.founder-eyebrow, .founder-name { display: block; font: inherit; letter-spacing: inherit; }
.founder-pronouns { display: block; font-size: 0.38em; font-weight: 600; line-height: 1.15; margin-top: 0.35em; }
@media (max-width: 680px) {
.pathways-head, .pathways-grid, .benefits-head, .benefits-grid { margin-left: 0px !important; margin-right: 0px !important; }
}
.founder-quals { gap: 10px; margin-bottom: 34px; align-items: center; }
.founder-quals span { display: inline-flex; align-items: center; justify-content: center; background: var(--mm-c-402144,#402144); color: var(--mm-c-d8d0c4,#d8d0c4); padding-right: 0.42em; padding-left: 0.42em; font-size: clamp(16px, 1.15vw, 19px); line-height: 1; font-weight: 700; letter-spacing: 0.01em; border-radius: 0px; min-height: 1.65em; }
@media (forced-colors: active) {
.founder-quals span { border: 1px solid buttontext; }
}
.founder-quals span { padding-top: calc(0.22em - 1px); padding-bottom: calc(0.22em - 1px); }
.hero .hero-intro { font-size: clamp(21px, 1.75vw, 28px); line-height: 1.08; font-weight: 700; letter-spacing: -0.025em; max-width: 1200px; }
@media (max-width: 700px) {
.hero .hero-intro { font-size: clamp(21px, 1.75vw, 28px); }
}
.testimonials { background: var(--mm-c-bab0a0,#bab0a0); }
.testimonials h2 { color: var(--purple); }
.testimonials-grid { display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); }
.testimonial-card { background: rgb(var(--mm-rgb-ffffff,255 255 255) / 0.25); min-width: 0px; }
.testimonial-card > img, .testimonial-card > picture > img { display: block; width: 100%; aspect-ratio: 16 / 10; object-fit: cover; }
.testimonial-copy { padding: clamp(28px, 2.7vw, 42px); }
.testimonial-copy h3 { margin: 0px 0px 22px; color: var(--purple); }
.testimonial-copy p { margin: 0px 0px 1.15em; }
.testimonial-copy details { margin-top: 20px; }
.testimonial-copy summary { display: inline-flex; gap: 0.55em; cursor: pointer; font-weight: 700; color: var(--purple); list-style: none; }
.testimonial-copy summary::-webkit-details-marker { display: none; }
.testimonial-more { padding-top: 22px; }
.testimonial-placeholder { min-height: 100%; display: grid; place-items: center; border: 1px dashed rgb(var(--mm-rgb-402144,64 33 68) / 0.35); }
.testimonial-placeholder-inner { padding: 40px; color: rgb(var(--mm-rgb-402144,64 33 68) / 0.6); font-weight: 700; }
@media (max-width: 800px) {
.testimonials-grid { grid-template-columns: 1fr; }
.testimonial-placeholder { min-height: 180px; }
}
.testimonials-grid { gap: 24px; }
.testimonials h2 { text-align: center; }
.testimonials h2 { margin: 0px 0px 24px; font-size: clamp(38px, 4.2vw, 58px); line-height: 1.06; letter-spacing: -0.035em; font-weight: 700; max-width: none; }
.testimonials .testimonials-head { max-width: 1040px; margin: 0px auto 38px; text-align: center; }
.faq { background:var(--mm-faq-background); padding-top: clamp(64px, 7vw, 96px); padding-bottom: clamp(64px, 7vw, 96px); }
.faq-head { margin-bottom: 38px; }
.faq-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); column-gap: clamp(48px, 7vw, 96px); }
.faq summary { position: relative; cursor: pointer; list-style: none; font-weight: 700; color: var(--purple); }
.faq summary::-webkit-details-marker { display: none; }
.faq summary::after { content: "⌄"; position: absolute; top: 50%; font-weight: 400; line-height: 1; transform: translateY(-56%); }
.faq details[open] summary::after { transform: translateY(-44%) rotate(180deg); }
.faq details p { margin: 0px 0px 1em; line-height: 1.45; }
.faq details ul { margin: 0px; padding-left: 1.1em; }
.faq-contact p { line-height: 1.45; }
@media (max-width: 800px) {
.faq-grid { grid-template-columns: 1fr; }
.faq details:last-child { border-bottom: 1px solid rgb(var(--mm-rgb-402144,64 33 68) / 0.28); }
}
.testimonial-copy summary::after { content: "⌄"; font-size: 1.35em; transition: transform 0.2s; }
.testimonial-copy details[open] summary::after { content: "⌄"; }
@media (prefers-reduced-motion: reduce) {
.faq summary::after, .testimonial-copy summary::after { transition: none; }
}
.testimonials { padding-top: clamp(72px, 7vw, 108px); padding-bottom: clamp(72px, 7vw, 108px); }
@media (max-width: 800px) {
.testimonials { padding-top: 58px; padding-bottom: 58px; }
}
.testimonial-card { display: flex; flex-direction: column; }
.testimonial-copy { display: flex; flex-direction: column; flex: 1 1 0%; }
.testimonial-copy summary { width: 100%; text-align: center; }
.faq-grid { display: block; max-width: 980px; margin: 0px auto; }
.faq details { border-top: 1px solid rgb(var(--mm-rgb-402144,64 33 68) / 0.32); }
.faq summary { min-height: 78px; display: flex; align-items: center; padding-top: 22px; padding-bottom: 22px; padding-left: 0px; font-size: clamp(20px, 1.55vw, 24px); line-height: 1.22; }
.faq summary::after { right: 8px; font-size: 1.55em; }
.faq details > div { max-width: 820px; padding: 0px 64px 30px 0px; font-size: clamp(17px, 1.15vw, 19px); }
.faq-contact { max-width: 980px; margin: clamp(48px, 5vw, 68px) auto 0px; padding: clamp(30px, 3vw, 42px); background: rgb(var(--mm-rgb-ffffff,255 255 255) / 0.24); display: grid; grid-template-columns: minmax(0px, 1fr) auto; column-gap: 40px; align-items: center; }
.faq-contact h3 { grid-column: 1; margin: 0px 0px 8px; font-size: clamp(23px, 2vw, 30px); }
.faq-contact p { grid-column: 1; margin: 0px; }
.faq-contact .pill { grid-area: 1 / 2 / span 2; align-self: center; white-space: nowrap; }
@media (max-width: 700px) {
.faq-contact { display: block; }
.faq-contact p { margin-bottom: 24px; }
.faq summary { min-height: 70px; padding-right: 48px; }
.faq details > div { padding-right: 20px; }
}
.testimonial-copy > details { margin-top: auto; padding-top: 20px; display: flex; flex-direction: column; }
.testimonial-copy .when-open { display: none; }
.testimonial-copy details[open] .when-closed { display: none; }
.testimonial-copy details[open] .when-open { display: inline; }
.testimonial-copy details[open] { margin-top: 20px; flex: 1 1 0%; }
.testimonial-copy details[open] summary { order: 2; margin-top: auto; padding-top: 26px; }
.testimonial-copy details[open] .testimonial-more { order: 1; }
.testimonial-copy summary { justify-content: center; text-transform: lowercase; }
details, details *, summary, summary::before, summary::after { transition: none !important; animation: auto ease 0s 1 normal none running none !important; }
.testimonial-copy summary { align-items: center; }
.testimonial-copy summary::after { position: relative; top: -0.08em; line-height: 0.8; transform: none !important; }
.testimonial-copy details[open] summary::after { transform: rotate(180deg) !important; }
.faq summary::after { transition: none !important; }
.faq-grid, .faq-contact { max-width: none; width: 100%; }
.contact-intro h2, .contact h2, #contact h2 { font-size: clamp(38px, 4.2vw, 58px) !important; line-height: 1.06 !important; letter-spacing: -0.035em !important; font-weight: 700 !important; }
.contact input:not([type="submit"]), .contact textarea, .contact select, .contact-section input:not([type="submit"]), .contact-section textarea, .contact-section select, #contact input:not([type="submit"]), #contact textarea, #contact select, .contact-form input:not([type="submit"]), .contact-form textarea, .contact-form select { outline-offset: 2px; background: var(--mm-c-ded8ce,#ded8ce) !important; border: 0px !important; border-radius: 7px !important; padding: 13px 15px !important; box-shadow: none !important; }
.hero-intro { font-size: clamp(24px, 2.35vw, 34px) !important; line-height: 1.22 !important; }
.service-card, .feature-card, .service-card:hover, .feature-card:hover { filter: none !important; opacity: 1 !important; transform: none !important; transition: none !important; }
.service-card:hover, .feature-card:hover { background: inherit !important; box-shadow: none !important; }
@media (hover: hover) and (pointer: fine) {
.service:hover, .benefit-card:hover { background: rgb(var(--mm-rgb-ffffff,255 255 255) / 0.25) !important; }
}
.service, .benefit-card { background: rgb(var(--mm-rgb-ffffff,255 255 255) / 0.25) !important; }
.team-head { text-align: center; }
.team-head h2 { margin: 0px; font-size: clamp(46px, 5.5vw, 76px); line-height: 1.02; letter-spacing: -0.04em; font-weight: 700; }
.team-grid { display: grid; align-items: start; }
.team-card { padding: clamp(30px, 3vw, 42px); display: flex; flex-direction: column; min-width: 0px; }
.team-card > img { width: min(72%, 260px); aspect-ratio: 1 / 1; object-fit: cover; border-radius: 50%; display: block; margin: 0px auto clamp(30px, 3vw, 42px); }
.team-copy { display: flex; flex-direction: column; flex: 1 1 0%; }
.team-copy h3 { font-size: clamp(26px, 2.2vw, 34px); line-height: 1.08; margin: 0px 0px 24px; }
.team-copy p { font-size: clamp(17px, 1.25vw, 20px); line-height: 1.42; margin: 0px 0px 22px; }
.team-copy .team-lead { font-weight: 700; }
.team-copy details { margin-top: auto; display: flex; flex-direction: column; }
.team-copy summary { list-style: none; cursor: pointer; text-align: center; font-weight: 700; padding: 20px 0px 0px; display: flex; justify-content: center; align-items: center; gap: 10px; }
.team-copy summary::-webkit-details-marker { display: none; }
.team-copy summary::after { content: "⌄"; font-size: 1.35em; line-height: 0.7; position: relative; top: -0.08em; }
.team-copy details[open] summary { order: 2; margin-top: auto; padding-top: 26px; }
.team-copy details[open] summary::after { content: "⌃"; }
.team-copy .team-more { order: 1; }
.team-copy .when-open { display: none; }
.team-copy details[open] .when-open { display: inline; }
.team-copy details[open] .when-closed { display: none; }
.team-copy details, .team-copy details *, .team-copy summary, .team-copy summary::after { animation: auto ease 0s 1 normal none running none !important; transition: none !important; }
@media (max-width: 900px) {
.team-card > img { width: min(58vw, 260px); }
}
.team { background: var(--mm-c-b7ad9d,#b7ad9d) !important; padding: clamp(64px, 6vw, 92px) 0px !important; }
.team-inner { width: min(100% - 96px, 1280px) !important; max-width: none !important; margin: 0px auto !important; }
.team-head { margin: 0px 0px clamp(42px, 4.5vw, 64px) !important; }
.team-grid { width: 100% !important; margin: 0px !important; gap: 20px !important; grid-template-columns: repeat(3, minmax(0px, 1fr)) !important; }
.team-card { background: var(--mm-c-d7d0c5,#d7d0c5) !important; border-radius: 0px !important; }
@media (max-width: 900px) {
.team-inner { width: min(100% - 48px, 1280px) !important; }
.team-grid { grid-template-columns: 1fr !important; }
}
@media (max-width: 520px) {
.team-inner { width: min(100% - 32px, 1280px) !important; }
}
.mission-title { font-style: inherit; font-variant: inherit; font-stretch: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-language-override: inherit; }
.mission-title strong { font-weight: 700; }
.mission-section { background: var(--mm-c-bea1c2,#bea1c2); color: var(--mm-c-402144,#402144); padding-top: clamp(92px, 8vw, 128px); padding-right: 0px; padding-left: 0px; }
.mission-title { margin: 0px; color: var(--mm-c-402144,#402144); font-size: clamp(3rem, 4.55vw, 5.15rem); line-height: 0.93; letter-spacing: -0.045em; font-weight: 700; }
.mission-copy { margin: 0px; font-size: clamp(1.35rem, 1.85vw, 2rem); line-height: 1.38; font-weight: 400; }
.mission-copy p { margin: 0px 0px 1.45em; }
.mission-copy p:last-child { margin-bottom: 0px; }
.mission-copy strong { font-weight: 700; }
@media (max-width: 900px) {
.mission-section { padding: 64px 0px; }
.mission-inner { width: min(100% - 48px, 1280px); }
.mission-grid { column-gap: 34px; }
.mission-title { font-size: clamp(2.7rem, 9vw, 4.3rem); }
}
@media (max-width: 520px) {
.mission-inner { width: min(100% - 32px, 1280px); }
}
.mission-inner { width: auto; max-width: none; margin: 0px; padding-inline: clamp(96px, 7.1vw, 144px); }
.mission-grid { row-gap: clamp(52px, 4.4vw, 88px); }
@media (max-width: 900px) {
.mission-inner { padding-inline: 48px; }
}
@media (max-width: 520px) {
.mission-inner { padding-inline: 24px; }
}
.mission-grid { display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); column-gap: 24px; align-items: start; }
.mission-title { grid-column: 1; }
.mission-copy { grid-column: 2 / 4; }
@media (max-width: 900px) {
.mission-grid { grid-template-columns: 1fr; row-gap: 34px; }
.mission-title, .mission-copy { grid-column: 1; }
}
.mission-team-rule { height: 1px; background: rgb(var(--mm-rgb-402144,64 33 68) / 0.45); }
.mission-person summary { list-style: none; cursor: pointer; }
.mission-person summary::-webkit-details-marker { display: none; }
.mission-person img { border-radius: 50%; object-fit: cover; display: block; }
.mission-person-intro { display: flex; flex-direction: column; gap: 7px; line-height: 1.35; }
.mission-person-intro strong { line-height: 1.1; }
.mission-person-arrow { justify-self: end; font-size: 1.8rem; line-height: 1; transform: translateY(-2px); }
.mission-person[open] .mission-person-arrow { transform: rotate(180deg) translateY(2px); }
.mission-person-more { font-size: 1.05rem; line-height: 1.5; }
.mission-person-more p { margin: 0px; }
@media (max-width: 900px) {
.mission-team-grid { row-gap: 30px; }
}
.mission-team { margin-top:var(--mm-section-top); }
.mission-team-rule { margin-bottom: 0px; }
.mission-team-title { margin: 0px; line-height: 1; letter-spacing: -0.04em; font-weight: 700; }
.mission-person:nth-child(1) { grid-area: 1 / 1; }
.mission-person:nth-child(2) { grid-area: 1 / 2; }
.mission-person:nth-child(3) { grid-area: 2 / 1; }
.mission-person:last-child { border-bottom: 1px solid rgb(var(--mm-rgb-402144,64 33 68) / 0.32); }
.mission-person-intro strong { font-size: clamp(1.3rem, 1.45vw, 1.65rem); }
.mission-person-intro { font-size: clamp(1rem, 1.15vw, 1.25rem); }
@media (max-width: 900px) {
.mission-person:nth-child(n) { grid-area: auto / 1; }
}
.mission-team-title { font-size: var(--mission-title-size, clamp(3.2rem,4.6vw,5.2rem)) !important; }
.mission-team-rule { display: none !important; }
.mission-team-grid { align-items: start !important; }
.mission-team-title { grid-row: 1 !important; border: 0px !important; }
.mission-team-list { grid-row: 1 !important; }
.mission-person { width: 100% !important; }
@media (max-width: 900px) {
.mission-team-title, .mission-team-list { grid-row: auto !important; }
.mission-team-title { padding-top: 0px !important; padding-bottom: 24px !important; }
}
@media (max-width: 600px) {
.mission-person summary { min-height: 0px !important; }
}
.mission-team-grid { grid-template-columns: repeat(3, minmax(0px, 1fr)) !important; column-gap: var(--grid-gap, clamp(24px,2.2vw,40px)) !important; }
.mission-team-title { grid-column: 1 !important; }
@media (max-width: 900px) {
.mission-team-grid { grid-template-columns: 1fr !important; }
.mission-team-title, .mission-team-list { grid-column: 1 !important; }
}
.curious-kicker, .curious-left, .curious-copy-left, .curious-small { font-size: clamp(1.7rem, 2.15vw, 2.45rem) !important; line-height: 1.18 !important; }
.mission-team-list { grid-column: 2 / 4 !important; }
.mission-person-intro { min-width: 0px !important; }
@media (max-width: 1100px) {
.mission-team-list { grid-template-columns: 1fr !important; }
.mission-person { border-bottom: 1px solid rgb(var(--mm-rgb-402144,64 33 68) / 0.3) !important; }
.mission-person summary { grid-template-columns: 110px minmax(0px, 1fr) 24px !important; grid-template-rows: auto !important; }
.mission-person img { grid-column: 1 !important; width: 110px !important; height: 110px !important; }
.mission-person-intro { grid-column: 2 !important; }
}
.mission-team-grid { display: block !important; }
.mission-team-title { width: 100% !important; padding: 0px 0px clamp(30px, 3vw, 46px) !important; }
.mission-team-list { display: grid !important; grid-template-columns: repeat(3, minmax(0px, 1fr)) !important; gap: var(--grid-gap, clamp(24px,2.2vw,40px)) !important; width: 100% !important; max-width: none !important; margin: 0px !important; }
.mission-person { min-width: 0px !important; background: rgb(var(--mm-rgb-ffffff,255 255 255) / 0.3) !important; border: 0px !important; align-self: start !important; }
.mission-person summary { display: grid !important; grid-template-columns: minmax(0px, 1fr) 26px !important; grid-template-rows: auto auto !important; align-items: start !important; gap: clamp(24px, 2vw, 32px) 12px !important; min-height: 0px !important; padding: clamp(38px, 3.4vw, 54px) !important; }
.mission-person img { grid-column: 1 / 3 !important; width: clamp(135px, 11vw, 175px) !important; height: clamp(135px, 11vw, 175px) !important; margin: 0px !important; }
.mission-person-intro { grid-column: 1 !important; align-self: start !important; }
.mission-person summary::after, .mission-person .arrow, .mission-person .chevron { grid-column: 2 !important; align-self: center !important; }
.mission-person-more { padding: 0px clamp(38px, 3.4vw, 54px) clamp(38px, 3.4vw, 54px) !important; }
@media (max-width: 900px) {
.mission-team-list { grid-template-columns: 1fr !important; }
.mission-person summary { grid-template-columns: 110px minmax(0px, 1fr) 24px !important; grid-template-rows: auto !important; }
.mission-person img { grid-column: 1 !important; width: 110px !important; height: 110px !important; }
.mission-person-intro { grid-column: 2 !important; }
}
@media (max-width: 600px) {
.mission-person summary { grid-template-columns: 76px minmax(0px, 1fr) 24px !important; padding: 26px !important; gap: 18px !important; }
.mission-person img { width: 76px !important; height: 76px !important; }
.mission-person-more { padding: 0px 26px 26px !important; }
}
@media (min-width: 901px) {
.mission-team-list { display: grid !important; grid-template-columns: repeat(3, minmax(0px, 1fr)) !important; grid-auto-flow: row !important; width: 100% !important; max-width: none !important; }
.mission-team-list > .mission-person { width: auto !important; max-width: none !important; min-width: 0px !important; margin: 0px !important; grid-column: auto !important; }
.mission-team-list > .mission-person:nth-child(1), .mission-team-list > .mission-person:nth-child(2), .mission-team-list > .mission-person:nth-child(3) { grid-row: 1 !important; }
.mission-team-list > .mission-person:nth-child(1) { grid-column: 1 !important; }
.mission-team-list > .mission-person:nth-child(2) { grid-column: 2 !important; }
.mission-team-list > .mission-person:nth-child(3) { grid-column: 3 !important; }
}
.testimonial-toggle, .faq-question::after, .mission-person summary::after, details summary::after { box-sizing: border-box !important; }
.testimonial-toggle { min-width: 2rem !important; }
.faq-question::after, .mission-person summary::after, details summary::after { display: inline-flex !important; align-items: center !important; justify-content: center !important; width: 1.9rem !important; height: 1.9rem !important; min-width: 1.9rem !important; min-height: 1.9rem !important; border: 1.5px solid !important; border-radius: 50% !important; line-height: 1 !important; padding: 0px !important; background: transparent !important; }
.testimonial-toggle svg, .testimonial-toggle .arrow, .testimonial-toggle .chevron { width: 1.9rem !important; height: 1.9rem !important; min-width: 1.9rem !important; min-height: 1.9rem !important; box-sizing: border-box !important; border: 1.5px solid !important; border-radius: 50% !important; padding: 0.42rem !important; }
@media (min-width: 901px) {
.mission-team-list > .mission-person:not([open]) { height: 100% !important; min-height: clamp(330px, 25vw, 420px) !important; }
.mission-team-list > .mission-person:not([open]) > summary { height: 100% !important; min-height: inherit !important; display: flex !important; flex-direction: column !important; }
.mission-team-list > .mission-person:not([open]) > summary::after { margin-top: auto !important; align-self: flex-end !important; }
}
.faq-section > .faq-inner, .faq-section .faq-inner, #faq > .faq-inner, #faq .faq-inner { width: auto !important; max-width: none !important; margin-left: var(--page-pad, clamp(32px, 6.25vw, 120px)) !important; margin-right: var(--page-pad, clamp(32px, 6.25vw, 120px)) !important; padding-left: 0px !important; padding-right: 0px !important; box-sizing: border-box !important; }
.faq-section .faq-grid, #faq .faq-grid { width: 100% !important; max-width: none !important; margin-left: 0px !important; margin-right: 0px !important; }
.faq-section .faq-item, #faq .faq-item { width: 100% !important; max-width: none !important; margin-left: 0px !important; margin-right: 0px !important; }
.faq-section .faq-question, #faq .faq-question { width: 100% !important; box-sizing: border-box !important; padding-left: 0px !important; padding-right: 0px !important; display: flex !important; align-items: center !important; justify-content: space-between !important; gap: 1.5rem !important; }
.faq-section .faq-question::after, #faq .faq-question::after { flex: 0 0 1.9rem !important; margin-left: auto !important; margin-right: 0px !important; }
@media (max-width: 900px) {
.faq-section > .faq-inner, .faq-section .faq-inner, #faq > .faq-inner, #faq .faq-inner { margin-left: var(--page-pad-mobile, 24px) !important; margin-right: var(--page-pad-mobile, 24px) !important; }
}
.faq-question::after, #faq .faq-question::after, .faq-section .faq-question::after { content: "⌄" !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; flex: 0 0 1.9rem !important; width: 1.9rem !important; height: 1.9rem !important; min-width: 1.9rem !important; min-height: 1.9rem !important; box-sizing: border-box !important; border: 1.5px solid !important; border-radius: 50% !important; background: transparent !important; padding: 0px 0px 0.18rem !important; margin-left: auto !important; margin-right: 0px !important; font-family: Arial, sans-serif !important; font-size: 1.2rem !important; font-weight: 400 !important; line-height: 1 !important; text-align: center !important; transform: none !important; }
.mission-person summary::after { align-items: center !important; justify-content: center !important; font-family: Arial, sans-serif !important; font-size: 1.2rem !important; font-weight: 400 !important; line-height: 1 !important; text-align: center !important; transform: none !important; }
.faq-item[open] .faq-question::after, .mission-person[open] summary::after { padding: 0.18rem 0px 0px !important; }
.testimonial-toggle .arrow, .testimonial-toggle .chevron, .testimonial-toggle svg { display: inline-flex !important; align-items: center !important; justify-content: center !important; width: 1.9rem !important; height: 1.9rem !important; min-width: 1.9rem !important; min-height: 1.9rem !important; box-sizing: border-box !important; border: 1.5px solid !important; border-radius: 50% !important; background: transparent !important; padding: 0.4rem !important; vertical-align: middle !important; }
.faq-question::after, #faq .faq-question::after, .faq-section .faq-question::after, .mission-person summary::after { content: "" !important; width: 1.9rem !important; height: 1.9rem !important; min-width: 1.9rem !important; min-height: 1.9rem !important; box-sizing: border-box !important; border: 1.5px solid !important; border-radius: 50% !important; background: linear-gradient(45deg, transparent 46%, currentcolor 47%, currentcolor 55%, transparent 56%) calc(50% - 4px) calc(50% - 1px) / 8px 8px no-repeat, linear-gradient(-45deg, transparent 46%, currentcolor 47%, currentcolor 55%, transparent 56%) calc(50% + 4px) calc(50% - 1px) / 8px 8px no-repeat !important; padding: 0px !important; transform: none !important; }
.faq-item[open] .faq-question::after, .mission-person[open] summary::after { content: "" !important; background: linear-gradient(-45deg, transparent 46%, currentcolor 47%, currentcolor 55%, transparent 56%) calc(50% - 4px) calc(50% + 1px) / 8px 8px no-repeat, linear-gradient(45deg, transparent 46%, currentcolor 47%, currentcolor 55%, transparent 56%) calc(50% + 4px) calc(50% + 1px) / 8px 8px no-repeat !important; }
.testimonial-toggle svg, .testimonial-toggle .arrow, .testimonial-toggle .chevron { display: none !important; }
.testimonial-toggle::after { content: "" !important; width: 1.9rem !important; height: 1.9rem !important; min-width: 1.9rem !important; min-height: 1.9rem !important; box-sizing: border-box !important; border: 1.5px solid !important; border-radius: 50% !important; background: linear-gradient(45deg, transparent 46%, currentcolor 47%, currentcolor 55%, transparent 56%) calc(50% - 4px) calc(50% - 1px) / 8px 8px no-repeat, linear-gradient(-45deg, transparent 46%, currentcolor 47%, currentcolor 55%, transparent 56%) calc(50% + 4px) calc(50% - 1px) / 8px 8px no-repeat !important; transform: none !important; }
.testimonial-card.open .testimonial-toggle::after, .testimonial-card.is-open .testimonial-toggle::after, .testimonial-card[open] .testimonial-toggle::after { background: linear-gradient(-45deg, transparent 46%, currentcolor 47%, currentcolor 55%, transparent 56%) calc(50% - 4px) calc(50% + 1px) / 8px 8px no-repeat, linear-gradient(45deg, transparent 46%, currentcolor 47%, currentcolor 55%, transparent 56%) calc(50% + 4px) calc(50% + 1px) / 8px 8px no-repeat !important; }
.mission-person-arrow { display: none !important; }
.mission-person summary::after { content: "" !important; display: block !important; flex: 0 0 1.9rem !important; width: 1.9rem !important; height: 1.9rem !important; min-width: 1.9rem !important; min-height: 1.9rem !important; box-sizing: border-box !important; border: 1.5px solid !important; border-radius: 50% !important; background: linear-gradient(45deg, transparent 43%, currentcolor 44%, currentcolor 56%, transparent 57%) calc(50% - 3px) calc(50% - 1px) / 7px 7px no-repeat, linear-gradient(-45deg, transparent 43%, currentcolor 44%, currentcolor 56%, transparent 57%) calc(50% + 3px) calc(50% - 1px) / 7px 7px no-repeat !important; padding: 0px !important; margin-top: auto !important; margin-left: auto !important; align-self: flex-end !important; }
.mission-person[open] summary::after { background: linear-gradient(-45deg, transparent 43%, currentcolor 44%, currentcolor 56%, transparent 57%) calc(50% - 3px) calc(50% + 1px) / 7px 7px no-repeat, linear-gradient(45deg, transparent 43%, currentcolor 44%, currentcolor 56%, transparent 57%) calc(50% + 3px) calc(50% + 1px) / 7px 7px no-repeat !important; }
.faq-question::after, #faq .faq-question::after, .faq-section .faq-question::after, .mission-person summary::after, .testimonial-toggle::after { content: "" !important; box-sizing: border-box !important; width: 1.9rem !important; height: 1.9rem !important; min-width: 1.9rem !important; min-height: 1.9rem !important; border: 1.5px solid var(--mm-c-402144,#402144) !important; border-radius: 50% !important; background-color: transparent !important; background-image: var(--mm-svg-0,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 8l5 5 5-5' fill='none' stroke='%23402144' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")) !important; background-repeat: no-repeat !important; background-position: 50% 50% !important; background-size: 58% 58% !important; padding: 0px !important; transform: none !important; }
.faq-question::after, #faq .faq-question::after, .faq-section .faq-question::after, .mission-person summary::after { display: block !important; flex: 0 0 1.9rem !important; margin-left: auto !important; margin-right: 0px !important; }
.testimonial-toggle::after { display: inline-block !important; margin-left: 0.65rem !important; vertical-align: middle !important; }
.faq-item[open] .faq-question::after, .mission-person[open] summary::after, .testimonial-card.open .testimonial-toggle::after, .testimonial-card.is-open .testimonial-toggle::after, .testimonial-card[open] .testimonial-toggle::after { background-image: var(--mm-svg-1,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 12l5-5 5 5' fill='none' stroke='%23402144' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")) !important; }
.testimonial-toggle svg, .testimonial-toggle .arrow, .testimonial-toggle .chevron, .mission-person-arrow { display: none !important; }
.mission-person > summary { list-style: none !important; }
.mission-person > summary::-webkit-details-marker { display: none !important; }
.mission-person > summary::marker { content: "" !important; display: none !important; }
.mission-person > summary > .arrow, .mission-person > summary > .chevron, .mission-person > summary > svg, .mission-person-arrow { display: none !important; }
@media (min-width: 901px) {
.mission-person:not([open]) > summary::after { margin-top: auto !important; margin-left: auto !important; align-self: flex-end !important; }
}
.testimonial-copy > details > summary::after { content: "" !important; box-sizing: border-box !important; flex: 0 0 1.9rem !important; min-width: 1.9rem !important; min-height: 1.9rem !important; border-width: 1.5px !important; border-style: solid !important; border-image: none !important; border-radius: 50% !important; top: auto !important; padding: 0px !important; transform: none !important; vertical-align: middle !important; }
.testimonial-copy > details[open] > summary::after { transform: none !important; }
.faq-grid > details > summary::after { content: "" !important; box-sizing: border-box !important; display: block !important; flex: 0 0 1.9rem !important; width: 1.9rem !important; height: 1.9rem !important; min-width: 1.9rem !important; min-height: 1.9rem !important; margin-left: auto !important; margin-right: 0px !important; border: 1.5px solid !important; border-radius: 50% !important; background-color: transparent !important; background-image: var(--mm-svg-2,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 8l5 5 5-5' fill='none' stroke='%23402144' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")) !important; background-repeat: no-repeat !important; background-position: 50% 50% !important; background-size: 58% 58% !important; position: absolute !important; right: 8px !important; top: 50% !important; padding: 0px !important; transform: translateY(-50%) !important; }
.faq-grid > details[open] > summary::after { background-image: var(--mm-svg-3,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 12l5-5 5 5' fill='none' stroke='%23402144' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")) !important; transform: translateY(-50%) !important; }
@media (min-width: 901px) {
.mission-team-list { gap: var(--mm-card-gap) !important; }
}
.pathways { padding-top: clamp(72px, 7vw, 108px) !important; padding-bottom: clamp(72px, 7vw, 108px) !important; }
@media (max-width: 600px) {
.pathways { padding-top: 58px !important; padding-bottom: 58px !important; }
}
.testimonial-copy > p:first-of-type { max-height: 7.35em !important; overflow: hidden !important; mask-image: linear-gradient(var(--mm-c-000000,#000000) 0%, var(--mm-c-000000,#000000) 70%, transparent 100%) !important; }
.testimonial-card:has(.testimonial-copy > details[open]) .testimonial-copy > p:first-of-type { max-height: none !important; overflow: visible !important; mask-image: none !important; }
.testimonial-copy h3 { font-size: clamp(1.3rem, 1.45vw, 1.65rem) !important; line-height: 1.1 !important; font-weight: 700 !important; }
@media (min-width: 801px) {
.testimonial-card:not(:has(.testimonial-copy > details[open])) .testimonial-copy { display: flex !important; flex-direction: column !important; }
}
@media (min-width: 801px) {
.testimonial-card:not(:has(.testimonial-copy > details[open])) .testimonial-copy { min-height: 17rem !important; }
}
.testimonial-card { overflow: visible !important; }
.testimonial-copy { position: relative !important; }
.testimonial-copy > details { position: relative !important; }
.testimonial-copy > details > summary { padding: 0px !important; margin: 0px auto !important; display: block !important; font-size: 0px !important; line-height: 0 !important; list-style: none !important; overflow: visible !important; }
.testimonial-copy > details > summary::-webkit-details-marker { display: none !important; }
.testimonial-copy > details > summary::marker { content: "" !important; }
.testimonial-copy > details > summary .when-closed, .testimonial-copy > details > summary .when-open { display: none !important; }
.testimonial-copy > details > summary::after { display: block !important; margin: 0px !important; position: static !important; }
@media (min-width: 801px) {
.testimonial-card:not(:has(.testimonial-copy > details[open])) .testimonial-copy > details { margin-top: auto !important; padding-top: 1.1rem !important; }
.testimonial-card:not(:has(.testimonial-copy > details[open])) .testimonial-copy { padding-bottom: clamp(28px, 2.7vw, 42px) !important; }
}
.testimonial-copy > details[open] { padding-bottom: 0px !important; }
.testimonial-copy > details[open] > summary { margin: 0px auto !important; }
.testimonial-copy > details > summary::after { background-position: center center !important; background-repeat: no-repeat !important; }
@media (min-width: 801px) {
.testimonial-card:not(:has(.testimonial-copy > details[open])) .testimonial-copy > details { margin-bottom: calc(-1px - 1.375rem) !important; }
}
.testimonial-copy > details > summary { width: 3.25rem !important; height: 3.25rem !important; min-width: 3.25rem !important; min-height: 3.25rem !important; transition: transform 0.18s, filter 0.18s !important; }
.testimonial-copy > details > summary::after { width: 3.25rem !important; height: 3.25rem !important; background-color: var(--orange) !important; border-color: var(--orange) !important; background-size: 58% 58% !important; background-image: var(--mm-svg-4,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 8l5 5 5-5' fill='none' stroke='%23402144' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")) !important; }
.testimonial-copy > details[open] > summary::after { background-image: var(--mm-svg-5,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 12l5-5 5 5' fill='none' stroke='%23402144' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")) !important; }
@media (prefers-reduced-motion: reduce) {
.testimonial-copy > details > summary { transition: none !important; }
}
.testimonial-copy > details > summary:hover { transform: scale(1.08) !important; filter: none !important; }
@media (prefers-reduced-motion: reduce) {
.testimonial-copy > details > summary:hover { transform: none !important; }
}
.testimonial-more { will-change: height, opacity; }
@media (prefers-reduced-motion: reduce) {
.testimonial-more { will-change: auto; }
}
.testimonial-copy > details[open] { flex: 0 0 auto !important; margin-top: 0px !important; padding-top: 0px !important; }
.testimonial-copy > details[open] .testimonial-more { padding-top: 0px !important; }
.testimonial-copy > details[open] .testimonial-more > p:first-child { margin-top: 0px !important; }
.testimonials-grid { align-items: start !important; }
.testimonial-card { height: auto !important; align-self: start !important; }
.testimonial-copy { height: auto !important; }
@media (min-width: 801px) {
.testimonial-card { min-height: var(--testimonial-closed-height, auto) !important; }
}
.testimonial-copy > details[open] .testimonial-more { padding-bottom: 3.9rem !important; }
.testimonial-copy > details[open] .testimonial-more > p:last-child { margin-bottom: 0px !important; }
.mission-person > summary::after { width: 3.25rem !important; height: 3.25rem !important; min-width: 3.25rem !important; min-height: 3.25rem !important; flex: 0 0 3.25rem !important; border: 0px !important; border-radius: 50% !important; background-color: var(--orange) !important; background-image: var(--mm-svg-6,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 8l5 5 5-5' fill='none' stroke='%23402144' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")) !important; background-size: 58% 58% !important; background-position: center center !important; background-repeat: no-repeat !important; transition: transform 0.18s !important; transform-origin: center center !important; }
.mission-person-more { will-change: height, opacity; }
@media (prefers-reduced-motion: reduce) {
.mission-person-more { will-change: auto; }
}
.testimonials { padding-left: 0px !important; padding-right: 0px !important; }
.mission-person { position: relative !important; overflow: visible !important; }
.mission-person > summary::after, .mission-person:not([open]) > summary::after, .mission-person[open] > summary::after { align-self: auto !important; }
@media (max-width: 900px) {
.testimonials-inner { width: min(100% - 48px, 1280px) !important; }
}
@media (max-width: 520px) {
.testimonials-inner { width: min(100% - 32px, 1280px) !important; }
}
.testimonials-inner { width: auto !important; max-width: none !important; margin: 0px !important; padding-left: clamp(96px, 7.1vw, 144px) !important; padding-right: clamp(96px, 7.1vw, 144px) !important; }
@media (max-width: 900px) {
.testimonials-inner { padding-left: 48px !important; padding-right: 48px !important; }
}
@media (max-width: 520px) {
.testimonials-inner { padding-left: 24px !important; padding-right: 24px !important; }
}
.mission-person > summary::after { display: none !important; content: none !important; }
.mission-person[open] .mission-person-toggle { background-image: var(--mm-svg-7,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 12l5-5 5 5' fill='none' stroke='%23402144' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")) !important; }
.mission-person > summary:hover .mission-person-toggle { transform: translateX(-50%) scale(1.08) !important; }
@media (prefers-reduced-motion: reduce) {
.mission-person > summary:hover .mission-person-toggle { transform: translateX(-50%) !important; }
}
nn .mission-person { position: relative !important; overflow: visible !important; }
.mission-person-toggle { position: absolute !important; left: 50% !important; bottom: -1.625rem !important; z-index: 20 !important; display: block !important; width: 3.25rem !important; height: 3.25rem !important; padding: 0px !important; border: 0px !important; border-radius: 50% !important; background-color: var(--purple) !important; background-image: var(--mm-svg-8,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 8l5 5 5-5' fill='none' stroke='%23c3a5c8' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")) !important; background-repeat: no-repeat !important; background-position: center center !important; background-size: 58% 58% !important; transform: translateX(-50%) !important; transform-origin: center center !important; transition: transform 0.18s !important; cursor: pointer !important; pointer-events: auto !important; appearance: none !important; }
.mission-person[open] > .mission-person-toggle { background-image: var(--mm-svg-9,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 12l5-5 5 5' fill='none' stroke='%23c3a5c8' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")) !important; }
.mission-person-toggle:hover { transform: translateX(-50%) scale(1.08) !important; }
.mission-person-toggle:focus-visible { outline: currentcolor solid 3px !important; outline-offset: 4px !important; }
.faq { padding-left: 0px !important; padding-right: 0px !important; }
.faq-inner { width: auto !important; max-width: none !important; margin: 0px !important; padding-left: clamp(96px, 7.1vw, 144px) !important; padding-right: clamp(96px, 7.1vw, 144px) !important; box-sizing: border-box !important; }
@media (max-width: 900px) {
.faq-inner { padding-left: 48px !important; padding-right: 48px !important; }
}
@media (max-width: 520px) {
.faq-inner { padding-left: 24px !important; padding-right: 24px !important; }
}
@media (prefers-reduced-motion: reduce) {
.mission-person-toggle { transition: none !important; }
.mission-person-toggle:hover { transform: translateX(-50%) !important; }
}
.mission-team-list > .mission-person { position: relative !important; overflow: visible !important; }
.mission-person > summary { overflow: visible !important; }
.mission-person > .mission-person-more { overflow: hidden; box-sizing: border-box !important; }
.mission-person[open] > .mission-person-more { padding-bottom: 2.15rem !important; }
.mission-person > .mission-person-toggle { display: block !important; visibility: visible !important; opacity: 1 !important; bottom: -1.625rem !important; }
.mission-team-list { overflow: visible !important; padding-bottom: 1.625rem !important; }
nn .mission-person > summary { position: static !important; overflow: visible !important; }
.mission-person > summary::after, .mission-person:not([open]) > summary::after, .mission-person[open] > summary::after { position: absolute !important; right: auto !important; top: auto !important; width: 3.25rem !important; height: 3.25rem !important; min-width: 3.25rem !important; min-height: 3.25rem !important; margin: 0px !important; border: 0px !important; border-radius: 50% !important; background-color: var(--purple) !important; background-image: var(--mm-svg-10,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 8l5 5 5-5' fill='none' stroke='%23c3a5c8' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")) !important; background-repeat: no-repeat !important; background-position: center center !important; background-size: 58% 58% !important; transform: translateX(-50%) !important; transform-origin: center center !important; transition: transform 0.18s !important; }
.mission-person[open] > summary::after { background-image: var(--mm-svg-11,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 12l5-5 5 5' fill='none' stroke='%23c3a5c8' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")) !important; }
.mission-person > summary:hover::after { transform: translateX(-50%) scale(1.08) !important; }
@media (prefers-reduced-motion: reduce) {
.mission-person > summary::after { transition: none !important; }
.mission-person > summary:hover::after { transform: translateX(-50%) !important; }
}
@media (min-width: 901px) {
.mission-team-list { align-items: start !important; }
.mission-team-list > .mission-person { align-self: start !important; height: auto !important; min-height: 0px !important; }
}
.mission-person > summary { position: relative !important; z-index: 1 !important; width: 100% !important; height: auto !important; min-height: 0px !important; }
.mission-person > summary::after, .mission-person:not([open]) > summary::after, .mission-person[open] > summary::after { left: 50% !important; bottom: -1.625rem !important; z-index: 5 !important; pointer-events: none !important; }
.mission-person { isolation: isolate !important; z-index: 0 !important; }
.mission-person[open] { z-index: 1 !important; }
.mission-team-list { align-items: start !important; }
.mission-team-list > .mission-person-shell { position: relative !important; width: 100% !important; min-width: 0px !important; align-self: start !important; overflow: visible !important; }
.mission-person-shell > .mission-person { display: block !important; width: 100% !important; max-width: none !important; min-width: 0px !important; margin: 0px !important; box-sizing: border-box !important; }
.mission-person > summary::after, .mission-person:not([open]) > summary::after, .mission-person[open] > summary::after { display: none !important; content: none !important; }
.mission-person-edge-toggle { position: absolute !important; left: 50% !important; bottom: -1.625rem !important; z-index: 30 !important; display: block !important; width: 3.25rem !important; height: 3.25rem !important; padding: 0px !important; border: 0px !important; border-radius: 50% !important; background-color: var(--purple) !important; background-image: var(--mm-svg-12,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 8l5 5 5-5' fill='none' stroke='%23c3a5c8' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")) !important; background-repeat: no-repeat !important; background-position: center center !important; background-size: 58% 58% !important; transform: translateX(-50%) !important; transform-origin: center center !important; transition: transform 0.18s !important; cursor: pointer !important; appearance: none !important; }
.mission-person-shell:has(.mission-person[open]) > .mission-person-edge-toggle { background-image: var(--mm-svg-13,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 12l5-5 5 5' fill='none' stroke='%23c3a5c8' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")) !important; }
.mission-person-edge-toggle:hover { transform: translateX(-50%) scale(1.08) !important; }
.mission-person-edge-toggle:focus-visible { outline: 3px solid var(--purple) !important; outline-offset: 4px !important; }
@media (min-width: 901px) {
.mission-team-list > .mission-person-shell:nth-child(1) { grid-area: 1 / 1 !important; }
.mission-team-list > .mission-person-shell:nth-child(2) { grid-area: 1 / 2 !important; }
.mission-team-list > .mission-person-shell:nth-child(3) { grid-area: 1 / 3 !important; }
}
@media (prefers-reduced-motion: reduce) {
.mission-person-edge-toggle { transition: none !important; }
.mission-person-edge-toggle:hover { transform: translateX(-50%) !important; }
}
.testimonial-card:not(:has(.testimonial-copy > details[open])) .testimonial-copy > p:first-of-type { height: 7.35em !important; max-height: 7.35em !important; overflow: hidden !important; mask-image: linear-gradient(var(--mm-c-000000,#000000) 0%, var(--mm-c-000000,#000000) 70%, transparent 100%) !important; mask-size: 100% 100% !important; }
.testimonial-card:has(.testimonial-copy > details[open]) .testimonial-copy > p:first-of-type { height: auto !important; }
@media (min-width: 901px) {
.mission-person-shell:not(:has(.mission-person[open])) > .mission-person > summary { height: 100% !important; min-height: 0px !important; box-sizing: border-box !important; }
}
@media (min-width: 901px) {
.mission-person > summary { display: flex !important; flex-direction: column !important; align-items: flex-start !important; gap: 0px !important; padding: clamp(38px, 3.4vw, 54px) !important; box-sizing: border-box !important; }
.mission-person > summary > img, .mission-person > summary > picture > img { flex: 0 0 auto !important; margin-top: 0px !important; margin-right: 0px !important; margin-left: 0px !important; }
.mission-person > summary > .mission-person-intro { display: flex !important; flex-direction: column !important; gap: 7px !important; width: 100% !important; margin: 0px !important; align-self: stretch !important; }
}
@media (min-width: 901px) {
.mission-person-shell:not(:has(.mission-person[open])) > .mission-person { height: 25.75rem !important; min-height: 25.75rem !important; }
.mission-person > summary > img, .mission-person > summary > picture > img { margin-bottom: 1.8rem !important; }
}
.contact-intro h2, .contact h2, #contact h2 { text-align: left !important; margin-left: 0px !important; margin-right: 0px !important; max-width: none !important; }
.mission-section { padding-bottom: calc(-1.625rem + clamp(72px, 7vw, 108px)) !important; }
@media (max-width: 800px) {
.mission-section { padding-bottom: calc(58px - 1.625rem) !important; }
}
nn .testimonial-card:not(:has(.testimonial-copy > details[open])) .testimonial-copy > p:first-of-type { height: 8.55em !important; max-height: 8.55em !important; overflow: hidden !important; mask-image: linear-gradient(var(--mm-c-000000,#000000) 0%, var(--mm-c-000000,#000000) 58%, transparent 100%) !important; }
nn .faq details { border-top: 5px solid var(--purple) !important; }
.faq details:last-child { border-bottom: 5px solid var(--purple) !important; }
.faq summary { padding-right: 0px !important; }
.faq summary::after, .faq-question::after, #faq .faq-question::after, .faq-section .faq-question::after { display: none !important; content: none !important; background: none !important; }
.faq-grid > details > summary { padding-right: 0px !important; list-style: none !important; }
.faq-grid > details > summary::-webkit-details-marker { display: none !important; }
.faq-grid > details > summary::marker { content: "" !important; font-size: 0px !important; }
.faq-grid > details > summary::before, .faq-grid > details > summary::after { content: none !important; display: none !important; width: 0px !important; height: 0px !important; border: 0px !important; background: none !important; }
.faq-grid > details { border-top: 3px solid var(--mm-c-bab0a0,#bab0a0) !important; }
.faq-grid > details:last-child { border-bottom: 3px solid var(--mm-c-bab0a0,#bab0a0) !important; }
.faq-grid > details > div { width: 100% !important; max-width: none !important; box-sizing: border-box !important; padding-right: 0px !important; }
.faq-grid > details > div > p, .faq-grid > details > div > ul { width: 100% !important; max-width: none !important; }
:root { --body-copy-size: clamp(17px,1.45vw,21px); --body-copy-leading: 1.45; }
main p, main li, .service p, .benefit-card p, .growth-feature .growth-lead, .growth-feature .growth-body, .mission-copy, .mission-copy p, .mission-person-more p, .team-copy p, .team-copy .team-more p, .testimonial-copy p, .testimonial-copy .testimonial-more p, .faq-grid > details > div, .faq-grid > details > div p, .faq-grid > details > div li, .contact-intro p { font-size: var(--body-copy-size) !important; line-height: var(--body-copy-leading) !important; }
:root { --mm-body-copy-size: clamp(17px, 1.45vw, 21px); --mm-body-copy-leading: 1.45; }
button, .button, .btn, a.button, a.btn, input[type="submit"], input[type="button"] { font-size: var(--mm-body-copy-size); line-height: var(--mm-body-copy-leading); }
form label, form select, form input, form textarea, form .consent, form .consent label, form .checkbox-label { font-size: var(--mm-body-copy-size); line-height: var(--mm-body-copy-leading); }
.mission-person-intro > span { font-size: var(--body-copy-size) !important; line-height: var(--body-copy-leading) !important; }
/* One size for all orange text buttons; only the hero overrides this below. */
a.pill, button.pill, .testimonial-preview-read.pill, .testimonial-filter {
  font-family:inherit;
  font-size:16px !important;
  line-height:1.42 !important;
  font-weight:500;
  padding:11px 18px;
  border:1px solid var(--orange);
  border-radius:24px;
  width:max-content;
  max-width:100%;
}
.contact-form > label, .contact-form > label > input:not([type="checkbox"]), .contact-form > label > select, .contact-form > label > textarea, .contact-form .consent > span { font-size: var(--body-copy-size) !important; line-height: var(--body-copy-leading) !important; }
.contact-form .consent small { font-size: 0.82em !important; line-height: 1.45 !important; }
@media (min-width: 761px) {
.testimonials-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)) !important; }
}
@media (min-width: 761px) {
.testimonials-grid { row-gap: 56px !important; }
}
@media (min-width: 761px) {
.testimonial-card:not(:has(.testimonial-copy > details[open])) .testimonial-copy > details { margin-bottom: calc(-1px - 3.55rem) !important; }
}
.testimonial-copy > details[open] { margin-bottom: calc(-1px - 3.55rem) !important; }
@media (min-width: 761px) {
.mission-team-list { display: grid !important; grid-template-columns: 1fr !important; gap: 56px !important; align-items: start !important; }
.mission-team-list > .mission-person-shell, .mission-team-list > .mission-person-shell:nth-child(1), .mission-team-list > .mission-person-shell:nth-child(2), .mission-team-list > .mission-person-shell:nth-child(3) { grid-area: auto / 1 !important; width: 100% !important; }
.mission-person-shell:not(:has(.mission-person[open])) > .mission-person { height: auto !important; min-height: 0px !important; }
.mission-person > summary { display: grid !important; grid-template-columns: clamp(150px, 14vw, 210px) minmax(0px, 1fr) !important; align-items: center !important; column-gap: clamp(36px, 4vw, 64px) !important; padding: clamp(38px, 3.4vw, 54px) !important; min-height: clamp(250px, 20vw, 310px) !important; box-sizing: border-box !important; }
.mission-person > summary > img, .mission-person > summary > picture > img { grid-column: 1 !important; width: clamp(150px, 14vw, 210px) !important; height: clamp(150px, 14vw, 210px) !important; margin: 0px !important; align-self: center !important; }
.mission-person > summary > .mission-person-intro { grid-column: 2 !important; align-self: center !important; width: 100% !important; margin: 0px !important; }
.mission-person-more { width: 100% !important; max-width: none !important; box-sizing: border-box !important; padding-left: clamp(38px, 3.4vw, 54px) !important; padding-right: clamp(38px, 3.4vw, 54px) !important; }
}
.mission-person-community { display: block !important; margin-top: 1rem !important; font-size: var(--body-copy-size) !important; line-height: var(--body-copy-leading) !important; }
.mission-person-community strong { font-weight: 600 !important; }
.mission-person-tags { display: flex !important; flex-wrap: wrap !important; gap: 0.65rem !important; margin-top: 1.25rem !important; }
.mission-person-tags > span { display: inline-flex !important; align-items: center !important; justify-content: center !important; width: auto !important; padding: 0.42em 1.05em !important; font-weight: 500 !important; white-space: nowrap !important; }
.mission-person-more > p + p { margin-top: 1.55em !important; }
.mission-person-more .mission-person-lead { font-weight: 600 !important; }
.mission-person-community, .mission-person-community strong { font-size: var(--body-copy-size) !important; line-height: var(--body-copy-leading) !important; }
.mission-person-tags > span { font-size: clamp(14px, 1.1vw, 17px) !important; line-height: 1.1 !important; }
.mission-person-tags > span { border-radius: 0px !important; border: 0px !important; box-shadow: none !important; text-decoration: none !important; cursor: inherit !important; }
.mission-person-tags > span { background: var(--mm-c-bea1c2,#bea1c2) !important; color: var(--purple) !important; }
.testimonial-image-break { height: clamp(320px, 42vw, 620px); overflow: hidden; background: var(--purple); }
.testimonial-image-break img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center center; }
@media (max-width: 700px) {
.testimonial-image-break { height: 52vw; min-height: 230px; }
}

img { height:auto; }
/* Accessibility and intrinsic-width fixes; existing layout and palette retained. */
.skip-link { position:fixed; top:12px; left:12px; z-index:100; padding:12px 18px; background:var(--purple); color:var(--mm-c-ded8ce,#ded8ce); transform:translateY(-200%); }
.skip-link:focus { transform:none; }
a:focus-visible, button:focus-visible, summary:focus-visible { outline:3px solid currentColor; outline-offset:4px; }
.contact-form input:focus-visible, .contact-form select:focus-visible, .contact-form textarea:focus-visible { outline:3px solid var(--orange); outline-offset:3px; }
.contact > *, .contact-form, .contact-form > label { min-width:0; }
.contact-form input:not([type="checkbox"]), .contact-form select, .contact-form textarea { width:100%; min-width:0; max-width:100%; box-sizing:border-box; }
.contact .direct a, .contact-intro p { overflow-wrap:anywhere; }
/* picture is only a format fallback wrapper; the original image owns the layout. */
.mission-person > summary > picture, .testimonial-card > picture { display:contents; }
@media (min-width:761px) {
  .mission-person > summary > picture > img { grid-column:1 !important; width:clamp(150px,14vw,210px) !important; height:clamp(150px,14vw,210px) !important; margin:0 !important; align-self:center !important; }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  .photo img { transition:none; }
}
@media (max-width:400px) {
  .benefits-head h2, .mission-person-intro { overflow-wrap:anywhere; }
}

/* Shared purple/lilac photo haze, matching the growth-section treatment. */
:root { --photo-haze:linear-gradient(90deg, rgb(var(--mm-rgb-723b7a,114 59 122) / .3), rgb(var(--mm-rgb-ba9fbd,186 159 189) / .1) 76%); }
.testimonial-image-break { position:relative; }
.testimonial-image-break::after { content:""; position:absolute; inset:0; pointer-events:none; background:var(--photo-haze); }

/* Hero CTA: 10% larger dimensions, with a 12% hover enlargement. */
.hero .hero-copy > a.pill, .study-hero-copy > a.pill {
  font-size:calc(var(--body-copy-size) * 1.1) !important;
  line-height:var(--body-copy-leading) !important;
  padding:12.1px 19.8px;
  border-width:1.1px;
  border-radius:26.4px;
}
.hero .hero-copy > a.pill:hover, .study-hero-copy > a.pill:hover { transform:scale(1.12); }


/* Trial buttons fit their label instead of stretching across the card. */
.pathways .pathway-cta {
  align-self:center;
  width:auto;
  max-width:100%;
}

/* Manual testimonials: isolated styles leave existing buttons and team cards intact. */
.testimonial-carousel { position:relative; padding-inline:60px; }
.testimonial-slides { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(24px,3vw,48px); align-items:stretch; overflow:hidden; }
.testimonial-slide { min-width:0; display:flex; }
.testimonial-slide[hidden] { display:none; }
.testimonial-preview { display:flex; flex-direction:column; width:100%; padding:0; border:0; border-radius:0; text-align:left; font:inherit; color:var(--purple); background:rgb(var(--mm-rgb-ffffff,255 255 255) / .25); cursor:pointer; }
.testimonial-preview:hover { transform:none; filter:none; }
.testimonial-preview picture { display:block; width:100%; }
.testimonial-preview img { display:block; width:100%; height:auto; aspect-ratio:16/10; object-fit:cover; }
.testimonial-preview-copy { display:flex; flex-direction:column; flex:1; padding:var(--mm-box-padding); }
.testimonial-preview-title { display:block; font-size:clamp(24px,2vw,32px); line-height:1.2; font-weight:600; margin-bottom:22px; }
.testimonial-preview-excerpt { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:4; overflow:hidden; font-size:var(--body-copy-size); line-height:var(--body-copy-leading); }
.testimonial-preview-read { display:inline-block; align-self:flex-start; margin-top:24px; text-align:center; text-decoration:none; }
.testimonial-nav { position:absolute; top:45%; width:3.25rem; height:3.25rem; display:grid; place-items:center; padding:0; border:0; background:var(--purple); color:var(--mm-c-c3a5c8,#c3a5c8); font:400 36px/1 Arial,sans-serif; border-radius:50%; cursor:pointer; }
.testimonial-prev { left:0; }
.testimonial-next { right:0; }
.testimonial-nav:disabled { opacity:.4; cursor:default; transform:none; }
.testimonial-position { text-align:center; margin:24px 0 0; font-size:14px; }
.testimonial-dialog { width:min(800px,calc(100% - 32px)); max-height:calc(100dvh - 48px); padding:0; border:0; color:var(--purple); background:var(--mm-c-cbc4b9,#cbc4b9); overscroll-behavior:contain; }
.testimonial-dialog::backdrop { background:rgb(var(--mm-rgb-402144,64 33 68) / .92); }
.testimonial-dialog-panel { position:relative; padding:clamp(28px,5vw,64px); padding-top:72px; }
.testimonial-dialog-close { position:sticky; top:16px; display:grid; place-items:center; width:44px; height:44px; margin:-56px calc(16px - clamp(28px,5vw,64px)) 12px auto; border:0; border-radius:50%; background:var(--purple); color:var(--mm-c-cbc4b9,#cbc4b9); font:32px/1 Arial,sans-serif; cursor:pointer; z-index:1; }
.testimonial-dialog-copy h2 { font-size:clamp(26px,3vw,38px); line-height:1.2; margin:0 0 28px; }
.testimonial-dialog-copy p { font-size:var(--body-copy-size); line-height:var(--body-copy-leading); margin:0 0 1.2em; }
.testimonial-dialog-copy p:last-child { margin-bottom:0; }
@media(max-width:700px) {
  .testimonial-carousel { padding-inline:46px; }
  .testimonial-slides { grid-template-columns:minmax(0,1fr); }
  .testimonial-nav { width:3.25rem; height:3.25rem; font-size:0; }
  .testimonial-preview-copy { padding:22px; }
}

/* Circular team-style controls, with matching stroked chevrons. */
.testimonial-nav { font-size:0; background-image:var(--mm-svg-14,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m8 5 5 5-5 5' fill='none' stroke='%23c3a5c8' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")); background-repeat:no-repeat; background-position:center; background-size:58% 58%; }
.testimonial-prev { background-image:var(--mm-svg-15,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m12 5-5 5 5 5' fill='none' stroke='%23c3a5c8' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")); }
.testimonial-nav:hover { transform:scale(1.08); }
@media(max-width:700px) { .testimonial-prev { left:-8px; } .testimonial-next { right:-8px; } }

/* Team profiles use the same cream modal and standard-size orange pill. */
.team-profile-open { display:block; margin:20px auto 0; cursor:pointer; }

/* Navigation matches the footer; the orange CTA retains its existing styling. */
.site-header { background:var(--purple); color:var(--taupe); }
.site-header .menu { color:var(--taupe); }

/* Shared two-column team carousel and screen-reader-only position announcements. */
.carousel-status { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
.team-carousel { min-width:0; width:100%; }
.team-carousel .mission-team-list { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:clamp(24px,3vw,48px) !important; align-items:stretch !important; padding-bottom:0 !important; }
.team-carousel .mission-team-list > .mission-person-shell { grid-area:auto !important; align-self:stretch !important; display:flex; flex-direction:column; }
.team-carousel .mission-team-list > .mission-person-shell[hidden] { display:none !important; }
.team-carousel .mission-person-shell > .mission-person { flex:1; height:auto !important; min-height:0 !important; }
.team-carousel .mission-person > summary { display:flex !important; flex-direction:column !important; align-items:flex-start !important; height:auto !important; min-height:0 !important; padding:var(--mm-box-padding) !important; }
.team-carousel .mission-person > summary > img, .team-carousel .mission-person > summary > picture > img { width:120px !important; height:120px !important; margin:0 0 24px !important; align-self:flex-start !important; }
.team-carousel .mission-person > summary > .mission-person-intro { align-self:stretch !important; }
.team-carousel .team-profile-open { margin-top:20px; margin-bottom:0; }
@media(max-width:700px) {
 .team-carousel .mission-team-list { grid-template-columns:minmax(0,1fr) !important; }
 .team-carousel .mission-person > summary { padding:20px !important; }
 .team-carousel .mission-person > summary > img, .team-carousel .mission-person > summary > picture > img { width:92px !important; height:92px !important; }
}

/* Testimonial cards follow the FAQ guides; arrows overlap the outer card edges. */
.testimonials { overflow-x:clip; }
.testimonials .testimonial-carousel { padding-inline:0; }
.testimonials .testimonial-prev { left:-1.625rem; }
.testimonials .testimonial-next { right:-1.625rem; }
.testimonials .testimonial-nav { z-index:2; }
@media(max-width:520px) {
  .testimonials .testimonial-nav { width:48px; height:48px; }
  .testimonials .testimonial-prev { left:-24px; }
  .testimonials .testimonial-next { right:-24px; }
}

/* Team cards share the testimonial carousel's page alignment and edge controls. */
.mission-section { overflow-x:clip; }
.team-carousel { padding-inline:0; }
.team-carousel .testimonial-prev { left:-1.625rem; }
.team-carousel .testimonial-next { right:-1.625rem; }
.team-carousel .testimonial-nav { z-index:2; }
@media(max-width:520px) {
  .team-carousel .testimonial-nav { width:48px; height:48px; }
  .team-carousel .testimonial-prev { left:-24px; }
  .team-carousel .testimonial-next { right:-24px; }
}

/* Continuous card tracks: one full card-width moves in and out of the viewport. */
.carousel-viewport { overflow:hidden; width:100%; }
.testimonial-carousel { --carousel-card-padding:var(--mm-box-padding); --carousel-card-width:calc((100% - var(--mm-card-gap)) / 2); }
.testimonial-carousel .testimonial-slides { display:flex !important; flex-wrap:nowrap; gap:var(--mm-card-gap) !important; width:100% !important; overflow:visible; align-items:stretch !important; }
.testimonial-carousel .testimonial-slides > * { flex:0 0 var(--carousel-card-width) !important; min-width:0; }
.testimonial-preview-excerpt { margin-bottom:24px; }
.testimonial-preview-read { margin-top:auto; }
.team-carousel .mission-person-shell > .mission-person { display:flex !important; flex-direction:column; align-self:stretch !important; height:auto !important; min-height:0 !important; padding:0 0 var(--mm-box-padding-x) !important; }
.team-profile-summary { display:flex; flex-direction:column; align-items:flex-start; padding:var(--carousel-card-padding); cursor:pointer; }
.team-profile-summary:focus-visible { outline:3px solid var(--purple); outline-offset:-4px; }
.team-profile-summary > picture { display:contents; }
.team-carousel .team-profile-summary img { display:block; width:120px !important; height:120px !important; margin:0 0 24px !important; align-self:flex-start !important; }
.team-carousel .team-profile-summary .mission-person-intro { width:100%; min-width:0; }
.team-carousel .mission-person .team-profile-open { align-self:flex-start; margin:auto var(--mm-box-padding-x) 0; max-width:calc(100% - 2 * var(--mm-box-padding-x)); }
@media(max-width:700px) {
 .testimonial-carousel { --carousel-card-width:100%; --carousel-card-padding:var(--mm-box-padding); }
 .team-carousel .team-profile-summary img { width:92px !important; height:92px !important; }
}

/* Mouse/touch modal return keeps logical focus without a lingering outline. */
.modal-pointer-return:focus { outline:none !important; }

/* Keep complete words in the service heading when the desktop break is hidden. */
#benefits-title { overflow-wrap:normal; word-break:normal; hyphens:none; }
@media(max-width:360px) { #benefits-title { font-size:clamp(30px,10vw,36px); } }

/* Mobile carousel arrows: 75% diameter, centred on card edges. */
@media(max-width:700px) {
 .testimonials .testimonial-nav, .team-carousel .testimonial-nav { width:2.4375rem; height:2.4375rem; }
 .testimonials .testimonial-prev, .team-carousel .testimonial-prev { left:-1.21875rem; }
 .testimonials .testimonial-next, .team-carousel .testimonial-next { right:-1.21875rem; }
}
@media(max-width:520px) {
 .testimonials .testimonial-nav, .team-carousel .testimonial-nav { width:36px; height:36px; }
 .testimonials .testimonial-prev, .team-carousel .testimonial-prev { left:-18px; }
 .testimonials .testimonial-next, .team-carousel .testimonial-next { right:-18px; }
}

/* Testimonial photo and copy occupy equal halves; arrows meet their dividing line. */
.testimonials .testimonial-preview { display:grid; grid-template-rows:repeat(2,minmax(0,1fr)); }
.testimonials .testimonial-preview > picture { position:relative; min-height:0; }
.testimonials .testimonial-preview > picture > img { position:absolute; inset:0; width:100%; height:100%; aspect-ratio:auto; object-fit:cover; }
.testimonials .testimonial-carousel { --testimonial-arrow-size:3.25rem; }
.testimonials .testimonial-nav { top:calc(50% - var(--testimonial-arrow-size) / 2); }
@media(max-width:700px) { .testimonials .testimonial-carousel { --testimonial-arrow-size:2.4375rem; } }
@media(max-width:520px) { .testimonials .testimonial-carousel { --testimonial-arrow-size:36px; } }

/* Colour backdrops: shared 92% opacity, independent of the cream popup panel. */
.testimonial-dialog::backdrop { background-image:none; background-color:var(--beige); opacity:.92; filter:none; inset:0; width:100vw; height:100dvh; max-width:none; max-height:none; }
.testimonial-dialog[data-backdrop="team"]::backdrop { background-color:var(--lilac); }
.testimonial-dialog[data-backdrop="testimonials"]::backdrop { background-color:var(--beige); opacity:.85; }

/* Team popup uses light lilac with a slightly more transparent lilac backdrop. */
.testimonial-dialog[data-backdrop="team"] { background:var(--mm-c-d3bfd6,#d3bfd6); }
.testimonial-dialog[data-backdrop="team"] .testimonial-dialog-close { color:var(--mm-c-d3bfd6,#d3bfd6); }
.testimonial-dialog[data-backdrop="team"]::backdrop { opacity:.85; }

/* One shared outer content gutter for the entire page. Card padding stays local. */
:root { --mm-page-x:clamp(100px,7vw,140px); }
@media(max-width:900px) { :root { --mm-page-x:50px; } }
@media(max-width:520px) { :root { --mm-page-x:25px; } }
.site-header, .intro, .services, .pathways, .growth-feature-copy, .benefits,
.mission-inner, .testimonials-inner, .faq-inner, .contact, footer {
  padding-left:var(--mm-page-x) !important;
  padding-right:var(--mm-page-x) !important;
}
.mission-inner, .testimonials-inner, .faq-inner {
  width:100% !important;
  max-width:none !important;
  margin-inline:0 !important;
}
.hero .hero-copy {
  left:var(--mm-page-x) !important;
  right:var(--mm-page-x) !important;
  max-width:none;
}
/* Retain the hero's approved text measure inside its aligned outer container. */
.hero .hero-copy h1, .hero .hero-copy > p { max-width:720px; }
@media(max-width:800px) {
  .site-header nav { padding-left:var(--mm-page-x) !important; padding-right:var(--mm-page-x) !important; }
}

/* Rounded-corner trial: every rectangular card, callout and popup uses 10px. */
.service, .pathway, .benefit-card, .team-carousel .mission-person,
.testimonial-preview, .faq-contact, .testimonial-dialog {
  border-radius:10px !important;
  overflow:hidden !important;
}
.testimonial-dialog { overflow:auto !important; }
.contact-form input:not([type="checkbox"]), .contact-form select, .contact-form textarea {
  border-radius:10px !important;
}
#contact input:not([type="checkbox"]), #contact select, #contact textarea { border-radius:10px !important; }

/* The full team-card surface opens the profile, including its padding and flex space. */
.team-carousel .mission-person { cursor:pointer; }

/* Mobile profiles use their natural content height instead of the tallest off-screen card. */
@media(max-width:700px) {
 .team-carousel { --carousel-card-padding:var(--mm-box-padding); }
 .team-carousel .testimonial-slides { align-items:flex-start !important; }
 .team-carousel .mission-team-list > .mission-person-shell { align-self:flex-start !important; }
 .team-carousel .team-profile-summary img { margin-bottom:15px !important; }
 .team-carousel .mission-person .team-profile-open { margin-top:0; }
}
/* Keep card heights and the following section moving together on every screen size. */
.team-carousel .carousel-viewport,
.team-carousel .mission-person-shell { transition:height 550ms cubic-bezier(.22,.61,.36,1); }
@media(prefers-reduced-motion:reduce) {
 .team-carousel .carousel-viewport,
 .team-carousel .mission-person-shell { transition:none; }
}

/* Mobile intro starts at the same inset as the following lilac mission section. */
@media(max-width:900px) {
  .intro { padding-top:64px; }
  .intro > .kicker { margin-top:0; }
}

/* Hero: 10-second holds and 5-second crossfades beneath the unchanged purple veil. */
.hero-secondary { display:block; position:absolute; inset:0; opacity:0; pointer-events:none; }
.hero-secondary .hero-bg { display:block; width:100%; height:100%; object-fit:cover; }
.hero-crossfade-ready .hero-secondary { animation:mm-hero-crossfade 30s ease-in-out infinite; }
.hero-crossfade-paused .hero-secondary { animation-play-state:paused; }
@keyframes mm-hero-crossfade {
  0%, 33.333333% { opacity:0; }
  50%, 83.333333% { opacity:1; }
  100% { opacity:0; }
}
@media(prefers-reduced-motion:reduce) { .hero-crossfade-ready .hero-secondary { animation:none; opacity:0; } }

.hero-primary { display:block; width:100%; height:100%; }

.team-pronouns { font-size:var(--body-copy-size) !important; font-weight:400 !important; white-space:nowrap; }

.site-header nav > a:hover { color:var(--orange); }
.site-header nav > span[aria-current="page"] { cursor:default; color:var(--orange); text-decoration:underline; text-underline-offset:6px; text-decoration-thickness:1px; }

.faq-grid > details[open] { cursor:pointer; }

/* Shared testimonial filters and smoothly fitted carousel height. */
.testimonial-filters { display:flex; justify-content:center; flex-wrap:wrap; gap:10px; margin:-10px 0 40px; }
.testimonial-filter { padding:12px 19px; border:0; border-radius:24px; background:var(--beige); color:var(--purple); cursor:pointer; }
.testimonial-filter[aria-pressed="true"] { background:var(--purple); color:var(--mm-c-cbc4b9,#cbc4b9); }
.testimonial-filter:focus-visible { outline:3px solid var(--purple); outline-offset:4px; }
.testimonials .carousel-viewport, .testimonials .testimonial-slide { transition:height 550ms cubic-bezier(.22,.61,.36,1); }
.testimonials .testimonial-slides > .testimonial-slide { align-self:flex-start; }
.testimonials .testimonial-slide > .testimonial-preview { height:100%; }
.testimonials .testimonial-preview-copy { min-height:0; }
@media(prefers-reduced-motion:reduce) {
 .testimonials .carousel-viewport, .testimonials .testimonial-slide { transition:none; }
}

/* Study subpage: the established palette, gutters, type and card spacing. */
.study-page { padding-top:72px; }
.study-hero { position:relative; min-height:400px; overflow:hidden; color:var(--mm-c-cbc4b9,#cbc4b9); }
.study-hero > img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 45%; }
.study-hero-copy { position:relative; padding:60px var(--mm-page-x); }
.study-hero h1 { max-width:none; margin:15px 0 20px; }
.study-hero-copy > p:not(.eyebrow) { margin:0 0 25px; }
.study-section { padding:80px var(--mm-page-x); }
.study-section h2 { font-size:clamp(36px,4.4vw,64px); font-weight:600; line-height:1.05; letter-spacing:-.03em; margin:0; }
.study-section-head { margin-bottom:40px; }
.study-section-head > p { margin:25px 0 0; }
.study-intro, .study-get-started, .study-vision { background:var(--lilac); }
/* Lilac sections use the homepage’s one-third / two-thirds introduction layout. */
.study-intro, .study-get-started, .study-vision, .study-final { padding-block:8vw; }
.study-banner { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--mm-card-gap); align-items:start; }
.study-banner > .kicker { grid-column:1; margin:15px 0 0; }
.study-banner-copy { grid-column:2 / span 2; min-width:0; }
.study-banner-copy > p { margin:30px 0 0; }
.study-banner-copy > .pill { margin-top:30px; }
.study-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--mm-card-gap); }
.study-grid-two { grid-template-columns:repeat(2,minmax(0,1fr)); }
.study-card { padding:clamp(25px,3.5vw,50px); border-radius:10px; background:var(--mm-c-cbc4b9,#cbc4b9); min-width:0; }
.study-card h3 { font-size:clamp(24px,2vw,32px); font-weight:600; line-height:1.15; margin:0 0 25px; }
.study-card p { margin:0 0 20px; }
.study-card p:last-child { margin-bottom:0; }
.study-card svg { display:block; width:85px; height:85px; margin-bottom:35px; }
.study-step-number { display:block; font-size:60px; font-weight:600; line-height:1; margin-bottom:25px; }
.study-get-started .study-card { background:var(--mm-c-d3bfd6,#d3bfd6); }
.study-get-started > .pill { margin-top:35px; }
.study-email { margin-top:var(--mm-card-gap); }
.study-email-text { border-top:1px solid var(--lilac); padding-top:25px; margin-top:25px; }
.study-email a { overflow-wrap:anywhere; }
.study-card ul { padding-left:1.2em; margin:0; }
.study-card li { margin-bottom:15px; }
.study-card li:last-child { margin-bottom:0; }
.study-final { background:var(--beige); }
.study-testimonial-link { display:block; width:fit-content; margin-top:25px; text-underline-offset:4px; }
.study-page .faq { scroll-margin-top:90px; }
.study-page [id] { scroll-margin-top:95px; }
@media(max-width:900px) {
 .study-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .study-section { padding-block:64px; }
 .study-hero-copy { padding-block:50px; }
}
@media(max-width:700px) {
 .study-grid { grid-template-columns:minmax(0,1fr); }
 .study-hero { min-height:0; }
 .study-hero-copy { padding-block:40px; }
 .study-section h2 { font-size:36px; }
 .study-section-head { margin-bottom:30px; }
 .study-card { padding:25px; }
 .testimonial-filters { gap:10px; margin:0 0 30px; }
}

@media(max-width:800px) { .study-page { padding-top:66px; } }

@media(max-width:900px) {
 .study-intro, .study-get-started, .study-vision, .study-final { padding-block:64px; }
 .study-banner { grid-template-columns:minmax(0,1fr); gap:28px; }
 .study-banner > .kicker, .study-banner-copy { grid-column:1; }
 .study-banner > .kicker { margin:0; }
}

/* Study introduction: heading left; preheading and body together on the right. */
.study-intro-layout > h2 { grid-column:1; min-width:0; }
.study-intro-layout .study-banner-copy > .kicker { margin:15px 0 25px; }
.study-intro-layout .study-banner-copy > p:not(.kicker) { margin:0; }
@media(max-width:900px) {
 .study-intro-layout .study-banner-copy > .kicker { margin-top:0; }
}

/* One connected trial / switch / sessions journey with actionable cards. */
.study-action-card { display:flex; flex-direction:column; align-items:flex-start; color:var(--purple); text-decoration:none; cursor:pointer; }
.study-action-card .study-step-number { display:grid; place-items:center; width:60px; height:60px; flex-shrink:0; border-radius:50%; background:var(--lilac); font-size:30px; line-height:1; margin-bottom:20px; }
.study-action-card > p { margin-bottom:30px; }
.study-action-card > .pill { margin-top:auto; }
.study-action-card:focus-visible { outline:3px solid var(--purple); outline-offset:5px; }
.study-switch-guide { margin-top:60px; }
.study-switch-guide > h3 { font-size:clamp(24px,2vw,32px); line-height:1.15; margin:0; }
.study-switch-instructions { padding-left:1.5em; margin:0; }
.study-switch-instructions > li { padding-left:10px; margin-bottom:30px; }
.study-switch-instructions > li:last-child { margin-bottom:0; }
.study-switch-instructions h4 { font-size:var(--body-copy-size); line-height:var(--body-copy-leading); margin:0 0 10px; font-weight:600; }
.study-switch-instructions p { margin:0 0 15px; }
.study-switch-instructions p:last-child { margin-bottom:0; }
.study-switch-guide + .study-email { margin-top:40px; }
@media(max-width:900px) { .study-switch-guide > h3 { grid-column:1; } }

/* Darken only the first homepage hero photo; keep image opacity unchanged. */
.hero-primary .hero-bg { filter:brightness(.85); }

/* Shared top inset for content sections on the homepage and subpages. */
:root { --mm-section-top:clamp(72px,6vw,104px); }
main > section:not(.hero):not(.study-hero):not(.growth-feature):not(.testimonial-image-break),
.growth-feature-copy { padding-top:var(--mm-section-top) !important; }
@media(max-width:900px) { :root { --mm-section-top:64px; } }

/* Keep the final card clear of the following section boundary. */
.study-get-started:has(+ .study-vision) { padding-bottom:var(--mm-section-top); }
@media(max-width:800px) { .study-get-started:has(+ .study-vision) { padding-bottom:var(--mm-mobile-section-bottom,29px); } }

/* Study feature tiles share the homepage enlargement and icon-drawing animation. */
.study-included .study-card { position:relative; transform:scale(1); transform-origin:center; transition:transform 700ms cubic-bezier(.2,.7,.2,1); }
.study-included .benefit-icon { overflow:visible; }
.study-included .benefit-icon path { stroke-dasharray:1; stroke-dashoffset:0; }
@media(hover:hover) and (pointer:fine) {
 .study-included .study-card:hover { transform:scale(1.025); z-index:2; }
}
@media(prefers-reduced-motion:reduce) {
 .study-included .study-card { transition:none; transform:none !important; }
 .study-included .benefit-icon path { animation:none !important; stroke-dashoffset:0 !important; }
}

/* Work page uses the shared subpage components and the approved light cream. */
.work-guarantee { background:var(--mm-c-dad5cd,#dad5cd); }
.shop-page .work-guarantee { background:var(--lilac); }
.work-guarantee h2 { font-size:clamp(30px,2.8vw,42px); overflow-wrap:normal; }
.work-guarantee-number { display:block; font-size:clamp(60px,7vw,100px); line-height:1; margin-bottom:20px; }
.work-guarantee .study-banner-copy > p:first-child { margin-top:0; }

/* Shop: existing subpage layout, palette, pill typography and service filters. */
.shop-page [id] { scroll-margin-top:95px; }
.shop-catalogue { background:var(--mm-c-bab0a0,#bab0a0); }
.shop-results { overflow:hidden; transition:height 550ms cubic-bezier(.22,.61,.36,1); padding:12px; margin:-12px; }
.shop-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--mm-card-gap); }
.shop-card { min-width:0; display:flex; flex-direction:column; border-radius:10px; background:rgb(var(--mm-rgb-ffffff,255 255 255) / .25); overflow:hidden; transform-origin:center; transition:transform 700ms cubic-bezier(.2,.7,.2,1); }
.shop-card[hidden] { display:none; }
.shop-card > img { display:block; width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; }
.shop-card-copy { flex:1; display:flex; flex-direction:column; padding:30px; }
.shop-card h3 { margin:0 0 20px; font-size:clamp(24px,2vw,30px); line-height:1.15; font-weight:600; }
.shop-card .shop-duration { margin:0 0 15px; font-size:16px !important; font-weight:500; }
.shop-description { margin:0 0 30px; }
.shop-card-action { margin-top:auto; }
.shop-card .shop-price { display:flex; flex-wrap:wrap; align-items:baseline; gap:10px; margin:0 0 20px; }
.shop-price strong { font-size:30px; line-height:1.15; font-weight:600; }
.shop-price > span { font-size:14px; }
.shop-availability { margin:0 0 20px; font-weight:500; }
.shop-payment-link { display:block; width:fit-content; margin:0 0 30px; font-size:16px; font-weight:500; line-height:1.42; text-underline-offset:4px; }
@media(hover:hover) and (pointer:fine) { .shop-card:hover { transform:scale(1.025); position:relative; z-index:1; } }
@media(max-width:1000px) { .shop-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:700px) {
 .shop-grid { grid-template-columns:minmax(0,1fr); }
 .shop-card-copy { padding:25px; }
}
@media(prefers-reduced-motion:reduce) { .shop-results, .shop-card { transition:none; } .shop-card:hover { transform:none; } }

/* Cover fractional-pixel seams at the full-width photo edge. */
.testimonial-image-break { background:var(--beige); border:0; box-shadow:none; }
.testimonial-image-break img { position:absolute; inset:-1px; width:calc(100% + 2px); height:calc(100% + 2px); max-width:none; border:0; }
footer { grid-template-columns:1fr auto auto; }
.footer-privacy { font-size:13px; text-underline-offset:4px; }
.privacy-page { background:var(--mm-c-bab0a0,#bab0a0); }
.privacy-page h1 { font-size:clamp(46px,7vw,90px); line-height:1; margin:0 0 30px; letter-spacing:-.045em; }
.privacy-copy { max-width:800px; }
.privacy-copy h2 { font-size:30px; margin:45px 0 20px; }
.privacy-copy p { line-height:1.65; }
@media(max-width:800px) { footer { grid-template-columns:1fr; } }

/* Numbered action cards share the established tile hover motion. */
.study-action-card { position:relative; transform-origin:center; transition:transform 700ms cubic-bezier(.2,.7,.2,1); }
@media(hover:hover) and (pointer:fine) {
 .study-action-card:hover { transform:scale(1.025); z-index:2; }
}
@media(prefers-reduced-motion:reduce) {
 .study-action-card { transition:none; }
 .study-action-card:hover { transform:none; }
}

/* Compact informational notice using the site's orange. */
.privacy-notice { position:fixed; z-index:30; bottom:25px; left:var(--mm-page-x); right:var(--mm-page-x); margin-inline:auto; max-width:650px; display:flex; align-items:center; gap:25px; padding:25px 35px; border:0; border-radius:999px; background:var(--orange); color:var(--purple); }
.privacy-notice p { margin:0; font-size:14px; line-height:1.6; }
.privacy-notice a { color:inherit; text-underline-offset:3px; }
.privacy-notice .pill { flex-shrink:0; cursor:pointer; background:var(--purple); border-color:var(--purple); color:var(--orange); }
.privacy-notice :focus:not(:focus-visible) { outline:none; }
@media(max-width:520px) { .privacy-notice { flex-direction:column; align-items:flex-start; gap:15px; bottom:15px; padding:35px; } }
@media(min-width:521px) { .privacy-notice .pill { margin-right:-5px; } }

.privacy-notice { left:auto; right:25px; margin:0; width:min(650px,calc(100% - 50px)); text-align:right; }
@media(max-width:520px) { .privacy-notice { right:15px; width:calc(100% - 30px); align-items:flex-end; } }
.privacy-notice { padding-left:25px; }

/* Legal pages reuse the existing cream, typography, gutters and rounded panels. */
.legal-page .privacy-copy { max-width:900px; }
.legal-page .privacy-copy h2 { font-size:clamp(30px,3vw,42px); line-height:1.15; margin:60px 0 25px; }
.legal-page .privacy-copy h3 { font-size:24px; font-weight:600; line-height:1.3; letter-spacing:-.02em; margin:40px 0 20px; }
.legal-page p, .legal-page li, .legal-page dd { font-size:18px; line-height:1.65; }
.legal-page p { margin:0 0 20px; }
.legal-page ul { padding-left:25px; margin:0 0 25px; }
.legal-page li { margin-bottom:10px; }
.legal-page a { text-underline-offset:4px; overflow-wrap:anywhere; }
.legal-page :is(h2,h3) { scroll-margin-top:100px; }
.legal-contents { background:var(--cream); padding:30px; border-radius:10px; margin:40px 0; }
.legal-page .legal-contents .kicker { font-size:16px; font-weight:600; }
.legal-contents ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px 30px; list-style:none; padding:0; margin:0; }
.legal-page .legal-contents li { font-size:16px; line-height:1.5; margin:0; }
.legal-page hr { border:0; border-top:1px solid var(--beige); margin:50px 0; }
.legal-retention { display:grid; gap:25px; }
.legal-retention-item { padding:30px; border-radius:10px; background:var(--cream); }
.legal-page .legal-retention-item h3 { margin:0 0 25px; }
.legal-retention-item dl { margin:0; }
.legal-retention-item dl > div { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,2fr); gap:25px; margin-bottom:25px; }
.legal-retention-item dl > div:last-child { margin-bottom:0; }
.legal-retention-item dt { font-size:16px; font-weight:600; line-height:1.5; }
.legal-retention-item dd { margin:0; min-width:0; }
.legal-retention-item dd ul { list-style:none; padding:0; margin:0; }
.legal-retention-item dd li:last-child { margin:0; }
footer { grid-template-columns:minmax(0,1fr) auto; gap:15px 35px; }
footer > img { grid-row:1 / span 2; align-self:center; }
.footer-legal { grid-column:2; display:flex; flex-wrap:wrap; justify-content:flex-end; gap:10px 20px; }
.footer-legal a { font-size:11px; text-underline-offset:4px; }
footer > p { grid-column:2; text-align:right; }
@media(max-width:800px) {
 footer { grid-template-columns:1fr; }
 footer > img, .footer-legal, footer > p { grid-column:auto; grid-row:auto; text-align:left; }
 .footer-legal { justify-content:flex-start; }
}
@media(max-width:600px) {
 .legal-contents ul { grid-template-columns:1fr; }
 .legal-contents, .legal-retention-item { padding:25px; }
 .legal-retention-item dl > div { grid-template-columns:1fr; gap:10px; }
 .legal-page .privacy-copy h3 { font-size:22px; }
}
@media print {
 .site-header, footer, .privacy-notice, .legal-contents, .skip-link { display:none!important; }
 .legal-page { padding-top:0; }
 .legal-page .study-section { padding:0!important; }
 .legal-page .privacy-copy { max-width:none; }
 .legal-retention-item { break-inside:avoid; }
}

/* Stacked mobile content needs rounded corners rather than a capsule radius. */
@media(max-width:520px) {
 .privacy-notice { border-radius:25px; padding:25px; }
}

.about-pathways { background:var(--mm-c-cbc4b9,#cbc4b9); }
.about-pathways .study-card { background:var(--beige); }
.about-pathways .about-pathway-icon { width:76px; height:76px; margin-bottom:30px; overflow:visible; }
.about-pathways .about-pathway-icon path { fill:none; stroke:var(--purple); stroke-width:15.2; stroke-linecap:round; stroke-linejoin:round; stroke-dasharray:1; stroke-dashoffset:0; }
@media(hover:hover) and (pointer:fine){.about-pathways .study-card:hover .about-pathway-icon path{animation:mm-icon-draw 1.35s cubic-bezier(.4,0,.2,1) both}}
@media(max-width:600px){.about-pathways .about-pathway-icon{width:68px;height:68px}}
@media(prefers-reduced-motion:reduce){.about-pathways .about-pathway-icon path{animation:none!important;stroke-dashoffset:0!important}}
.about-team { background:var(--lilac); scroll-margin-top:72px; }
.about-person { display:flex; flex-direction:column; background:var(--light-lilac,var(--mm-c-d3bfd6,#d3bfd6)); }
.about-person > img, .about-person > picture { display:block; width:140px; height:140px; margin-bottom:30px; }
.about-person > img, .about-person > picture img { width:140px; height:140px; border-radius:50%; object-fit:cover; }
.about-person h3 strong { font-weight:600; }
.about-person .team-pronouns { display:block; font-size:16px; font-weight:400; margin-top:10px; }
.about-person .mission-person-tags { margin:0 0 25px; }
.about-person > p { line-height:1.6; }
.about-profile { margin-top:auto; padding-top:10px; }
.about-profile summary { cursor:pointer; list-style:none; }
.about-profile summary::-webkit-details-marker { display:none; }
.about-profile > div { padding-top:25px; }
.about-profile p { line-height:1.6; }
.about-profile p:last-child { margin-bottom:0; }
.about-page .study-final .pill { margin-top:30px; }
.about-team > .mission-team { margin-top:0; }

.about-page .study-section-head, .about-page .mission-team-title { text-align:center; }
/* Adjacent cream sections share one section gap, rather than two paddings. */
.about-page .study-included:has(+ .about-pathways) { padding-bottom:0; }

.privacy-notice { padding:20px 25px 20px 20px; }
@media(max-width:520px) { .privacy-notice { padding:20px; } }

/* Full-width cookie information bar. */
.privacy-notice { left:0; right:0; bottom:0; width:100%; max-width:none; margin:0; padding:20px var(--mm-page-x); border-radius:10px 10px 0 0; text-align:left; justify-content:space-between; }
.privacy-notice .pill { margin-right:0; }
@media(max-width:520px) { .privacy-notice { align-items:flex-start; padding:20px 25px calc(20px + env(safe-area-inset-bottom)); } }

.privacy-notice { left:0; right:0; bottom:0; width:100%; border-radius:0; }

.privacy-notice { text-align:right; }
.privacy-notice p { flex:1; }
@media(max-width:520px) { .privacy-notice { align-items:flex-end; } }

.privacy-notice { justify-content:center; text-align:center; }
.privacy-notice p { flex:0 1 auto; }
@media(max-width:520px) { .privacy-notice { align-items:center; } }

/* One illustrated-icon standard across the homepage and every subpage. */
.service .service-icon, .pathway > .pathway-icon, .benefit-card .benefit-icon, .study-included .study-card > svg { width:76px; height:76px; }
.service .service-icon path, .pathway > .pathway-icon path, .benefit-card .benefit-icon path, .study-included .study-card > svg path { fill:none; stroke:var(--purple); stroke-width:15.2; stroke-linecap:round; stroke-linejoin:round; }
@media(max-width:600px) {
 .service .service-icon, .pathway > .pathway-icon, .benefit-card .benefit-icon, .study-included .study-card > svg { width:68px; height:68px; }
}

/* Dim the homepage photo before the testimonials by 15%. */
.testimonial-image-break img[src="assets/photos/section-testimonials.webp"] { filter:brightness(.85); }

/* Existing layout changes share the testimonial motion. */
.mm-layout-frame{overflow:clip;transition:height 550ms cubic-bezier(.22,.61,.36,1)}
.mm-layout-content{display:flow-root}
.faq-grid>details{box-sizing:border-box}
@media(prefers-reduced-motion:reduce){
 .mm-layout-frame,.shop-results,.team-carousel .mission-person-shell,.testimonials .carousel-viewport,.testimonials .testimonial-slide{transition:none!important}
}

html{scrollbar-gutter:stable}

/* Match the header bar; allow wrapped notice text to remain readable. */
.privacy-notice{min-height:var(--mm-navigation-height);padding-block:10px;gap:15px;align-items:center}
@media(max-width:520px){.privacy-notice{padding-block:10px calc(10px + env(safe-area-inset-bottom))}}

/* Overscan keeps section-photo edges covered during the small parallax drift. */
.mm-photo-parallax>img{transform:translate3d(0,var(--mm-photo-shift,0px),0) scale(1.15);transform-origin:center}
.mm-photo-parallax-active>img{will-change:transform}
@media(prefers-reduced-motion:reduce){.mm-photo-parallax>img{transform:none}.mm-photo-parallax-active>img{will-change:auto}}

/* Move both crossfading hero photos together; the hero copy stays fixed. */
.hero.mm-photo-parallax>picture>img{transform:translate3d(0,var(--mm-photo-shift,0px),0) scale(1.15);transform-origin:center}
.hero.mm-photo-parallax-active>picture>img{will-change:transform}
@media(prefers-reduced-motion:reduce){.hero.mm-photo-parallax>picture>img{transform:none}.hero.mm-photo-parallax-active>picture>img{will-change:auto}}


/* Desktop navigation with a services disclosure; compact mobile menu. */
.site-header .menu{display:none;cursor:pointer}
.site-header nav{display:flex;position:static;flex-direction:row;align-items:center;gap:30px;padding:0;background:transparent;overflow:visible;max-height:none}
.site-header nav>a:not(.pill),.site-header nav>span[aria-current="page"],.nav-services-toggle,.services-dropdown>a,.services-dropdown>span{font-size:16px;line-height:var(--body-copy-leading)}
.nav-services{position:relative}
.site-header .nav-services-toggle{display:flex;align-items:center;gap:10px;border:0;padding:0;background:transparent;color:inherit;font-family:inherit;font-weight:inherit;cursor:pointer}
.nav-services-chevron{width:8px;height:8px;border:solid currentColor;border-width:0 2px 2px 0;transform:translateY(-2px) rotate(45deg)}
.nav-services-toggle[aria-expanded=true] .nav-services-chevron{transform:translateY(2px) rotate(225deg)}
.services-dropdown{position:absolute;top:calc(100% + 25px);left:-25px;right:auto;min-width:160px;display:flex;flex-direction:column;gap:20px;padding:25px;background:rgb(var(--mm-rgb-402144,64 33 68) / .85)}
.services-dropdown[hidden]{display:none}
.services-dropdown>a{text-decoration:none}
.site-header .nav-services-toggle:hover,.services-dropdown>a:hover{color:var(--orange)}
.site-header .nav-services-toggle.is-current,.services-dropdown>span[aria-current=page]{color:var(--orange)}
.services-dropdown>span[aria-current=page]{text-decoration:underline;text-underline-offset:6px}
@media(max-width:800px){
 .site-header .menu{display:block}
 .site-header nav{display:none;position:absolute;top:100%;left:0;right:0;padding:25px var(--mm-page-x);background:rgb(var(--mm-rgb-402144,64 33 68) / .85);flex-direction:column;align-items:flex-start;gap:25px;max-height:calc(100dvh - var(--mm-navigation-height));overflow:auto}
 .site-header nav.is-open{display:flex}
 .nav-services{width:100%}
 .services-dropdown{position:static;min-width:0;background:transparent;padding:20px 0 0 20px}
}

.contact .direct a{font-size:var(--body-copy-size);line-height:var(--body-copy-leading)}

.contact .direct a{text-decoration:none}
.contact .direct .contact-value{text-decoration:underline}

.study-steps .study-action-card>.pill{align-self:center;text-align:center}

/* Match the FAQ section to the testimonial cards immediately above it. */
:root{--mm-faq-background:color-mix(in srgb,var(--mm-c-bab0a0,#bab0a0) 75%,var(--mm-c-ffffff,#ffffff) 25%)}
.faq,.faq-section,section#faq{background:var(--mm-faq-background)}

.home-contact-actions{align-self:center}

.site-header .nav-services-toggle:hover{transform:none}

.footer-legal a,footer>p{font-size:16px;line-height:var(--body-copy-leading);color:var(--taupe);opacity:1}
.footer-legal a{text-decoration:none}
.footer-legal a:hover,.footer-legal a:focus-visible{color:var(--orange)}

/* Content boxes share the cream cards’ inner spacing. */
@media(max-width:900px){:root{--mm-box-padding:clamp(32px,4vw,44px);--mm-box-padding-x:clamp(32px,4vw,44px)}}
@media(max-width:600px){:root{--mm-box-padding:34px 28px;--mm-box-padding-x:28px}}

/* Field margins keep label text clear of Chrome's focus ring, including high contrast.
   A margin also separates anonymous label text consistently across browser flex layouts. */
.contact-form>label:not(.consent):not(.booking-consent){row-gap:0}
.contact-form>label>:is(input:not([type=checkbox]):not([type=radio]),select,textarea){margin-top:15px}
